source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Inc/Int13h.inc@ 616

Last change on this file since 616 was 613, checked in by Tomi Tilli, 4 years ago

Added more complex way to limit illegal P-CHS Cylinders. This way more modifications can be easily made later if necessary.
Updated biosdrvs to display unmodified and modified CHS.

File size: 3.0 KB
Line 
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; Signature for XTIDE Universal BIOS specific functions
24XUB_INT13h_SIGNATURE EQU RAMVARS_RAM_SIGNATURE
25
26; Hard Disk function (INT 13h) return status codes in AH
27RET_HD_SUCCESS EQU 0h ; Operation successful, no error occurred
28RET_HD_INVALID EQU 1h ; Invalid value passed or unsupported func
29RET_HD_ADDRMARK EQU 2h ; Missing address mark
30RET_HD_WRITEPROT EQU 3h ; Removable media is write protected (floppy)
31RET_HD_NOT_FOUND EQU 4h ; Requested sector not found
32RET_HD_RESETFAIL EQU 5h ; Reset failed (hard disk)
33RET_HD_CHANGED EQU 6h ; Floppy disk removed/Disk changeline (floppy)
34RET_HD_PARAMACT EQU 7h ; Drive parameter activity failed (Bad parameter table (hard disk)/Initialization failed)
35RET_HD_OVERRUN EQU 8h ; DMA overrun (floppy)
36RET_HD_BOUNDARY EQU 9h ; Data boundary error (DMA crossed 64K boundary)
37RET_HD_BADSECTOR EQU 0Ah ; Bad sector detected
38RET_HD_BADTRACK EQU 0Bh ; Bad track detected
39RET_HD_UNCORRECC EQU 10h ; Uncorrectable ECC error
40RET_HD_ECC EQU 11h ; Corrected ECC error
41RET_HD_CONTROLLER EQU 20h ; Hard disk controller or drive problem
42RET_HD_NOMEDIA EQU 31h ; No media in removable media drive
43RET_HD_SEEK_FAIL EQU 40h ; Seek operation failed
44RET_HD_TIMEOUT EQU 80h ; Drive failed to respond
45RET_HD_NOTREADY EQU 0AAh ; Drive is not ready or is not selected
46RET_HD_NOTLOCKED EQU 0B0h ; Volume not locked in drive
47RET_HD_LOCKED EQU 0B1h ; Volume locked in drive
48RET_HD_NOTREMOVABLE EQU 0B2h ; Volume not removable
49RET_HD_INUSE EQU 0B3h ; Volume in use
50RET_HD_LOCKEXCEEDED EQU 0B4h ; Lock count exceeded
51RET_HD_EJECTFAIL EQU 0B5h ; Valid eject request failed
52RET_HD_UNDEFINED EQU 0BBh ; Undefined error occurred
53RET_HD_WRFAULT EQU 0CCh ; Write fault on selected drive
54RET_HD_STATUSERR EQU 0E0h ; Status error without error
55RET_HD_SENSEFAIL EQU 0FFh ; Sense operation failed
56
57
58; Floppy Drive types returned by INT 13h, AH=08h
59FLOPPY_TYPE_525_OR_35_DD EQU 0
60FLOPPY_TYPE_525_DD EQU 1
61FLOPPY_TYPE_525_HD EQU 2
62FLOPPY_TYPE_35_DD EQU 3
63FLOPPY_TYPE_35_HD EQU 4
64FLOPPY_TYPE_35_ED EQU 6
65
66
67%define TIMEOUT_AND_STATUS_TO_WAIT(timeout, status) (((timeout)<<8) | (status))
68
69
70%endif ; INT13H_INC
Note: See TracBrowser for help on using the repository browser.