move records around
This commit is contained in:
parent
4a2835ccb0
commit
5641dc5ea0
|
@ -8,52 +8,13 @@
|
|||
|
||||
include 'M16.Debug'
|
||||
|
||||
include 'records.equ'
|
||||
|
||||
|
||||
TimeRec RECORD 0
|
||||
second DS.B 1
|
||||
minute DS.B 1
|
||||
hour DS.B 1
|
||||
year DS.B 1
|
||||
day DS.B 1
|
||||
month DS.B 1
|
||||
extra DS.B 1
|
||||
weekDay DS.B 1
|
||||
ENDR
|
||||
|
||||
FileInfoRecGS RECORD 0
|
||||
pCount DS.W 1
|
||||
pathname DS.L 1
|
||||
access DS.W 1
|
||||
fileType DS.W 1
|
||||
auxType DS.L 1
|
||||
storageType DS.W 1
|
||||
createDateTime DS TimeRec
|
||||
modDateTime DS TimeRec
|
||||
optionList DS.L 1
|
||||
eof DS.L 1
|
||||
blocksUsed DS.L 1
|
||||
resourceEOF DS.L 1
|
||||
resourceBlocks DS.L 1
|
||||
ENDR
|
||||
|
||||
|
||||
FileRec RECORD 0
|
||||
pathname DS.B 4
|
||||
fAccess DS.B 2
|
||||
fileType DS.B 2
|
||||
auxType DS.B 4
|
||||
storageType DS.B 2
|
||||
createDate DS.B 2
|
||||
createTime DS.B 2
|
||||
modDate DS.B 2
|
||||
modTime DS.B 2
|
||||
blocksUsed DS.B 4
|
||||
ENDR
|
||||
|
||||
entry path_to_inode
|
||||
import id_disk
|
||||
import device_read
|
||||
entry path_to_inode
|
||||
import id_disk
|
||||
import device_read
|
||||
|
||||
|
||||
get_file_info procname export
|
||||
|
|
|
@ -0,0 +1,93 @@
|
|||
|
||||
|
||||
|
||||
|
||||
TimeRec RECORD 0
|
||||
second DS.B 1
|
||||
minute DS.B 1
|
||||
hour DS.B 1
|
||||
year DS.B 1
|
||||
day DS.B 1
|
||||
month DS.B 1
|
||||
extra DS.B 1
|
||||
weekDay DS.B 1
|
||||
ENDR
|
||||
|
||||
FileInfoRecGS RECORD 0
|
||||
pCount DS.W 1
|
||||
pathname DS.L 1
|
||||
access DS.W 1
|
||||
fileType DS.W 1
|
||||
auxType DS.L 1
|
||||
storageType DS.W 1
|
||||
createDateTime DS TimeRec
|
||||
modDateTime DS TimeRec
|
||||
optionList DS.L 1
|
||||
eof DS.L 1
|
||||
blocksUsed DS.L 1
|
||||
resourceEOF DS.L 1
|
||||
resourceBlocks DS.L 1
|
||||
ENDR
|
||||
|
||||
|
||||
FileRec RECORD 0
|
||||
pathname DS.B 4
|
||||
fAccess DS.B 2
|
||||
fileType DS.B 2
|
||||
auxType DS.B 4
|
||||
storageType DS.B 2
|
||||
createDate DS.B 2
|
||||
createTime DS.B 2
|
||||
modDate DS.B 2
|
||||
modTime DS.B 2
|
||||
blocksUsed DS.B 4
|
||||
ENDR
|
||||
|
||||
OpenRecGS RECORD 0
|
||||
pCount DS.W 1
|
||||
refNum DS.W 1
|
||||
pathname DS.L 1
|
||||
requestAccess DS.W 1
|
||||
resourceNumber DS.W 1
|
||||
access DS.W 1
|
||||
fileType DS.W 1
|
||||
auxType DS.L 1
|
||||
storageType DS.W 1
|
||||
createDateTime DS TimeRec
|
||||
modDateTime DS TimeRec
|
||||
optionList DS.L 1
|
||||
eof DS.L 1
|
||||
blocksUsed DS.L 1
|
||||
resourceEOF DS.L 1
|
||||
resourceBlocks DS.L 1
|
||||
ENDR
|
||||
|
||||
OpenRec RECORD 0
|
||||
openRefNum DS.B 2
|
||||
openPathname DS.B 4
|
||||
ioBuffer DS.B 4
|
||||
ENDR
|
||||
|
||||
|
||||
VolumeRecGS RECORD 0
|
||||
pCount DS.W 1
|
||||
devName DS.L 1
|
||||
volName DS.L 1
|
||||
totalBlocks DS.L 1
|
||||
freeBlocks DS.L 1
|
||||
fileSysID DS.W 1
|
||||
blockSize DS.W 1
|
||||
characteristics ds.w 1
|
||||
deviceID ds.w 1
|
||||
sizeof equ *
|
||||
ENDR
|
||||
|
||||
|
||||
VolumeRec RECORD 0
|
||||
deviceName DS.B 4
|
||||
volName DS.B 4
|
||||
totalBlocks DS.B 4
|
||||
freeBlocks DS.B 4
|
||||
fileSysID DS.B 2
|
||||
sizeof equ *
|
||||
ENDR
|
216
tables.aii
216
tables.aii
|
@ -4,119 +4,119 @@
|
|||
|
||||
tables record
|
||||
|
||||
export min_pcount
|
||||
export max_pcount
|
||||
export min_pcount
|
||||
export max_pcount
|
||||
|
||||
max_pcount
|
||||
dc.w 0
|
||||
dc.w 8 ; ($01) Create
|
||||
dc.w 2 ; ($02) Destroy
|
||||
dc.w 0 ; ($03) OS Shutdown
|
||||
dc.w 4 ; ($04) Change Path
|
||||
dc.w 13 ; ($05) Set File Info
|
||||
dc.w 13 ; ($06) Get File Info
|
||||
dc.w 0 ; ($07)
|
||||
dc.w 7 ; ($08) Volume
|
||||
dc.w 0 ; ($09) Set Prefix
|
||||
dc.w 0 ; ($0A) Get Prefix
|
||||
dc.w 2 ; ($0B) Clear Backup Bit
|
||||
dc.w 0 ; ($0C) Set Sys Prefs
|
||||
dc.w 0 ; ($0D) Null
|
||||
dc.w 0 ; ($0E) Expand Path
|
||||
dc.w 0 ; ($0F) Get Sys Prefs
|
||||
dc.w 16 ; ($10) Open
|
||||
dc.w 0 ; ($11) NewLine
|
||||
dc.w 6 ; ($12) Read
|
||||
dc.w 6 ; ($13) Write
|
||||
dc.w 2 ; ($14) Close
|
||||
dc.w 2 ; ($15) Flush
|
||||
dc.w 4 ; ($16) Set Mark
|
||||
dc.w 3 ; ($17) Get Mark
|
||||
dc.w 4 ; ($18) Set EOF
|
||||
dc.w 3 ; ($19) Get EOF
|
||||
dc.w 0 ; ($1A) Set Level
|
||||
dc.w 0 ; ($1B) Get Level
|
||||
dc.w 18 ; ($1C) Get Dir Entry
|
||||
dc.w 0 ; ($1D)
|
||||
dc.w 0 ; ($1E)
|
||||
dc.w 0 ; ($1F)
|
||||
dc.w 3 ; ($20) Get Dev Num
|
||||
dc.w 0 ; ($21) Get Last Dev
|
||||
dc.w 0 ; ($22) Read Block
|
||||
dc.w 0 ; ($23) Write Block
|
||||
dc.w 5 ; ($24) Format
|
||||
dc.w 5 ; ($25) Erase Disk
|
||||
dc.w 0 ; ($26)
|
||||
dc.w 0 ; ($27) Get Name
|
||||
dc.w 0 ; ($28) Get Boot Vol
|
||||
dc.w 0 ; ($29) Quit
|
||||
dc.w 0 ; ($2A) Get Version
|
||||
dc.w 0 ; ($2B) Get FST Info
|
||||
dc.w 0 ; ($2C) D_INFO
|
||||
dc.w 0 ; ($2D) D_STATUS
|
||||
dc.w 0 ; ($2E) D_CONTROL
|
||||
dc.w 0 ; ($2F) D_READ
|
||||
dc.w 0 ; ($30) D_WRITE
|
||||
dc.w 0 ; ($31) Alloc Interrupt
|
||||
dc.w 0 ; ($32) Dealloc Interrupt
|
||||
dc.w 4 ; ($33) FST Specific
|
||||
dc.w 0
|
||||
dc.w 8 ; ($01) Create
|
||||
dc.w 2 ; ($02) Destroy
|
||||
dc.w 0 ; ($03) OS Shutdown
|
||||
dc.w 4 ; ($04) Change Path
|
||||
dc.w 13 ; ($05) Set File Info
|
||||
dc.w 13 ; ($06) Get File Info
|
||||
dc.w 0 ; ($07)
|
||||
dc.w 7 ; ($08) Volume
|
||||
dc.w 0 ; ($09) Set Prefix
|
||||
dc.w 0 ; ($0A) Get Prefix
|
||||
dc.w 2 ; ($0B) Clear Backup Bit
|
||||
dc.w 0 ; ($0C) Set Sys Prefs
|
||||
dc.w 0 ; ($0D) Null
|
||||
dc.w 0 ; ($0E) Expand Path
|
||||
dc.w 0 ; ($0F) Get Sys Prefs
|
||||
dc.w 16 ; ($10) Open
|
||||
dc.w 0 ; ($11) NewLine
|
||||
dc.w 6 ; ($12) Read
|
||||
dc.w 6 ; ($13) Write
|
||||
dc.w 2 ; ($14) Close
|
||||
dc.w 2 ; ($15) Flush
|
||||
dc.w 4 ; ($16) Set Mark
|
||||
dc.w 3 ; ($17) Get Mark
|
||||
dc.w 4 ; ($18) Set EOF
|
||||
dc.w 3 ; ($19) Get EOF
|
||||
dc.w 0 ; ($1A) Set Level
|
||||
dc.w 0 ; ($1B) Get Level
|
||||
dc.w 18 ; ($1C) Get Dir Entry
|
||||
dc.w 0 ; ($1D)
|
||||
dc.w 0 ; ($1E)
|
||||
dc.w 0 ; ($1F)
|
||||
dc.w 3 ; ($20) Get Dev Num
|
||||
dc.w 0 ; ($21) Get Last Dev
|
||||
dc.w 0 ; ($22) Read Block
|
||||
dc.w 0 ; ($23) Write Block
|
||||
dc.w 5 ; ($24) Format
|
||||
dc.w 5 ; ($25) Erase Disk
|
||||
dc.w 0 ; ($26)
|
||||
dc.w 0 ; ($27) Get Name
|
||||
dc.w 0 ; ($28) Get Boot Vol
|
||||
dc.w 0 ; ($29) Quit
|
||||
dc.w 0 ; ($2A) Get Version
|
||||
dc.w 0 ; ($2B) Get FST Info
|
||||
dc.w 0 ; ($2C) D_INFO
|
||||
dc.w 0 ; ($2D) D_STATUS
|
||||
dc.w 0 ; ($2E) D_CONTROL
|
||||
dc.w 0 ; ($2F) D_READ
|
||||
dc.w 0 ; ($30) D_WRITE
|
||||
dc.w 0 ; ($31) Alloc Interrupt
|
||||
dc.w 0 ; ($32) Dealloc Interrupt
|
||||
dc.w 4 ; ($33) FST Specific
|
||||
|
||||
min_pcount
|
||||
dc.w 0
|
||||
dc.w 1 ; ($01) Create
|
||||
dc.w 1 ; ($02) Destroy
|
||||
dc.w 0 ; ($03) OS Shutdown
|
||||
dc.w 2 ; ($04) Change Path
|
||||
dc.w 2 ; ($05) Set File Info
|
||||
dc.w 2 ; ($06) Get File Info
|
||||
dc.w 0 ; ($07)
|
||||
dc.w 2 ; ($08) Volume
|
||||
dc.w 0 ; ($09) Set Prefix
|
||||
dc.w 0 ; ($0A) Get Prefix
|
||||
dc.w 1 ; ($0B) Clear Backup Bit
|
||||
dc.w 0 ; ($0C) Set Sys Prefs
|
||||
dc.w 0 ; ($0D) Null
|
||||
dc.w 0 ; ($0E) Expand Path
|
||||
dc.w 0 ; ($0F) Get Sys Prefs
|
||||
dc.w 2 ; ($10) Open
|
||||
dc.w 0 ; ($11) NewLine
|
||||
dc.w 4 ; ($12) Read
|
||||
dc.w 4 ; ($13) Write
|
||||
dc.w 1 ; ($14) Close
|
||||
dc.w 1 ; ($15) Flush
|
||||
dc.w 3 ; ($16) Set Mark
|
||||
dc.w 2 ; ($17) Get Mark
|
||||
dc.w 3 ; ($18) Set EOF
|
||||
dc.w 2 ; ($19) Get EOF
|
||||
dc.w 0 ; ($1A) Set Level
|
||||
dc.w 0 ; ($1B) Get Level
|
||||
dc.w 5 ; ($1C) Get Dir Entry
|
||||
dc.w 0 ; ($1D)
|
||||
dc.w 0 ; ($1E)
|
||||
dc.w 0 ; ($1F)
|
||||
dc.w 2 ; ($20) Get Dev Num
|
||||
dc.w 0 ; ($21) Get Last Dev
|
||||
dc.w 0 ; ($22) Read Block
|
||||
dc.w 0 ; ($23) Write Block
|
||||
dc.w 3 ; ($24) Format
|
||||
dc.w 3 ; ($25) Erase Disk
|
||||
dc.w 0 ; ($26)
|
||||
dc.w 0 ; ($27) Get Name
|
||||
dc.w 0 ; ($28) Get Boot Vol
|
||||
dc.w 0 ; ($29) Quit
|
||||
dc.w 0 ; ($2A) Get Version
|
||||
dc.w 0 ; ($2B) Get FST Info
|
||||
dc.w 0 ; ($2C) D_INFO
|
||||
dc.w 0 ; ($2D) D_STATUS
|
||||
dc.w 0 ; ($2E) D_CONTROL
|
||||
dc.w 0 ; ($2F) D_READ
|
||||
dc.w 0 ; ($30) D_WRITE
|
||||
dc.w 0 ; ($31) Alloc Interrupt
|
||||
dc.w 0 ; ($32) Dealloc Interrupt
|
||||
dc.w 1 ; ($33) FST Specific
|
||||
dc.w 0
|
||||
dc.w 1 ; ($01) Create
|
||||
dc.w 1 ; ($02) Destroy
|
||||
dc.w 0 ; ($03) OS Shutdown
|
||||
dc.w 2 ; ($04) Change Path
|
||||
dc.w 2 ; ($05) Set File Info
|
||||
dc.w 2 ; ($06) Get File Info
|
||||
dc.w 0 ; ($07)
|
||||
dc.w 2 ; ($08) Volume
|
||||
dc.w 0 ; ($09) Set Prefix
|
||||
dc.w 0 ; ($0A) Get Prefix
|
||||
dc.w 1 ; ($0B) Clear Backup Bit
|
||||
dc.w 0 ; ($0C) Set Sys Prefs
|
||||
dc.w 0 ; ($0D) Null
|
||||
dc.w 0 ; ($0E) Expand Path
|
||||
dc.w 0 ; ($0F) Get Sys Prefs
|
||||
dc.w 2 ; ($10) Open
|
||||
dc.w 0 ; ($11) NewLine
|
||||
dc.w 4 ; ($12) Read
|
||||
dc.w 4 ; ($13) Write
|
||||
dc.w 1 ; ($14) Close
|
||||
dc.w 1 ; ($15) Flush
|
||||
dc.w 3 ; ($16) Set Mark
|
||||
dc.w 2 ; ($17) Get Mark
|
||||
dc.w 3 ; ($18) Set EOF
|
||||
dc.w 2 ; ($19) Get EOF
|
||||
dc.w 0 ; ($1A) Set Level
|
||||
dc.w 0 ; ($1B) Get Level
|
||||
dc.w 5 ; ($1C) Get Dir Entry
|
||||
dc.w 0 ; ($1D)
|
||||
dc.w 0 ; ($1E)
|
||||
dc.w 0 ; ($1F)
|
||||
dc.w 2 ; ($20) Get Dev Num
|
||||
dc.w 0 ; ($21) Get Last Dev
|
||||
dc.w 0 ; ($22) Read Block
|
||||
dc.w 0 ; ($23) Write Block
|
||||
dc.w 3 ; ($24) Format
|
||||
dc.w 3 ; ($25) Erase Disk
|
||||
dc.w 0 ; ($26)
|
||||
dc.w 0 ; ($27) Get Name
|
||||
dc.w 0 ; ($28) Get Boot Vol
|
||||
dc.w 0 ; ($29) Quit
|
||||
dc.w 0 ; ($2A) Get Version
|
||||
dc.w 0 ; ($2B) Get FST Info
|
||||
dc.w 0 ; ($2C) D_INFO
|
||||
dc.w 0 ; ($2D) D_STATUS
|
||||
dc.w 0 ; ($2E) D_CONTROL
|
||||
dc.w 0 ; ($2F) D_READ
|
||||
dc.w 0 ; ($30) D_WRITE
|
||||
dc.w 0 ; ($31) Alloc Interrupt
|
||||
dc.w 0 ; ($32) Dealloc Interrupt
|
||||
dc.w 1 ; ($33) FST Specific
|
||||
|
||||
|
||||
endr
|
||||
endr
|
||||
|
||||
|
||||
end
|
||||
end
|
||||
|
|
44
volume.aii
44
volume.aii
|
@ -6,57 +6,17 @@
|
|||
|
||||
include 'M16.Debug'
|
||||
|
||||
include 'records.equ'
|
||||
|
||||
;
|
||||
; VolumeGS / Volume call.
|
||||
;
|
||||
; check if the disk is ours. create a VCR or mark it active.
|
||||
;
|
||||
; P16
|
||||
; devName
|
||||
; volName
|
||||
; totalBlocks
|
||||
; freeBlocks
|
||||
; fileSysID
|
||||
;
|
||||
; GS/OS
|
||||
; Word pCount;
|
||||
; GSString32Ptr devName;
|
||||
; ResultBuf255Ptr volName;
|
||||
; LongWord totalBlocks;
|
||||
; LongWord freeBlocks;
|
||||
; Word fileSysID;
|
||||
; Word blockSize;
|
||||
; [handled by gs/os:]
|
||||
; Word characteristics;
|
||||
; Word deviceID;
|
||||
;
|
||||
|
||||
import id_disk
|
||||
|
||||
|
||||
VolumeRecGS RECORD 0
|
||||
pCount DS.W 1
|
||||
devName DS.L 1 ; GSString32Ptr
|
||||
volName DS.L 1 ; ResultBuf255Ptr
|
||||
totalBlocks DS.L 1
|
||||
freeBlocks DS.L 1
|
||||
fileSysID DS.W 1
|
||||
blockSize DS.W 1
|
||||
characteristics ds.w 1
|
||||
deviceID ds.w 1
|
||||
sizeof equ *
|
||||
ENDR
|
||||
|
||||
|
||||
VolumeRec RECORD 0 ; ProDOS
|
||||
deviceName DS.B 4 ; Ptr -
|
||||
volName DS.B 4 ; Ptr -
|
||||
totalBlocks DS.B 4 ; Long -
|
||||
freeBlocks DS.B 4 ; Long -
|
||||
fileSysID DS.B 2 ; Word -
|
||||
sizeof equ *
|
||||
ENDR
|
||||
|
||||
|
||||
entry do_block_size
|
||||
entry do_file_sys_id
|
||||
|
|
Loading…
Reference in New Issue