From 8d1d9c0bc57aeeba6bc96217483357877ce38acb Mon Sep 17 00:00:00 2001 From: 4am Date: Tue, 24 Nov 2020 21:02:14 -0500 Subject: [PATCH] don't clobber ProDOS shim, that's rude --- res/DFX.CONF | 11 ++++++----- res/FX.CONF | 5 +++-- src/fx/fx.dhgr.2bit.fizzle.a | 10 +++++----- src/fx/fx.dhgr.fizzle.a | 8 ++++---- 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/res/DFX.CONF b/res/DFX.CONF index 779d99d54..ec110e4b4 100644 --- a/res/DFX.CONF +++ b/res/DFX.CONF @@ -60,11 +60,12 @@ DHGR.FLICK # name of the next transition effect is stored in the global prefs, so this # file should not contain duplicates. # -# Transition effects are binary files loaded at $6000 and called with DHGR -# page 1 showing and the next DHGR graphic already loaded at $4000/main and -# $4000/aux. A transition effect has full use of main and auxiliary memory, -# including zero pages and text pages if needed. LC RAM banks 1 and 2 are -# reserved for the launcher. +# Transition effects are binary files loaded at $6000 and called with main +# memory banked in, DHGR page 1 showing, and the next DHGR graphic already +# loaded at $4000/main and $4000/aux. A transition effect has full use of +# auxiliary memory, zero pages (both), text pages (both, but preserve screen +# holes), and main memory $6000-$BEFF. $BF00-$BFFF/main is reserved for the +# ProDOS shim. LC RAM banks 1 and 2 are reserved for the launcher. # # Important: LC RAM bank 1 will be read/write on entry and must be read/write # on exit. If you need ROM routines, you are responsible for switching to ROM diff --git a/res/FX.CONF b/res/FX.CONF index 6280963c9..1c7e09570 100644 --- a/res/FX.CONF +++ b/res/FX.CONF @@ -129,9 +129,10 @@ FLICK # # Transition effects are binary files loaded at $6000 and called with # hi-res page 1 showing and the next HGR graphic already loaded at $4000. -# A transition effect can use $6000-$BFFF in main memory, zero page, and +# A transition effect can use $6000-$BEFF in main memory, zero page, and # text page if needed (but preserve the screen holes). $800-$1FFF is reserved -# for the slideshow data. LC RAM banks 1 and 2 are reserved for the launcher. +# for the slideshow data. $BF00-$BFFF is reserved for the ProDOS shim. +# LC RAM banks 1 and 2 are reserved for the launcher. # # Important: LC RAM bank 1 will be read/write on entry and must be read/write # on exit. If you need ROM routines, you are responsible for switching to ROM diff --git a/src/fx/fx.dhgr.2bit.fizzle.a b/src/fx/fx.dhgr.2bit.fizzle.a index 7a24272b5..8c970cf75 100644 --- a/src/fx/fx.dhgr.2bit.fizzle.a +++ b/src/fx/fx.dhgr.2bit.fizzle.a @@ -32,12 +32,12 @@ copymasks = $6200 ; [256 bytes, page-aligned, duplicated in a sta $C005 sta addrs, x sta $C004 - eor #$80 + eor #$A0 sta addrs+1, x sta $C005 sta addrs+1, x sta $C004 - eor #$80 + eor #$A0 adc #1 inx inx @@ -50,11 +50,11 @@ copymasks = $6200 ; [256 bytes, page-aligned, duplicated in a start !pseudopc 0 { !byte %00000011 -copyaux sta $C003 ; copy $4000/aux to $A000/main +copyaux sta $C003 ; copy $4000/aux to $8000/main ldx #$20 ldy #$00 a lda $4000, y -b sta $A000, y +b sta $8000, y iny bne a inc a+2 @@ -97,7 +97,7 @@ exit lda $4000 ; last lousy byte (because LFSR never hits aux sta $C055 ; switch $2000 access to aux memory (read/write!) sta