von Frederik Holst Diesmal dreht sich alles um Page seven: Die Page Seven ist der Ort, in den der Bootsektor gelesen wird. Folgende Bytes haben spezielle Bedeutungen: 1792 $700 BFLAG Bootflag. Ist immer null, da es unbenutzt ist. 1793 $701 BRCNT Anzahl der noch zu lesenden Sektoren bei einer Bootdisk. Wenn das DOS File folgt, dann ist BRCNT gleich eins. 1794, 1795 $702, $703 BLDADR Boot Sektor Ladeadresse. Hier steht die Adresse in die der Bootsektor gelesen werden soll. Ist bei normalen Bootdisks immer $700. 1796, 1797 $704, $705 BIWTARR Initialisierungsadresse (vgl. 738, 739 INITAD) 1798 $706 JMP XBCONT Ist $4B (75) was einem JMP entspricht. Die Zieladresse steht in XBCONT. 1799, 1800 $707, $708 XBCONT Adresse, an der fortgesetzt werden kann, wenn der Ladevorgang beendet ist (LSB/MSB). 1801 $709 SABYTE Hier steht die Anzahl der maximal möglichen geöffneten Files unter DOS 2.0. Wer nicht die DOS Utilities hat, kann mit einem Diskmonitor selbst Hand anlegen. 1802 $70a DRVBYT In diesem Byte ist die maximale Anzahl der Floppys gespeichert. Jedes gesetzte Bit repräsentiert eine Floppy. So ist z.B. 00000001 eine Floppy und 00000011 zwei Floppys und 00000111 drei Floppys usw. Je mehr Floppys angeschlossen sind, desto mehr Bufferspeicher wird benötigt. 1803 $70b UNUSED Unbenutztes Byte, das auf null gesetzt wurde. 1804, 1805 $70c, $70d SASA Buffer Allocation Start Adresse. Zeigt auf 1995 wenn DOS geladen ist. 1806 $70e DSFLG DOS Flag. Wenn es gleich null ist, bedeutet dies, daß kein DOS.SYS auf der Disk ist. Ist es ungleich null, so befindet sich ein DOS.SYS auf der Disk. Eins bedeutet, daß es eine Disk mit 128 Byte per Sector ist, zwei bedeutet, daß es eine mit 256 ist. 1807, 1808 $70f, $710 DFLINK Sektor Zeiger auf das DOS.SYS File. 1809 $711 BLDIPS Länge des Sektors. Normalerweise ist ein Sektor 125 Byte lang, danach folgt die Linksequenz. Wenn hier null steht, dann ist das File zu Ende. 1810, 1811 $712, $713 DFLADR Startadresse des DOS.SYS Files. ab 1812 ab $714 CODE Ab hier geht dann der Programmcode des eigentlichen Programms weiter. Die nun folgenden Adressen sind natürlich von Programm zu Programm unterschiedlich. Da aber das DOS noch sehr interessante Adressen und Einsprünge hat, wird auf diese nun näher eingegangen werden. 1900 $7bc BSIO Sprungadresse für die FMS (File Management System, Teil des DOS) Sektor IO-Routinen 1906 $772 BSIOR Sprungadresse für den FMS Disk Handler. 1913 $779 VERFLAG Hier steht das Flag, ob für die Schreib Operationen ein Verify durchgeführt werden soll. Dies bedeutet, daß die gerade geschriebenen Daten nochmals gelesen werden und mit dem ursprünglich zu schreibenden Wert verglichen werden. Dies verlangsamt natürlich die Schreiboperationen, ist aber sicherer. Eine 80 schaltet den Verify ab, 87 schaltet ihn wieder an. Nach dem POKE muß man ins DOS gehen und dort das DOS mit Option H abspeichern. 1995 $7cb DFMSDH Spungpunkt zu einem FMS Device Handler. 2016 $7e0 DINT FMS Initialisierungsroutine. 2219 $8ab DFMOPN OPEN Routinen, einschließlich APPEND, UPDATE und OUTPUT. 2508 $900 DFMPUT PUT Byte Routinen 2591 $a1f WTBUR Burst IO-Routinen