SCSI-BIOS: ---------- 7F80 - Herkenningspunt SCSI-BIOS entries, staat: "HD!" 7F83 - 7F86 - 7F89 - Read physical Sector: In: CDE = Sector HL = Buffer adress B = Aantal sectoren A = b7 b6 b5 -> LUN (0-7) b2 b1 b0 -> Target (0-7) Uit: Buffer ingevuld met sector data 7F8C - Write physical Sector (zie Read physical Sector) 7F92 - Inquiry In: HL = Buffer adress Uit: Buffer ingevuld met inquiry (zie SCSI-commando's) 7F95 - Read Capacity In: HL = Buffer adress Uit: Buffer ingevuld met capacity (zie SCSI-commando's) 7F98 - Mode Sense In: HL = Buffer adress Uit: Buffer ingevuld 7F9B - Mode Select (niet! aanzitten) 7F9E - Format Unit (niet! aanzitten, LOW-LEVEL!!!) 7FA1 - Test Unit Ready Bij alles: C-flag geset error, in D=error code (zie onder) Andere adresjes die wel leuk zijn om te weten --------------------------------------------- F189 - Begin werktabel SCSI interface 7C0D - Commando doen (niet standaard!, hier:CALL #7C42,RET C,LD A,E) - HL=Buffer - IX=Pointer commando string - Terug: C-set: fout!, D=fout code Commando string: -ID computer (1,2,4,8,16,32,64,128) -ID target (raad eens) -4 keer 0 -Echte SCSI-command string Errors: ------- -00 : Okee! -02 : Check condition -08 : Target busy -16 : Alleen voor linked commando's -12 : Reservation conflict SCSI-Commando's: ---------------- Read Capacity (#25): +00 = #25 ; Commando +01 = #00 +02 = MSB adress in tabel +03 = ... +04 = ... +05 = LSB +06 = #00 +07 = #00 +08 = #00 Terug: +00 = MSB Hoogste sector +01 = ... +02 = ... +03 = LSB +04 = MSB Sector grootte +05 = ... +06 = ... +07 = LSB Read Defect list (#37) +00 = #37 +01 = LUN +02 = b4 - primary list b5 - grow list (=own list) +03 = #00 +04 = #00 +05 = #00 +06 = #00 +07 = MSB Buffer length +08 = LSB Terug: Header: +00 = Reserved +01 = b4 - primary list b5 - grow list (=own list) +02 = MSB defect list length (/4 = aantal elementen) +03 = LSB List: +04 = MSB sector +05 = ... +06 = ... +07 = LSB Read Sector (#08), Write Sector (#0A), Seek (#0B) +00 = #08 (of #0A, #0B) +01 = b7 b6 b5 -> LUN b4 b3 b2 b1 b0 -> MSB LBA (=sector) +02 = ... +03 = LSB +04 = Transfer length (=aantal sectoren) +05 = #00 +06 = #00 +07 = #00 +08 = #00 Inquiry (#12) Terug: +36 t/m +43 (dec) : Drive serial number (ASCII) +96 t/m +143 : Copyright notice +144 t/m +147 : Distribution serial number Partitie tabel uitbreiding: --------------------------- 0 - Unknown 1 - DOS 12-bit fat 4 - DOS 16-bit fat 5 - Extended partitie