34fef1ab0f0b79ab2be763666a0ff7eaa7e8aeae
[people/mcb30/legacybios.git] / src / disk.h
1 // Definitions for X86 bios disks.
2 //
3 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
4 //
5 // This file may be distributed under the terms of the GNU GPLv3 license.
6 #ifndef __DISK_H
7 #define __DISK_H
8
9 #include "ioport.h" // outb
10 #include "biosvar.h" // struct bregs
11
12 #define DISK_RET_SUCCESS     0x00
13 #define DISK_RET_EPARAM      0x01
14 #define DISK_RET_ECHANGED    0x06
15 #define DISK_RET_EBOUNDARY   0x09
16 #define DISK_RET_EBADTRACK   0x0c
17 #define DISK_RET_ECONTROLLER 0x20
18 #define DISK_RET_ETIMEOUT    0x80
19 #define DISK_RET_EMEDIA      0xC0
20 #define DISK_RET_ENOTREADY   0xAA
21
22 // floppy.c
23 void floppy_13(struct bregs *regs, u8 drive);
24 void floppy_tick();
25
26 // disk.c
27 void ata_detect();
28
29 #endif // disk.h