source: xtideuniversalbios/trunk/Assembly_Library/Inc/DosFunctions.inc@ 46

Last change on this file since 46 was 41, checked in by Tomi Tilli, 14 years ago

Initial commit for Assembly Library.

File size: 2.2 KB
Line 
1; File name : DosFunctions.inc
2; Project name : AssemblyLibrary
3; Created date : 1.9.2010
4; Last update : 3.9.2010
5; Author : Tomi Tilli
6; Description : Defines for MS-DOS functions.
7%ifndef DOS_FUNCTIONS_INC
8%define DOS_FUNCTIONS_INC
9
10; DOS interrupts
11DOS_INTERRUPT_21h EQU 21h
12DOS_CRITICAL_ERROR_HANDLER_24h EQU 24h
13
14; DOS file functions
15SELECT_DEFAULT_DRIVE EQU 0Eh
16GET_CURRENT_DEFAULT_DRIVE EQU 19h
17SET_INTERRUPT_VECTOR EQU 25h
18GET_DISK_TRANSFER_AREA_ADDRESS EQU 2Fh
19GET_DOS_DRIVE_PARAMETER_BLOCK_FOR_SPECIFIC_DRIVE EQU 32h
20SET_CURRENT_DIRECTORY EQU 3Bh
21OPEN_EXISTING_FILE EQU 3Dh
22CLOSE_FILE EQU 3Eh
23READ_FROM_FILE_OR_DEVICE EQU 3Fh
24WRITE_TO_FILE_OR_DEVICE EQU 40h
25SET_CURRENT_FILE_POSITION EQU 42h
26GET_CURRENT_DIRECTORY EQU 47h
27FIND_FIRST_MATCHING_FILE EQU 4Eh
28FIND_NEXT_MATCHING_FILE EQU 4Fh
29
30; DOS errors
31ERR_DOS_DRIVE_NOT_READY EQU 15h
32
33
34; File attribute flags
35FLG_FILEATTR_READ_ONLY EQU (1<<0)
36FLG_FILEATTR_HIDDEN EQU (1<<1)
37FLG_FILEATTR_SYSTEM EQU (1<<2)
38FLG_FILEATTR_VOLUME_LABEL EQU (1<<3)
39FLG_FILEATTR_DIRECTORY EQU (1<<4)
40FLG_FILEATTR_ARCHIVE EQU (1<<5)
41
42
43
44; DOS Program Segment Prefix (PSP, first 256 (100h) bytes on top of program)
45struc PSP
46 .int20hInstruction resb 2
47 .wSizeOfMemoryInParagraphs resb 2
48 .reservedAt4h resb 1
49 .callToDosFunctionDispatcher resb 5
50 .fpInt22hTerminate resb 4
51 .fpInt23hCtrlC resb 4
52 .fpInt24hCriticalError resb 4
53 .reservedAt16h resb 22
54 .wEnvironmentSegment resb 2
55 .reservedAt2Eh resb 34
56 .int21hAndRetfInstructions resb 3
57 .reservedAt53h resb 9
58 .FCB1 resb 16
59 .FCB2 resb 20
60 .DiskTransferArea:
61 .bCommandLineLength resb 1
62 .szCommandLine resb 127
63endstruc
64
65
66; DOS DTA (Disk Transfer Area)
67struc DTA
68 ; Undocumented fields
69 .reservedAt0h resb 21
70 ; Documented fields
71 .bFileAttributes resb 1 ; 15h, Attribute of matching file
72 .wFileTime resb 2 ; 16h, File time
73 .wFileDate resb 2 ; 18h, File date
74 .dwFileSize resb 4 ; 1Ah, File size in bytes
75 .szFile resb 13 ; 1Eh, ASCIZ filename + extension
76endstruc
77
78
79%endif ; DOS_FUNCTIONS_INC
Note: See TracBrowser for help on using the repository browser.