summaryrefslogtreecommitdiff
path: root/v4.0/src/DEV/RAMDRIVE/DIRENT.INC
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/DEV/RAMDRIVE/DIRENT.INC')
-rw-r--r--v4.0/src/DEV/RAMDRIVE/DIRENT.INC56
1 files changed, 56 insertions, 0 deletions
diff --git a/v4.0/src/DEV/RAMDRIVE/DIRENT.INC b/v4.0/src/DEV/RAMDRIVE/DIRENT.INC
new file mode 100644
index 0000000..e7150c8
--- /dev/null
+++ b/v4.0/src/DEV/RAMDRIVE/DIRENT.INC
@@ -0,0 +1,56 @@
1Break <Directory entry>
2
3;
4; +---------------------------+
5; | (12 BYTE) filename/ext | 0 0
6; +---------------------------+
7; | (BYTE) attributes | 11 B
8; +---------------------------+
9; | (10 BYTE) reserved | 12 C
10; +---------------------------+
11; | (WORD) time of last write | 22 16
12; +---------------------------+
13; | (WORD) date of last write | 24 18
14; +---------------------------+
15; | (WORD) First cluster | 26 1A
16; +---------------------------+
17; | (DWORD) file size | 28 1C
18; +---------------------------+
19;
20; First byte of filename = E5 -> free directory entry
21; = 00 -> end of allocated directory
22; Time: Bits 0-4=seconds/2, bits 5-10=minute, 11-15=hour
23; Date: Bits 0-4=day, bits 5-8=month, bits 9-15=year-1980
24;
25
26dir_entry STRUC
27dir_name DB 11 DUP (?) ; file name
28dir_attr DB ? ; attribute bits
29dir_pad DB 10 DUP (?) ; reserved for expansion
30dir_time DW ? ; time of last write
31dir_date DW ? ; date of last write
32dir_first DW ? ; first allocation unit of file
33dir_size_l DW ? ; low 16 bits of file size
34dir_size_h DW ? ; high 16 bits of file size
35dir_entry ENDS
36
37attr_read_only EQU 1h
38attr_hidden EQU 2h
39attr_system EQU 4h
40attr_volume_id EQU 8h
41attr_directory EQU 10h
42attr_archive EQU 20h
43attr_device EQU 40h ; This is a VERY special bit.
44 ; NO directory entry on a disk EVER
45 ; has this bit set. It is set non-zero
46 ; when a device is found by GETPATH
47
48attr_all EQU attr_hidden+attr_system+attr_directory
49 ; OR of hard attributes for FINDENTRY
50
51attr_ignore EQU attr_read_only+attr_archive+attr_device
52 ; ignore this(ese) attribute(s) during
53 ; search first/next
54
55attr_changeable EQU attr_read_only+attr_hidden+attr_system+attr_archive
56 ; changeable via CHMOD