From 4f3cc745c7d1a239cf14b3416c3cab7335411fc7 Mon Sep 17 00:00:00 2001 From: 4am Date: Mon, 1 Nov 2021 00:29:36 -0400 Subject: [PATCH] demos should check their own hardware requirements now --- res/DEMO/CHOPLIFTER | Bin 104 -> 118 bytes res/DEMO/GAMMA.GOBLINS | Bin 152 -> 166 bytes res/DEMO/PITFALL.II | Bin 182 -> 196 bytes res/DEMO/SPACE.EGGS | Bin 202 -> 216 bytes res/DEMO/STARGATE | Bin 179 -> 193 bytes res/DEMO/TB | Bin 148 -> 162 bytes src/demo/choplifter.a | 1 + src/demo/gamma.goblins.a | 1 + src/demo/pitfall.ii.a | 1 + src/demo/space.eggs.a | 1 + src/demo/stargate.a | 1 + src/demo/tubeway.a | 1 + src/macros.a | 11 +++++++++++ 13 files changed, 17 insertions(+) diff --git a/res/DEMO/CHOPLIFTER b/res/DEMO/CHOPLIFTER index c5d17cf327e89188c5f03a56cd91ef0280849680..11e1d8212988fba0205bd83f1caf8b675f26ac73 100755 GIT binary patch delta 24 gcmc~OH_pBQ7+MAb$B7qJ7V diff --git a/res/DEMO/PITFALL.II b/res/DEMO/PITFALL.II index 151203d251c87ccc01d94108f7b8b0ca006e0004..52ec4ebdd917a7a30bc9e5d62e6a5439c735f107 100755 GIT binary patch delta 69 zcmV-L0J{IS0mK0gEP%kR`Ts0}z$t*x0br087_6WJAn*TZjRVwZjRDlDV2w0AAOHxd bagi<-3wMq7EvW;I_bsV}kxwcCrjdF)B2FD= delta 73 zcmV-P0Ji_c0k#2=4i-6{paUT9|7eW^)M$+X)Tv;NG(8{y2&rR@@&l;@jq?LZrH%9h fsZ5RaEsX{)scDV&EvW;I_bsV*kzFbQn30G)Z8#rS diff --git a/res/DEMO/SPACE.EGGS b/res/DEMO/SPACE.EGGS index 0fc2ea7eb0b9349bf7f4711d5e1e7a7286353ece..3c441efdebe2e196518f7f01657fddb5a7c0255f 100755 GIT binary patch delta 31 ncmX@bc!QBor{TcbpZ|554rn%9U`&`G#&}?&csb+NiT&09;#Li# delta 17 Zcmcb?c#3f%pBUq&iK^v{%O}pY1^_p{21@_{ diff --git a/res/DEMO/STARGATE b/res/DEMO/STARGATE index 4af5e493e0867c770715c3c31bb62ddfafb0bee9..9b14cfa0017e4380fc3c0703a5d6bbe3d82b3bad 100755 GIT binary patch delta 26 icmdnYc#x4#r{TcbpZ|554rn%9U`&`G#<+H(_#6P8@(XqV delta 12 TcmX@exS4SxpBUr(iK=q|8nOf) diff --git a/res/DEMO/TB b/res/DEMO/TB index 8ac31af63507d591375894d1ace11d54f6298672..246b329ca2431fdce58085a0b2e4defa604add68 100755 GIT binary patch delta 26 icmbQjxQLNYr{TcbpZ|554rn%9U`&`G#yD%Dcr5^zc?$*r delta 12 TcmZ3)IE8T{pBQ7$MAcdV7o7vH 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_=* }