diff --git a/res/ATTRACT/GREMLINS b/res/ATTRACT/GREMLINS index 2dd7ed9b6..cb91717d5 100644 --- a/res/ATTRACT/GREMLINS +++ b/res/ATTRACT/GREMLINS @@ -5,5 +5,6 @@ GREMLINS=C GREMLINS=A +GREMLINS=0 [eof] diff --git a/res/DEMO/GREMLINS b/res/DEMO/GREMLINS new file mode 100644 index 000000000..b3014db40 Binary files /dev/null and b/res/DEMO/GREMLINS differ diff --git a/res/DEMO/_FileInformation.txt b/res/DEMO/_FileInformation.txt index 13114933e..4e2121509 100644 --- a/res/DEMO/_FileInformation.txt +++ b/res/DEMO/_FileInformation.txt @@ -40,6 +40,7 @@ GALAXIAN=Type(06),AuxType(0300),Access(C3) GAMMA.GOBLINS=Type(06),AuxType(B000),Access(C3) GENETIC.DRIFT=Type(06),AuxType(0300),Access(C3) THE.GOONIES=Type(06),AuxType(0300),Access(C3) +GREMLINS=Type(06),AuxType(BE00),Access(C3) GUMBALL=Type(06),AuxType(0210),Access(C3) HARD.HAT.MACK=Type(06),AuxType(0200),Access(C3) HIGH.RISE=Type(06),AuxType(0300),Access(C3) diff --git a/src/demo/gremlins.a b/src/demo/gremlins.a new file mode 100644 index 000000000..4cdb46a85 --- /dev/null +++ b/src/demo/gremlins.a @@ -0,0 +1,47 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "res/DEMO/GREMLINS",plain +*=$be00 + + !source "src/constants.a" ; no code in these + !source "src/macros.a" + + +READ_RAM2_WRITE_RAM2 + jsr EnableAccelerator + +LOAD_FILE_AT gremlins, 0 + +READ_ROM_NO_WRITE + lda #$4C + sta $082D + sta $0863 + lda #$2C + sta $839 ; no music + lda #0 + sta $856 ; exit keycheck sooner + jsr $0800 ; decompress + +DISABLE_ACCEL + jsr $830 ; check key + ldx #0 + stx $5219 ; exit keycheck sooner + lda #$4C + sta $51F2 + sta $61E4 + stx $51F3 + stx $5506 + stx $61E5 + inx + stx $51F4 + stx $5507 + stx $61E6 + jmp $4000 + +gremlins + !byte gremlins_e-gremlins_b +gremlins_b + !text "X/GREMLINS/GREMLINS" +gremlins_e + +!if * > $BEFF { + !error "code is too large, ends at ", * +} diff --git a/src/index/artwork.idx.a b/src/index/artwork.idx.a index 769966d90..14317ee40 100644 --- a/src/index/artwork.idx.a +++ b/src/index/artwork.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11465688 + !be24 11465700 !le16 4580 diff --git a/src/index/attract.idx.a b/src/index/attract.idx.a index 0a0be4721..65f88f5aa 100644 --- a/src/index/attract.idx.a +++ b/src/index/attract.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11416876 + !be24 11416888 !le16 5319 diff --git a/src/index/cache00.idx.a b/src/index/cache00.idx.a index 023367b92..f58fd2ea2 100644 --- a/src/index/cache00.idx.a +++ b/src/index/cache00.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11357238 + !be24 11357250 !le16 3654 diff --git a/src/index/cache01.idx.a b/src/index/cache01.idx.a index 6ed42472d..6baf33ce1 100644 --- a/src/index/cache01.idx.a +++ b/src/index/cache01.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11370019 + !be24 11370031 !le16 4064 diff --git a/src/index/cache10.idx.a b/src/index/cache10.idx.a index e2fa2dfee..1908c4ab0 100644 --- a/src/index/cache10.idx.a +++ b/src/index/cache10.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11386059 + !be24 11386071 !le16 5245 diff --git a/src/index/cache11.idx.a b/src/index/cache11.idx.a index 9d4115108..d1149ea72 100644 --- a/src/index/cache11.idx.a +++ b/src/index/cache11.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11404573 + !be24 11404585 !le16 5870 diff --git a/src/index/coverfade.idx.a b/src/index/coverfade.idx.a index b3ba00c8f..dcdfba27c 100644 --- a/src/index/coverfade.idx.a +++ b/src/index/coverfade.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11470268 + !be24 11470280 !le16 410 diff --git a/src/index/credits.idx.a b/src/index/credits.idx.a index de2323285..e9a7fb24d 100644 --- a/src/index/credits.idx.a +++ b/src/index/credits.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11471022 + !be24 11471034 !le16 448 diff --git a/src/index/decrunch.idx.a b/src/index/decrunch.idx.a index 9639f34d5..613114683 100644 --- a/src/index/decrunch.idx.a +++ b/src/index/decrunch.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11471470 + !be24 11471482 !le16 303 diff --git a/src/index/dfx.idx.a b/src/index/dfx.idx.a index 9ddcc6279..9f68d5554 100644 --- a/src/index/dfx.idx.a +++ b/src/index/dfx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11424341 + !be24 11424353 !le16 1242 diff --git a/src/index/dgr.fizzle.idx.a b/src/index/dgr.fizzle.idx.a index 993f28345..1560033ef 100644 --- a/src/index/dgr.fizzle.idx.a +++ b/src/index/dgr.fizzle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11470754 + !be24 11470766 !le16 67 diff --git a/src/index/dgr.idx.a b/src/index/dgr.idx.a index 89da5c67b..d4ff99b20 100644 --- a/src/index/dgr.idx.a +++ b/src/index/dgr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11465629 + !be24 11465641 !le16 59 diff --git a/src/index/dhgr.idx.a b/src/index/dhgr.idx.a index e1360fd0b..539483aa0 100644 --- a/src/index/dhgr.idx.a +++ b/src/index/dhgr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11464144 + !be24 11464156 !le16 1404 diff --git a/src/index/dtitle.idx.a b/src/index/dtitle.idx.a index a07fa45db..d99437b05 100644 --- a/src/index/dtitle.idx.a +++ b/src/index/dtitle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11449761 + !be24 11449773 !le16 521 diff --git a/src/index/fx.idx.a b/src/index/fx.idx.a index c5d157783..4b57be584 100644 --- a/src/index/fx.idx.a +++ b/src/index/fx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11422195 + !be24 11422207 !le16 2146 diff --git a/src/index/gamehelp.idx.a b/src/index/gamehelp.idx.a index 6599c7dcf..d3a60db0b 100644 --- a/src/index/gamehelp.idx.a +++ b/src/index/gamehelp.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11425941 + !be24 11425953 !le16 6433 diff --git a/src/index/gr.fizzle.idx.a b/src/index/gr.fizzle.idx.a index f8b1e1356..b5f96bbd1 100644 --- a/src/index/gr.fizzle.idx.a +++ b/src/index/gr.fizzle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11470678 + !be24 11470690 !le16 76 diff --git a/src/index/gr.idx.a b/src/index/gr.idx.a index 9a0ea2710..97bcd9a2d 100644 --- a/src/index/gr.idx.a +++ b/src/index/gr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11465548 + !be24 11465560 !le16 81 diff --git a/src/index/helptext.idx.a b/src/index/helptext.idx.a index dd41b725f..a80eb6870 100644 --- a/src/index/helptext.idx.a +++ b/src/index/helptext.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11470821 + !be24 11470833 !le16 201 diff --git a/src/index/hgr0.idx.a b/src/index/hgr0.idx.a index b3fee2564..fd84ffd0a 100644 --- a/src/index/hgr0.idx.a +++ b/src/index/hgr0.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11450282 + !be24 11450294 !le16 4511 diff --git a/src/index/hgr1.idx.a b/src/index/hgr1.idx.a index 2e7043a35..68d3c5f8a 100644 --- a/src/index/hgr1.idx.a +++ b/src/index/hgr1.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11454793 + !be24 11454805 !le16 1591 diff --git a/src/index/hgr2.idx.a b/src/index/hgr2.idx.a index 5952cf27b..97f7c3f71 100644 --- a/src/index/hgr2.idx.a +++ b/src/index/hgr2.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11456384 + !be24 11456396 !le16 1053 diff --git a/src/index/hgr3.idx.a b/src/index/hgr3.idx.a index 84deb8b0f..b56be6cc3 100644 --- a/src/index/hgr3.idx.a +++ b/src/index/hgr3.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11457437 + !be24 11457449 !le16 3237 diff --git a/src/index/hgr4.idx.a b/src/index/hgr4.idx.a index 0fe23f66f..d5dc92650 100644 --- a/src/index/hgr4.idx.a +++ b/src/index/hgr4.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11460674 + !be24 11460686 !le16 2877 diff --git a/src/index/hgr5.idx.a b/src/index/hgr5.idx.a index 82a73883d..912674b68 100644 --- a/src/index/hgr5.idx.a +++ b/src/index/hgr5.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11463551 + !be24 11463563 !le16 479 diff --git a/src/index/hgr6.idx.a b/src/index/hgr6.idx.a index a727cae35..b7b6a8d93 100644 --- a/src/index/hgr6.idx.a +++ b/src/index/hgr6.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11464030 + !be24 11464042 !le16 114 diff --git a/src/index/joystick.idx.a b/src/index/joystick.idx.a index 80067ddf0..0c759b228 100644 --- a/src/index/joystick.idx.a +++ b/src/index/joystick.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11471773 + !be24 11471785 !le16 2370 diff --git a/src/index/miniattract0.idx.a b/src/index/miniattract0.idx.a index 48e5ac352..e23991dcb 100644 --- a/src/index/miniattract0.idx.a +++ b/src/index/miniattract0.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11437330 + !be24 11437342 !le16 3642 diff --git a/src/index/miniattract1.idx.a b/src/index/miniattract1.idx.a index 4749a2a3d..5f6953f97 100644 --- a/src/index/miniattract1.idx.a +++ b/src/index/miniattract1.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11440972 + !be24 11440984 !le16 2795 diff --git a/src/index/prelaunch.idx.a b/src/index/prelaunch.idx.a index 2ddb55ba7..f930398f0 100644 --- a/src/index/prelaunch.idx.a +++ b/src/index/prelaunch.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11410443 + !be24 11410455 !le16 6433 diff --git a/src/index/search00.idx.a b/src/index/search00.idx.a index 40e201de0..a00a2fa16 100644 --- a/src/index/search00.idx.a +++ b/src/index/search00.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11348955 + !be24 11348967 !le16 8283 diff --git a/src/index/search01.idx.a b/src/index/search01.idx.a index 4aec91053..f77b744cb 100644 --- a/src/index/search01.idx.a +++ b/src/index/search01.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11360892 + !be24 11360904 !le16 9127 diff --git a/src/index/search10.idx.a b/src/index/search10.idx.a index cf7e78d1b..5bd744f9b 100644 --- a/src/index/search10.idx.a +++ b/src/index/search10.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11374083 + !be24 11374095 !le16 11976 diff --git a/src/index/search11.idx.a b/src/index/search11.idx.a index dcaa2f980..cd4d87f09 100644 --- a/src/index/search11.idx.a +++ b/src/index/search11.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11391304 + !be24 11391316 !le16 13269 diff --git a/src/index/sfx.idx.a b/src/index/sfx.idx.a index e32fc17ce..93d0f74a5 100644 --- a/src/index/sfx.idx.a +++ b/src/index/sfx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11425583 + !be24 11425595 !le16 358 diff --git a/src/index/slideshow.idx.a b/src/index/slideshow.idx.a index 476256de3..fe2ee2ab5 100644 --- a/src/index/slideshow.idx.a +++ b/src/index/slideshow.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11432374 + !be24 11432386 !le16 4956 diff --git a/src/index/title.idx.a b/src/index/title.idx.a index 04f117646..6f20780d5 100644 --- a/src/index/title.idx.a +++ b/src/index/title.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11443767 + !be24 11443779 !le16 5994 diff --git a/src/prelaunch/gremlins.a b/src/prelaunch/gremlins.a index 66bae7773..3be2ae8d2 100644 --- a/src/prelaunch/gremlins.a +++ b/src/prelaunch/gremlins.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2019 by 4am +;(c) 2019, 2022 by 4am, qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/GREMLINS",plain @@ -8,9 +8,13 @@ !source "src/prelaunch/common.a" +ENABLE_ACCEL - lda #$60 - sta $0866 + lda #$4C + sta $082D + sta $0863 jsr $0800 ; decompress + +DISABLE_ACCEL + jsr $211 ; music + jsr $830 ; check key +GET_MACHINE_STATUS and #CHEATS_ENABLED beq + @@ -22,11 +26,6 @@ sta $54B6 ; patch - don't decrease lives sta $5162 ; patch - don't increase lives + - ldx #0 - stx $67AA - dex - stx $67A0 - +DISABLE_ACCEL jmp $4000 !if * > $1C0 {