Inhaltsverzeichnis 5
Total Page:16
File Type:pdf, Size:1020Kb
Inhaltsverzeichnis 5 Inhaltsverzeichnis Vorwort 13 Vorwort zur 2. Auflage 15 1 Einführung 17 1.1 Das Speicherabbild der 8086/8088-Prozessören 17 1.2 Die Segment:Offset-Notation 18 1.3 Die Speicheraüfteilung durch Intel 19 1.4 Die Speicherbelegung durch MS-DOS 21 1.5 Die Aufteilung des 640-Kbyte-MS-DC)S-RAM-Bereiches 23 1.6 Die MS-DOS-Interrupt-Vektor-Tabelle 24 1.7 Der BIOS-Datenbereich 30 1.8 Der DOS-Datenbereich 35 1.9 Die Funktion des Programmes IO.SYS (IBMBIO.COM) 36 1.10 Die Funktion des Programmes MSDOS.SYS (IBMDOS.COM) 39 1.11 Die Funktion des Programmes COMMAND.COM 39 2 Die BIOS-Funktionen 41 2.1 Print-Screen-Funktion (INT 5) 41 2.2 B [OS-Bildschirmausgabe (INT 10) 41 2.3 Hardwarekonfiguration (INT 11) 52 2.4 Speichergröße ermitteln (INT 12) 53 2.5 Disketten- und Festplatten-Steuerung (INT 13) 53 2.6 Serielle Schnittstelle (INT 14) 71 2.7 (INT 15) 76 2.8 Tastatur abfragen (INT 16) 88 2.9 Druckerschnittstelle (INT 17) 92 2.10 ROM-Basic (INT 18) 93 2.11 Bootstrap (INT 19) 93 2.12 Systemzeit (INT 1A) 93 2.13 Tastatur-Break (INT 1B) 96 2.14 Timer-Interrupt (INT IC) 96 http://d-nb.info/900868430 6 Inhaltsverzeichnis 2.15 Bildschirm-Initialisierung (INT 1D) 96 2.16 Disk-Parameter (INT IE) 97 2.17 Grafik-Tabelle (INT 1F) 98 3 Die MS-DOS-Interrupts 99 3.1 Program Terminate (INT 20) 101 3.2 MS-DOS-Funktionsdispatcher (INT 21) 101 3.3 Terminate Process Exit Address (INT 22) 102 3.4 Control-C Exit Handler Address (INT 23) 102 3.5 Critical Error Handler Address (INT 24) 103 3.6 Absolute Disk Read (INT 25) 108 . • 3.7 Absolute Disk Write (INT 26) 112 3.8 Terminate But Stay Resident (INT 27) 114 3.9 Start a Resident Process (INT 28 undokumentiert) 115 3.10 Screen Output (INT 29 undokumentiert) 116 3.11 Microsoft Netzwerk-Session Layer Interrupt (INT 2A undok.) 117 3.12 Start a Child Process (INT 2E undokumentiert) 119 3.13 Multiplexer-Interrupt (INT 2F undokumentiert) 120 3.14 Der Maus-Treiber-Interrupt (INT 33) 147 3.15 INT 34 bis INT 3E 159 3.16 Overlay Manager (INT 3FH) 159 3.17 Disktreiber (INT 40) 160 3.18 Parametertabelle Festplatte (INT 41, INT 42) 160 3.19 EGA-Videostatus (INT 42) 161 3.20 EGA-Grafikzeichensatz (INT 43) 161 3.21 EGA-Interrupt (INT 44) 161 3.22 Timer-Alarm (INT 4A, INT 50) 161 3.23 GSS Computer Graphic Interface (INT 59H) 162 3.24 NETBIOS Interface (INT 5CH) 162 3.25 PC/TCP Packet Driver (INT 60H) 162 3.26 EMS-Treiber (INT 67H) 162 3.27 DOS 3.2 Realtime Clock Update (INT 6CH) 162 3.28 VGA-Interrupt (INT 6DH) 163 3.29 HP ES-12 Extended BIOS (INT 6FH) 163 4 Die MS-DOS-Funktionen (INT 21) 164 4.1 Terminate Program (Funktion 00H, DOS 2.0-4.x) 169 4.2 Read Keyboard and Echo (Funktion 01H, DOS 2.0-4.x) 169 4.3 Display Character (Funktion 02H, DOS 2.0-4.x) 170 4.4 Auxiliary Input (Funktion 03H, DOS 2.0-4.x) 170 4.5 Auxiliary Output (Funktion 04H, DOS 2.0-4.x) 171 4.6 Print Character (Funktion 05H, DOS 2.0-4.X) 171 4.7 Direct Console I/O (Funktion 06H, DOS 2.0-4.x) 171 Inhaltsverzeichnis 7 4.8 Direct Console Input (Funktion 07H, DOS 2.0-4.x) 172 4.9 Read Keyboard (Funktion 08H, DOS 2.0-4.x) 172 4.10 Display String (Funktion 09H, DOS 2.0-4.x) 172 4.11 Buffered Keyboard Input (Funktion OAH, DOS 2.0-4.x) 173 4.12 Check Keyboard Status (Funktion OBH, DOS 2.0-4.x) 174 4.13 Flush Buffer, Read Keyboard (Funktion OCH, DOS 2.0-4.x) 174 4.14 Reset Disk (Funktion ODH, DOS 2.0-4.x) 175 4.15 Select Disk (Funktion OEH, DOS 2.0-4.x) 175 4.16 Open File (Funktion OFH, DOS 2.0-4.x) 176 4.17 Close File (Funktion 10H, DOS 2.0-4.x) 177 4.18 Search for First Entry (Funktion 11H, DOS 2.0-4.XJ 177 4.19 Search for Next Entry (Funktion 12H, DOS 2.0-4.x) 178 4.20 Delete File (Funktion 13H, DOS 2.0-lx) 179 4.21 Sequential Read (Funktion 14H, DOS 2.0-4.x) 179 4.22 Sequential Write (Funktion 15H, DOS 2.0-4.x) 180 4.23 Create File (Funktion 16H, DOS 2.0-4.x) 181 4.24 Rename File (Funktion 17H, DOS 2.0-4.x) 181 4.25 Get Current Disk (Funktion 19H, DOS 2.0-4.x) 182 4.26 Set Disk Transfer Address (Funktion IAH, DOS 2.0-4.x) 182 4.27 Get Default Drive Data (Funktion 1BH, DOS 2.0-4.x) 183 4.28 Get Drive Data (Funktion ICH, DOS 2.0-4.x) 184 4.29 Get Default Disk Parameter Block (Funktion 1FH, undokumentiert) 184 4.30 Random Read (Funktion 21H, DOS 2.0-4.x) 186 4.31 Random Write (Funktion 22H, DOS 2.0-4.x) 187 4.32 Get File Size (Funktion 23H, DOS 2.0-4.x) 188 4.33 Set Relativ Record (Funktion 24H, DOS 2.0-4.x) 188 4.34 Set-Interrupt-Vektor (Funktion 25H, DOS 2.0-4.x) 189 4.35 Create New PSP (Funktion 26H, DOS 2.0-4.x) 189 4.36 Random Block Read (Funktion 27H, DOS 2.0-4.x) 190 4.37 Random Block Write (Funktion 28H, DOS 2.0-4.x) 191 4.38 Parse File Name (Funktion 29H, DOS 2.0-4.x) 191 4.39 Get Date (Funktion 2AH, DOS 2.0-4.x) 193 4.40 Set Date (Funktion 2BH, DOS 2.0-4.x) 194 4.41 Get Time (Funktion 2CH, DOS 2.0-4.x) 194 4.42 Set Time (Funktion 2DH, DOS 2.0-4.x) 194 4.43 Set/Reset Verify Flag (Funktion 2EH, DOS 2.0-4.x) 195 4.44 Get Disk Transfer Address (Funktion 2FH, DOS 2.0-4.x) 195 4.45 Get MS-DOS Version Number (Funktion 30H, DOS 2.0-4.x) 196 4.46 Keep Process (Funktion 31H, DOS 2.0-4.x) 196 4.47 Get Disk Parameter Block (Funktion 32H, DOS 2.0-4.X, undok.) 197 4.48 Control-C Check (Funktion 33H, DOS 2.0-4.X) 199 4.49 Get DOS Critical Interval Flag (Funktion 34H, DOS 2.0-4.x) 201 4.50 Get Interrupt-Vektor (Funktion 35H, DOS 2.0-4.x) 202 8 Inhaltsverzeichnis 4.51 Get Free Disk Space (Funktion 36H, DOS 2.0-4.x) 202 4.52 Get/Set Switch Character (Funktion 37H, DOS 2.0-4.x) 203 4.53 Get/Set Country Data (Funktion 38H) 204 4.53.1 Get Country Data (Funktion 38H, DOS 2.x) 205 4.53.2 Get Country Data (Funktion 38H, DOS 3.0-4.x) 206 4.53.3 Set Country Data (Funktion 38H, DOS 3.0-4.x) 209 4.54 Create Directory (Funktion 39H, DOS 2.0-4.x) 210 4.55 Remove Directory (Funktion 3AH, DOS 2.0-4.x) 210 4.56 Change Current Directory (Funktion 3BH, DOS 2.0-4.x) 211 4.57 Create Handle (Funktion 3CH, DOS 2.0-4.x) 212 4.58 Open Handle (Funktion 3DH) 212 4.58.1 Open Handle (Funktion 3DH, DOS 2.x) 213 4.58.2 Open Handle (Funktion 3DH, DOS 3.0-4.x) 213 4.59 Close Handle (Funktion 3EH, DOS 2.0-4.x) 217 4.60 Read from a File or Device (Funktion 3FH, DOS 2.0-4.x) 217 4.61 Write to a File or Device (Funktion 40H, DOS 2.0-4.x) 218 4.62 Delete (Unlink) Directory Entry (Funktion 41H, DOS 2.0-4.x) 219 4.63 Move File Pointer (Funktion 42H, DOS 2.0-4.x) 219 4.64 Get/Set File Attributes (Funktion 43H, DOS 2.0-4.x) 220 4.65 IOCTL Data (Funktion 44H, DOS 2.0-4.x) 221 4.65.1 IOCTL Data (Funktion 44H, Code 0 und 1, DOS 2.0-4.x) 222 4.65.2 IOCTL Character (Funktion 44H, Code 2 und 3, DOS 2.0-4.x) 225 4.65.3 IOCTL Block (Funktion 44H, Code 4 und 5, DOS 2.0-4.x) 225 4.65.4 IOCTL Status (Funktion 44H, Code 6 und 7, DOS 2.0-4.x) 226 4.65.5 IOCTL is Changeable (Funktion 44H, Code 8, DOS 3.0-4.x) 227 4.65.6 IOCTL is Redirected Block (Funktion 4409H, DOS 3.l^.x) 227 4.65.7 IOCTL is Redirected Handle (Funktion 440AH, DOS 3.l-4.x) 228 4.65.8 IOCTL Retry (Funktion 44H, Code 0BH, DOS 3.0-4.x) 229 4.65.9 Generic IOCTL Handle Request (Funktion 440CH, DOS 3.3-4.x) 230 4.65.10 Generic IOCTL Request (Funktion 44H, Code 0DH, DOS 3.2-4.x) 237 4.65.11 I/O Control for Device (Funktion 440EH, DOS 3.2-4.x) 244 4.65.12 Set Logical Drive (Funktion 440FH, DOS 3.2-3.3) 245 4.66 Duplicate File Handle (Funktion 45H, DOS 2.0-4.x) 245 4.67 Force Duplicate File Handle (Funktion 46H, DOS 2.0-4.x) 246 4.68 Get Current Directory (Funktion 47H, DOS 2.0-4.x) 247 4.69 Allocate Memory (Funktion 48H, DOS 2.0-4.x) 247 4.70 Free Allocated Memory (Funktion 49H, DOS 2.0-4.x) 248 4.71 Set Block (Funktion 4AH, DOS 2.0-4.x) 249 4.72 Load or Execute a Program (Funktion 4BH, DOS 2.0-4.x) 249 4.72.1 Load and Execute (AL = 0) 249 4.72.2 Load (AL = 1 undokumentiert) 252 4.72.3 Load Overlay (AL = 3) 253 4.73 Terminate a Process (Funktion 4CH, DOS 2.0-4.x) 253 Inhaltsverzeichnis 9 4.74 Get Returncode (Funktion 4DH, DOS 2.0-4.x) 254 4.75 Find First Matching File (Funktion 4EH, DOS 2.0-4.x) 254 4.76 Find Next File (Funktion 4FH, DOS 2.0-4.x) 255 4.77 Set Active PSP (Funktion 50, DOS 2.0-4.X, undokumentiert) 256 4.78 Get Active PSP (Funktion 51, DOS 2.0-4.x, undokumentiert) 256 4.79 Get DOS Data Address (Funktion 52, DOS 2.0-4.X, undokumentiert) 257 4.80 Set Disk Parameter Block (Funktion 53, DOS 2.0-4.X, undok.) 258 4.81 Get Verify State (Funktion 54H, DOS 2.0-4.X) 258 4.82 Install New Process (Funktion 55H, DOS 2.0-4.X, undok.) 258 4.83 Rename File (Funktion 56H, DOS 2.0-4.x) 259 4.84 Get/Set File Date and Time (Funktion 57H, DOS 2.0-4.x) 260 4.85 Get/Set Allocation Strategie (Funktion 58H, DOS 2.0-4.x) 260 4.86 Get Extended Error (Funktion 59H, DOS 3.0-4.x) 261 .