Informationen im DOS 2.x/MyDOS Bootblock
Informationen im DOS 2.x/MyDOS Bootblock
von matti1104 » Di 26. Jun 2012, 12:12
Hallo,
weiss evtl. jemand, ob es irgendwo eine Übersicht gibt, in der alle relevanten Informationen aufgeführt sind, die sich im Bootblock einer Disk im DOS 2.x oder MyDOS-Format befinden? Im ATARI-Profibuch habe ich dazu leider nichts gefunden.
Gruß,
Mathias
Re: Informationen im DOS 2.x/MyDOS Bootblock
von HiassofT » Di 26. Jun 2012, 13:52
Matti1104 hat geschrieben:weiss evtl. jemand, ob es irgendwo eine Übersicht gibt, in der alle relevanten Informationen aufgeführt sind, die sich im Bootblock einer Disk im DOS 2.x oder MyDOS-Format befinden? Im ATARI-Profibuch habe ich dazu leider nichts gefunden.
Die Informationen im Boot-Sektor sind nur bei SpartaDos spezifiziert, bei DOS 2.x/MyDOS kann alles mögliche im Bootsektor stehen.
Während der Arbeit an AtariSIO / dir2atr hatte ich mir die verschiedensten Boot-Sektoren genauer angesehen, die sind bei den DOSsen recht unterschiedlich.
Was dann auch noch dazukommt sind die ganzen Tools um DOS 2.x ATRs zu erzeugen und GameDOSse, da ist wieder alles ganz anders.
Kurzum: bei DOS 2.x kompatiblen Dateisystemen findest Du im Bootsektor nichts wirklich hilfreiches.
so long,
Hias
Re: Informationen im DOS 2.x/MyDOS Bootblock
von matti1104 » Di 26. Jun 2012, 19:13
H Hias,
Ah so. Vielen Dank für die Info! Das hätte ich allerdings nicht gedacht, dass es unter DOS 2.X keinen "genormten" bzw. standardisierten Bootsektor gibt. Hast Du denn mal ungefähr in Erfahrung gebracht, was dort ungefähr für Daten abgelegt werden, oder ist das größten Teils nur Datenmüll? Ich hatte mit den Bootsektor einer formatierten Disk mal mit dem HEX-Editor angesehen. Die Bytewerte sehen zumindest immer gleich aus, je nachdem ob man die Disk in Single, Medium oder Double Density formatiert. Irgendwelche sinnvollen Daten sollten doch dann enthalten sein…?
Gruß,
Mathias
Re: Informationen im DOS 2.x/MyDOS Bootblock
von kbr » Di 26. Jun 2012, 21:46
Das einzige, was da meines Wissens genormt ist, sind die ersten 6 bytes, damit das System die Diskette booten kann:
1-2: Anzahl Bootsektoren, die automatisch geladen werden sollen(meist 3)
3-4: Ladeadresse im RAM(meist 0x700)
5-6: Run-Adresse(evtl. bei jedem DOS gleich)
Im Prinzip kann man ab byte 7 dann sein beliebiges Bootprogramm ablegen. Diese Adresse wird immer nach dem Laden der Bootsektoren angesprungen. Bei DOS liegt dort ein JMP 0x714, und danach folgen noch ein paar weitere Definitionen, u. A., wieviele Laufwerke unter DOS aktiv sind(default 2).
Bei 0x714 beginnt dann das DOS-Bootprogramm, welches dann im Prinzip nur die Sektoren für das DOS in den Speicher lädt. Das dürfte auch bei jeder Version identisch sein.
Bitte nagelt mich jetzt nicht fest, ob das alles so korrekt ist, das war jetzt alles aus dem Kopf, aber das Prinzip sollte stimmen. Aber dazu müsste doch im Profi-Buch auch was zu finden sein, ich hab das zumindest schon mal irgendwo gelesen...
Re: Informationen im DOS 2.x/MyDOS Bootblock
von matti1104 » Di 26. Jun 2012, 21:53
Hallo kbr,
na das ist doch schon mal was, top! Ich schau das Profibuch nochmal durch. Evt. finde ich ja doch noch weitere Infos zu dem Thema.
Gruß,
Mathias
Re: Informationen im DOS 2.x/MyDOS Bootblock
von kbr » Di 26. Jun 2012, 23:25
Kuck mal hier
http://www.atariarchives.org/mapping/memorymap.php.
Ab Adresse 1792-5377 ($700) ist der Bootblock usw. ganz gut beschrieben. Stammt aber wohl alles noch aus DOS2.0 Zeiten.
Re: Informationen im DOS 2.x/MyDOS Bootblock
von Mathy » Di 26. Jun 2012, 23:48
Hallo Matti1104
Stelle deine Frage doch mal auf AtariAge. Da gibt es einige die sich mit DOS 2.x Kompatiblen DOSse auseinander gesetzt haben.
Tschüß
Mathy
Re: Informationen im DOS 2.x/MyDOS Bootblock
von HiassofT » Mi 27. Jun 2012, 01:35
Die meisten DOSen schreiben in die ersten 3 Boot-Sektoren einfach die Daten die dann von $0700-$087F im Speicher stehen.
Dort liegt zB der Code zum Nachladen des restlichen DOS.SYS Files, und die meisten DOSen haben dort auch einige Bytes für die DOS-Konfiguration abgelegt (zB Anzahl der Laufwerke / Buffer und so Zeugs).
Die Speicheradressen der DOS-Konfiguration waren nie wirklich standardisiert, einige DOSen haben sich aber grob an die Adressen von DOS 2.0/2.5 gehalten. In den Anleitungungen von TurboDos und BiboDos sind viele Adressen dokumentiert - man sollte aber immer dran denken, daß bei MyDos, SmartDos etc das alles ganz anders aussehen kann.
Der Inhalt der Boot-Sektoren ist also, genauso wie die internen Config-Adressen des DOS, sehr DOS spezifisch. Der Programm-Code da drin ist _sehr_ unterschiedlich, jede der vielen TurboDos und BiboDos Versionen hat unterschiedlichen Code.
Infos zum Dateisystem findet man darin so gut wie nicht, irgendwo steht halt der Start-Sektor von DOS.SYS (dem Rest des DOS.SYS Codes, abzüglich des Codes in den Boot-Sektoren) und evtl. die Disk-Density (SD/DD). Das alles findet man aber über's Directory bzw das GetStatus Kommando viel einfacher raus - dafür muss man nicht wissen, welche DOS Version die Boot-Sektoren geschrieben hat.
so long,
Hias