diff --git a/res/CACHE00.IDX b/res/CACHE00.IDX index 10675d8ba..376eba5b0 100644 Binary files a/res/CACHE00.IDX and b/res/CACHE00.IDX differ diff --git a/res/CACHE01.IDX b/res/CACHE01.IDX index 67459a475..cde0b1337 100644 Binary files a/res/CACHE01.IDX and b/res/CACHE01.IDX differ diff --git a/res/CACHE10.IDX b/res/CACHE10.IDX index 415fcd0c9..8b9562084 100644 Binary files a/res/CACHE10.IDX and b/res/CACHE10.IDX differ diff --git a/res/CACHE11.IDX b/res/CACHE11.IDX index 562dd5ded..66ea452e0 100644 Binary files a/res/CACHE11.IDX and b/res/CACHE11.IDX differ diff --git a/res/GAMES.CONF b/res/GAMES.CONF index 507805f25..8da9e2018 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,CHRONO.WARRIOR=Chrono Warrior 0001,COLLECT=Collect 0010,COLUMNS=Columns 0101,COMMANDO=Commando diff --git a/res/TITLE.HGR.UNPACKED/CHRONO.WARRIOR b/res/TITLE.HGR.UNPACKED/CHRONO.WARRIOR new file mode 100644 index 000000000..3aee4b2a6 Binary files /dev/null and b/res/TITLE.HGR.UNPACKED/CHRONO.WARRIOR differ diff --git a/res/TITLE.HGR/CHRONO.WARRIOR b/res/TITLE.HGR/CHRONO.WARRIOR new file mode 100644 index 000000000..348049994 Binary files /dev/null and b/res/TITLE.HGR/CHRONO.WARRIOR differ diff --git a/res/dsk/chrono warrior PRODOS (san inc pack).po b/res/dsk/chrono warrior PRODOS (san inc pack).po new file mode 100644 index 000000000..41ba807ca Binary files /dev/null and b/res/dsk/chrono warrior PRODOS (san inc pack).po differ diff --git a/src/index/artwork.idx.a b/src/index/artwork.idx.a index 7e9791455..7e420d6dc 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 12056593 + !be24 12064564 !le16 5108 diff --git a/src/index/attract.idx.a b/src/index/attract.idx.a index a40bcfdd6..346b86afe 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 12005213 + !be24 12013142 !le16 5492 diff --git a/src/index/cache00.idx.a b/src/index/cache00.idx.a index bc6990d6c..81c28a438 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 11942923 - !le16 3824 + !be24 11950643 + !le16 3841 diff --git a/src/index/cache01.idx.a b/src/index/cache01.idx.a index d47eece10..97f2d936c 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 11956387 - !le16 4247 + !be24 11964164 + !le16 4264 diff --git a/src/index/cache10.idx.a b/src/index/cache10.idx.a index 25b9b7928..4f2bbf904 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 11973189 - !le16 5378 + !be24 11981023 + !le16 5395 diff --git a/src/index/cache11.idx.a b/src/index/cache11.idx.a index 4c67503cd..d7f6daa83 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 11992445 - !le16 6009 + !be24 12000336 + !le16 6026 diff --git a/src/index/count00.a b/src/index/count00.a index 7a18e0b91..b569900c9 100644 --- a/src/index/count00.a +++ b/src/index/count00.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 288 +!word 289 diff --git a/src/index/count01.a b/src/index/count01.a index 8559977fa..e2281f602 100644 --- a/src/index/count01.a +++ b/src/index/count01.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 315 +!word 316 diff --git a/src/index/count10.a b/src/index/count10.a index 62bb25fdd..dee045ad5 100644 --- a/src/index/count10.a +++ b/src/index/count10.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 407 +!word 408 diff --git a/src/index/count11.a b/src/index/count11.a index ee4ee88d8..3a1a0222a 100644 --- a/src/index/count11.a +++ b/src/index/count11.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 449 +!word 450 diff --git a/src/index/coverfade.idx.a b/src/index/coverfade.idx.a index 85f758335..5140ac7a4 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 12061701 + !be24 12069672 !le16 410 diff --git a/src/index/credits.idx.a b/src/index/credits.idx.a index 33df6b5a7..a38c54b99 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 12062455 + !be24 12070426 !le16 448 diff --git a/src/index/decrunch.idx.a b/src/index/decrunch.idx.a index e36d0d1ef..919345682 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 12062903 + !be24 12070874 !le16 303 diff --git a/src/index/dfx.idx.a b/src/index/dfx.idx.a index 3f295f5aa..58139e9c8 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 12013345 + !be24 12021274 !le16 1640 diff --git a/src/index/dgr.fizzle.idx.a b/src/index/dgr.fizzle.idx.a index 4e2571e38..949c3345f 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 12062187 + !be24 12070158 !le16 67 diff --git a/src/index/dgr.idx.a b/src/index/dgr.idx.a index 403dd3273..0d363f433 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 12056534 + !be24 12064505 !le16 59 diff --git a/src/index/dhgr.idx.a b/src/index/dhgr.idx.a index 47457468b..bb9235a1c 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 12055000 + !be24 12062971 !le16 1437 diff --git a/src/index/dtitle.idx.a b/src/index/dtitle.idx.a index c48ce256d..4281d9e7d 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 12040301 + !be24 12048272 !le16 537 diff --git a/src/index/fx.idx.a b/src/index/fx.idx.a index 0a12b704b..98728b9cb 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 12010705 + !be24 12018634 !le16 2640 diff --git a/src/index/gamehelp.idx.a b/src/index/gamehelp.idx.a index f59a7d738..b30be9ec1 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 12015343 - !le16 6759 + !be24 12023272 + !le16 6780 diff --git a/src/index/gr.fizzle.idx.a b/src/index/gr.fizzle.idx.a index 5fec911c5..99c0dca23 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 12062111 + !be24 12070082 !le16 76 diff --git a/src/index/gr.idx.a b/src/index/gr.idx.a index f5bb32933..e7557b8cd 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 12056437 + !be24 12064408 !le16 97 diff --git a/src/index/helptext.idx.a b/src/index/helptext.idx.a index 77eb26725..9282c8159 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 12062254 + !be24 12070225 !le16 201 diff --git a/src/index/hgr0.idx.a b/src/index/hgr0.idx.a index 1b27c0e65..39df7f3f1 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 12040838 + !be24 12048809 !le16 4516 diff --git a/src/index/hgr1.idx.a b/src/index/hgr1.idx.a index a0fae0d44..fd8d4d868 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 12045354 + !be24 12053325 !le16 1702 diff --git a/src/index/hgr2.idx.a b/src/index/hgr2.idx.a index 06f3e3782..a8d5f3578 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 12047056 + !be24 12055027 !le16 1087 diff --git a/src/index/hgr3.idx.a b/src/index/hgr3.idx.a index ef01320bc..44b6d54fa 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 12048143 + !be24 12056114 !le16 3279 diff --git a/src/index/hgr4.idx.a b/src/index/hgr4.idx.a index 36bde3ec3..ccca619a3 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 12051422 + !be24 12059393 !le16 2985 diff --git a/src/index/hgr5.idx.a b/src/index/hgr5.idx.a index 154072d78..03bd307d2 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 12054407 + !be24 12062378 !le16 479 diff --git a/src/index/hgr6.idx.a b/src/index/hgr6.idx.a index 9f880f0d1..1726fafb4 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 12054886 + !be24 12062857 !le16 114 diff --git a/src/index/joystick.idx.a b/src/index/joystick.idx.a index c163d07bb..1860d48d0 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 12063206 + !be24 12071177 !le16 2370 diff --git a/src/index/miniattract0.idx.a b/src/index/miniattract0.idx.a index 33656e87d..da67aff94 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 12027234 + !be24 12035184 !le16 4527 diff --git a/src/index/miniattract1.idx.a b/src/index/miniattract1.idx.a index 7b75f533b..8a8b08070 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 12031761 + !be24 12039711 !le16 2236 diff --git a/src/index/prelaunch.idx.a b/src/index/prelaunch.idx.a index 1cc21b5f6..d2346f54e 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 11998454 - !le16 6759 + !be24 12006362 + !le16 6780 diff --git a/src/index/res.cover.idx.a b/src/index/res.cover.idx.a index 36b89d964..64122b26d 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 3868672 + !be24 3876352 !le16 8192 diff --git a/src/index/res.help.idx.a b/src/index/res.help.idx.a index 58122221a..f21542857 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 3885056 + !be24 3892736 !le16 8192 diff --git a/src/index/res.title.idx.a b/src/index/res.title.idx.a index b8baf8ad2..6fa952871 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 3876864 + !be24 3884544 !le16 8192 diff --git a/src/index/search00.idx.a b/src/index/search00.idx.a index 3ce6e1beb..0cb8359a1 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 11934157 - !le16 8766 + !be24 11941837 + !le16 8806 diff --git a/src/index/search01.idx.a b/src/index/search01.idx.a index 709f793d5..ea8de8923 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 11946747 - !le16 9640 + !be24 11954484 + !le16 9680 diff --git a/src/index/search10.idx.a b/src/index/search10.idx.a index f95231f61..6a9b9e2a7 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 11960634 - !le16 12555 + !be24 11968428 + !le16 12595 diff --git a/src/index/search11.idx.a b/src/index/search11.idx.a index f2de83040..b17b3a8cd 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 11978567 - !le16 13878 + !be24 11986418 + !le16 13918 diff --git a/src/index/sfx.idx.a b/src/index/sfx.idx.a index efeb6473c..cb8286558 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 12014985 + !be24 12022914 !le16 358 diff --git a/src/index/slideshow.idx.a b/src/index/slideshow.idx.a index dcba6aa56..778bf5c91 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 12022102 + !be24 12030052 !le16 5132 diff --git a/src/index/title.idx.a b/src/index/title.idx.a index 3341a55e5..1ba33c881 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 12033997 - !le16 6304 + !be24 12041947 + !le16 6325 diff --git a/src/prelaunch/chrono.warrior.a b/src/prelaunch/chrono.warrior.a new file mode 100644 index 000000000..a3575b994 --- /dev/null +++ b/src/prelaunch/chrono.warrior.a @@ -0,0 +1,85 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/CHRONO.WARRIOR",plain +*=$106 + + !source "src/prelaunch/common.a" + + jmp skip + +callback + jsr $BC9D + lda $1A81 + ldy $1A82 + ldx #$A5 + cmp #$13 + beq level1 + cmp #$18 + beq level2 + cmp #$19 + beq level3 + cmp #$1C + beq level4 + cmp #$1D + beq level5 + cmp #$20 + beq level6 + bne notlevel + +level1 + tya + bne notlevel + stx $891F ; patch - don't decrease lives + +level2 + cpy #2 + bne notlevel + stx $8782 ; patch - don't decrease lives + +level3 + cpy #$0E + bne notlevel + stx $88DD ; patch - don't decrease lives + +level4 + tya + bne notlevel + stx $87BE ; patch - don't decrease lives + +level5 + cpy #8 + bne notlevel + stx $8CA5 ; patch - don't decrease lives + +level6 + cpy #$0C + bne notlevel + stx $813F ; patch - don't increase lives + +notlevel + lda #0 + rts + +skip + +ENABLE_ACCEL + lda #$60 + sta $2079 + jsr $2000 ; decompress + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #callback + sta $BC91 ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + jmp $1B40 + +!if * > $1C0 { + !error "code is too large, ends at ", * +}