1 | ; Project name : XTIDE Universal BIOS |
---|
2 | ; Description : Equates used in INT 13h functions. |
---|
3 | |
---|
4 | ; |
---|
5 | ; XTIDE Universal BIOS and Associated Tools |
---|
6 | ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2013 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 | |
---|
20 | %ifndef INT13H_INC |
---|
21 | %define INT13H_INC |
---|
22 | |
---|
23 | ; Hard Disk function (INT 13h) return status codes in AH |
---|
24 | RET_HD_SUCCESS EQU 0h ; Operation successful, no error occurred |
---|
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 (floppy) |
---|
28 | RET_HD_NOT_FOUND EQU 4h ; Requested sector not found |
---|
29 | RET_HD_RESETFAIL EQU 5h ; Reset failed (hard disk) |
---|
30 | RET_HD_CHANGED EQU 6h ; Floppy disk removed/Disk changeline (floppy) |
---|
31 | RET_HD_PARAMACT EQU 7h ; Drive parameter activity failed (Bad parameter table (hard disk)/Initialization failed) |
---|
32 | RET_HD_OVERRUN EQU 8h ; DMA overrun (floppy) |
---|
33 | RET_HD_BOUNDARY EQU 9h ; Data boundary error (DMA crossed 64K boundary) |
---|
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 | |
---|
64 | %define TIMEOUT_AND_STATUS_TO_WAIT(timeout, status) (((timeout)<<8) | (status)) |
---|
65 | |
---|
66 | |
---|
67 | %endif ; INT13H_INC |
---|