Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes | ||
back2root:ibm-pc-ms-dos:interrupts:int_13:start [2023/01/17 21:59] – frater | back2root:ibm-pc-ms-dos:interrupts:int_13:start [2023/01/19 21:39] – [and return with:] frater | ||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
<nspages -h1 -simpleList -exclude: | <nspages -h1 -simpleList -exclude: | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | |||
+ | {{anchor: | ||
+ | The 1983 version of the "IBM XT BIOS Technical Reference" | ||
+ | This is probably due to misunderstanding the design of the disk BIOS. Upon bootup the hard disk BIOS replaces the default INT 13h diskette handler with the hard disk INT 13h handler. | ||
+ | |||
+ | |||
+ | === Most disk BIOS calls use the following parameter scheme: === | ||
+ | |||
+ | ^ reg ^ description ^ | ||
+ | |AH | function request number| | ||
+ | |AL | number of sectors | ||
+ | |CH | cylinder number | ||
+ | |CL | sector number (1-17 dec.)| | ||
+ | |DH | head number | ||
+ | |DL | drive number (0=A:, 1=2nd floppy, 80h=drive 0, 81h=drive 1)| | ||
+ | |DL | drive number (0=A:, 1=2nd floppy, 80h=C:, 81h=D:)\\ Note that some programming references use (0-3) as the drive number which represents diskettes only.| | ||
+ | |ES:BX | address of user buffer| | ||
+ | |||
+ | |||
+ | === and return with: === | ||
+ | |||
+ | | CF | 0 if successful \\ 1 if error | | ||
+ | | AH | status of operation | ||
+ | |||
+ | |||
+ | * INT 13 diskette read functions should be retried at least 3 times to assure the disk motor has time to spin up to speed | ||
+ | * physical sector numbers can be converted to and from DOS sector numbers with the following formulas: | ||
+ | |||
+ | <WRAP round box 75%> | ||
+ | <m 15> | ||
+ | |||
+ | <m 15> | ||
+ | |||
+ | <m 15> | ||
+ | |||
+ | <m 15> | ||
+ | </ | ||
[[back2root: | [[back2root: | ||