diff --git a/res/DEMO/CHOPLIFTER b/res/DEMO/CHOPLIFTER index c5d17cf32..11e1d8212 100755 Binary files a/res/DEMO/CHOPLIFTER and b/res/DEMO/CHOPLIFTER differ diff --git a/res/DEMO/GAMMA.GOBLINS b/res/DEMO/GAMMA.GOBLINS index 2ecd11441..e9fba69ad 100755 Binary files a/res/DEMO/GAMMA.GOBLINS and b/res/DEMO/GAMMA.GOBLINS differ diff --git a/res/DEMO/PITFALL.II b/res/DEMO/PITFALL.II index 151203d25..52ec4ebdd 100755 Binary files a/res/DEMO/PITFALL.II and b/res/DEMO/PITFALL.II differ diff --git a/res/DEMO/SPACE.EGGS b/res/DEMO/SPACE.EGGS index 0fc2ea7eb..3c441efde 100755 Binary files a/res/DEMO/SPACE.EGGS and b/res/DEMO/SPACE.EGGS differ diff --git a/res/DEMO/STARGATE b/res/DEMO/STARGATE index 4af5e493e..9b14cfa00 100755 Binary files a/res/DEMO/STARGATE and b/res/DEMO/STARGATE differ diff --git a/res/DEMO/TB b/res/DEMO/TB index 8ac31af63..246b329ca 100755 Binary files a/res/DEMO/TB and b/res/DEMO/TB differ diff --git a/src/demo/choplifter.a b/src/demo/choplifter.a index 8606ddcd3..c05ea1b6f 100644 --- a/src/demo/choplifter.a +++ b/src/demo/choplifter.a @@ -8,6 +8,7 @@ !source "src/constants.a" ; no code in these !source "src/macros.a" + +GAME_REQUIRES_JOYSTICK +READ_RAM2_WRITE_RAM2 jsr EnableAccelerator +LOAD_FILE_AT choplifter, $00 diff --git a/src/demo/gamma.goblins.a b/src/demo/gamma.goblins.a index ad212a164..aff7e56b8 100644 --- a/src/demo/gamma.goblins.a +++ b/src/demo/gamma.goblins.a @@ -8,6 +8,7 @@ !source "src/constants.a" ; no code in these !source "src/macros.a" + +GAME_REQUIRES_JOYSTICK +READ_RAM2_WRITE_RAM2 jsr EnableAccelerator +LOAD_FILE_AT title, $00 diff --git a/src/demo/pitfall.ii.a b/src/demo/pitfall.ii.a index f1bbb348c..386807b0f 100644 --- a/src/demo/pitfall.ii.a +++ b/src/demo/pitfall.ii.a @@ -8,6 +8,7 @@ !source "src/constants.a" ; no code in these !source "src/macros.a" + +GAME_REQUIRES_JOYSTICK +READ_RAM2_WRITE_RAM2 jsr EnableAccelerator +LOAD_FILE_AT title, $00 diff --git a/src/demo/space.eggs.a b/src/demo/space.eggs.a index 3bd0b1134..b10599a7b 100644 --- a/src/demo/space.eggs.a +++ b/src/demo/space.eggs.a @@ -8,6 +8,7 @@ !source "src/constants.a" ; no code in these !source "src/macros.a" + +GAME_REQUIRES_JOYSTICK +READ_RAM2_WRITE_RAM2 jsr EnableAccelerator +LOAD_FILE_AT title, $00 diff --git a/src/demo/stargate.a b/src/demo/stargate.a index 6a2d1ca69..5a24f43e2 100644 --- a/src/demo/stargate.a +++ b/src/demo/stargate.a @@ -8,6 +8,7 @@ !source "src/constants.a" ; no code in these !source "src/macros.a" + +GAME_REQUIRES_JOYSTICK +READ_RAM2_WRITE_RAM2 jsr EnableAccelerator +LOAD_FILE_AT title, $00 diff --git a/src/demo/tubeway.a b/src/demo/tubeway.a index 241e2ef4b..3178abc23 100644 --- a/src/demo/tubeway.a +++ b/src/demo/tubeway.a @@ -8,6 +8,7 @@ !source "src/constants.a" ; no code in these !source "src/macros.a" + +GAME_REQUIRES_JOYSTICK +READ_RAM2_WRITE_RAM2 jsr EnableAccelerator +LOAD_FILE_AT tubeway, $00 diff --git a/src/macros.a b/src/macros.a index 6cca3387d..ad6d868f6 100755 --- a/src/macros.a +++ b/src/macros.a @@ -330,6 +330,7 @@ lda MachineStatus +READ_ROM_NO_WRITE } + !macro USES_TEXT_PAGE_2 { lda ROM_MACHINEID cmp #$06 @@ -439,5 +440,15 @@ sta iCurBlockLo } +; Macros for demo launchers that need to check whether they should run +; on the current machine. These will RTS if the requirements are not met. +!macro GAME_REQUIRES_JOYSTICK { + +GET_MACHINE_STATUS + and #HAS_JOYSTICK + bne + + rts ++ +} + _MACROS_=* }