fix multi-file access

This commit is contained in:
Peter Ferrie 2022-04-28 18:01:37 -07:00
parent 4014f5b294
commit 5069c95a4b
3 changed files with 15 additions and 4 deletions

Binary file not shown.

View File

@ -106,6 +106,7 @@ ROM_TEXT2COPY =$F962 ; turn on alternate display mode on IIgs
ROM_REBOOT = $FAA6 ROM_REBOOT = $FAA6
ROM_TEXT = $FB2F ROM_TEXT = $FB2F
ROM_MACHINEID =$FBB3 ROM_MACHINEID =$FBB3
ROM_MACHINE2C =$FBC0
ROM_HOME = $FC58 ROM_HOME = $FC58
ROM_COUT = $FDED ROM_COUT = $FDED
ROM_NORMAL = $FE84 ; NORMAL text (instead of INVERSE or FLASH) ROM_NORMAL = $FE84 ; NORMAL text (instead of INVERSE or FLASH)
@ -205,7 +206,7 @@ iCurBlockHi = $D603 ; constant
launchpatch = $D853 ; glue.launch.a launchpatch = $D853 ; glue.launch.a
iAddToPath = $FEBF ; Roger Rabbit (via prelaunch), avoid, use Infiltrator 2 style instead iAddToPath = $FEBF ; Roger Rabbit (via prelaunch), avoid, use Infiltrator 2 style instead
; also Columns (via file in disk image) ; also Columns (via file in disk image)
itraverse = $DB31 ; Roger Rabbit, avoid, use Infiltrator 2 style instead itraverse = $DB42 ; Roger Rabbit, avoid, use Infiltrator 2 style instead
; also Columns (via file in disk image) ; also Columns (via file in disk image)
ldrlo = $55 ; constant ldrlo = $55 ; constant
ldrhi = $56 ; constant ldrhi = $56 ; constant
@ -214,7 +215,7 @@ namhi = $58 ; constant
ldrlo2 = $64 ; constant ldrlo2 = $64 ; constant
ldrhi2 = $65 ; constant ldrhi2 = $65 ; constant
; Columns also calls (de)accelerator functions directly ; Columns and Dangerous Dave also call (de)accelerator functions directly
_CONSTANTS_=* _CONSTANTS_=*
} }

View File

@ -1,5 +1,5 @@
;license:MIT ;license:MIT
;(c) 2019-2021 by 4am & qkumba ;(c) 2019-2022 by 4am & qkumba
; ;
; Pseudo-ProDOS environment ; Pseudo-ProDOS environment
; ;
@ -218,6 +218,7 @@ ProDOS_enter
resetval=$f0 resetval=$f0
@imp_seek @imp_seek
jsr @set_rdwrbuff jsr @set_rdwrbuff
jsr @reset
lda sizelo lda sizelo
lsr lsr
tay tay
@ -239,6 +240,7 @@ resetval=$f0
jsr hddreaddirsel jsr hddreaddirsel
@sametree @sametree
jsr @close_reset
lda ldrlo lda ldrlo
sta sizelo sta sizelo
lda ldrhi lda ldrhi
@ -252,6 +254,8 @@ resetval=$f0
jmp @restore_zp jmp @restore_zp
@seekreset @seekreset
lda #cmdseek
sta reqcmd
jsr hddrdwrpart jsr hddrdwrpart
@reset @reset
lda #resetval lda #resetval
@ -298,7 +302,7 @@ resetval=$f0
lda @handles+1 lda @handles+1
beq @close_ret beq @close_ret
dec @handles+1 dec @handles+1
bne @close_ret bne @close_reset
lda #>hddencbuf lda #>hddencbuf
@patch_buffer @patch_buffer
@ -327,6 +331,12 @@ resetval=$f0
@close_ret @close_ret
rts rts
@close_reset
lda #0
sta blkofflo
sta blkoffhi
rts
@fetchbyte @fetchbyte
inc @fetchaddr+1 inc @fetchaddr+1
bne @fetchaddr bne @fetchaddr