diff --git a/src/onbeyond/z1/z1.s b/src/onbeyond/z1/z1.s index bd95cb1..0ada49f 100644 --- a/src/onbeyond/z1/z1.s +++ b/src/onbeyond/z1/z1.s @@ -103,6 +103,8 @@ tmp = $8 sta $28ff, y dey bne - + lda $bf30 + sta c5_parms+1 sty $1e37 sty $1e5d @@ -186,15 +188,6 @@ brandtext +version !byte 0 -c7_parms - !byte 1 - !word $200 - -c5_parms - !byte 2 - !byte 0 - !word $201 - unrelochdd !pseudopc $2800 { clc @@ -253,6 +246,21 @@ printer quit jsr xclose + + jsr $bf00 + !byte $c5 + !word c5_parms + ldx $201 + inx + txa + and #$0f + sta $200 + lda #$2f + sta $201 + jsr $bf00 + !byte $c6 + !word c6_parms + jsr $bf00 !byte $65 !word quit_parms @@ -390,9 +398,16 @@ ca_parms !word $ffff c1_parms +c6_parms !byte 1 !word scrpname +c5_parms + !byte 2 + !byte 0 + !word scrpname+1 + !byte $d1 + cb_parms quit_parms !byte 4 diff --git a/src/onbeyond/z2/z2.s b/src/onbeyond/z2/z2.s index 4052899..85eb2bb 100644 --- a/src/onbeyond/z2/z2.s +++ b/src/onbeyond/z2/z2.s @@ -103,6 +103,8 @@ tmp = $8 sta $28ff, y dey bne - + lda $bf30 + sta c5_parms+1 sty $1e05 sty $1e2b @@ -186,15 +188,6 @@ brandtext +version !byte 0 -c7_parms - !byte 1 - !word $200 - -c5_parms - !byte 2 - !byte 0 - !word $201 - unrelochdd !pseudopc $2800 { clc @@ -253,6 +246,21 @@ printer quit jsr xclose + + jsr $bf00 + !byte $c5 + !word c5_parms + ldx $201 + inx + txa + and #$0f + sta $200 + lda #$2f + sta $201 + jsr $bf00 + !byte $c6 + !word c6_parms + jsr $bf00 !byte $65 !word quit_parms @@ -390,9 +398,16 @@ ca_parms !word $ffff c1_parms +c6_parms !byte 1 !word scrpname +c5_parms + !byte 2 + !byte 0 + !word scrpname+1 + !byte $d1 + cb_parms quit_parms !byte 4 diff --git a/src/onbeyond/z3/z3.s b/src/onbeyond/z3/z3.s index 8714525..63296c9 100644 --- a/src/onbeyond/z3/z3.s +++ b/src/onbeyond/z3/z3.s @@ -75,6 +75,8 @@ tmp = $8 sta $d10, y dey bne - + lda $bf30 + sta c5_parms+1 lda $306 eor $305 @@ -187,15 +189,6 @@ okay80 jsr closefile jmp $173d -c7_parms - !byte 1 - !word $200 - -c5_parms - !byte 2 - !byte 0 - !word $201 - brand jsr $12f8 lda #$f8 @@ -416,6 +409,21 @@ waitkey quit jsr xclose + + jsr $bf00 + !byte $c5 + !word c5_parms + ldx $201 + inx + txa + and #$0f + sta $200 + lda #$2f + sta $201 + jsr $bf00 + !byte $c6 + !word c6_parms + jsr $bf00 !byte $65 !word quit_parms @@ -452,9 +460,16 @@ ca_parms !word $ffff c1_parms +c6_parms !byte 1 !word scrpname +c5_parms + !byte 2 + !byte 0 + !word scrpname+1 + !byte $d1 + cb_parms quit_parms !byte 4 diff --git a/src/zinfo/z1/z1.s b/src/zinfo/z1/z1.s index 52f781b..488f39d 100644 --- a/src/zinfo/z1/z1.s +++ b/src/zinfo/z1/z1.s @@ -7,7 +7,6 @@ save_name = $2006 read_buffer = $3500 ;512 bytes -file_buffer = $3900 ;$400 bytes, must not overlap with read_buffer, must be page-aligned record_size = $40 info_buffer = $2000 ;record_size*8 (currently $200) bytes, can be anywhere zpage_info = $fe ;word @@ -102,7 +101,21 @@ exchange dex bne - quit - rts + lda $bf30 + sta c5_parms+1 + jsr $bf00 + !byte $c5 + !word c5_parms + ldx $201 + inx + txa + and #$0f + sta $200 + lda #$2f + sta $201 + jsr $bf00 + !byte $c6 + !word c6_parms load_page cmp zp_C0 @@ -128,19 +141,10 @@ seekread seek_ret rts -c7_parms - !byte 1 - !word $200 - -c5_parms - !byte 2 - !byte 0 - !word $201 - c8_parms !byte 3 !word save_name - !word file_buffer + !word $1C00 c8_handle !byte 0 @@ -162,8 +166,16 @@ ca_size !word $ffff cc_parms +c6_parms !byte 1 !byte 0 + !byte 2 + +c5_parms + !byte 2 + !byte 0 + !word $201 + !byte $d1 dump_info tsx @@ -192,10 +204,6 @@ dump_info JSR decompress lda zpage_ptr - !if name_offset>0 { - sec - sbc #name_offset - } ldy #name_offset sta (zpage_info),y diff --git a/src/zinfo/z2/z2.s b/src/zinfo/z2/z2.s index 1ad7370..c8f115a 100644 --- a/src/zinfo/z2/z2.s +++ b/src/zinfo/z2/z2.s @@ -7,7 +7,6 @@ save_name = $2006 read_buffer = $3500 ;512 bytes -file_buffer = $3900 ;$400 bytes, must not overlap with read_buffer, must be page-aligned record_size = $40 info_buffer = $2000 ;record_size*8 (currently $200) bytes, can be anywhere zpage_info = $fe ;word @@ -95,6 +94,20 @@ fetch_info !byte $cc ;close file !word cc_parms + jsr $bf00 + !byte $c5 + !word c5_parms + ldx $201 + inx + txa + and #$0f + sta $200 + lda #$2f + sta $201 + jsr $bf00 + !byte $c6 + !word c6_parms + exchange ldx #(zp_E9-zp_91) - ldy zpage_old-1,x @@ -130,19 +143,10 @@ seekread seek_ret rts -c7_parms - !byte 1 - !word $200 - -c5_parms - !byte 2 - !byte 0 - !word $201 - c8_parms !byte 3 !word save_name - !word file_buffer + !word $1C00 c8_handle !byte 0 @@ -164,8 +168,16 @@ ca_size !word $ffff cc_parms +c6_parms !byte 1 !byte 0 + !byte 2 + +c5_parms + !byte 2 + !byte 0 + !word $201 + !byte $d1 dump_info tsx @@ -198,10 +210,6 @@ dump_info JSR decompress lda zpage_ptr - !if name_offset>0 { - sec - sbc #name_offset - } ldy #name_offset sta (zpage_info),y diff --git a/src/zinfo/z3/z3.s b/src/zinfo/z3/z3.s index edb7b51..cf0282c 100644 --- a/src/zinfo/z3/z3.s +++ b/src/zinfo/z3/z3.s @@ -7,7 +7,6 @@ save_name = $2006 read_buffer = $3500 ;512 bytes -file_buffer = $3900 ;$400 bytes, must not overlap with read_buffer, must be page-aligned record_size = $40 info_buffer = $2000 ;record_size*8 (currently $200) bytes, can be anywhere zpage_info = $fe ;word @@ -134,6 +133,22 @@ nextpos !byte $cc ;close file !word cc_parms + lda $bf30 + sta c5_parms+1 + jsr $bf00 + !byte $c5 + !word c5_parms + ldx $201 + inx + txa + and #$0f + sta $200 + lda #$2f + sta $201 + jsr $bf00 + !byte $c6 + !word c6_parms + exchange ldx #(zp_DC-zp_8C) - ldy zpage_old-1,x @@ -169,19 +184,10 @@ seekread seek_ret rts -c7_parms - !byte 1 - !word $200 - -c5_parms - !byte 2 - !byte 0 - !word $201 - c8_parms !byte 3 !word save_name - !word file_buffer + !word $1C00 c8_handle !byte 0 @@ -203,8 +209,16 @@ ca_size !word $ffff cc_parms +c6_parms !byte 1 !byte 0 + !byte 2 + +c5_parms + !byte 2 + !byte 0 + !word $201 + !byte $d1 dump_info tsx @@ -240,10 +254,6 @@ dump_info JSR decompress lda zpage_ptr - !if name_offset>0 { - sec - sbc #name_offset - } ldy #name_offset sta (zpage_info),y