Introduced constructor to raise the ProDOS 8 file level - and extended the destructor to restore the file level again. This is a prerequisite to allow the upcoming exec() to open a file before the destructors run and continue reading from of it after the destructors have run.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4955 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
ol.sc
2011-01-29 21:43:26 +00:00
parent 9e31f7fb63
commit 110f911ccb
2 changed files with 43 additions and 10 deletions

View File

@@ -20,6 +20,9 @@ DESTROY_COUNT = 1
RENAME_CALL = $C2
RENAME_COUNT = 2
GET_INFO_CALL = $C4
GET_INFO_COUNT = $A
ON_LINE_CALL = $C5
ON_LINE_COUNT = 2
@@ -72,6 +75,19 @@ EOF_COUNT = 2
PATHNAME .addr
NEW_PATHNAME .addr
.endstruct
.struct INFO
PARAM_COUNT .byte
PATHNAME .addr
ACCESS .byte
FILE_TYPE .byte
AUX_TYPE .word
STORAGE_TYPE .byte
BLOCKS .word
MODE_DATE .word
MODE_TIME .word
CREATE_DATE .word
CREATE_TIME .word
.endstruct
.struct ON_LINE
PARAM_COUNT .byte
UNIT_NUM .byte
@@ -117,7 +133,8 @@ EOF_COUNT = 2
DEVNUM := $BF30 ; Most recent accessed device
DEVCNT := $BF31 ; Number of on-line devices (minus 1)
DEVLST := $BF32 ; Up to 14 units may be active
DATELO := $BF90 ; Bits 15-9 = Year, 8-5 = Month, 4-0 = Day
TIMELO := $BF92 ; Bits 12-8 = Hour, 5-0 = Minute
DATELO := $BF90 ; Bits 15-9 = year, 8-5 = month, 4-0 = day
TIMELO := $BF92 ; Bits 12-8 = hour, 5-0 = minute
LEVEL := $BF94 ; File level: used in open, flush, close
PFIXPTR := $BF9A ; If = 0, no prefix active
KVERSION:= $BFFF ; Kernel version number