Finished OSARGS. Seek command done.

This commit is contained in:
Bobbi Webber-Manners 2021-08-01 16:32:15 -04:00
parent a5a61f82d0
commit 2a47a9ea88
4 changed files with 21 additions and 2 deletions

Binary file not shown.

View File

@ -46,6 +46,7 @@ READCMD EQU $CA
WRITECMD EQU $CB
CLSCMD EQU $CC
FLSHCMD EQU $CD
SMARKCMD EQU $CE
GMARKCMD EQU $CF
GEOFCMD EQU $D1

View File

@ -409,12 +409,20 @@ ARGSHND PHA
STZ MOSFILE+2 ; 0 means get pos
STA $C005 ; Write aux
>>> XF2MAIN,TELL
:IEXIT BRA :EXIT
:IEXIT BRA :IEXIT2
:IFLUSH BRA :FLUSH
:S3 CMP #$01 ; Y!=0,A=1 => write seq ptr
BNE :S4
STA $C004 ; Write main
LDA $00,X
STA MOSFILE+2
LDA $01,X
STA MOSFILE+3
LDA $02,X
STA MOSFILE+4
STA $C005 ; Write aux
>>> XF2MAIN,SEEK
BRA :EXIT
:IEXIT2 BRA :EXIT
:S4 CMP #$02 ; Y!=0,A=2 => read file len
BNE :S5
STA $C004 ; Write main

View File

@ -297,6 +297,16 @@ FLUSH >>> ENTMAIN
* ProDOS file handling for OSARGS set ptr command
SEEK >>> ENTMAIN
LDA MOSFILE ; File ref number
STA GMARKPL+1 ; GET_MARK has same params
LDA MOSFILE+2 ; Desired offset in MOSFILE[2..4]
STA GMARKPL+2
LDA MOSFILE+3
STA GMARKPL+3
LDA MOSFILE+4
STA GMARKPL+4
JSR MLI
DB SMARKCMD
DW GMARKPL
>>> XF2AUX,OSARGSRET
* ProDOS file handling for OSARGS get ptr command