source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Inc/RamVars.inc@ 6

Last change on this file since 6 was 3, checked in by Tomi Tilli, 15 years ago
File size: 1.6 KB
RevLine 
[3]1; File name : RamVars.inc
2; Project name : IDE BIOS
3; Created date : 23.3.2010
4; Last update : 8.4.2010
5; Author : Tomi Tilli
6; Description : RAMVARS struct containing BIOS variables stored in RAM.
7%ifndef RAMVARS_INC
8%define RAMVARS_INC
9
10; Segment when RAMVARS is stored to top of interrupt vectors.
11SEGMENT_RAMVARS_TOP_OF_INTERRUPT_VECTORS EQU 30h
12
13
14; Variables for translating drive numbers.
15struc XLATEVARS
16 .bFDSwap resb 1 ; Floppy Drive to swap to 00h and vice versa
17 .bHDSwap resb 1 ; Hard Drive to swap to 80h and vice versa
18 .bRecurCnt resb 1 ; INT 13h recursion counter for drive translation
19 resb 1 ; For WORD alignment
20endstruc
21
22; RAM Variables.
23; Variables should be kept to minimum since they might be located
24; at the top of interrupt vectors.
25struc RAMVARS
26 .fpOldI13h resb 4 ; Far pointer to old INT 13h handler
27
28 .dwI13DIDS: ; Temporary DI and DS storages when calling...
29 .wI13hDI: ; ...previous INT 13h handler
30 .wIdeBase resb 2 ; Base port address for currently handled controller
31
32 .wI13hDS:
33 .bEndTime resb 1 ; Timeout ending time
34 resb 1 ; Alignment
35
36 .wDrvCntAndFirst:
37 .bDrvCnt resb 1 ; Number of drives handled by this BIOS
38 .bFirstDrv resb 1 ; Number of first drive for this BIOS
39
40 ; Variables for drive number translation
41 .xlateVars resb XLATEVARS_size
42endstruc
43
44; Full mode RAM variables.
45struc FULLRAMVARS
46 .ramVars resb RAMVARS_size
47 .wSign resb 2 ; FULLRAMVARS signature for finding segment
48 .drv80hCompDPT resb COMPATIBLE_FDPT_size
49 .drv81hCompDPT resb COMPATIBLE_FDPT_size
50endstruc
51
52W_SIGN_FULLRAMVARS EQU "fR" ; FULLRAMVARS signature
53
54
55%endif ; RAMVARS_INC
Note: See TracBrowser for help on using the repository browser.