Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - Svenska

Seiten: 1 ... 87 88 [89] 90
1761
Lowlevel-Coding / Allgemeine Frage
« am: 29. January 2005, 22:57 »
Den Bildschirm leeren kannst du, indem du den Grafikspeicher komplett mit Nullen ueberschreibst.

Ich kann so eine Shell mal in Pseudocode (mit n bissl Basic) formulieren:


;Taste gedrueckt
DO
  IF TastenCode <> ENTER THEN
    Zeichenkette = Zeichenkette + Zeichen(TastenCode)
  ELSE
    Befehlsauswerter
    Zeichenkette = ""
  END IF
LOOP

;Zeichenauswerter
IF Zeichenkette = "EXIT" THEN
  ;System herunterfahren
ELSEIF Zeichenkette = "CLS" THEN
  ;Ueberschreibe Bildschirmspeicher
ELSEIF .......
  ;........
END IF
RETURN TastenAuswertung


Soweit ganz billig der grundlegende Aufbau. Du muesstest nur noch von deinem Tastaturtreiber die Umwandlung Tastencode => Zeichen erledigen lassen (bei mir die Funktion Zeichen(TastenCode) ).

Will dir ja die Arbeit nicht komplett klauen :)

Aber ich habe irgendwo mal gelesen, dass man u.U. mit Basic-Code gut vorankommt, den man danach von Hand in Asm umwandelt, Zeile fuer Zeile. Dann hat man nämlich (wenn der grundlegende Kernel steht) schon getesteten Code...

Viel Spass und Gruesse

Svenska
1762
Lowlevel-Coding / altes Laptop oder was? CNC-BOY von Sanyo
« am: 29. January 2005, 14:13 »
Sogar äusserst unwahrscheinlich :-)
Ich seh diese Seiten auf Dauer eher als Spam an. Ausserdem kommt es bei solch alten Dingern eher auf Selbstbau an :)

Ich glaube, dass CGA in dem Buch nicht wirklich behandelt wird ... nun gut, es liegt etwa 1300km von hier, da kann ich grad nicht nachschaun. Ich habe noch nie nen 640x200 in real gesehen :-(

Aber wenn die Sache mit der Akkulaufzeit stimmt, dann wuerde ich das Ding als Schreibmaschine benutzen. Spiele fuer CGA sind etwas selten... Gluecksrad fällt mir noch ein und Europa... aber du hast Monochrom, oder?? Oder 4 Farben?

Gluecksrad gibt's auch auf Winhistory ... Tetris auch :). Wenn du MS-DOS 5.0 brauchst, kann ich dir die Diskettenimages geben.

So, das erstmal von mir.

Gruesse Svenska
1763
Lowlevel-Coding / 64-Bit, hat schon jemand rumprobiert?
« am: 28. January 2005, 19:15 »
Zitat (aus Deinmeister.de):
Zitat
Um den Long-Mode wirklich zu aktivieren, muß allerdings auch die Abbildung linearer zu physikalischen Addressen per Paging verwendet werden. Dies liegt darin begründet, daß der Long-Mode sämtlichen Speicherschutz (ebenso wie alle aktuelle Betriebsysteme) allein über das Paging realisiert.

Zitat
Der Speicherschutz über Deskriptoren und Segmentregister ist wie gewohnt in x86-16- und 32-Bit Segmenten verfügbar, aber nicht im x86-64-Code. Da x86-64 nur ein flaches Speichermodell unterstützt, werden DS, ES und SS vollständig ignoriert, bei FS und GS werden nur die entsprechenden Basisaddressen berücksichtigt, so daß diese beiden als zusätzliches Basisregister dienen (Grund: Win32 u.a. verwenden sie, dadurch soll wohl die Portierung nach x86-64 beschleunigt werden).


Merkwuerdigkeiten beseitigt? *lach*

Gruesse Svenska
1764
Lowlevel-Coding / Maus Treiber
« am: 28. January 2005, 19:07 »
http://wap.tutorials.de/t-133551.html <-- schau dir das mal an
der PS/2-Anschluss läuft faktiskt ueber den Tastaturcontroller, IRQ 12.

Auch das könnte interessant sein, ist aber sehr technisch:
http://www.win.tue.nl/~aeb/linux/kbd/scancodes-12.html

Hier sind die Protokollspezifikationen fuer diverse Mausarten (weiss, grau, ... *g*)
http://www.hut.fi/~then/mytexts/mouse.html

Vielleicht sind auch noch die Sourcen von xBSD oder Linux eine Ansicht wert (beziehungsweise deren Maustreiber)...

Zitat:
Zitat
The standard PS/2 mouse (with Logitech mouse) defaults to 160 CPI and can be switched to 40, 80, 160 or 320 CPI with software. Microsoft mouse driver for Windows 3.x and Windows 95 defauls to 160 couns per inch.
[ironie]Hoffentlich ändert sich das Protokoll nicht[/ironie]

Gruesse Svenska

Hoffe, es hat geholfen.
1765
Lowlevel-Coding / altes Laptop oder was? CNC-BOY von Sanyo
« am: 28. January 2005, 18:19 »
Ich hab mich mal ein bisschen umgesucht. Zu deiner Angabe "SANYO MBC-16LT2" war nicht wirklich viel zu finden. Aber es gab wohl eine Art Familie von Sanyo, 16LT. Danach habe ich mal bissl gesucht. Vielleicht hilftäs dir weiter.

http://www.computermuseum-muenchen.de/computer/sanyo/16lt.html
http://www.computermuseum-muenchen.de/computer/sanyo/mbc16.html
da gibt es ein paar technische Daten zu den Dingern - es wurde mit MS-DOS 3.2 ausgeliefert.

http://www.mail-archive.com/survpc@softcon.com/msg11772.html
hier ein Beitrag, aber scheinbar ohne Ergebnis

du findest uebrigens tonnenweise Ersatzbatterien fuer das Ding :-)
Und ich glaube ausserdem, dass dein Notebook keine Hintergrundbeleuchtung fuer das Display hat (darum ist es so dunkel) und aus diesem Grunde die Akkulaufzeit bei 8 Stunden (!!!) liegen sollte.
Quelle: http://wearables.blu.org/wear-hard/19997013.html

Es gab eine Familie MBT-16 , aber das waren scheinbar keine Laptops.

EDIT: Mehr finde ich jetzt auf Anhieb nicht. Ich schlage dir vor, ein bisschen bei eBay zu schauen, ob jemand das Ding mit Software anbietet und höflich nach Disketten-Images zu fragen. Oder du schaust da nach, wo du das Notebook her hast, ob es dazu noch die Manuals/Handbuecher gibt und vielleicht sogar die Software.

Ich hoffe, ich konnte einigermassen helfen.

Hej sÃ¥ länge

Svenska
1766
Lowlevel-Coding / altes Laptop oder was? CNC-BOY von Sanyo
« am: 28. January 2005, 17:39 »
Es ist gut zu hören, dass du diese alten 5.25"-Disketten nicht hast. Die kann man nicht unterscheiden, die gab es in drei verschiedenen Grössen.

Ich habe noch ein paar 720-KB-Disketten irgendwo rumliegen, die sind alle blau(!). Aber du erkennst die 1.44-MB-Disketten noch an einer anderen Sache.
Du hast ein Loch mit einem Schieber auf den Disketten, damit stellst du den Schreibschutz an/aus. Aber es gibt noch ein anderes Loch, auf der anderen Seite. Wenn dieses Loch da ist, ist die Diskette 1.44 MB - fehlt es, ist es eine 720-KB-Disketten. Ein Trick ist es, einfach dieses Loch mit Klebestreifen zuzukleben. Dann kann der Rechner es nicht mehr erkennen. ABER: Da ein neues Laufwerk schmalere Spuren schreibt, sind die Daten unter Umständen nicht so gut lesbar. Die neueren Disketten haben eine genauere Magnetschicht. Das heisst, die Daten könnten(!) nach einigen Lese- und Schreibversuchen unsauber werden; das alte Laufwerk schreibt dicke Spuren und das neue Laufwerk schreibt duenne. Irgendwann sieht dann das dicke Laufwerk zwei verschiedene Magnetisierungen und kriegt nen roten Hals :-)

Ob es stimmt, kann ich nicht sagen. Ich habe noch nie ein so altes Diskettenlaufwerk in der Hand gehabt (halt nur den Vorvorgänger davon...)
Klebe also das Loch ohne Schieber zu und formatiere die Diskette in der Eingabeaufforderung(!) mit "FORMAT A:"

Schau dich mal auf der Seite von Winhistory um, auch auf der Downloadseite. Da gibt es glaube ich noch 720er Diskettenimages.

Wenn du nur ein Modem hast, wuerde ich von Minix abstand nehmen. Es hat sehr viel mit "im Internet nachschauen und lesen" zu tun... vielleicht ist es später einen Versuch wert.

Ich kann ja mal schauen, ob es irgendwo eine Anleitung fuer das Teil gibt :) Oder zumindest ein Hobbyist, welcher so ein Ding hat und Erfahrungen postet(e). Gibt bestimmt ne Einstellung, das Display aufzuhellen. Ich bezweifle uebrigens, dass du eine Echtzeituhr in dem Ding drin hast. Die wurde - glaube ich - erst mit dem AT (286er) Standard.

Jetzt mit Lowlevel-Programmierung anfangen wuerde ich ein bisschen hefitg ansehen. Nimm es mir nicht uebel, aber ich glaube, dass das noch ein bisschen zu viel fuer dich wäre. Da fehlen noch die Grundkenntnisse, aber das kann man alles nachholen. Am besten ist dazu ein gutes Buch :) Ich kann das "PC-Hardwarebuch" empfehlen (hab die 6.Auflage, gibt aber schon 7 oder neuer?) was aber ziemlich ins Detail geht. Ansonsten können sicherlich andere hier besser Auskunft geben.

Hej sÃ¥ länge

Svenska
1767
Lowlevel-Coding / Re: danke euch
« am: 26. January 2005, 11:52 »
Zitat von: chebrise
Daß ich einfach DOS oder ein altes Windows drauf machen kann hätte ich nicht gedacht, das ist ja einfach.


Wie gesagt, sofern du keine Festplatte hast (was ich glaube), kannst du DOS 5.0 noch auf Disketten installieren. Finden tust du es (falls du es nicht hast) auf http://www.winhistory.de. Schwer tun wirst du dich allerdings mit Anwendungen fuer das alte Windows. Die meisten Anwendungen verlangen Windows 3.0 oder 3.1 und das läuft (afaik) definitiv nicht. Wenn du genaueres wissen willst, schau dich auf Winhistory um. Dein Prozessor ist ein 8088, oder einfach ein langsamerer 8086 :-)
Arbeitsspeicher hast du 640 KB. Damit kann man schon etwas anfangen, denke ich.

Zitat von: chebrise
Leute die als Hobby OSs programmieren. Ich möchte in diese Richtung mehr reinschnuppern aber leider bin ich kein IT-Student und somit fehlt mir immer wieder eine wichtige,  für Profis meist banale, Information. Ich werde dran bleiben.


Auch wir sind meist keine IT-Studenten, manche wollen es aber vielleicht werden :-) Was eine banale Information ist, darueber kann man gut streiten. Z.B. Finde ich hier immer wieder Sachen, von denen ich nichtmal wusste, wie die funktionieren :-) Andere Sachen wiederum erscheinen mir banal. Es ist immer Ansichtssache.
Es gibt keine dummen Fragen, nur dumme Antworten. Oder blöd gestellte Fragen.

Und: Es ist nie zu spät, um irgendetwas anzufangen :-)

Gruesse Svenska
1768
Lowlevel-Coding / Was passiert beim booten von CD?
« am: 25. January 2005, 19:13 »
Ich weiss zwar nicht, ob das hierher gehört, aber ich habe trotzdem mal ne Frage.

Wie spreche ich das CD-Laufwerk ohne Treiber an?

Jemand fragte vor Ewigkeiten mal nach einer Diskette zum CD-Booten. Ich hatte mal angefangen, aber was genau tut das BIOS an dieser Stelle? Es ist ja nicht nur das Booten an sich. Es wird ja das gesamte Floppy-Image nach A: verfrachtet und das eingebaute Laufwerk wird B: (unter DOS zumindest :twisted:).
Wie könnte man einen solchen Code vom BIOS isolieren, sodass also mit ner speziellen Diskette einfach ne CD gebootet werden kann?

Svenska
1769
Lowlevel-Coding / Cursor bewegen
« am: 25. January 2005, 17:58 »
Mal ne Frage: Geht das ueberhaupt?
Ich wuerde denken, es ginge einfacher, wenn man die Cursorposition selbst abspeichert und abruft... weiss ja nicht, wie Linux das tut...
1770
Lowlevel-Coding / tastatur-'treiber'..
« am: 25. January 2005, 17:56 »
Portier das Teil doch einfach nach DOS (dazu solltest du den Original-Interrupt abspeichern und beim Programmende wieder zurueckschreiben). Dann habe ich mit meinem Nadeldrucker noch ein echtes Feeling :-)

Duerfte nicht eigentlich wirklich schwer sein. Org 0x100 wenn ich recht habe und am Ende auf ne bestimmte Taste mit Int 21 Fkt 4Ch reagieren :-)

Svenska
1771
Lowlevel-Coding / Re: ELISC
« am: 25. January 2005, 17:53 »
Zitat von: elfish_rider
Diese CISC-CPUs kann man fast als ELISC-CPUs bezeichen: Extremely Large Intruction Set Computing CPUs. ;)

Warum nicht ECISC = Extreme Complex Instruction Set Computing? ;)
1772
Lowlevel-Coding / Maus Treiber
« am: 25. January 2005, 17:49 »
Wenn du eine serielle Maus benutzt, musst du den In-Befehl an die jeweilige COM-Schnittstelle richten (3f8h fuer COM1; 2f8h fuer COM2).

Diese Daten kannst du Auslesen, die Adresse fuer COM1 steht im Speicher unter Die Portadresse fuer COM1: steht im Hauptspeicher in $40:00 (Hex) und die Portadresse fuer COM2: steht im Hauptspeicher in $40:02 (Hex) (Quelle)

Dann musst du aber das Mausprotokoll kennen. Ich erinnere mich noch schwach, dass meine damalige serielle Maus sogar noch umschaltbar war zwischen 2- und 3-Tastenmodus (Microsoft- bzw. MouseSystemsprotokoll, wenn ich richtig liege).

Bei ner PS/2-Maus hast du es einfacher, dort duerfte das Protokoll standardisiert sein. AFAIK wird der PS/2-Anschluss sogar ueber den Tastaturcontroller mitgesteuert, dort liegen auch die Funktionen.

Aber ich glaube, jemand anders kann das besser beschreiben :-)

Svenska
1773
Lowlevel-Coding / altes Laptop oder was? CNC-BOY von Sanyo
« am: 25. January 2005, 17:43 »
Zum laufen bringen kannst du es mit einem stinknormalen Betriebssystem, welches noch auf einer solchen Maschine läuft.

Lauffähig sind MS-DOS bis 6.22 - aber ich glaube, nur bis DOS 5.0 konnte man es auf Diskette installieren. Was sind das fuer Disketten - 720 KB oder 1.44 MB? Oder gar 360 KB Riesenlappen? Windows läuft bis zur Version 2.11 da drauf, die gibt es sogar auf Deutsch :-)

Dann wäre als Unixartiges System noch MINIX drin, das läuft in der zweitaktuellsten Version (die neuste hat einen Fehler). Aber dazu wäre eine 20- oder 30-MB-Festplatte besser...

Mit genug Arbeit kannst du ein gutes Betriebssystem dafuer schreiben. Aber ich persönlich fände dort Assembler besser, da jeder ueberfluessige Befehl in einer Schleife bemerkt wird (8 Mhz sind zwar Turbo, aber trotzdem nicht zu viel)

Hoffe, du kannst es verwerten, was ich schrieb :-)

Svenska
1774
Zitat von: elfish_rider
So ich finde das reicht, wir schweifen immer mehr von DANIXos ab..

Liegt wohl daran, dass die Idee von DanixOS nicht so gut war... *ironie*
1775
noch komplizierter? :D
Masse ist konstant. Messen tut man aber die Kraft, die das Gravitationsfeld auf den Körper ausuebt. Also misst man die Gewichtskraft. Da das Gravitationsfeld aber auf der Erde ueberall (fast) gleich stark ist, schliesst man auf die Masse. Soweit klar?
Man kann die Masse nicht direkt messen, da der Bezugspunkt fehlt. Die Gewichtskraft hat eine Richtung (ist vektoriell), im Zweifelsfall nach unten auf die Waage. Auch logisch?
Auf dem Mond hingegen ist das Gravitationsfeld schwächer und damit auch die Gewichtskraft. Die Masse können wir ja nicht messen ... also muessen wir den Unterschied versummen nach irgendwelchen Formeln und können dann wieder auf die Masse schliessen. Auf dem Mond ist man nämlich genauso schwer (Gravitationskraft) wie auf der Erde, wenn das Gravitationsfeld gleich null ist (da man die Masse ja nicht messen kann) *lach*

Theoretisch könnte man die Masse messen, indem man ohne äussere Einwirkungen die unbekannte Masse gegen eine bekannte Masse wirft und unter Beruecksichtigung des Schwunges und des Abtriebes der Massen voneinander (Impuls & Co) alles berechnet... aber ich glaube, dass macht keiner *lach*

So, erstmal genug Verwirrung meinerseits.

Svenska
1776
Zitat von: Roshl
Ausserdem wenn du sagst 1Kilo Zucker redest du im allgemeinen von der Gewichtskraft nicht von der Masse ;)

Die Gewichtskraft wird in Newton angegeben, die Masse in Kilogramm.
Also reden wir von der Masse; welche auf der Erde definiert wurde.

Und genau darum geht es nicht, 2 kg Zucker nach unten links zu kaufen :)

Zitat von: Roshl
Denn ob wir die Masse feststellen können hängt von der Gravitation ab, und hätten wir einen Massekörper in 2 Gravitionsfeldern, hätte doch rein mathematisch der Körper 2 messbare Massen^^ also eine in RICHTUNG Feld 1 die andere in RICHTUNG Feld 2. Also wäre Masse demnach vektoriell

Nein, denn du wuerdest in dem Moment die Gewichtskraft messen. Davon hättest du zwei Stueck in jeweils eine Richtung zum Gravitstionsfeld. Und Kraft ist vektoriell und von daher ... Masse ist und bleibt skalar :)

Svenska

PS: Um mal vom OT wegzukommen; ich stimme Roshl in allen Punkten des Aufsatzes 100%ig zu und ich mag lange Aufsätze :)
1777
Lowlevel-Coding / Standart...
« am: 21. January 2005, 18:30 »
Den Standard gibt es. Wenn du ihn in deinem OS z.B. mit einer Bibliothek zur Verfuegung stellst.
Eine CD kannst du z.B. normalerweise nicht beschreiben, und während du eine Diskette ueber Kopf/Cylinder/Sektor ansprichst, hast du beim CD-Laufwerk AFAIK eine fortlaufende Adresse. Ein USB-Stick wiederum hat sein eigenes Protokoll usw.
Das Betriebssystem _kann_ dann diese verschiedenen Arten unter einen Hut bringen (Unixdevices etc.)

Svenska
1778
OS-Design / Bootmediumtreiber & Speicheraufteilung
« am: 21. January 2005, 18:24 »
*g* ich meinte N00b :-)
1779
OS-Design / Bootmediumtreiber & Speicheraufteilung
« am: 20. January 2005, 21:29 »
Geile Antwort... ueberhaupt nicht auf die Frage bezogen *lol*

Ich wuerde sagen, dass ne USB-Floppy als "A:" angesprochen wird im RM... muesste man nur abchecken, ob es auch ne USB-Floppy is.
Mich interessieren eher USB-HDDs etc...
1780
OS-Design / Bootmediumtreiber & Speicheraufteilung
« am: 20. January 2005, 18:15 »
Also, ich habe mir das in etwa folgendermassen gedacht.
Der Bootloader lädt den RM-Kernel mittels BIOS-Funktionen an eine feste Speicheradresse und fuehrt ihn aus. Logisch.
Dieser Kernel prueft ein paar Systemvoraussetzungen (i386+, 2 MB RAM, MDA/CGA+ etc) und checkt das Bootlaufwerk ab.
Ist es nicht das Diskettenlaufwerk, so lädt er mit den Biosfunktionen den Treiber nach und richtet den Speicher PM-kompatibel ein (umgebaut wird sowieso später noch). Dann lädt er im PM mit dem geladenen Treiber den "richtigen" Kernel und bootet ihn.
Nun meine Frage: Habe ich einen Denkfehler drin, wenn es um Bootmedien á la USB etc. geht oder ist das möglich?


An die Speicheraufteilung habe ich in etwa so gedacht (im RM)
(verzeiht mir die Dezimaladressen...)

1024k
BIOS-Datenbereich (nicht anfassen; 384 KB)
640k
RM-Kernel (384 KB)
256k
Bootmediumstreiber, wenn nötig (128 KB)
128k
PM-Speicher (Anfangs-GDT usw. ; 64 KB)
64k
Stack (56 KB)
8k
Bootloaderinformationen (was das BIOS erlaubt; 7 KB)
1k
RM-IDT (festgelegt, 1 KB)
0k

reicht das von der Platzaufteilung oder ist das vollkommen schrott?

Svenska
Seiten: 1 ... 87 88 [89] 90

Einloggen