diff --git a/res/DEMO/NIGHT.STALKER b/res/DEMO/NIGHT.STALKER index 178eb0a3b..fb21aeff0 100755 Binary files a/res/DEMO/NIGHT.STALKER and b/res/DEMO/NIGHT.STALKER differ diff --git a/res/DEMO/SPACE.QUARKS b/res/DEMO/SPACE.QUARKS index f7f84074b..ddc4c3e07 100755 Binary files a/res/DEMO/SPACE.QUARKS and b/res/DEMO/SPACE.QUARKS differ diff --git a/src/demo/night.stalker.a b/src/demo/night.stalker.a index c3d82ac3b..b8ca54e25 100644 --- a/src/demo/night.stalker.a +++ b/src/demo/night.stalker.a @@ -16,7 +16,7 @@ sta $6017 sta $603F jsr $800 - +RESET_VECTOR $106 + +RESET_AND_IRQ_VECTOR $100 lda #$92 sta $0D lda #$72 diff --git a/src/demo/space.quarks.a b/src/demo/space.quarks.a index 620bd1c2f..4d4e10f60 100644 --- a/src/demo/space.quarks.a +++ b/src/demo/space.quarks.a @@ -14,7 +14,7 @@ lda #$4C sta $3EC9 jsr $3E65 ; decompress/set reset vector - +RESET_VECTOR $100 + +RESET_AND_IRQ_VECTOR $100 lda #$EA sta $1C38 sta $1C39 diff --git a/src/macros.a b/src/macros.a index 9c3abdb7b..894c01a51 100755 --- a/src/macros.a +++ b/src/macros.a @@ -351,6 +351,16 @@ sta $3F4 } +!macro RESET_AND_IRQ_VECTOR .addr { + lda #<.addr + sta $3F2 + sta $3FE + lda #>.addr + sta $3F3 + sta $3FF + eor #$A5 + sta $3F4 +} ; for games that clobber $100-$105, the prelaunch code constructs a new reset vector ; somewhere else and sets its !macro NEW_RESET_VECTOR .addr {