4cade/src/prelaunch/nightmare.a
2022-05-12 22:30:35 -07:00

54 lines
1.2 KiB
Plaintext

;license:MIT
;(c) 2020, 2022 by Frank M., qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/NI",plain
*=$106
!source "src/prelaunch/common.a"
+ENABLE_ACCEL
lda #$60
sta $404B
jsr $4000 ; decompress
lda #<callback ; lets fix ROM calls to WAIT/$FCA8
sta $16A9 ; which behave differently
sta $80EE ; on different machines
sta $8799 ; (fixes slow scream on //c+ & //gs)
sta $8C8F
sta $8CC4
sta $8CE1
lda #>callback
sta $16AA
sta $80EF
sta $879A
sta $8C90
sta $8CC5
sta $8CE2
+READ_RAM2_NO_WRITE
lda MachineStatus
and #CHEATS_ENABLED
beq +
lda #$AD
sta $8718 ; patch - don't decrease lives
sta $8980 ; patch - don't increase lives
+
jsr DisableAccelerator
+READ_ROM_NO_WRITE
jmp $1206
callback sec ; non-ROM WAIT
wait2 pha
wait3 sbc #$01
bne wait3
pla
sbc #$01
bne wait2
rts
!if * > $1C0 {
!error "code is too large, ends at ", *
}