aboutsummaryrefslogtreecommitdiff
path: root/src/driver.s
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <mssola@mssola.com>2026-03-20 09:54:25 +0100
committerMiquel Sabaté Solà <mssola@mssola.com>2026-03-20 12:48:17 +0100
commit8f7b8ce3335404badc276445d899372839cdde71 (patch)
treec5422f80bc9e13f927965bfa655dd29d6bec5942 /src/driver.s
parent01f92b866eb4610b8d12008ea3389ac56052d20a (diff)
downloadjetpac.nes-8f7b8ce3335404badc276445d899372839cdde71.tar.gz
jetpac.nes-8f7b8ce3335404badc276445d899372839cdde71.zip
Add support for the SUSE coin
This is a coin that appears after going through a first cycle of levels and that allows the player to get a different game over screen than usual. Signed-off-by: Miquel Sabaté Solà <mssola@mssola.com>
Diffstat (limited to 'src/driver.s')
-rw-r--r--src/driver.s8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/driver.s b/src/driver.s
index e1c2eb7..bfa6294 100644
--- a/src/driver.s
+++ b/src/driver.s
@@ -323,12 +323,16 @@
and #%00000110
bne @reset_timer
- ;; No! Toggle the game over bit.
- ;; TODO: missing the coin game over.
+ ;; No! Set the game over bit (with or without coin).
lda Globals::zp_flags
ora #%00000010
sta Globals::zp_flags
+ lda Items::zp_state
+ and #$04
+ beq @invalidate_items
+ inc Globals::zp_flags
+ @invalidate_items:
;; Invalidate items, which were skipped on move_sprites_out() on purpose
;; to keep them after each death. But since we are about to go to the
;; title screen, now they are no longer useful.