[150] | 1 | ; Project name : XTIDE Universal BIOS
|
---|
[3] | 2 | ; Description : Equates used in INT 13h functions.
|
---|
[376] | 3 |
|
---|
| 4 | ;
|
---|
| 5 | ; XTIDE Universal BIOS and Associated Tools
|
---|
| 6 | ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team.
|
---|
| 7 | ;
|
---|
| 8 | ; This program is free software; you can redistribute it and/or modify
|
---|
| 9 | ; it under the terms of the GNU General Public License as published by
|
---|
| 10 | ; the Free Software Foundation; either version 2 of the License, or
|
---|
| 11 | ; (at your option) any later version.
|
---|
| 12 | ;
|
---|
| 13 | ; This program is distributed in the hope that it will be useful,
|
---|
| 14 | ; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
| 15 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
---|
| 16 | ; GNU General Public License for more details.
|
---|
| 17 | ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
---|
| 18 | ;
|
---|
| 19 |
|
---|
[3] | 20 | %ifndef INT13H_INC
|
---|
| 21 | %define INT13H_INC
|
---|
| 22 |
|
---|
| 23 | ; Hard Disk function (INT 13h) return status codes in AH
|
---|
[294] | 24 | RET_HD_SUCCESS EQU 0h ; Operation successful, no error occurred
|
---|
[3] | 25 | RET_HD_INVALID EQU 1h ; Invalid value passed or unsupported func
|
---|
| 26 | RET_HD_ADDRMARK EQU 2h ; Missing address mark
|
---|
| 27 | RET_HD_WRITEPROT EQU 3h ; Removable media is write protected
|
---|
| 28 | RET_HD_NOT_FOUND EQU 4h ; Requested sector not found
|
---|
| 29 | RET_HD_RESETFAIL EQU 5h ; Reset failed
|
---|
| 30 | RET_HD_CHANGED EQU 6h ; Media changed
|
---|
| 31 | RET_HD_PARAMACT EQU 7h ; Drive parameter activity failed
|
---|
| 32 | RET_HD_OVERRUN EQU 8h ; DMA overrun
|
---|
| 33 | RET_HD_BOUNDARY EQU 9h ; Data boundary error
|
---|
| 34 | RET_HD_BADSECTOR EQU 0Ah ; Bad sector detected
|
---|
| 35 | RET_HD_BADTRACK EQU 0Bh ; Bad track detected
|
---|
| 36 | RET_HD_UNCORRECC EQU 10h ; Uncorrectable ECC error
|
---|
| 37 | RET_HD_ECC EQU 11h ; Corrected ECC error
|
---|
| 38 | RET_HD_CONTROLLER EQU 20h ; Hard disk controller or drive problem
|
---|
| 39 | RET_HD_NOMEDIA EQU 31h ; No media in removable media drive
|
---|
| 40 | RET_HD_SEEK_FAIL EQU 40h ; Seek operation failed
|
---|
| 41 | RET_HD_TIMEOUT EQU 80h ; Drive failed to respond
|
---|
| 42 | RET_HD_NOTREADY EQU 0AAh ; Drive is not ready or is not selected
|
---|
| 43 | RET_HD_NOTLOCKED EQU 0B0h ; Volume not locked in drive
|
---|
| 44 | RET_HD_LOCKED EQU 0B1h ; Volume locked in drive
|
---|
| 45 | RET_HD_NOTREMOVABLE EQU 0B2h ; Volume not removable
|
---|
| 46 | RET_HD_INUSE EQU 0B3h ; Volume in use
|
---|
| 47 | RET_HD_LOCKEXCEEDED EQU 0B4h ; Lock count exceeded
|
---|
| 48 | RET_HD_EJECTFAIL EQU 0B5h ; Valid eject request failed
|
---|
| 49 | RET_HD_UNDEFINED EQU 0BBh ; Undefined error occurred
|
---|
| 50 | RET_HD_WRFAULT EQU 0CCh ; Write fault on selected drive
|
---|
| 51 | RET_HD_STATUSERR EQU 0E0h ; Status error without error
|
---|
| 52 | RET_HD_SENSEFAIL EQU 0FFh ; Sense operation failed
|
---|
| 53 |
|
---|
| 54 |
|
---|
| 55 | ; Floppy Drive types returned by INT 13h, AH=08h
|
---|
| 56 | FLOPPY_TYPE_525_OR_35_DD EQU 0
|
---|
| 57 | FLOPPY_TYPE_525_DD EQU 1
|
---|
| 58 | FLOPPY_TYPE_525_HD EQU 2
|
---|
| 59 | FLOPPY_TYPE_35_DD EQU 3
|
---|
| 60 | FLOPPY_TYPE_35_HD EQU 4
|
---|
| 61 | FLOPPY_TYPE_35_ED EQU 6
|
---|
| 62 |
|
---|
| 63 |
|
---|
[150] | 64 | %define TIMEOUT_AND_STATUS_TO_WAIT(timeout, status) (((timeout)<<8) | (status))
|
---|
| 65 |
|
---|
| 66 |
|
---|
[3] | 67 | %endif ; INT13H_INC
|
---|