Things are getting back to normal after Harvey. I still need to put my office back together, but decided that can wait until after PRGE if need be.
- bunch of optimizations to free up ROM space (about 500 bytes)
- cd-w made a slight revision to the CDF driver's 2600/7800 detection logic
- added PAUSE support, toggle TV TYPE (2600) or hit PAUSE (7800). Same to unpause (or press & release FIRE).
- Updated sound effects
- "Alert!" sample added. The game repeats it for "Alert! Alert!" in order to save ROM space. Need more work on when to trigger.
Start: ; normally we would use CLEAN_START, but we want to detect console ; detection logic is to check the values in ZP RAM locations $D0 and $D1 ; ; if $D0 contains $2C and $D1 contains $A9 then ; system = 7800 // game was loaded from Harmony menu on a 7800 ; else if both contain $00 then ; system = ZP RAM $80 // game was flashed to Harmony/Melody so CDF ; // driver checked $D0 and $D1 for us ; else ; system = 2600 // game was loaded from Harmony menu on a 2600 ; start of console detection routine sei cld ldy #0 ; assume system = 2600 ldx $d0 beq .confirmFlashed ; if $00 then game might be flashed on Harmony/Melody cpx #$2c bne .is2600 ; if not $2C then loaded via Harmony Menu on 2600 ldx $d1 cpx #$a9 ; <-- evil7800 note - this A9 is OK as FastFetch is not active bne .is2600 dey ; 7800: y=$FF bne .done ; this will always branch .confirmFlashed ldx $d1 bne .is2600 ; if not $00 then loaded via Harmony Menu on 2600 ldy $80 ; .is2600 ; 2600: y == 0 .done ; 7800: y != 0 ; end of console detection routine
At the moment there's 287 bytes free of ROM.
For Harmony or Stella (requires Stella 5.0.2 or newer)