diff --git a/res/CACHE00.IDX b/res/CACHE00.IDX index 5c9f36157..97f54e653 100644 Binary files a/res/CACHE00.IDX and b/res/CACHE00.IDX differ diff --git a/res/CACHE01.IDX b/res/CACHE01.IDX index e809cea3f..49300a19a 100644 Binary files a/res/CACHE01.IDX and b/res/CACHE01.IDX differ diff --git a/res/CACHE10.IDX b/res/CACHE10.IDX index 7ca15bc72..69ba35aa6 100644 Binary files a/res/CACHE10.IDX and b/res/CACHE10.IDX differ diff --git a/res/CACHE11.IDX b/res/CACHE11.IDX index 3828dec61..05a648829 100644 Binary files a/res/CACHE11.IDX and b/res/CACHE11.IDX differ diff --git a/res/GAMES.CONF b/res/GAMES.CONF index 50dbc70f8..105c4c3dd 100755 --- a/res/GAMES.CONF +++ b/res/GAMES.CONF @@ -111,6 +111,7 @@ 1001,CHIP.OUT=Chip Out 0000,CHIVALRY=Chivalry 1007,CHOPLIFTER=Choplifter +0001,COLLECT=Collect 0010,COLUMNS=Columns 0101,COMMANDO=Commando 0003,CONAN=Conan @@ -131,6 +132,7 @@ 0001,CUBIT=Cubit 0000,CYBER.STRIKE=Cyber Strike 0001,CYCLOD=Cyclod +1001,CYCLOTRON=Cyclotron 0117,DG=D-Generation 0017,DANGEROUS.DAVE=Dangerous Dave 0117,DD.GOES.NUTZ=Dangerous Dave Goes Nutz @@ -166,6 +168,7 @@ 0004,FIRE.AND.ICE=Fire and Ice 0001,FIREBIRD=Firebird 0000,FIREBUG=Firebug +0001,FLAK=Flak 0110,FLAPPLE.BIRD=Flapple Bird 0000,FLIP.OUT=Flip Out 0001,FLOBYNOID=Flobynoid diff --git a/res/TITLE.HGR.UNPACKED/COLLECT b/res/TITLE.HGR.UNPACKED/COLLECT new file mode 100644 index 000000000..251bdbacf Binary files /dev/null and b/res/TITLE.HGR.UNPACKED/COLLECT differ diff --git a/res/TITLE.HGR.UNPACKED/CYCLOTRON b/res/TITLE.HGR.UNPACKED/CYCLOTRON new file mode 100644 index 000000000..d18e73026 Binary files /dev/null and b/res/TITLE.HGR.UNPACKED/CYCLOTRON differ diff --git a/res/TITLE.HGR.UNPACKED/FLAK b/res/TITLE.HGR.UNPACKED/FLAK new file mode 100644 index 000000000..734548e3d Binary files /dev/null and b/res/TITLE.HGR.UNPACKED/FLAK differ diff --git a/res/TITLE.HGR/COLLECT b/res/TITLE.HGR/COLLECT new file mode 100644 index 000000000..c5d281a75 Binary files /dev/null and b/res/TITLE.HGR/COLLECT differ diff --git a/res/TITLE.HGR/CYCLOTRON b/res/TITLE.HGR/CYCLOTRON new file mode 100644 index 000000000..3e29b4310 Binary files /dev/null and b/res/TITLE.HGR/CYCLOTRON differ diff --git a/res/TITLE.HGR/FLAK b/res/TITLE.HGR/FLAK new file mode 100644 index 000000000..8d46c4c83 Binary files /dev/null and b/res/TITLE.HGR/FLAK differ diff --git a/res/dsk/collect 4k file PRODOS (san inc pack).po b/res/dsk/collect 4k file PRODOS (san inc pack).po new file mode 100644 index 000000000..4781704b6 Binary files /dev/null and b/res/dsk/collect 4k file PRODOS (san inc pack).po differ diff --git a/res/dsk/cyclotron 10k file PRODOS (san inc pack).po b/res/dsk/cyclotron 10k file PRODOS (san inc pack).po new file mode 100644 index 000000000..27474dfe3 Binary files /dev/null and b/res/dsk/cyclotron 10k file PRODOS (san inc pack).po differ diff --git a/res/dsk/flak 17k file PRODOS (san inc pack).po b/res/dsk/flak 17k file PRODOS (san inc pack).po new file mode 100644 index 000000000..accb6a8a1 Binary files /dev/null and b/res/dsk/flak 17k file PRODOS (san inc pack).po differ diff --git a/src/index/artwork.idx.a b/src/index/artwork.idx.a index f5f020794..c60a0c91e 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 11998206 + !be24 12022155 !le16 5108 diff --git a/src/index/attract.idx.a b/src/index/attract.idx.a index 9f9a34bc0..95c363d8b 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 11947493 + !be24 11971360 !le16 5424 diff --git a/src/index/cache00.idx.a b/src/index/cache00.idx.a index 6231cd274..e8ffe0f4d 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 11885928 - !le16 3780 + !be24 11909526 + !le16 3786 diff --git a/src/index/cache01.idx.a b/src/index/cache01.idx.a index 648b1bddc..689546f76 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 11899233 - !le16 4200 + !be24 11922883 + !le16 4209 diff --git a/src/index/cache10.idx.a b/src/index/cache10.idx.a index a704fc0b1..e2c0351c2 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 11915811 - !le16 5344 + !be24 11939546 + !le16 5350 diff --git a/src/index/cache11.idx.a b/src/index/cache11.idx.a index 2f79afebb..d2c3f4840 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 11934856 - !le16 5972 + !be24 11958673 + !le16 5981 diff --git a/src/index/count00.a b/src/index/count00.a index 1738c04c4..00b2cbd78 100644 --- a/src/index/count00.a +++ b/src/index/count00.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 284 +!word 286 diff --git a/src/index/count01.a b/src/index/count01.a index 8e51456ad..717eeeda3 100644 --- a/src/index/count01.a +++ b/src/index/count01.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 311 +!word 313 diff --git a/src/index/count10.a b/src/index/count10.a index 1ed308cda..1bf2d19a3 100644 --- a/src/index/count10.a +++ b/src/index/count10.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 401 +!word 404 diff --git a/src/index/count11.a b/src/index/count11.a index 01fcdd90e..ed888a1c9 100644 --- a/src/index/count11.a +++ b/src/index/count11.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 443 +!word 446 diff --git a/src/index/coverfade.idx.a b/src/index/coverfade.idx.a index 6cfc3be7e..02a91a841 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 12003314 + !be24 12027263 !le16 410 diff --git a/src/index/credits.idx.a b/src/index/credits.idx.a index c31d82563..1532deb22 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 12004068 + !be24 12028017 !le16 448 diff --git a/src/index/decrunch.idx.a b/src/index/decrunch.idx.a index ff0db26e2..52a5997e0 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 12004516 + !be24 12028465 !le16 303 diff --git a/src/index/dfx.idx.a b/src/index/dfx.idx.a index 1764bb108..deefd165c 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 11955492 + !be24 11979359 !le16 1561 diff --git a/src/index/dgr.fizzle.idx.a b/src/index/dgr.fizzle.idx.a index fc7b0b41a..8633e1b33 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 12003800 + !be24 12027749 !le16 67 diff --git a/src/index/dgr.idx.a b/src/index/dgr.idx.a index 4493326c9..c9239ec62 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 11998147 + !be24 12022096 !le16 59 diff --git a/src/index/dhgr.idx.a b/src/index/dhgr.idx.a index 0a9c64810..ebacc9dc6 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 11996613 + !be24 12020562 !le16 1437 diff --git a/src/index/dtitle.idx.a b/src/index/dtitle.idx.a index 00be0e707..07ba4d519 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 11982007 + !be24 12005956 !le16 537 diff --git a/src/index/fx.idx.a b/src/index/fx.idx.a index 14b47ca5b..50debcd03 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 11952917 + !be24 11976784 !le16 2575 diff --git a/src/index/gamehelp.idx.a b/src/index/gamehelp.idx.a index bf2cb6fac..8a7ce72af 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 11957411 - !le16 6665 + !be24 11981278 + !le16 6706 diff --git a/src/index/gr.fizzle.idx.a b/src/index/gr.fizzle.idx.a index 67ac355ee..05e4dbb1c 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 12003724 + !be24 12027673 !le16 76 diff --git a/src/index/gr.idx.a b/src/index/gr.idx.a index 703a37a54..5cf33da2e 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 11998050 + !be24 12021999 !le16 97 diff --git a/src/index/helptext.idx.a b/src/index/helptext.idx.a index 79a93a8e5..21a934cd8 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 12003867 + !be24 12027816 !le16 201 diff --git a/src/index/hgr0.idx.a b/src/index/hgr0.idx.a index 36ab48b0b..9f05562a6 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 11982544 + !be24 12006493 !le16 4486 diff --git a/src/index/hgr1.idx.a b/src/index/hgr1.idx.a index 12a486884..417ca267c 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 11987030 + !be24 12010979 !le16 1658 diff --git a/src/index/hgr2.idx.a b/src/index/hgr2.idx.a index f58591df3..5b147327e 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 11988688 + !be24 12012637 !le16 1053 diff --git a/src/index/hgr3.idx.a b/src/index/hgr3.idx.a index 5bddae279..085194b61 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 11989741 + !be24 12013690 !le16 3294 diff --git a/src/index/hgr4.idx.a b/src/index/hgr4.idx.a index 1f4b03c32..a559f78b4 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 11993035 + !be24 12016984 !le16 2985 diff --git a/src/index/hgr5.idx.a b/src/index/hgr5.idx.a index 1bac7d70c..4e9372306 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 11996020 + !be24 12019969 !le16 479 diff --git a/src/index/hgr6.idx.a b/src/index/hgr6.idx.a index 1ee34d7b8..5dbfe2301 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 11996499 + !be24 12020448 !le16 114 diff --git a/src/index/joystick.idx.a b/src/index/joystick.idx.a index 6cdf6411a..5add66c07 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 12004819 + !be24 12028768 !le16 2370 diff --git a/src/index/miniattract0.idx.a b/src/index/miniattract0.idx.a index 988e179bf..ecd15cdf1 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 11969128 + !be24 11993036 !le16 4433 diff --git a/src/index/miniattract1.idx.a b/src/index/miniattract1.idx.a index bb15d7105..3908b67d8 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 11973561 + !be24 11997469 !le16 2236 diff --git a/src/index/prelaunch.idx.a b/src/index/prelaunch.idx.a index f4ebdcae4..4803a8d15 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 11940828 - !le16 6665 + !be24 11964654 + !le16 6706 diff --git a/src/index/res.cover.idx.a b/src/index/res.cover.idx.a index 5381a4498..62ef6b7c7 100644 --- a/src/index/res.cover.idx.a +++ b/src/index/res.cover.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 3821568 + !be24 3845120 !le16 8192 diff --git a/src/index/res.help.idx.a b/src/index/res.help.idx.a index 4cc5eee3d..bf9f9ca56 100644 --- a/src/index/res.help.idx.a +++ b/src/index/res.help.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 3837952 + !be24 3861504 !le16 8192 diff --git a/src/index/res.title.idx.a b/src/index/res.title.idx.a index 2ee4ccda1..c081ba196 100644 --- a/src/index/res.title.idx.a +++ b/src/index/res.title.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 3829760 + !be24 3853312 !le16 8192 diff --git a/src/index/search00.idx.a b/src/index/search00.idx.a index c9f815537..f0b94e7bc 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 11877277 - !le16 8651 + !be24 11900829 + !le16 8697 diff --git a/src/index/search01.idx.a b/src/index/search01.idx.a index c294027f3..1ee7a638b 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 11889708 - !le16 9525 + !be24 11913312 + !le16 9571 diff --git a/src/index/search10.idx.a b/src/index/search10.idx.a index d1749f1b5..2043c8791 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 11903433 - !le16 12378 + !be24 11927092 + !le16 12454 diff --git a/src/index/search11.idx.a b/src/index/search11.idx.a index 97b13bd9f..8f6dc77a4 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 11921155 - !le16 13701 + !be24 11944896 + !le16 13777 diff --git a/src/index/sfx.idx.a b/src/index/sfx.idx.a index 4cffc6555..423c9e8e2 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 11957053 + !be24 11980920 !le16 358 diff --git a/src/index/slideshow.idx.a b/src/index/slideshow.idx.a index e599ca142..d4e757b9e 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 11964076 + !be24 11987984 !le16 5052 diff --git a/src/index/title.idx.a b/src/index/title.idx.a index ee0d3e989..73654736c 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 11975797 - !le16 6210 + !be24 11999705 + !le16 6251 diff --git a/src/prelaunch/collect.a b/src/prelaunch/collect.a new file mode 100644 index 000000000..a17bcc98e --- /dev/null +++ b/src/prelaunch/collect.a @@ -0,0 +1,28 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/COLLECT",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #$60 + sta $813 + jsr $800 ; decompress + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$a5 + sta $6A95 ; patch - don't decrease lives + sta $6ADE ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + jmp $6B00 + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/cyclotron.a b/src/prelaunch/cyclotron.a new file mode 100644 index 000000000..df870572c --- /dev/null +++ b/src/prelaunch/cyclotron.a @@ -0,0 +1,29 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/CYCLOTRON",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #$60 + sta $9509 + jsr $6DC0 ; decompress + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $1289 ; patch - don't decrease lives + sta $1607 ; patch - don't increase lives + sta $1645 ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + jmp $1C25 + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/flak.a b/src/prelaunch/flak.a new file mode 100644 index 000000000..b32cb676d --- /dev/null +++ b/src/prelaunch/flak.a @@ -0,0 +1,33 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/FLAK",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #$60 + sta $6597 + sta $6654 + jsr $50C0 ; decompress + +DISABLE_ACCEL + jsr $800 ; title animation + +ENABLE_ACCEL + jsr $AAB3 ; decompress more + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$a5 + sta $1860 ; patch - don't decrease lives + sta $1E5C ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + jmp $800 + +!if * > $1C0 { + !error "code is too large, ends at ", * +}