378 Commits

Author SHA1 Message Date
Pecusx d14627fcbd Apace, START and Fire after death 2026-03-15 14:26:34 +01:00
Pecusx eef5b53030 No reaction for TAB and Button after death 2026-03-15 14:02:28 +01:00
Pecusx 066efdcd20 build number update 2026-03-15 13:44:09 +01:00
Pecusx 026cb48377 Third button of JoyB2+
and pause after death :)
2026-03-15 13:43:07 +01:00
Pecusx f82645ba91 Second joystick button added to controls.
Not just the second joystick button. Also the button on the second joystick.

It works :)
2026-03-12 20:44:24 +01:00
Pecusx 0a3db56251 ANTIC glitch fixed 2025-08-05 19:48:27 +02:00
6502adam fd7e206007 Update frame1.png 2025-08-05 18:59:59 +02:00
6502adam aee59f5257 Title screenshot corrected 2025-08-05 18:59:29 +02:00
Pecusx e119f7a098 Big bug fix! 2025-08-05 10:53:49 +02:00
6502adam dfd9110639 Frame1 screenshot correction 2025-08-03 20:50:40 +02:00
6502adam 5f7f57f4f4 adding game controls screeenshot 2025-08-03 12:25:14 +02:00
Pecusx a0aa1b0191 Filenames and smol opty 2025-07-31 15:25:58 +02:00
Pecusx 7ba725e7a2 LICENSED :) 2025-07-30 19:17:42 +02:00
Pecusx 2c11d5144c Screenshots 2025-07-28 14:21:48 +02:00
Pecusx 819f2e39d8 Final GO GFX and delay for auto screen change 2025-07-28 09:02:57 +02:00
6502adam 718cfce278 Game over screen gfx for Silly Venture 2025-07-28 00:36:54 +02:00
Pecusx fda415c090 GFX and new High Score values 2025-07-27 22:19:41 +02:00
6502adam 1ad3641b8f Game over screen gfx (almost) final 2025-07-27 19:34:14 +02:00
Pecusx 65027d5dc9 Compiled 2025-07-26 14:40:31 +02:00
6502adam 9255541ddd Game over desk border's gfx correction 2025-07-26 13:00:38 +02:00
Pecusx fa9acb2c9e More GFX - comiled 2025-07-26 12:02:49 +02:00
6502adam e3d86efa56 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-07-26 11:53:55 +02:00
6502adam 02b9faf604 More of game over screen gfx changes - upper part 2025-07-26 11:53:36 +02:00
Pecusx ba7c0ac5f7 GFX compiled 2025-07-26 11:38:50 +02:00
6502adam 5ef86f74fc Game over screen gfx changes - the upper right side 2025-07-26 00:34:55 +02:00
Pecusx a140c6e9cd PMG sync in animations 2025-07-25 09:03:44 +02:00
Pecusx 48523bdc66 GFX fix 2025-07-24 20:28:26 +02:00
Pecusx b7edd3fc0f Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-07-24 20:27:00 +02:00
Pecusx 861eaef67a GameOver left side GFX 2025-07-24 20:26:32 +02:00
6502adam 53b393bb30 Game over screen gfx changes - left side 2025-07-24 20:14:22 +02:00
Pecusx 685200c7b5 Faster,... faster.... 2025-07-24 14:34:36 +02:00
Pecusx fe7aa28898 BASIC off 2025-07-24 10:54:03 +02:00
Pecusx c78f3e6005 New option in RMT player 2025-07-23 18:53:15 +02:00
Pecusx 9da560b2aa SFX priority in RMT player 2025-07-23 14:17:44 +02:00
Pecusx 69d39ae92e GFX changes compiled 2025-07-23 08:46:36 +02:00
Pecusx 2bf3823c51 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-07-23 08:37:04 +02:00
Pecusx 50e2a5bd78 Author info 2025-07-23 08:37:01 +02:00
6502adam 7fcc45b0fb other other minor game over screen gfx change 2025-07-23 00:42:34 +02:00
Pecusx 159c33e225 Better stereo options in RMT player 2025-07-22 09:15:26 +02:00
Pecusx 870feadab2 Smol PseudoStereo fix 2025-07-21 11:57:33 +02:00
Pecusx aa715e5b21 PseudoStereo switch moved to feat.txt file 2025-07-21 11:40:16 +02:00
Pecusx f88e5f0bcb PseudoStereo option in RMT player. 2025-07-21 11:31:29 +02:00
Pecusx 50ed25b8b2 Right side of GO screen 2025-07-21 08:39:49 +02:00
6502adam b3e94e1638 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-07-21 00:08:56 +02:00
6502adam 184d293ab2 Other minor game over screen gfx changes 2025-07-21 00:08:47 +02:00
Pecusx 3aeefe0096 Over screen P0 size 2025-07-20 23:19:30 +02:00
Pecusx 388ffcca55 Smol test changes 2025-07-20 22:25:08 +02:00
6502adam 1b7236c67f Minor game over screen gfx changes 2025-07-20 22:17:04 +02:00
Pecusx 75b8968b2e Music update 2025-07-20 20:38:54 +02:00
Pecusx 538d673084 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-07-20 20:21:36 +02:00
Pecusx bf4f47c53c XEX update 2025-07-20 20:21:23 +02:00
Aleksander 054abf342f Skracanie 2025-07-20 20:15:06 +02:00
Pecusx bed7e01c10 GameOver test 2025-07-20 20:13:50 +02:00
Pecusx ddf843ba72 Longer music 2025-07-20 16:23:22 +02:00
Aleksander 5d5f76ae55 Create tbm4.rmt
Zmiany, zminay, zmiany... ;)
2025-07-20 03:52:03 +02:00
Pecusx f12dd38d9a Chain colors in PAL/NTSC table 2025-07-15 10:19:31 +02:00
Pecusx 4c2188f204 DLI timing fix and level/timer names 2025-07-15 10:05:07 +02:00
Pecusx b2b3eab4da GameOver DLI opty 2025-07-14 09:53:58 +02:00
Pecusx 7bdab87824 Game OVer colors correction (DLI) 2025-07-11 12:32:35 +02:00
Pecusx fa56af26d7 GFX fixes compiled 2025-07-11 00:30:16 +02:00
6502adam 993951526b sticks on grass gfx small corrections 2025-07-10 23:29:34 +02:00
Pecusx 3872927719 GFX changes compiled 2025-07-10 22:30:52 +02:00
6502adam 6cc285da00 sticks on grass gfx update in phase3r 2025-07-10 22:23:44 +02:00
6502adam aae0fcbbdf sticks on grass gfx update (except phase3r) 2025-07-10 21:20:22 +02:00
Pecusx 0218e779f9 RIP is gut :) 2025-07-10 14:46:39 +02:00
6502adam 5f338827c0 Correcting tombstone gfx after DLI changes 2025-07-10 13:42:13 +02:00
Pecusx 2c0c8955ca GFX fixes and compilation 2025-07-10 11:52:55 +02:00
6502adam 77d1d427d1 Tree base gfx changes 2025-07-10 00:24:48 +02:00
Pecusx 099332d1a8 Smaller clouds code 2025-06-30 09:03:47 +02:00
Pecusx 0479722c28 GFX changes compiled 2025-06-30 08:44:51 +02:00
6502adam 603cb6481a Tree trunk gfx change (part 2) 2025-06-30 00:38:19 +02:00
6502adam e2f7577afe Tree trunk gfx change 2025-06-30 00:07:32 +02:00
Pecusx 07d4b011f2 Better code 2025-06-28 18:15:07 +02:00
Pecusx eda9f58252 Now we have 4 clouds 2025-06-28 17:42:09 +02:00
Pecusx 699be9a034 Prepare for 4 cloud 2025-06-28 17:03:52 +02:00
Pirx d200304b35 ex.py if no Width then 40 2025-06-25 10:00:44 -04:00
Pirx c2c7b73688 ex.py if no Width then 40 2025-06-25 09:58:56 -04:00
Pecusx 6b9ff174c4 New clouds 2025-06-24 18:44:56 +02:00
Pecusx 62ddb15aaa Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-06-23 22:10:17 +02:00
Pecusx 979b067674 Credits fix 2025-06-23 22:10:14 +02:00
Pirx cbda7e79fa ex,py debug info 2025-06-23 16:02:02 -04:00
Pecusx b876427a36 Compiled 2025-06-23 21:20:20 +02:00
Pecusx f03774a692 Random start birds order 2025-06-23 12:32:16 +02:00
6502adam 1dbf64dec1 Updating gfx for the tombstone and its background 2025-06-23 01:19:14 +02:00
Pecusx 8648bb3de0 GFX changes compiled 2025-06-22 23:54:47 +02:00
6502adam 0e69f5631d Another sticks gfx update + freeing one character in tl_l & tl_r fonts 2025-06-22 22:26:31 +02:00
6502adam ad321ca622 Sticks on grass gfx update 2025-06-22 21:03:58 +02:00
6502adam 492e8dfe1b Adding 2 new clouds gfx data 2025-06-21 18:40:48 +02:00
6502adam 440b3e2470 Clouds gfx source file (also extended by 2 new clouds) 2025-06-20 23:27:18 +02:00
Pecusx 72f79573b9 GFX fixes compiled. Titles DLI corrected 2025-06-20 22:11:33 +02:00
6502adam 0a86573141 Moving up the smaller clouds 2025-06-20 21:42:57 +02:00
6502adam 4ab3953ead Sound FX description changed 2025-06-20 18:36:31 +02:00
6502adam e5d141ff04 Title screen timberman's shadow corrected 2025-06-20 18:26:44 +02:00
Pecusx d79162d9cd DM logo fix compiled 2025-06-20 13:07:56 +02:00
6502adam 9aa8274f26 DM logo gfx bug correction 2025-06-20 12:04:09 +02:00
Pecusx f055bbbbb0 Intro DM - compiled 2025-06-20 09:24:11 +02:00
6502adam ee3231261d Intro DM logo screen tiny update 2025-06-20 00:10:21 +02:00
Pecusx c841e9318f GFX changes compiled 2025-06-19 22:23:35 +02:00
6502adam e8908d3733 Clearing majority of sticks on the grass 2025-06-19 19:27:33 +02:00
6502adam 32e4c78a81 Game over screen gfx small fixes, slash font correction 2025-06-19 17:58:30 +02:00
Pecusx d27f40b35b GFX fixes and faster foot animation 2025-06-16 16:53:58 +02:00
6502adam 92aa4c39a8 Slash gfx correction, replacing brackets with apostrophes 2025-06-14 19:05:16 +02:00
Pecusx 1c6d3d9ef0 Eyes UP randomization 2025-06-13 11:17:19 +02:00
Pecusx 758bb8c07a GFX and timings fixes 2025-06-13 09:23:03 +02:00
6502adam 5faf6caf76 Adding a slash to fonts and using it 2025-06-12 23:48:03 +02:00
Pecusx a16060ce22 RIP Screen auto change after 5s. 2025-06-12 15:29:19 +02:00
Pecusx cb40d6abcc Hi-Score screen auto change (Start screen after 5s.) 2025-06-12 15:23:40 +02:00
Pecusx 0dfa59649c Names on GameOver screen 2025-06-12 15:00:30 +02:00
Pecusx 99bb242a0f Help screen fix 2025-06-12 14:38:49 +02:00
Pecusx 7b23d411ce Foot and eyes timings 2025-06-12 13:32:03 +02:00
Pecusx f1028e86ad DM logo timer and compile from source 2025-06-12 12:25:06 +02:00
Pecusx 6cdc7dae74 Smol MSX routines fix 2025-06-12 10:19:22 +02:00
Pecusx b66115f30b No self-modifications in RMT (full version) player 2025-06-12 09:19:39 +02:00
Pecusx ad96c47d8b Old RMT player de-self-modification 2025-06-11 16:03:08 +02:00
Pecusx 65d6eb444a Easier code 2025-06-11 15:44:03 +02:00
Pecusx 10d4f758c0 Another RMT player 2025-06-11 15:10:11 +02:00
Pecusx 0baa5c288d SFX on channel 3 2025-06-11 11:04:50 +02:00
Pecusx 64acce26a8 GFX and MSX changes 2025-06-11 09:16:56 +02:00
Aleksander 321791e925 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-06-11 02:25:10 +02:00
Aleksander 1adeaa5081 Wiele poprawek
Nie jest jeszcze dobrze, bo fałszuje trochę, ale nie będzie :)
2025-06-11 02:25:07 +02:00
6502adam 08f78d7613 timberman's shadow on title screen 2025-06-10 23:47:03 +02:00
Pecusx 503a55f5c1 Basic off and DM logo 2025-06-10 14:26:18 +02:00
Pecusx 7a22c786a7 DLI opty 2025-06-10 14:05:03 +02:00
Pecusx 0bca56e1b5 Shadow and other gfx compiled 2025-06-10 09:25:57 +02:00
6502adam 509b659382 timberman's shadow 2025-06-10 00:38:27 +02:00
6502adam 936b984fb7 some gfx changes - timberman's pants, new sticks on the grass 2025-06-09 23:25:42 +02:00
Pecusx 3177c8e41a GFX changes compiled 2025-06-09 19:08:11 +02:00
6502adam 3766c833b5 Small gfx changes, including a cleaning of some unused characters 2025-06-09 00:43:18 +02:00
Pecusx ca7cceb542 Ingame Music tempo 2025-06-07 14:19:35 +02:00
Aleksander a7c77bf97c Poprawki 2025-06-07 14:04:19 +02:00
Pecusx 37d6a837cc Chain reaction :) (test) 2025-06-06 17:25:33 +02:00
Pecusx 64f2fc2a98 GFX corrections 2025-06-06 15:17:07 +02:00
Pecusx 06875ad826 New music 2025-06-06 09:30:59 +02:00
Aleksander f2ad43f9d6 Winyj... :)
Jeszcze do poprawy, ale zmieniłem co trzeba.
2025-06-06 03:43:30 +02:00
Pecusx 1ae8f33ea5 GameOver new DLIs 2025-06-05 23:14:05 +02:00
Pecusx 1cadb62618 Auto screen change 2025-06-05 22:03:28 +02:00
Pirx b82df8f012 ex.py fix 2025-06-05 11:48:45 -04:00
Pecusx 725e70e955 Prepare for sequential display help and hiscore on start screen 2025-06-05 08:53:20 +02:00
6502adam 48bc439eb4 Adding Digital Melody logo 2025-06-04 23:11:20 +02:00
Pecusx 76736093a0 Licenced by ... 2025-06-04 19:42:19 +02:00
Pecusx 3f91ea60e4 Some gfx compiled 2025-06-04 19:05:46 +02:00
Pecusx ab55e2bfe2 HELP screen colors and DLI 2025-06-03 15:05:35 +02:00
Pecusx db43abc259 Help screen (fake colors) 2025-06-03 12:26:20 +02:00
Pecusx fd1de1d507 Credits update and no polish chars in HiScore 2025-06-03 09:45:24 +02:00
6502adam 387cda7965 tiny sticks on grass gfx correction 2025-06-02 22:04:38 +02:00
6502adam f48aefcc2e Small graphics corrections 2025-06-02 20:54:16 +02:00
Pecusx 7e2e021362 HELP screen first project 2025-06-02 11:48:31 +02:00
Pecusx c240b69110 Audio hack - test 2025-06-02 09:00:57 +02:00
Pecusx 67a0140a86 'END' character added 2025-06-01 15:00:24 +02:00
Pecusx 8eb50af5e1 Initialize Joy 2B+ 2025-06-01 14:11:55 +02:00
Pecusx bf0b18169a More game controls 2025-06-01 12:45:57 +02:00
Pecusx ca04336d0c SFX test 2025-06-01 01:23:36 +02:00
Aleksander f943cd4796 Update tbm2.txt
...
2025-06-01 01:08:08 +02:00
Aleksander e0ad27bf96 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-06-01 01:07:25 +02:00
Aleksander 152749db4b Update tbm2.rmt
Zmiana koncepcji
2025-06-01 01:07:22 +02:00
Aleksander c90a02f729 Update tbm2.rmt
Poprawki....
2025-06-01 00:58:08 +02:00
Pecusx fd56c96f74 New GO! SFX 2025-06-01 00:43:47 +02:00
Aleksander 32d3de39be Update tbm2.txt
Poprawki
2025-06-01 00:31:17 +02:00
Aleksander c8a9ea73ef Update tbm2.rmt
Poprawka :)
2025-06-01 00:29:35 +02:00
Aleksander d1c92ecc79 Update tbm2.rmt
Efekty poprawione
2025-06-01 00:27:45 +02:00
Pecusx 26a9fb8d30 Last I fix fixed! 2025-05-31 22:45:38 +02:00
Pecusx 0df09b9696 Last I fix 2025-05-31 22:10:02 +02:00
Pecusx dbc3645b9a First space fix 2025-05-31 21:27:18 +02:00
Pecusx 294722fafe End before 5 chars 2025-05-31 21:09:17 +02:00
Pecusx 92b9c96693 Scores and name input with one little problem 2025-05-31 20:04:58 +02:00
Pecusx d65bc25792 New score colored 2025-05-31 18:08:42 +02:00
Pecusx ef8a7e13f9 Arrow char.. 2025-05-31 16:05:59 +02:00
Pecusx 06bad2f194 HiScore sort and update 2025-05-31 15:25:12 +02:00
Pecusx cfc39e7bf8 Changes compiled 2025-05-30 23:02:46 +02:00
6502adam 5a4fdabd2b game over screen changes 2025-05-30 22:35:38 +02:00
Pecusx 1463075794 XEX update 2025-05-30 20:19:30 +02:00
Pecusx 91483c2500 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-05-30 20:17:58 +02:00
Pecusx 11e8262e2f SFX unlocked! 2025-05-30 20:17:30 +02:00
6502adam edf91b8b8c Timberman's 2nd right phase gfx correction 2025-05-30 20:04:12 +02:00
Pecusx 80b46a578b Smol fix 2025-05-30 19:51:16 +02:00
Pecusx 0d44fecba1 New font mapping 2025-05-30 18:20:40 +02:00
6502adam 5bb4ddecf8 Freeing repeated characters in letters 2025-05-30 17:43:46 +02:00
Pecusx ea6d54a69b Save score 2025-05-30 15:31:11 +02:00
Pecusx 37d6771212 Program state fix 2025-05-30 14:48:40 +02:00
Pecusx 11ee5a165b HI-Score printed from text 2025-05-30 14:15:05 +02:00
Pecusx 78f88d115f HiScore table 2025-05-30 10:53:26 +02:00
Pecusx 9e65c1b4ce Music test 2
SFX not working - why????
2025-05-30 09:12:02 +02:00
Aleksander f67ce5261c Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-05-30 01:05:59 +02:00
Aleksander b914ed3efa New version 2025-05-30 01:05:47 +02:00
Pecusx b5e0d7bca0 Better foant colors 2025-05-29 17:53:03 +02:00
Pecusx 25ca24302c Black lines added in GO! 2025-05-29 14:54:29 +02:00
Pecusx 075ca4f1ec Better "GO!" line 2025-05-29 12:27:53 +02:00
Pecusx 2b5dd58b3e Opty. 2025-05-29 12:20:34 +02:00
Pecusx dc82c66a8d Faster GO! animations and new characters tables 2025-05-29 12:10:43 +02:00
Pecusx 7838a2398c 3,2,1,GO! added 2025-05-29 10:24:27 +02:00
Pecusx 56dc32d93b End of chain DLI 2025-05-29 08:58:57 +02:00
6502adam 1e70bdd109 Game over screen part 2 2025-05-29 00:01:43 +02:00
Pecusx d43ea740f6 NTSC flicker fix 2025-05-28 19:58:49 +02:00
Pecusx 265b375e3b Time position 2025-05-28 19:11:33 +02:00
Pecusx e34c2198b3 XEX update 2025-05-28 15:42:02 +02:00
Pecusx 702808419f Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-05-28 15:38:39 +02:00
Pecusx aaa58d36a6 No level but time! 2025-05-28 15:38:06 +02:00
Pecusx 315bd55ffb Color fix 2025-05-27 18:37:56 +02:00
Pecusx b5e7514a05 Game Over PMG 2025-05-27 14:40:04 +02:00
Pecusx 6a58f9eeea DLIs and colors - Game Over screen 2025-05-27 12:49:38 +02:00
Pecusx ab3cecaa72 New Game Over screen 2025-05-27 09:06:23 +02:00
6502adam c9c5f2b7ac Game Over screen initial design 2025-05-27 00:27:56 +02:00
Pecusx b12c0416cd Description 2025-05-26 21:06:18 +02:00
Pecusx 9b064c2d72 Foot animation timing 2025-05-26 20:58:34 +02:00
Pecusx d90f35cbb8 Final (?) foot animation 2025-05-26 18:14:09 +02:00
Pecusx 8da6d449ae Slower foot animation 2025-05-26 17:38:45 +02:00
Pecusx e8d7cc7220 Horizon up! (Title screen) 2025-05-26 13:28:40 +02:00
Pecusx e58e2f556a Foot animation test 2025-05-26 09:45:32 +02:00
Pecusx 0edb181e43 Smol DLI fix 2025-05-26 09:14:52 +02:00
6502adam ba6126fe12 small timberman's gfx corrections 2025-05-25 17:02:31 +02:00
Pecusx 571d6abdf1 Timings.... 2025-05-24 21:11:22 +02:00
Pecusx 72afeb8c6e Timing change 2025-05-24 20:52:50 +02:00
Pecusx 828a42e01e Better timings 2025-05-24 20:14:34 +02:00
Pecusx 65f4602427 Eyes animations done 2025-05-24 19:54:15 +02:00
Pecusx 7c97dfe5b0 Prepare for onimations 2025-05-24 12:23:22 +02:00
Pecusx 6410d844f9 New autogenerated data 2025-05-23 23:18:33 +02:00
Pirx 6a42a39be5 ex.py fixxxxes 2025-05-23 17:09:32 -04:00
Pirx 80d0a8968c ex.py fixxxes 2025-05-23 16:35:50 -04:00
Pecusx 2c93d570e5 Compiled 2025-05-23 16:12:27 +02:00
6502adam 9701deab3f small in-game gfx corrections 2025-05-23 13:57:25 +02:00
Pecusx eddc43affe Puthon test 2025-05-23 13:24:54 +02:00
Pirx d76eda7d46 ex.py - asm generator for additional files 2025-05-22 20:10:03 -04:00
6502adam 20dd6c8348 timberman's gfx corrections part 3 2025-05-23 00:53:42 +02:00
Pecusx 02a6c2a8fe Compiled 2025-05-22 23:46:10 +02:00
6502adam 13e5b13d47 timberman's in-game gfx corrections part 2 2025-05-22 22:40:31 +02:00
6502adam ea7c40aa9b timberman's in-game gfx corrections (for left phases mainly) 2025-05-22 21:23:26 +02:00
Pecusx 48a0d798ec Narrow screens in editor 2025-05-22 20:11:54 +02:00
Pecusx ef2b3920ed Game Over 2025-05-22 14:47:23 +02:00
Pecusx b2efdbb7c8 All screens are narrow now 2025-05-22 09:41:18 +02:00
Pecusx bb9b27fa81 Test compilation 2025-05-21 23:30:35 +02:00
6502adam c547515518 timberman's shoulders gfx correction - left phases 2025-05-21 23:04:10 +02:00
Pecusx ac7f2660b7 New title screen layout 2025-05-21 09:18:02 +02:00
6502adam b805742d08 title screen eyes animation correction 2025-05-20 23:43:09 +02:00
Pecusx 438a208541 nothing... 2025-05-20 23:12:19 +02:00
Pecusx 20d82243d0 One pixel :) 2025-05-20 23:06:01 +02:00
6502adam 29d7eec664 axe handle gfx correction 2025-05-20 22:45:20 +02:00
Pecusx 276d7ccc16 Title screen ready (?) 2025-05-20 21:30:18 +02:00
Pecusx 92c92f7946 AXE PMG (and fixes) 2025-05-20 21:09:23 +02:00
Pecusx 4c0b23084c Hands PMG 2025-05-20 20:24:08 +02:00
Pecusx efd2b6ca22 PM face 2025-05-20 19:42:23 +02:00
Pecusx 59973a4d94 Final (??) Timberman colors 2025-05-20 13:48:53 +02:00
Pecusx b97eeadf21 New horizon :) 2025-05-20 13:27:02 +02:00
Pecusx dc2838d207 Colors ??? 2025-05-20 13:09:51 +02:00
Pecusx 50a1e75c51 Better (?) colors 2025-05-20 11:10:32 +02:00
Pecusx bb1746321f Pants and AXE DLI fixed 2025-05-20 10:59:09 +02:00
Pecusx e1b886c994 Tomek 2025-05-20 10:45:22 +02:00
Pecusx 08f9a9f032 Smol fix 2025-05-20 10:30:39 +02:00
Pecusx 7621c7c516 All (?) Timberman logo DLIs (wrong colors) 2025-05-20 10:25:55 +02:00
Pecusx 5f88ad3183 Training mode 2025-05-20 09:20:27 +02:00
Pecusx bdf2cf93ec Timberman logo colors (initial code) 2025-05-20 09:08:31 +02:00
6502adam 602dd3cc9a head's gfx minor correction 2025-05-20 00:39:38 +02:00
6502adam 8ac17cf845 timberman's head gfx update 2025-05-20 00:33:44 +02:00
Pecusx 5b23f0f057 Better GFX and hand fixed 2025-05-19 23:00:34 +02:00
6502adam 831e435bca tu.fnt one character recycling 2025-05-19 22:27:55 +02:00
6502adam bcd74740c2 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-05-19 21:58:24 +02:00
6502adam 94b168540b Right phase 2 correction 2025-05-19 21:58:06 +02:00
Pecusx 24fef28153 GFX compiled 2025-05-19 21:42:20 +02:00
6502adam 340b15f435 base of branches gfx corrections 2025-05-19 21:32:33 +02:00
Pecusx 776b40b70a GFX changes compiled 2025-05-19 21:02:38 +02:00
6502adam 0829387fa2 Update of RIP and sky views 2025-05-19 20:37:26 +02:00
6502adam 148e0880c7 sticks on grass gfx correction 2025-05-19 20:16:57 +02:00
6502adam 11bacb50b1 trunk & branches gfx corrections 2025-05-19 19:46:35 +02:00
Pecusx 65fcf4e789 Changes compilerd 2025-05-19 08:57:01 +02:00
6502adam ff7e0a9d76 In-game timberman's gfx corrections - mainly right side 2025-05-18 23:55:39 +02:00
6502adam b1ae60236a In-game timberman's gfx corrections - left side 2025-05-18 20:16:20 +02:00
6502adam cc4db1d9b6 timberman's gfx small corrections 2025-05-18 10:15:41 +02:00
Pecusx 512835ba99 New timberman position and 3 clouds 2025-05-17 23:04:28 +02:00
6502adam 9bf6dd4f81 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-05-17 20:58:46 +02:00
6502adam d6cb7dc389 Title screen timberman's Y position correction 2025-05-17 20:57:43 +02:00
Pecusx 251f895ac4 Logo (bad colors) 2025-05-17 20:31:49 +02:00
6502adam 9605810184 Title screen timberman's gfx p.2 2025-05-17 19:24:06 +02:00
6502adam 3c4b9bbeab Title screen timberman's gfx p.1 2025-05-17 17:59:14 +02:00
Pecusx 6d8dc66edc 2 clouds on title screen 2025-05-17 13:29:34 +02:00
Pecusx af957e3fd7 Colors test (no DLI) 2025-05-17 11:41:56 +02:00
Pecusx 8d7c14cc5f Logo (test...) 2025-05-17 11:22:21 +02:00
6502adam 2d0286e98c title screen - more timberman's graphics 2025-05-17 00:23:44 +02:00
6502adam d454504889 timberman's head & shoulders on title screen 2025-05-16 00:09:17 +02:00
Pecusx 4bb751f29f Better colors 2025-05-12 19:59:14 +02:00
Pecusx 08352fcf07 Title screen texts 2025-05-12 12:17:10 +02:00
Pecusx be6100e320 Colors and credits 2025-05-12 11:24:03 +02:00
Pecusx 457042ea0c Smol fixes 2025-05-11 17:37:29 +02:00
Pecusx 24dca6ea2f RIP music effect 2025-05-11 14:07:47 +02:00
Pecusx 1570e9b3c7 Music! 2025-05-11 14:00:00 +02:00
Pecusx d3b2cec93b "R" in logo 2025-05-10 10:25:24 +02:00
Pecusx ceb15e9764 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-05-09 14:24:15 +02:00
Pecusx a09c7b73ff Logo colors and DLI opty 2025-05-09 14:24:09 +02:00
Aleksander bc3261d64b Pierwsza wersja 2025-05-09 13:38:09 +02:00
Pecusx 9b3eba350e Color fix 2025-05-09 13:20:23 +02:00
Pecusx 4b2f4cb24d Better code :) 2025-05-09 13:17:02 +02:00
Pecusx c9c0bc4f07 Final (?) credits animation 2025-05-09 13:05:12 +02:00
Pecusx 03af59f95a Credits init added 2025-05-09 10:48:29 +02:00
Pecusx 543ef94391 Texts update 2025-05-09 10:36:55 +02:00
Pecusx da55f12511 Credits animation - first try 2025-05-09 10:34:39 +02:00
Pecusx 9c97ad582f Brackets and clouds color 2025-05-08 22:34:00 +02:00
6502adam b4cd6fea42 Adding brackets to title fonts 2025-05-08 21:25:26 +02:00
Pecusx eab88cf613 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-05-08 20:39:52 +02:00
Pecusx 8c263da98b Prepare for credits animation 2025-05-08 20:39:41 +02:00
6502adam 514a08eb39 Letter R in title -minor update 2025-05-08 20:07:59 +02:00
Pecusx 9915509c01 Font colors correction 2025-05-08 15:16:19 +02:00
6502adam 3293ab5ce5 title fonts - many small changes 2025-05-05 12:29:30 +02:00
Pecusx 27ebffec05 Font colors DLI 2025-05-04 21:52:03 +02:00
Pecusx 1c89554f1f Better colors 2025-05-04 21:15:57 +02:00
6502adam 01fde9b5df Preparing the bottom line of title fonts for DLI changes 2025-05-04 20:45:43 +02:00
6502adam d716c2298d Additional characters in the title font 2025-05-03 23:27:53 +02:00
Aleksander ae61d3af7e Create miejsce na muzyke.txt
Utworzenie folderu na muzykę
2025-05-02 12:45:36 +02:00
Pecusx 6e590b57c3 Simplify animations 2025-05-02 12:19:37 +02:00
Pecusx 366ac6aa51 One pixel :) 2025-04-30 23:54:49 +02:00
Pecusx 0edeb56117 Difficulty selector 2025-04-29 09:14:26 +02:00
Pecusx fec5050946 Difficulty level for old men 2025-04-28 22:01:18 +02:00
Pecusx b021c1675e New Game Over screen DLIs 2025-04-28 10:18:52 +02:00
Pecusx 5d55663b66 Better DLI timing 2025-04-27 11:30:27 +02:00
Pecusx cdd238211f PAL and NTSC logo colors 2025-04-26 23:57:09 +02:00
Pecusx bae3199e9d RIP PMG fix 2025-04-26 15:38:14 +02:00
Pecusx 610167ae23 Final (?) logo colors - PAL 2025-04-26 11:03:21 +02:00
Pecusx 201b665a6d "R" color fixed 2025-04-25 14:41:42 +02:00
Pecusx 11ca2376e2 Logo O.K. (PAL only colors) 2025-04-25 10:00:43 +02:00
Pecusx f2e6291ae2 Timber colors (not all) 2025-04-23 18:32:54 +02:00
Pecusx 37bb913a96 Logo sprites (test2) 2025-04-23 15:50:58 +02:00
Pecusx a7ffded387 Logo - first test 2025-04-23 09:17:03 +02:00
6502adam 57ba1fbc6c Title logo initial version 2025-04-22 23:39:07 +02:00
Pecusx 4d81674134 Font color fix 2025-04-22 14:05:48 +02:00
Pecusx 08858e060f Titles and Game Over clouds and birds (test) 2025-04-22 11:46:07 +02:00
Pecusx 06f33be179 Prepare for clouds and birds on other screens 2025-04-19 19:15:09 +02:00
Pecusx bd95992971 GameOver and new start branches 2025-04-19 14:16:20 +02:00
Pecusx e000856223 Code and XEX update 2025-04-19 10:51:40 +02:00
6502adam a5f8970e66 Minor title fonts change 2025-04-19 00:29:10 +02:00
Pecusx 813e571f96 Revert font changes 2025-04-18 21:39:02 +02:00
Pecusx fc7c000d8b New digits in XEX 2025-04-18 19:41:44 +02:00
6502adam 3f98a78940 alternative digits gfx 2025-04-18 19:37:40 +02:00
Pecusx d9f8521606 Game Over screen replacement 2025-04-18 18:37:08 +02:00
Pecusx 355291bf8d NTSC colors 2025-04-18 11:44:07 +02:00
Pecusx a2a15b23f2 Titlee screen (test only) 2025-04-18 11:28:42 +02:00
Pecusx a94c8acaa7 White clouds 2025-04-17 22:39:35 +02:00
Pecusx 23452aef78 XEX update 2025-04-17 12:15:58 +02:00
Pecusx b0aadd6e1e Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-04-17 12:14:37 +02:00
Pecusx 4a2470b1c4 PAL->NTSC speed correction 2025-04-17 12:14:33 +02:00
6502adam 550e1af808 Minor gfx changes
Background trees, LEV letters, alternative trunk characters
2025-04-17 00:27:11 +02:00
Pecusx 443369d3f0 Clouds bug fixed :) 2025-04-16 21:19:56 +02:00
Pecusx 2b8f80eb6c No 2 blank upper lines 2025-04-16 21:08:38 +02:00
Pecusx 1d836b68d3 XEX update 2025-04-16 20:51:31 +02:00
6502adam 0aef84554c Gfx: digits update, small tombstone tweaking 2025-04-16 19:07:39 +02:00
Pecusx bf5dc4d876 RIP colored 2025-04-16 15:02:52 +02:00
Pecusx 016b07a94e RIP colors 2025-04-15 23:05:05 +02:00
Pecusx d846df8bcb Correct RIP direction 2025-04-15 22:50:27 +02:00
Pecusx f0946a7411 XEX and data update 2025-04-15 22:02:24 +02:00
Pecusx 9f2b32740d RIP (options) 2025-04-15 13:03:02 +02:00
6502adam ba93097793 New tombstone graphics 2025-04-15 00:30:28 +02:00
Pecusx 97896c73af Random birds order 2025-04-12 11:21:34 +02:00
Pecusx 2853a08ac5 DLI sync 2025-04-07 20:03:23 +02:00
Pecusx d5c7f01d1e PAL & NTSC colors 2025-04-07 11:57:17 +02:00
Pecusx dc7579cf03 Revert "NTSC colors test"
This reverts commit c62ff52fc7.
2025-04-06 11:03:21 +02:00
Pecusx c62ff52fc7 NTSC colors test 2025-04-04 20:30:25 +02:00
6502adam faab3c07ea Title screen fonts - initial version 2025-04-03 23:27:29 +02:00
Pecusx 6644da4722 XEX update 2025-03-21 22:38:10 +01:00
Pecusx bb2c6ffb39 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-03-21 22:35:59 +01:00
Pecusx 28a313fe57 Clouds randomization - final (I hope) 2025-03-21 22:35:13 +01:00
Pecusx 4a5d91d017 Random birds position 2025-03-21 12:25:17 +01:00
Pecusx b355edc8a6 New clouds 2025-03-20 21:04:15 +01:00
Pecusx 10711880e6 Random clouds shapes 2025-03-19 21:14:25 +01:00
Pecusx 8b15c4e205 Clouds positions randomize 2025-03-19 20:44:44 +01:00
Pecusx 7abe74a3ea Red is red 2025-03-19 14:39:50 +01:00
Pecusx 15547e9f0e Smol fixes 2025-03-19 14:07:28 +01:00
Pecusx 6f77f622c2 More clouds (test) 2025-03-19 13:09:34 +01:00
Pecusx 84f18d985a Test cloud 2025-03-19 09:18:23 +01:00
Pecusx 3db7732cc1 New method of handling DLI
Prepare for clouds
2025-03-18 10:26:43 +01:00
Pecusx e4d09c6d46 Randomize birds start 2025-03-18 09:21:57 +01:00
6502adam 2a79e04076 trees reshape 2025-03-17 21:23:19 +01:00
Pecusx 20a2cafb4c Slower birdsand difficulty correction 2025-03-17 18:33:31 +01:00
Pecusx eb16fc7ffd Slower birds 2025-03-17 15:30:54 +01:00
Pecusx fdd4f8a87b PM sizes and sync 2025-03-17 15:01:45 +01:00
Pecusx bed09fe33a Second birds test 2025-03-17 14:44:56 +01:00
Pecusx f05fbe5f66 Merge branch 'develop' of https://github.com/Pecusx/Young-lumberjack into develop 2025-03-17 14:26:33 +01:00
Pecusx acba47c00f Birds test 2025-03-17 14:26:21 +01:00
6502adam d0e041745b Belt buckle reshape 2025-03-17 13:08:25 +01:00
Pecusx 3ba8d17c3f Prepare for birds and clouds 2025-03-17 10:03:13 +01:00
Pecusx 4cc73d4ab4 Faster, faster... 2025-03-15 22:18:24 +01:00
Pecusx a191c05cfd Merge branch 'test' into develop 2025-03-15 20:08:30 +01:00
6502adam f065547e89 minor colour and typos corrections 2025-03-11 23:02:28 +01:00
67 changed files with 8241 additions and 2287 deletions
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+4200
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+294
View File
@@ -0,0 +1,294 @@
/***************************************/
/* Use MADS http://mads.atari8.info/ */
/* Mode: DLI (char mode) */
/***************************************/
icl "digital_melody_logo.h"
org $f0
fcnt .ds 2
fadr .ds 2
fhlp .ds 2
cloc .ds 2
regA .ds 1
regX .ds 1
regY .ds 1
WIDTH = 40
HEIGHT = 30
; --- BASIC switch OFF
org $2000\ mva #$ff portb\ rts\ ini $2000
; --- MAIN PROGRAM
org $2000
ant dta $42,a(scr)
dta $02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$02
dta $02,$02,$02,$02,$02,$02,$02,$02,$82,$04,$02,$02,$22
dta $41,a(ant)
scr ins "digital_melody_logo.scr"
.ds 0*40
.ALIGN $0400
fnt ins "digital_melody_logo.fnt"
ift USESPRITES
.ALIGN $0800
pmg .ds $0300
ift FADECHR = 0
SPRITES
els
.ds $500
eif
eif
main
; --- init PMG
ift USESPRITES
mva >pmg pmbase ;missiles and players data address
mva #$03 pmcntl ;enable players and missiles
eif
lda:cmp:req $14 ;wait 1 frame
sei ;stop IRQ interrupts
mva #$00 nmien ;stop NMI interrupts
sta dmactl
mva #$fe portb ;switch off ROM to get 16k more ram
mwa #NMI $fffa ;new NMI handler
mva #1 vscrol
mva #$c0 nmien ;switch on NMI+DLI again
ift CHANGES ;if label CHANGES defined
_lp lda trig0 ; FIRE #0
beq stop
lda trig1 ; FIRE #1
beq stop
lda consol ; START
and #1
beq stop
cpw cloc #500 ; timer 10s
bcs stop
lda skctl
and #$04
bne _lp ;wait to press any key; here you can put any own routine
els
null jmp DLI.dli1 ;CPU is busy here, so no more routines allowed
eif
stop
mva #0 dmactls ; dark screen
sta dmactl
mva #$00 pmcntl ;PMG disabled
tax
sta:rne hposp0,x+
mva #$ff portb ;ROM switch on
mva #$40 nmien ;only NMI interrupts, DLI disabled
cli ;IRQ enabled
rts ;return to ... DOS
; --- DLI PROGRAM
.local DLI
?old_dli = *
ift !CHANGES
dli1 lda trig0 ; FIRE #0
beq stop
lda trig1 ; FIRE #1
beq stop
lda consol ; START
and #1
beq stop
lda skctl
and #$04
beq stop
lda vcount
cmp #$02
bne dli1
:3 sta wsync
DLINEW dli4
eif
dli_start
dli4
sta regA
stx regX
sty regY
c9 lda #$38
c10 ldx #$04
c11 ldy #$0E
sta wsync ;line=208
sta color0
stx color1
sty color2
c12 lda #$82
sta color3
lda #$01
sta gtictl
lda regA
ldx regX
ldy regY
rti
.endl
; ---
CHANGES = 1
FADECHR = 0
SCHR = 127
; ---
.proc NMI
bit nmist
bpl VBL
jmp DLI.dli_start
dliv equ *-2
VBL
sta regA
stx regX
sty regY
sta nmist ;reset NMI flag
mwa #ant dlptr ;ANTIC address program
mva #@dmactl(standard|dma|lineX1|players|missiles) dmactl ;set new screen width
inw cloc ;little timer
; Initial values
lda >fnt+$400*$00
sta chbase
c0 lda #$0E
sta colpm0
c1 lda #$38
sta colpm1
c2 lda #$04
sta colpm2
c3 lda #$0E
sta colpm3
c4 lda #$82
sta color0
c5 lda #$02
sta color1
c6 lda #$56
sta color2
c7 lda #$86
sta color3
c8 lda #$0E
sta colbak
lda #$02
sta chrctl
lda #$81
sta gtictl
x0 lda #$00
sta hposp0
sta hposp1
sta hposp2
sta hposp3
sta hposm0
sta hposm1
sta hposm2
sta hposm3
sta sizep0
sta sizep1
sta sizep2
sta sizep3
sta sizem
mwa #DLI.dli_start dliv ;set the first address of DLI interrupt
;this area is for yours routines
quit
lda regA
ldx regX
ldy regY
rti
.endp
; ---
ini main
; ---
opt l-
.MACRO SPRITES
missiles
.ds $100
player0
.ds $100
player1
.ds $100
player2
.ds $100
player3
.ds $100
.ENDM
USESPRITES = 0
.MACRO DLINEW
mva <:1 NMI.dliv
ift [>?old_dli]<>[>:1]
mva >:1 NMI.dliv+1
eif
ift :2
lda regA
eif
ift :3
ldx regX
eif
ift :4
ldy regY
eif
rti
.def ?old_dli = *
.ENDM
+164
View File
@@ -0,0 +1,164 @@
; ---
; --- FADE
; ---
.local FADE
stx jsr+1
sty jsr+2
ldx #6
jsr wait
mva #16 cnt
lcol mva <tcol fcnt
hcol mva >tcol fcnt+1
ldx #2
jsr wait
jsr jsr $ffff
dec cnt
bne lcol
ldx #6
wait lda:cmp:req cloc
dex
bne wait
rts
cnt brk
.end
; ---
; --- FADE IN
; ---
.local FADE_IN
ldx <fade
ldy >fade
jmp :fade
fade ldy #0
mva (fcnt),y fadr
iny
lda (fcnt),y
sne:rts
sta fadr+1
lda (fadr),y
tax
iny
eor (fcnt),y
beq skp
dey
pha
and #$f0
beq plus1
plus16 txa
add #$10
tax
plus1 pla
and #$0f
seq
inx
txa
sta (fadr),y
skp adw fcnt #3
jmp fade
.end
; ---
; --- FADE OUT
; ---
.local FADE_OUT
ldx <fade
ldy >fade
jmp :fade
fade ldy #0
mva (fcnt),y fadr
iny
lda (fcnt),y
sne:rts
sta fadr+1
lda (fadr),y
tax
and #$0f
beq skp0
dex
skp0
txa
and #$f0
beq skp1
txa
sub #$10
tax
skp1
txa
sta (fadr),y
adw fcnt #3
jmp fade
.end
; ---
; --- SAVE COLOR
; ---
.local SAVE_COLOR
mva fade.lcol+1 fcnt
mva fade.hcol+1 fcnt+1
loop ldy #0
mva (fcnt),y fadr
iny
lda (fcnt),y
sne:rts
sta fadr+1
lda (fadr),y
iny
sta (fcnt),y
dey
mva #0 (fadr),y ; black screen (all colors = $00)
adw fcnt #3
jmp loop
.end
.use DLI,NMI
tcol
dta t(c0,c1,c2,c3,c4,c5,c6,c7,c8,c9)
dta t(c10,c11,c12)
dta t(0)
Binary file not shown.
+275
View File
@@ -0,0 +1,275 @@
opt l-
.enum @dmactl
blank = %00
narrow = %01
standard= %10
wide = %11
missiles= %100
players = %1000
lineX1 = %10000
lineX2 = %00000
dma = %100000
.ende
scr48 = @dmactl(wide|dma|players|missiles|lineX1) ;screen 48b
scr40 = @dmactl(standard|dma|players|missiles|lineX1) ;screen 40b
scr32 = @dmactl(narrow|dma|players|missiles|lineX1) ;screen 32b
.enum @pmcntl
missiles= %1
players = %10
trigs = %100
.ende
.enum @gtictl
prior0 = %0
prior1 = %1
prior2 = %10
prior4 = %100
prior8 = %1000
ply5 = %10000 ; Fifth Player Enable
mlc = %100000 ; Multiple Color Player Enable
mode9 = %01000000
mode10 = %10000000
mode11 = %11000000
.ende
* ---------------------------------------------------------------------------------------------
* --- OS
* ---------------------------------------------------------------------------------------------
ramlo = $04 ; (2) wektor RAM dla testu wielko?ci pami?ci
warmst = $08 ; znacznik gor?cego startu
boot? = $09 ; znacznik odczytu wst?pnego
dosvec = $0A ; (2) wektor startowy programu dyskowego
dosini = $0C ; (2) wektor inicjacji po odczycie z dyskietki
rtclok = $12 ; (3) zegar czasu rzeczywistego
lmargin = $52
rmargin = $53
rowcrs = $54 ; wiersz kursora
colcrs = $55 ; (2) Kolumna kursora
keydef = $79 ; (2) tablica konwersji kod?w klawiatury na ATASCII
vdslst = $0200 ; (2) wektor przerwa? NMI listy displejowej
timcnt3 = $021C ; trzeci licznik systemu
vvblki = $0222 ; (2) wektor NMI natychmiastowego VBI
vvblkd = $0224 ; (2) wektor NMI op??nionego VBI
timflg3 = $022a ; znacznik wyzerowania licznika TIMCNT3
colpf0s = $02C4 ; rejestr-cie? COLPF0
colpf1s = $02C5 ; rejestr-cie? COLPF1
colpf2s = $02C6 ; rejestr-cie? COLPF2
colpf3s = $02C7 ; rejestr-cie? COLPF3
colbaks = $02C8 ; rejestr-cie? COLBAK
dsctln = $02D5 ; (2) Disk sector size register; default of 128 ($80) bytes
dvstat = $02EA ; (4) device status
crsinh = $02F0 ; znacznik widoczno?ci kursora
chact = $02F3 ; rejestr cien CHRCTL
chbas = $02F4 ; rejestr cien CHBASE
atachr = $02Fb ; numer koloru dla PLOT, DRAW (kod ATASCII znaku)
kbcodes = $02Fc ; kod ostatnio naci?ni?tego klawisza, $ff je?li ?aden nie zosta? naci?ni?ty (KBCODE)
fildat = $02Fd ; numer koloru dla FILL
chart = $02F3 ; cie? rejestru kontroli wy?wietlania znak?w (CHRCTL)
ddevic = $0300 ; Device Control Block, identyfikator urz?dzenia
dunit = $0301 ; Numer urz?dzenia; w przypadku stacji dysk?w numer nap?du
dcmnd = $0302 ; Komenda dla urz?dzenia.
dstats = $0303 ; Przed wywo?aniem SIO nale?y ustawi? tu rodzaj operacji ($40 odczyt, $80 zapis, $C0 zapis i odczyt, $00 brak transferu danych). Po powrocie z systemu znajduje si? tu status operacji (kod b??du).
dbufa = $0304 ; (2) Adres bufora. Przy operacji zapisu i odczytu jednocze?nie (DSTATS = $C0) bufor na odczytywane dane znajduje si? w tym samym miejscu, co bufor danch przeznaczonych do zapisu.
dtimlo = $0306 ; Czas oczekiwania na pozytywn? odpowied? urz?dzenia, tzw. timeout, najczesciej = 7
dunuse = $0307 ; Bajt nieu?ywany, zarezerwowany do przysz?ych zastosowa?.
dbyt = $0308 ; (2) Wielko?? bufora; musi by? zgodna z wielko?ci? transmitowanego bloku danych. Zero oznacza 64 kilobajty.
daux1 = $030A ; Pierwszy bajt pomocniczy. W operacjach dyskowych m?odszy bajt numeru sektora.
daux2 = $030B ; Drugi bajt pomocniczy. W operacjach dyskowych starszy bajt numeru sektora.
casflg = $030F ; When set to zero, the current operation is a standard SIO operation; when non-zero, it is a cassette operation.
hatabs = $031A ; tabela wektor?w procedur obs?ugi
iocb = $0340 ; IOCB 0..7 ($340, $350, $360 ...)
iocom = iocb+2 ; Komenda dla IOCB
ioadr = iocb+4 ; (2) Adres bufora dla IOCB
ioaux1 = iocb+10 ; Bajt pomocniczy 1 IOCB
ioaux2 = iocb+11 ; Bajt pomocniczy 2 IOCB
icchid = $0340
icdno = $0341
iccmd = $0342 ; kod rozkazu operacji I/O
icstat = $0343 ; status operacji I/O
icbufa = $0344 ; (2) adres bufora danych dla operacji I/O
icputb = $0346 ; (2) adres procedury przesy?ania danych
icbufl = $0348 ; (2) d?ugo?? bufora danych dla operacji I/O
icax1 = $034A ; rejestr pomocniczy dla operacji I/O
icax2 = $034B ; rejestr pomocniczy dla operacji I/O
icax3 = $034C ; rejestr pomocniczy dla operacji I/O
icax4 = $034D ; rejestr pomocniczy dla operacji I/O
icax5 = $034E ; rejestr pomocniczy dla operacji I/O
icax6 = $034F ; rejestr pomocniczy dla operacji I/O
casbuf = $0400 ; bufor magnetofonu
casben = $047F ; koniec bufora magnetofonu
setvbv = $E45C
xitvbv = $E462
ciov = $E456 ; Wektor do CIOMAIN
jsioint = $E459 ; Wektor do SIO
jdskint = $E453 ; Wektor do sterownika dyskowego
* ---------------------------------------------------------------------------------------------
* --- KEY ($d209)
* ---------------------------------------------------------------------------------------------
key_esc = 28
key_space = 33
key_a = 63
key_b = 21
key_d = 58
key_m = 37
key_n = 35
key_v = 16
key_o = 8
key_p = 10
key_s = 62
key_w = 46
* ---------------------------------------------------------------------------------------------
* --- GTIA
* ---------------------------------------------------------------------------------------------
hposp0 = $D000 ; pozioma pozycja gracza 0 (Z)
hposp1 = $D001 ; pozioma pozycja gracza 1 (Z)
hposp2 = $D002 ; pozioma pozycja gracza 2 (Z)
hposp3 = $D003 ; pozioma pozycja gracza 3 (Z)
hposm0 = $D004 ; pozioma pozycja pocisku 0 (Z)
hposm1 = $D005 ; pozioma pozycja pocisku 1 (Z)
hposm2 = $D006 ; pozioma pozycja pocisku 2 (Z)
hposm3 = $D007 ; pozioma pozycja pocisku 3 (Z)
sizep0 = $D008 ; poziomy rozmiar gracza 0 (Z)
sizep1 = $D009 ; poziomy rozmiar gracza 1 (Z)
sizep2 = $D00A ; poziomy rozmiar gracza 2 (Z)
sizep3 = $D00B ; poziomy rozmiar gracza 3 (Z)
sizem = $D00C ; poziomy rozmiar pocisk?w (Z)
grafp0 = $D00D ; rejestr grafiki gracza 0 (Z)
grafp1 = $D00E ; rejestr grafiki gracza 1 (Z)
grafp2 = $D00F ; rejestr grafiki gracza 2 (Z)
grafp3 = $D010 ; rejestr grafiki gracza 3 (Z)
grafm = $D011 ; rejestr grafiki pocisk?w (Z)
colpm0 = $D012 ; rejestr koloru gracza i pocisku 0 (Z)
colpm1 = $D013 ; rejestr koloru gracza i pocisku 1 (Z)
colpm2 = $D014 ; rejestr koloru gracza i pocisku 2 (Z)
colpm3 = $D015 ; rejestr koloru gracza i pocisku 3 (Z)
colpf0 = $D016 ; rejestr koloru pola gry 0 (Z)
colpf1 = $D017 ; rejestr koloru pola gry 1 (Z)
colpf2 = $D018 ; rejestr koloru pola gry 2 (Z)
colpf3 = $D019 ; rejestr koloru pola gry 3 (Z)
colpf4 = $D01A
colbak = $D01A ; rejestr koloru t?a (Z)
color0 = colpf0
color1 = colpf1
color2 = colpf2
color3 = colpf3
kolm0pf = $D000 ; kolizja pocisku 0 z polem gry (O)
kolm1pf = $D001 ; kolizja pocisku 1 z polem gry (O)
kolm2pf = $D002 ; kolizja pocisku 2 z polem gry (O)
kolm3pf = $D003 ; kolizja pocisku 3 z polem gry (O)
kolp0pf = $D004 ; kolizja gracza 0 z polem gry (O)
kolp1pf = $D005 ; kolizja gracza 1 z polem gry (O)
kolp2pf = $D006 ; kolizja gracza 2 z polem gry (O)
kolp3pf = $D007 ; kolizja gracza 3 z polem gry (O)
kolm0p = $D008 ; kolizja pocisku 0 z graczem (O)
kolm1p = $D009 ; kolizja pocisku 1 z graczem (O)
kolm2p = $D00A ; kolizja pocisku 2 z graczem (O)
kolm3p = $D00B ; kolizja pocisku 3 z graczem (O)
kolp0p = $D00C ; kolizja gracza 0 z innym graczem (O)
kolp1p = $D00D ; kolizja gracza 1 z innym graczem (O)
kolp2p = $D00E ; kolizja gracza 2 z innym graczem (O)
kolp3p = $D00F ; kolizja gracza 3 z innym graczem (O)
trig0 = $D010 ; stan przycisku joysticka 0 (O)
trig1 = $D011 ; stan przycisku joysticka 1 (O)
trig3 = $D013 ; znacznik do??czenia cartridge-a (O)
pal = $D014 ; znacznik systemu TV (O) PAL = 1, NTSC = 15
gtictl = $D01B ; rejestr kontroli uk?adu GTIA
gtiactl = gtictl
vdelay = $D01C ; licznik op??nienia pionowego P/MG
pmcntl = $D01D ; rejestr kontroli graczy i pocisk?w
hitclr = $D01E ; rejestr kasowania rejestr?w kolizji
consol = $D01F ; rejestr stanu klawiszy konsoli
* ---------------------------------------------------------------------------------------------
* --- POKEY
* ---------------------------------------------------------------------------------------------
irqens = $0010 ; rejestr-cie? IRQEN
irqstat = $0011 ; rejestr-cie? IRQST
audf1 = $d200 ; cz?stotliwo?? pracy generatora 1 (Z)
audc1 = $d201 ; rejestr kontroli d?wi?ku generatora 1 (Z)
audf2 = $d202 ; cz?stotliwo?? pracy generatora 2 (Z)
audc2 = $d203 ; rejestr kontroli d?wi?ku generatora 2 (Z)
audf3 = $d204 ; cz?stotliwo?? pracy generatora 3 (Z)
audc3 = $d205 ; rejestr kontroli d?wi?ku generatora 3 (Z)
audf4 = $d206 ; cz?stotliwo?? pracy generatora 4 (Z)
audc4 = $d207 ; rejestr kontroli d?wi?ku generatora 4 (Z)
audctl = $D208 ; rejestr kontroli generator?w d?wi?ku (Z)
stimer = $D209 ; rejestr zerowania licznik?w (Z)
kbcode = $D209 ; kod ostatnio naci?ni?tego klawisza (O)
skstres = $D20A ; rejestr statusu z??cza szeregowego (Z)
random = $D20A ; rejestr liczby losowej (O)
serout = $D20D ; szeregowy rejestr wyj?ciowy (Z)
serin = $D20D ; szeregowy rejestr wej?ciowy (O)
irqen = $D20E ; zezwolenie przerwa? IRQ (Z)
irqst = $D20E ; status przerwa? IRQ (O)
skctl = $D20F ; rejestr kontroli z??cza szeregowego (Z)
skstat = $D20F ; rejestr statusu z??cza szeregowego (O)
* ---------------------------------------------------------------------------------------------
* --- PIA
* ---------------------------------------------------------------------------------------------
porta = $D300 ; port A uk?adu PIA
portb = $D301 ; port B uk?adu PIA
pactl = $D302 ; rejestr kontroli portu A
pbctl = $D303 ; rejestr kontroli portu B
* ---------------------------------------------------------------------------------------------
* --- ANTIC
* ---------------------------------------------------------------------------------------------
dmactl = $D400 ; rejestr kontroli dost?pu do pami?ci
chrctl = $D401 ; rejestr kontroli wy?wietlania znak?w
dlptr = $D402 ; adres programu ANTIC-a
hscrol = $D404 ; znacznik poziomego przesuwu obrazu
vscrol = $D405 ; znacznik pionowego przesuwu obrazu
pmbase = $D407 ; adres pami?ci graczy i pocisk?w
chbase = $D409 ; adres zestawu znak?w
wsync = $D40A ; znacznik oczekiwania na synchronizacj? poziom?
vcount = $D40B ; licznik linii obrazu
lpenh = $D40C ; poziome po?o?enie pi?ra ?wietlengo
lpenv = $D40D ; pionowe po?o?enie pi?ra ?wietlnego
nmien = $D40E ; rejestr zezwole? na przerwania NMI
nmist = $D40F ; rejestr statusu przerwa? NMI
* ---------------------------------------------------------------------------------------------
* --- HARDWARE
* ---------------------------------------------------------------------------------------------
nmivec = $FFFA ; wektor przerwania NMI
resetvec= $FFFC ; wektor przerwania RESET
irqvec = $FFFE ; wektor przerwania IRQ
opt l+
+466
View File
@@ -0,0 +1,466 @@
// Player-Missile Fade
// v2.5 (26.07.2010 - 12.08.2013)
.ifndef pmg
pmg = $0000
eif
mapBits = pmg+$100
ert <mapBits<>0
// -----------------------------------------------------------
.local fade_chars
color
cont ldx #0
ldy #0
ift FADECHR = 1
box #WIDTH #HEIGHT
eli FADECHR = 2
random
eli FADECHR = 3
left_right
eli FADECHR = 4
plasma
eif
wait lda:cmp:req cloc
rts
.proc color (.byte a) .reg
beq color0
color1 mva #{lda $ffff,y} plot.src
rts
color0 mva #{bit $ffff} plot.src
rts
.endp
// -----------------------------------------------------------
ift FADECHR = 4
.proc plasma
loop mwa #hmap src
ldx #HEIGHT-1
lpy
ldy #WIDTH-1
lpx lda $ffff,y
src equ *-2
cmp #0
hmax equ *-1
sne
jsr plot
dey
bpl lpx
adw src #48
dex
bpl lpy
jsr wait
incdec inc hmax
lda hmax
bmi stop_p
cmp #$3f+1
bcs stop_m
jmp loop
stop_p lda #{inc*}
dta {bit*}
stop_m lda #{dec*}
sta incdec
rts
hmap .he 28 2E 33 39 3F 3B 35 2F 29 24 1F 1A 16 12 0F 0B 09 07 05 05 04 05 06 07 09 0C 0F 12 16 1B 1F 24
.he 29 2E 33 38 3C 3F 3B 38 35 34 33 33 34 36 38 3B 2D 33 39 3F 3A 34 2E 28 23 1E 18 14 0F 0B 08 05
.he 03 01 00 00 00 00 01 02 04 07 0A 0E 13 18 1C 21 26 2C 32 37 3B 3F 3B 37 34 33 32 32 33 35 37 39
.he 33 39 3F 3B 34 2E 28 23 1D 18 12 0E 0A 06 02 00 01 04 05 05 05 04 03 01 01 03 07 0B 0F 14 1A 1F
.he 25 2A 30 35 3B 3F 3A 37 33 32 30 31 32 33 35 38 38 3E 3B 35 2F 29 23 1D 18 12 0D 09 05 01 02 05
.he 07 09 0A 0A 0A 09 07 05 03 00 03 08 0C 11 16 1C 23 28 2E 34 3A 3F 3A 36 33 30 2F 2F 30 32 34 37
.he 3D 3D 37 30 2B 24 1F 19 13 0E 09 03 00 03 06 09 0B 0D 0E 0E 0E 0D 0B 09 06 02 00 05 09 0F 14 1A
.he 20 26 2D 33 3A 3E 3B 37 33 31 30 2F 30 32 34 37 3E 39 32 2C 26 21 1A 15 0F 09 05 00 04 07 0A 0C
.he 0F 10 11 11 11 10 0E 0C 09 05 01 02 07 0C 11 18 1E 24 2B 31 38 3E 3C 38 34 31 2F 30 30 32 34 37
.he 3B 35 2F 29 23 1D 17 12 0C 07 02 02 06 0A 0C 0F 11 13 14 14 13 12 11 0E 0B 08 04 00 05 0A 10 15
.he 1B 22 29 2F 35 3B 3D 39 35 32 31 30 31 34 36 38 38 32 2C 27 20 1A 15 0F 09 04 00 05 09 0C 0F 12
.he 13 15 16 16 15 14 13 10 0D 0A 06 02 02 08 0D 14 1A 20 26 2D 33 39 3E 3C 37 35 33 33 34 35 37 39
.he 35 2F 2A 24 1E 18 13 0D 08 03 02 06 09 0D 10 13 15 16 17 17 16 15 14 12 0F 0B 07 03 01 06 0C 11
.he 17 1D 24 2A 30 36 3C 3F 3C 38 37 37 36 38 39 3C 34 2E 28 23 1D 17 11 0C 07 02 02 07 0A 0D 11 13
.he 15 16 17 17 17 16 14 12 0F 0C 08 04 00 04 0A 10 15 1B 21 27 2D 33 38 3C 3F 3C 3B 3A 3A 3B 3D 3E
.he 32 2D 28 22 1C 16 11 0C 07 02 02 06 0A 0D 10 13 14 16 17 17 16 15 14 12 0F 0C 09 05 00 04 08 0E
.he 13 19 1F 24 2A 30 34 38 3C 3E 3F 3E 3E 3F 3F 3E 32 2D 28 22 1D 17 12 0D 08 03 01 04 09 0C 10 11
.he 13 15 15 15 15 15 13 11 0F 0C 09 04 01 03 07 0D 12 17 1C 22 26 2B 30 34 37 39 3C 3D 3D 3C 3C 3A
.he 33 2E 28 23 1E 19 13 0E 09 04 00 03 07 0A 0D 10 12 13 13 13 14 13 11 10 0D 0A 07 04 00 02 07 0C
.he 10 15 19 1F 23 28 2C 2F 33 35 37 38 38 38 38 37 33 2F 2A 24 20 1A 15 10 0B 07 03 01 05 08 0B 0D
.he 0E 0F 11 11 11 10 0F 0E 0B 09 07 03 00 03 07 0B 0F 14 18 1C 20 24 28 2B 2E 31 32 33 34 34 34 33
.he 35 30 2C 27 22 1C 18 13 0E 0A 06 02 01 04 07 09 0B 0C 0D 0E 0E 0D 0C 0A 09 07 04 01 00 04 07 0B
.he 0E 12 16 1A 1E 21 24 27 2A 2C 2E 2F 30 30 30 30 36 33 2E 2A 25 20 1B 17 13 0E 0A 06 02 00 03 04
.he 06 08 09 09 09 09 08 07 06 04 02 00 01 05 08 0B 0E 11 14 18 1B 1E 21 23 26 28 2A 2B 2C 2C 2C 2C
.he 39 35 32 2D 29 24 20 1B 17 12 0E 0A 07 04 02 00 02 03 04 05 05 04 04 03 02 00 00 02 04 07 09 0B
.he 0E 10 13 16 19 1B 1E 20 23 24 26 27 28 29 29 29 3C 39 35 31 2D 29 24 20 1C 17 13 10 0D 0A 07 05
.he 03 02 01 00 00 00 00 01 01 02 04 05 06 08 0A 0C 0E 11 13 15 17 1A 1B 1E 1F 21 23 24 24 25 26 26
.he 3F 3D 39 36 31 2E 29 25 21 1D 19 16 12 0F 0C 0A 09 08 06 05 05 05 06 06 07 07 08 09 0A 0B 0C 0E
.he 0F 11 12 14 16 18 19 1B 1D 1E 20 20 22 22 23 24 3C 3E 3E 3A 37 33 2F 2B 27 23 1F 1C 19 16 13 11
.he 0F 0E 0D 0C 0C 0B 0B 0C 0C 0C 0D 0D 0D 0E 0F 0F 10 11 12 14 15 16 18 19 1B 1C 1D 1E 1F 20 21 21
.he 37 3A 3C 3F 3C 38 34 30 2D 29 25 22 1F 1C 1A 18 15 15 13 12 12 12 12 12 12 12 12 12 11 12 11 11
.he 12 12 13 14 15 15 16 18 19 1A 1B 1C 1D 1E 1E 20 33 35 37 3A 3D 3E 3B 37 33 2F 2C 28 25 23 20 1E
.he 1D 1B 1A 19 19 19 18 18 18 17 17 16 16 15 15 14 13 13 14 14 14 15 15 16 18 18 19 1A 1B 1D 1D 1F
.he 2E 30 32 35 37 3B 3E 3D 39 35 32 2F 2C 29 27 25 23 22 21 21 20 1F 1F 1F 1E 1D 1D 1C 1A 19 17 17
.he 16 15 15 14 14 14 15 15 16 17 18 19 1A 1B 1C 1D 2A 2B 2D 2F 31 35 38 3C 3F 3C 38 35 32 2F 2D 2B
.he 2A 29 28 27 27 26 26 25 24 23 22 20 1E 1D 1B 19 18 16 16 15 15 15 15 15 15 16 17 18 19 1B 1B 1C
.he 26 27 28 29 2C 2F 32 36 3A 3D 3F 3B 38 36 33 31 31 2F 2E 2E 2D 2C 2D 2B 2B 2A 28 26 24 21 1E 1C
.he 1A 19 17 16 15 15 15 15 15 16 17 18 19 1A 1B 1D 22 22 23 25 26 29 2D 30 34 37 3B 3E 3E 3B 39 37
.he 36 35 34 34 34 33 32 31 30 2F 2C 2A 28 24 22 1F 1D 1A 18 17 17 16 15 15 15 16 17 18 19 1A 1C 1D
.he 1E 1E 1E 1F 21 24 28 2B 2F 32 36 39 3C 3E 3E 3D 3C 3B 3A 3A 39 39 38 36 36 34 31 2E 2B 28 25 22
.he 1F 1C 1A 19 17 17 16 16 16 17 17 18 1A 1B 1C 1E 1B 1B 1B 1B 1E 20 23 27 2A 2E 31 35 38 3A 3C 3E
.he 3F 3F 3F 3F 3D 3D 3C 3B 39 38 35 32 2E 2A 27 24 21 1E 1C 1A 19 18 18 17 18 18 19 19 1B 1C 1E 1F
.he 19 18 17 19 1A 1D 20 23 27 2A 2E 31 34 36 39 3A 3A 3C 3C 3D 3D 3E 3F 3E 3D 3A 37 33 31 2D 29 26
.he 22 20 1E 1C 1A 1A 19 18 19 19 1A 1B 1C 1D 1F 21 18 16 16 17 18 1B 1D 21 25 28 2B 2F 31 34 35 37
.he 38 39 39 3A 3B 3C 3E 3F 3E 3C 39 35 32 2E 2B 27 24 21 1F 1E 1C 1B 1A 1A 1A 1B 1C 1D 1E 1F 22 24
.endp
eif
// -----------------------------------------------------------
ift FADECHR = 3
.proc left_right
mva #WIDTH/2 cnt
mva #0 x0
mva #WIDTH-1 x1
loop ldy #0
x0 equ *-1
jsr column
ldy #0
x1 equ *-1
jsr column
:2 inc x0
:2 dec x1
dec cnt
bne loop
rts
column ldx #HEIGHT-1
draw jsr plot
dex
bpl draw
jmp wait
cnt brk
.endp
eif
// -----------------------------------------------------------
ift FADECHR = 2
.proc random
mwa #0 cnt
loop lda $d20a ; y
and #$f
cmp #15
bcs loop
asl @
sta py
:2 asl @
sta bmap
ret lda $d20a ; x
lsr @
and #$1f
cmp #WIDTH/2
bcs ret
asl @
sta px
:3 lsr @
tax
lda px
and #7
tay
jsr mapByte
and mask,y
bne loop
jsr mapByte
ora mask,y
mvy #{sta $ffff,x} mapByte
jsr mapByte
mvy #{lda $ffff,x} mapByte
ldy #0
px equ *-1
ldx #0
py equ *-1
jsr plot
iny
jsr plot
inx
jsr plot
dey
jsr plot
inw cnt
cpw cnt #(WIDTH/2)*15
jne loop
ldx #$7f
lda #0
sta:rpl mapBits,x-
mapByte lda mapBits,x
bmap equ *-2
rts
mask dta $80,$40,$20,$10,$08,$04,$02,$01
cnt dta a(0)
.endp
eif
// -----------------------------------------------------------
ift FADECHR = 1
.proc box (.byte width, height) .var
loop mva width w
dec w
l0 jsr plot
iny
dec w
bne l0
mva height h
dec h
l1 jsr plot
inx
dec h
bne l1
mva width w
dec w
l2 jsr plot
dey
dec w
bne l2
mva height h
dec h
l3 jsr plot
dex
dec h
bne l3
:2 dec width
:2 dec height
inx
iny
jsr wait
cpy #15
bne loop
rts
w brk
h brk
width brk
height brk
.endp
eif
// -----------------------------------------------------------
.proc movfil (.word fadr, fhlp, fcnt .byte fill+1) .var
sta fill_+1
LDY #0
LDX fcnt+1
BEQ MD2
MD1 LDA (fadr),y ; move the remaining bytes
STA (fhlp),y
fill lda #0
sta (fadr),y
INY
BNE MD1
INC fadr+1
INC fhlp+1
DEX
BNE MD1
MD2 LDX fcnt
BEQ MD4
MD3 LDA (fadr),y ; move the remaining bytes
STA (fhlp),y
fill_ lda #0
sta (fadr),y
INY
DEX
BNE MD3
MD4 RTS
.endp
init movfil #scr #scrn #WIDTH*HEIGHT #SCHR
ldy #0
tya
pmgClr sta pmg+$300,y
sta pmg+$400,y
sta pmg+$500,y
sta pmg+$600,y
sta pmg+$700,y
iny
bne pmgClr
rts
// -----------------------------------------------------------
.proc plot (.byte x,y) .reg
stx rx ; Y char position
sty ry ; X char position
mva lmul,x fadr
mva hmul,x fadr+1
lda fadr
add <scrn
_sta0 sta src+1
lda fadr+1
adc >scrn
_sta1 sta src+2
adw fadr #scr dst+1
lda #SCHR
src lda $ffff,y
dst sta $ffff,y
jsr pmg_plot
ldx #0
rx equ *-1
ldy #0
ry equ *-1
rts
.local pmg_plot
mva lcol,y fcnt
mva hcol,y fcnt+1
txa
asl @
tay
asl @
asl @
add #8
tax
lda (fcnt),y
sta fadr
iny
lda (fcnt),y
sta fadr+1
ldy #0
loop lda (fadr),y
src equ *-2
sta tmp
beq stop
jmi _mis
p0 asl tmp
jmi _pl0
p1 asl tmp
jmi _pl1
p2 asl tmp
jmi _pl2
p3 asl tmp
jmi _pl3
stop rts
tmp brk
_mis @plot $300
jmp p0
_pl0 @plot $400
jmp p1
_pl1 @plot $500
jmp p2
_pl2 @plot $600
jmp p3
_pl3 @plot $700
rts
.macro @plot (player)
.rept 8
iny
lda pmg+%%player+#,x
eor (fadr),y
sta pmg+%%player+#,x
.endr
.endm
.endl
lcol :WIDTH dta l(col%%1)
hcol :WIDTH dta h(col%%1)
.rept WIDTH,#
col%%1 dta a(c%%1r0),a(c%%1r1),a(c%%1r2),a(c%%1r3),a(c%%1r4)
dta a(c%%1r5),a(c%%1r6),a(c%%1r7),a(c%%1r8),a(c%%1r9)
dta a(c%%1r10),a(c%%1r11),a(c%%1r12),a(c%%1r13),a(c%%1r14)
dta a(c%%1r15),a(c%%1r16),a(c%%1r17),a(c%%1r18),a(c%%1r19)
dta a(c%%1r20),a(c%%1r21),a(c%%1r22),a(c%%1r23),a(c%%1r24)
dta a(c%%1r25),a(c%%1r26),a(c%%1r27),a(c%%1r28),a(c%%1r29)
.endr
lmul :HEIGHT dta l(#*WIDTH)
hmul :HEIGHT dta h(#*WIDTH)
.endp
.endl
scrn .ds WIDTH*HEIGHT
Binary file not shown.
+359 -737
View File
File diff suppressed because it is too large Load Diff
+81 -81
View File
@@ -1,7 +1,7 @@
;---------------------------------------------------
; Animation sequence:
; v1 - if no branches
; v2 - if the branch under (due to change of sides) the lumberjack and none above
; v2 - if the branch under (due to change of sides) the lumberjack and none above - (now v1)
;
; - (last position)
; - phase 2 page 1
@@ -12,7 +12,7 @@
; - phase 2 page 4
; - phase 1 page 1 (new position)
;
; v3 - if the branch opposite the lumberjack and no branch above
; v3 - if the branch opposite the lumberjack and no branch above - (now v1)
;
; - (last position)
; - phase 2 page 5
@@ -24,7 +24,7 @@
; - phase 1 page 1 (new position)
;
; v4 - if no branch at the level of the lumberjack and branch above (kill)
; v5 - if the branch under (due to change of sides) the lumberjack and branch above (kill)
; v5 - if the branch under (due to change of sides) the lumberjack and branch above (kill) - (now v4)
;
; - (last position)
; - phase 2 page 1
@@ -35,7 +35,7 @@
; - phase 2 page 13
; - phase 1 page 1 (new position) - killed
;
; v6 - if the branch opposite the lumberjack and branch above (kill)
; v6 - if the branch opposite the lumberjack and branch above (kill) - (now v4)
;
; - (last position)
; - phase 2 page 5
@@ -47,7 +47,7 @@
; - phase 1 page 1 (new position) - killed
;
; v7 - if no branch at the level of the lumberjack and branch above on the other side
; v8 - if the branch under (due to change of sides) the lumberjack and branch above on the other side
; v8 - if the branch under (due to change of sides) the lumberjack and branch above on the other side - (now v7)
;
; - (last position)
; - phase 2 page 1
@@ -58,7 +58,7 @@
; - phase 2 page 9
; - phase 1 page 2 (new position)
;
; v9 - if the branch opposite the lumberjack and branch above on the other side
; v9 - if the branch opposite the lumberjack and branch above on the other side - (now v7)
;
; - (last position)
; - phase 2 page 5
@@ -74,67 +74,69 @@
;--------------------------------------------------
mva #>font_game_lower_right LowCharsetBase
mwa #last_line_r lastline_addr
mwa #gamescreen_r_ph2p1 animation_addr
;mwa #gamescreen_r_ph2p1 animation_addr
;jsr SetPMr2
;WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p2 animation_addr
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p2 animation_addr
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p1 animation_addr
WaitForSync
jsr SetPMr3
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p2 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p3 animation_addr
WaitForSync
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p4 animation_addr
WaitForSync
mwa #gamescreen_r_ph1p1 animation_addr
WaitForSync
jsr SetPMr1
;WaitForSync
mva #1 LumberjackDir ; right side
rts
.endp
AnimationR2 = AnimationR1
;AnimationR2 = AnimationR1
;--------------------------------------------------
.proc AnimationL1
;--------------------------------------------------
mva #>font_game_lower_left LowCharsetBase
mwa #last_line_l lastline_addr
mwa #gamescreen_l_ph2p1 animation_addr
;mwa #gamescreen_l_ph2p1 animation_addr
;jsr SetPMl2
;WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p2 animation_addr
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p2 animation_addr
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p1 animation_addr
WaitForSync
jsr SetPMl3
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p2 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p3 animation_addr
WaitForSync
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p4 animation_addr
WaitForSync
mwa #gamescreen_l_ph1p1 animation_addr
WaitForSync
jsr SetPMl1
;WaitForSync
mva #2 LumberjackDir ; left side
rts
.endp
AnimationL2 = AnimationL1
/* AnimationL2 = AnimationL1
;--------------------------------------------------
.proc AnimationR3
;--------------------------------------------------
@@ -148,22 +150,22 @@ AnimationL2 = AnimationL1
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p3 animation_addr
WaitForSync
jsr SetPMr3
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p4 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p3 animation_addr
WaitForSync
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p4 animation_addr
WaitForSync
mwa #gamescreen_r_ph1p1 animation_addr
WaitForSync
jsr SetPMr1
WaitForSync
mva #1 LumberjackDir ; right side
rts
.endp
@@ -180,91 +182,87 @@ AnimationL2 = AnimationL1
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p3 animation_addr
WaitForSync
jsr SetPMl3
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p4 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p3 animation_addr
WaitForSync
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p4 animation_addr
WaitForSync
mwa #gamescreen_l_ph1p1 animation_addr
WaitForSync
jsr SetPMl1
WaitForSync
mva #2 LumberjackDir ; left side
rts
.endp
.endp */
;--------------------------------------------------
.proc AnimationR4
;--------------------------------------------------
mva #>font_game_lower_right LowCharsetBase
mwa #last_line_r lastline_addr
mwa #gamescreen_r_ph2p1 animation_addr
;mwa #gamescreen_r_ph2p1 animation_addr
;jsr SetPMr2
;WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p11 animation_addr
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p11 animation_addr
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p9 animation_addr
WaitForSync
jsr SetPMr3
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p10 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p12 animation_addr
WaitForSync
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p13 animation_addr
WaitForSync
mwa #gamescreen_r_ph1p1 animation_addr
WaitForSync
jsr SetPMr1
;WaitForSync
mva #1 LumberjackDir ; right side (kill)
rts
.endp
AnimationR5 = AnimationR4
;AnimationR5 = AnimationR4
;--------------------------------------------------
.proc AnimationL4
;--------------------------------------------------
mva #>font_game_lower_left LowCharsetBase
mwa #last_line_l lastline_addr
mwa #gamescreen_l_ph2p1 animation_addr
;mwa #gamescreen_l_ph2p1 animation_addr
;jsr SetPMl2
;WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p11 animation_addr
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p11 animation_addr
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p9 animation_addr
WaitForSync
jsr SetPMl3
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p10 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p12 animation_addr
WaitForSync
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p13 animation_addr
WaitForSync
mwa #gamescreen_l_ph1p1 animation_addr
WaitForSync
jsr SetPMl1
;WaitForSync
mva #2 LumberjackDir ; left side (kill)
rts
.endp
AnimationL5 = AnimationL4
/* AnimationL5 = AnimationL4
;--------------------------------------------------
.proc AnimationR6
;--------------------------------------------------
@@ -278,22 +276,22 @@ AnimationL5 = AnimationL4
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p11 animation_addr
WaitForSync
jsr SetPMr3
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p12 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p12 animation_addr
WaitForSync
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p13 animation_addr
WaitForSync
mwa #gamescreen_r_ph1p1 animation_addr
WaitForSync
jsr SetPMr1
WaitForSync
mva #1 LumberjackDir ; right side (kill)
rts
.endp
@@ -310,91 +308,93 @@ AnimationL5 = AnimationL4
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p11 animation_addr
WaitForSync
jsr SetPMl3
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p12 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p12 animation_addr
WaitForSync
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p13 animation_addr
WaitForSync
mwa #gamescreen_l_ph1p1 animation_addr
WaitForSync
jsr SetPMl1
WaitForSync
mva #2 LumberjackDir ; left side (kill)
rts
.endp
.endp */
;--------------------------------------------------
.proc AnimationR7
;--------------------------------------------------
mva #>font_game_lower_right LowCharsetBase
mwa #last_line_r lastline_addr
mwa #gamescreen_r_ph2p1 animation_addr
;mwa #gamescreen_r_ph2p1 animation_addr
;jsr SetPMr2
;WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p7 animation_addr
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p7 animation_addr
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p5 animation_addr
WaitForSync
jsr SetPMr3
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p6 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p8 animation_addr
WaitForSync
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p9 animation_addr
WaitForSync
mwa #gamescreen_r_ph1p2 animation_addr
WaitForSync
jsr SetPMr1
;WaitForSync
mva #1 LumberjackDir ; right side
rts
.endp
AnimationR8 = AnimationR7
;AnimationR8 = AnimationR7
;--------------------------------------------------
.proc AnimationL7
;--------------------------------------------------
mva #>font_game_lower_left LowCharsetBase
mwa #last_line_l lastline_addr
mwa #gamescreen_l_ph2p1 animation_addr
;mwa #gamescreen_l_ph2p1 animation_addr
;jsr SetPMl2
;WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p7 animation_addr
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p7 animation_addr
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p5 animation_addr
WaitForSync
jsr SetPMl3
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p6 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p8 animation_addr
WaitForSync
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p9 animation_addr
WaitForSync
mwa #gamescreen_l_ph1p2 animation_addr
WaitForSync
jsr SetPMl1
;WaitForSync
mva #2 LumberjackDir ; left side
rts
.endp
AnimationL8 = AnimationL7
/* AnimationL8 = AnimationL7
;--------------------------------------------------
.proc AnimationR9
;--------------------------------------------------
@@ -408,22 +408,22 @@ AnimationL8 = AnimationL7
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p7 animation_addr
WaitForSync
jsr SetPMr3
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph3p8 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p8 animation_addr
WaitForSync
jsr SetPMr2
WaitForSync
jsr branches_go_down
mwa #gamescreen_r_ph2p9 animation_addr
WaitForSync
mwa #gamescreen_r_ph1p2 animation_addr
WaitForSync
jsr SetPMr1
WaitForSync
mva #1 LumberjackDir ; right side
rts
.endp
@@ -440,23 +440,23 @@ AnimationL8 = AnimationL7
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p7 animation_addr
WaitForSync
jsr SetPMl3
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph3p8 animation_addr
jsr RestoreRedBar
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p8 animation_addr
WaitForSync
jsr SetPMl2
WaitForSync
jsr branches_go_down
mwa #gamescreen_l_ph2p9 animation_addr
WaitForSync
mwa #gamescreen_l_ph1p2 animation_addr
WaitForSync
jsr SetPMl1
WaitForSync
mva #2 LumberjackDir ; left side
rts
.endp
.endp */
;--------------------------------------------------
Binary file not shown.
+12
View File
@@ -0,0 +1,12 @@
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$24,$25,$24,$3D,$26,$27,$26,$29,$08,$09,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$46,$47,$24,$3D,$38,$39,$26,$29,$26,$35,$31,$03,$26,$3F,$26,$29,$24,$25,$48,$49,$54,$55,$02,$00,$26,$3F,$26,$29,$24,$25,$26,$35,$24,$3D,$31,$00,$00
dta $00,$00,$00,$00,$00,$20,$21,$26,$27,$26,$27,$30,$46,$47,$30,$24,$3D,$3A,$3B,$20,$21,$36,$37,$58,$00,$24,$25,$24,$3D,$26,$27,$26,$29,$08,$09,$00,$00,$00,$00,$00
dta $26,$3F,$20,$21,$4C,$4D,$26,$29,$36,$57,$58,$03,$26,$3F,$30,$26,$43,$4E,$4F,$02,$00,$26,$35,$20,$21,$36,$37,$30,$3A,$3B,$24,$3D,$4C,$4D,$44,$45,$26,$35,$30,$31
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$24,$2D,$26,$43,$20,$21,$26,$3F,$26,$2F,$30,$24,$25,$44,$45,$08,$09,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$20,$21,$26,$27,$20,$21,$38,$39,$31,$00,$4C,$4D,$20,$21,$24,$25,$26,$2F,$24,$3D,$4C,$4D,$44,$45,$26,$35,$30,$31,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$38,$39,$48,$49,$44,$45,$30,$24,$25,$0A,$0B,$44,$45,$24,$3D,$48,$49,$3A,$3B,$26,$27,$31,$22,$2B,$4E,$4F,$08,$09,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$20,$21,$36,$37,$26,$29,$26,$35,$44,$45,$20,$21,$3A,$3B,$26,$27,$26,$29,$26,$43,$31,$00,$38,$39,$20,$21,$26,$43,$46,$47,$30,$3A,$3B,$31,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$46,$47,$26,$2F,$20,$21,$3A,$3B,$26,$35,$44,$45,$31,$00,$46,$47,$24,$3D,$08,$09,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$46,$47,$24,$3D,$38,$39,$26,$29,$26,$35,$31,$03,$46,$47,$26,$27,$24,$25,$02,$00,$24,$25,$30,$26,$29,$54,$55,$36,$37,$26,$29,$4C,$4D,$30,$24,$25,$52,$53,$31
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$36,$37,$30,$24,$25,$26,$29,$3A,$3B,$44,$45,$26,$29,$26,$27,$31,$00,$22,$13,$50,$51,$31,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$26,$27,$30,$24,$2D,$30,$46,$47,$20,$21,$36,$37,$58,$00,$38,$39,$26,$29,$36,$37,$24,$3D,$26,$27,$50,$51,$31,$00,$0E,$0F,$1E,$1F,$1C,$13,$14,$15,$31,$00
+2
View File
@@ -0,0 +1,2 @@
dta $00,$00,$00,$00,$00,$00,$00,$00,$38,$39,$24,$3D,$26,$27,$26,$29,$08,$09,$00,$00,$00,$24,$2D,$20,$21,$38,$39,$26,$29,$31,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$38,$39,$24,$3D,$26,$27,$26,$29,$08,$09,$46,$47,$26,$43,$20,$21,$30,$3A,$3B,$30,$3A,$3B,$24,$2D,$31,$00,$00,$00,$00,$00,$00,$00
Binary file not shown.
+78
View File
@@ -0,0 +1,78 @@
import json
import sys
def print_lines(
dta, line_from: int, line_to: int, skip_left: int = 0, skip_right: int = 0, f=sys.stdout,):
for d in dta[line_from:line_to]:
print(
f' dta ' + ','.join([f'${d[i:i + 2]}' for i in range(0 + skip_left*2, len(d) - skip_right*2, 2)]),
file=f)
def write_asm(atrview, out, page, line_from, line_to, skip_left, skip_right):
with open(atrview, 'r', encoding='utf-8-sig') as f:
s = json.load(f)
for p in s['Pages']:
if (isinstance(page, int) and p['Nr'] == page) or (isinstance(page, str) and p['Name'] == page):
dta = p['View']
width = p.get('Width', 40) * 2 # 2 hex chars per byte or 40
dtas = [dta[i * width:(i + 1) * width] for i in range(len(dta) // width)]
break
with open(out, 'wt') as f:
print(f'Writing file: {out}')
print_lines(dtas, line_from, line_to, skip_left,skip_right, f)
write_asm(
atrview='title_fonts.atrview',
out='over_screen.asm',
page='GameOver',
line_from=0,
line_to=13,
skip_left=0,
skip_right=8)
write_asm(
atrview='title_fonts.atrview',
out='credits.asm',
page='Credits',
line_from=0,
line_to=12,
skip_left=0,
skip_right=0)
write_asm(
atrview="title.atrview",
out='title_logo.asm',
page=1,
line_from=2,
line_to=2+8,
skip_left=0,
skip_right=8)
write_asm(
atrview="title.atrview",
out='title_timber.asm',
page=1,
line_from=12,
line_to=12+13,
skip_left=0,
skip_right=8)
write_asm(
atrview="title_fonts.atrview",
out='difficulty_texts.asm',
page='Options',
line_from=0,
line_to=0+2,
skip_left=0,
skip_right=0)
write_asm(
atrview="title_fonts.atrview",
out='go.asm',
page='GO',
line_from=0,
line_to=0+4,
skip_left=0,
skip_right=8)
BIN
View File
Binary file not shown.
+4
View File
@@ -0,0 +1,4 @@
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$12,$13,$31,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$10,$11,$31,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0E,$0F,$58,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$24,$2D,$24,$3D,$5C,$31,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+52
View File
@@ -0,0 +1,52 @@
dta $00,$00,$00,$00,$24,$2D,$20,$21
dta $38,$39,$26,$29,$31,$24,$25,$24
dta $3D,$3A,$3B,$46,$47,$26,$43,$24
dta $3D,$36,$37,$44,$45,$31,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$A0,$A1,$A4,$A5,$C6,$C7
dta $B0,$A4,$BD,$BA,$BB,$88,$89,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$44,$45,$46
dta $47,$20,$21,$26,$43,$46,$47,$1D
dta $01,$44,$45,$26,$3F,$20,$21,$24
dta $25,$26,$29,$1D,$01,$00,$00,$00
dta $00,$00,$00,$0E,$0F,$44,$45,$46
dta $47,$31,$32,$33,$24,$3D,$50,$51
dta $31,$22,$13,$48,$49,$46,$47,$46
dta $47,$24,$3D,$3A,$3B,$31,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$B6,$B7,$A6,$A9,$A6
dta $AB,$C6,$C7,$88,$89,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$32,$33
dta $24,$3D,$50,$51,$1D,$01,$24,$25
dta $48,$49,$26,$43,$44,$45,$24,$3D
dta $22,$43,$1D,$01,$00,$00,$00,$00
dta $00,$00,$00,$0E,$0F,$44,$45,$46
dta $47,$31,$32,$33,$24,$3D,$50,$51
dta $31,$22,$13,$48,$49,$46,$47,$46
dta $47,$24,$3D,$3A,$3B,$1D,$01,$00
dta $00,$00,$00,$00,$00,$00,$46,$47
dta $20,$21,$22,$13,$1D,$01,$44,$45
dta $26,$29,$36,$37,$26,$29,$24,$25
dta $46,$47,$31,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$A6,$C3,$B0,$A4,$AD
dta $A6,$AF,$C6,$C7,$88,$89,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$32,$33
dta $24,$3D,$50,$51,$1D,$01,$24,$25
dta $48,$49,$26,$43,$44,$45,$24,$3D
dta $22,$43,$1D,$01,$00,$00,$00,$00
dta $00,$00,$00,$10,$11,$3A,$3B,$26
dta $27,$31,$32,$33,$24,$3D,$50,$51
dta $31,$22,$13,$48,$49,$46,$47,$46
dta $47,$24,$3D,$3A,$3B,$1D,$01,$00
dta $00,$00,$00,$00,$22,$43,$26,$29
dta $46,$47,$48,$49,$22,$43,$3A,$3B
dta $1D,$01,$24,$3D,$26,$3F,$46,$47
dta $30,$24,$3D,$3A,$3B,$31,$00,$00
+67 -62
View File
@@ -47,8 +47,13 @@ dta = load_atrview('phase1l.atrview')
d = dta[-1]
print(f' dta ' + ','.join([f'${d[i:i + 2]}' for i in range(0, len(d), 2)]))
print('last_line_RIP')
dta = load_atrview('rip.atrview')
print('last_line_RIP_l')
dta = load_atrview('rip.atrview', page=1)
d = dta[-1]
print(f' dta ' + ','.join([f'${d[i:i + 2]}' for i in range(0, len(d), 2)]))
print('last_line_RIP_r')
dta = load_atrview('rip.atrview', page=2)
d = dta[-1]
print(f' dta ' + ','.join([f'${d[i:i + 2]}' for i in range(0, len(d), 2)]))
@@ -81,13 +86,13 @@ print('gamescreen_r_ph2p4 ; phase 2 page 4')
dta = load_atrview('phase2r.atrview', page=4)
print_lines(dta, -9, -1)
print('gamescreen_r_ph2p5 ; phase 2 page 5')
dta = load_atrview('phase2r.atrview', page=5)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph2p5 ; phase 2 page 5')
#dta = load_atrview('phase2r.atrview', page=5)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph2p6 ; phase 2 page 6')
dta = load_atrview('phase2r.atrview', page=6)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph2p6 ; phase 2 page 6')
#dta = load_atrview('phase2r.atrview', page=6)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph2p7 ; phase 2 page 7')
dta = load_atrview('phase2r.atrview', page=7)
@@ -101,9 +106,9 @@ print('gamescreen_r_ph2p9 ; phase 2 page 9')
dta = load_atrview('phase2r.atrview', page=9)
print_lines(dta, -9, -1)
print('gamescreen_r_ph2p10 ; phase 2 page 10')
dta = load_atrview('phase2r.atrview', page=10)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph2p10 ; phase 2 page 10')
#dta = load_atrview('phase2r.atrview', page=10)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph2p11 ; phase 2 page 11')
dta = load_atrview('phase2r.atrview', page=11)
@@ -117,9 +122,9 @@ print('gamescreen_r_ph2p13 ; phase 2 page 13')
dta = load_atrview('phase2r.atrview', page=13)
print_lines(dta, -9, -1)
print('gamescreen_r_ph2p14 ; phase 2 page 14')
dta = load_atrview('phase2r.atrview', page=14)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph2p14 ; phase 2 page 14')
#dta = load_atrview('phase2r.atrview', page=14)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph3p1 ; phase 3 page 1')
dta = load_atrview('phase3r.atrview', page=1)
@@ -129,13 +134,13 @@ print('gamescreen_r_ph3p2 ; phase 3 page 2')
dta = load_atrview('phase3r.atrview', page=2)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p3 ; phase 3 page 3')
dta = load_atrview('phase3r.atrview', page=3)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph3p3 ; phase 3 page 3')
#dta = load_atrview('phase3r.atrview', page=3)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph3p4 ; phase 3 page 4')
dta = load_atrview('phase3r.atrview', page=4)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph3p4 ; phase 3 page 4')
#dta = load_atrview('phase3r.atrview', page=4)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph3p5 ; phase 3 page 5')
dta = load_atrview('phase3r.atrview', page=5)
@@ -145,13 +150,13 @@ print('gamescreen_r_ph3p6 ; phase 3 page 6')
dta = load_atrview('phase3r.atrview', page=6)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p7 ; phase 3 page 7')
dta = load_atrview('phase3r.atrview', page=7)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph3p7 ; phase 3 page 7')
#dta = load_atrview('phase3r.atrview', page=7)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph3p8 ; phase 3 page 8')
dta = load_atrview('phase3r.atrview', page=8)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph3p8 ; phase 3 page 8')
#dta = load_atrview('phase3r.atrview', page=8)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph3p9 ; phase 3 page 9')
dta = load_atrview('phase3r.atrview', page=9)
@@ -161,13 +166,13 @@ print('gamescreen_r_ph3p10 ; phase 3 page 10')
dta = load_atrview('phase3r.atrview', page=10)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p11 ; phase 3 page 11')
dta = load_atrview('phase3r.atrview', page=11)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph3p11 ; phase 3 page 11')
#dta = load_atrview('phase3r.atrview', page=11)
#print_lines(dta, -9, -1)
print('gamescreen_r_ph3p12 ; phase 3 page 12')
dta = load_atrview('phase3r.atrview', page=12)
print_lines(dta, -9, -1)
#print('gamescreen_r_ph3p12 ; phase 3 page 12')
#dta = load_atrview('phase3r.atrview', page=12)
#print_lines(dta, -9, -1)
print("""
; left animation
@@ -201,13 +206,13 @@ print('gamescreen_l_ph2p4 ; phase 2 page 4')
dta = load_atrview('phase2l.atrview', page=4)
print_lines(dta, -9, -1)
print('gamescreen_l_ph2p5 ; phase 2 page 5')
dta = load_atrview('phase2l.atrview', page=5)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph2p5 ; phase 2 page 5')
#dta = load_atrview('phase2l.atrview', page=5)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph2p6 ; phase 2 page 6')
dta = load_atrview('phase2l.atrview', page=6)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph2p6 ; phase 2 page 6')
#dta = load_atrview('phase2l.atrview', page=6)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph2p7 ; phase 2 page 7')
dta = load_atrview('phase2l.atrview', page=7)
@@ -221,9 +226,9 @@ print('gamescreen_l_ph2p9 ; phase 2 page 9')
dta = load_atrview('phase2l.atrview', page=9)
print_lines(dta, -9, -1)
print('gamescreen_l_ph2p10 ; phase 2 page 10')
dta = load_atrview('phase2l.atrview', page=10)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph2p10 ; phase 2 page 10')
#dta = load_atrview('phase2l.atrview', page=10)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph2p11 ; phase 2 page 11')
dta = load_atrview('phase2l.atrview', page=11)
@@ -237,9 +242,9 @@ print('gamescreen_l_ph2p13 ; phase 2 page 13')
dta = load_atrview('phase2l.atrview', page=13)
print_lines(dta, -9, -1)
print('gamescreen_l_ph2p14 ; phase 2 page 14')
dta = load_atrview('phase2l.atrview', page=14)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph2p14 ; phase 2 page 14')
#dta = load_atrview('phase2l.atrview', page=14)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph3p1 ; phase 3 page 1')
dta = load_atrview('phase3l.atrview', page=1)
@@ -249,13 +254,13 @@ print('gamescreen_l_ph3p2 ; phase 3 page 2')
dta = load_atrview('phase3l.atrview', page=2)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p3 ; phase 3 page 3')
dta = load_atrview('phase3l.atrview', page=3)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph3p3 ; phase 3 page 3')
#dta = load_atrview('phase3l.atrview', page=3)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph3p4 ; phase 3 page 4')
dta = load_atrview('phase3l.atrview', page=4)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph3p4 ; phase 3 page 4')
#dta = load_atrview('phase3l.atrview', page=4)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph3p5 ; phase 3 page 5')
dta = load_atrview('phase3l.atrview', page=5)
@@ -265,13 +270,13 @@ print('gamescreen_l_ph3p6 ; phase 3 page 6')
dta = load_atrview('phase3l.atrview', page=6)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p7 ; phase 3 page 7')
dta = load_atrview('phase3l.atrview', page=7)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph3p7 ; phase 3 page 7')
#dta = load_atrview('phase3l.atrview', page=7)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph3p8 ; phase 3 page 8')
dta = load_atrview('phase3l.atrview', page=8)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph3p8 ; phase 3 page 8')
#dta = load_atrview('phase3l.atrview', page=8)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph3p9 ; phase 3 page 9')
dta = load_atrview('phase3l.atrview', page=9)
@@ -281,13 +286,13 @@ print('gamescreen_l_ph3p10 ; phase 3 page 10')
dta = load_atrview('phase3l.atrview', page=10)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p11 ; phase 3 page 11')
dta = load_atrview('phase3l.atrview', page=11)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph3p11 ; phase 3 page 11')
#dta = load_atrview('phase3l.atrview', page=11)
#print_lines(dta, -9, -1)
print('gamescreen_l_ph3p12 ; phase 3 page 12')
dta = load_atrview('phase3l.atrview', page=12)
print_lines(dta, -9, -1)
#print('gamescreen_l_ph3p12 ; phase 3 page 12')
#dta = load_atrview('phase3l.atrview', page=12)
#print_lines(dta, -9, -1)
print("""
; RIP screens
+1
View File
@@ -1 +1,2 @@
python ex.py
python lumberjack_export.py >anim_exported.asm
+13
View File
@@ -0,0 +1,13 @@
dta $00,$00,$00,$00,$00,$81,$82,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$81,$82,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$81,$82,$00,$0B,$0C,$0C,$0D,$0B,$0C,$0C,$2D,$1A,$0D,$00,$0D,$1A,$0C,$0C,$0D,$00,$81,$82,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$81,$82,$00,$05,$06,$0E,$0F,$24,$06,$11,$20,$18,$34,$1B,$1D,$18,$06,$15,$22,$21,$81,$82,$00,$00,$00,$00,$00
dta $00,$00,$00,$F4,$B8,$83,$84,$BD,$08,$09,$10,$0A,$19,$12,$13,$36,$19,$36,$1C,$14,$19,$09,$16,$17,$A3,$C8,$C9,$B0,$F5,$00,$00,$00
dta $00,$00,$00,$2E,$B9,$BA,$BB,$BC,$05,$06,$1E,$07,$37,$1D,$25,$1D,$37,$06,$15,$62,$37,$06,$11,$2A,$D7,$D8,$D9,$DA,$2F,$00,$00,$00
dta $00,$00,$00,$2E,$E8,$E9,$EA,$C1,$08,$09,$1F,$0A,$76,$09,$26,$27,$19,$09,$16,$17,$19,$14,$28,$2B,$AC,$DB,$DC,$DD,$2F,$00,$00,$00
dta $00,$00,$00,$2E,$EC,$BE,$C3,$ED,$C6,$C4,$E4,$C5,$B3,$C2,$B5,$E5,$B2,$C4,$E6,$E7,$B2,$C7,$C6,$B1,$DE,$DF,$E0,$E1,$2F,$00,$00,$00
dta $00,$00,$00,$5E,$D6,$00,$0C,$0D,$0C,$0D,$0C,$0D,$0C,$0D,$31,$00,$20,$21,$20,$21,$20,$21,$20,$21,$20,$21,$31,$B4,$5F,$00,$00,$00
dta $00,$00,$00,$5E,$AE,$00,$0C,$0D,$0C,$0D,$0C,$0D,$0C,$0D,$31,$00,$20,$21,$20,$21,$20,$21,$20,$21,$20,$21,$31,$BC,$5F,$00,$00,$00
dta $00,$00,$00,$5E,$A8,$C2,$0C,$0D,$0C,$0D,$0C,$0D,$0C,$0D,$31,$00,$20,$21,$20,$21,$20,$21,$20,$21,$20,$21,$31,$BE,$5F,$00,$00,$00
dta $00,$00,$00,$5E,$AE,$A3,$0C,$0D,$0C,$0D,$0C,$0D,$0C,$0D,$31,$00,$20,$21,$20,$21,$20,$21,$20,$21,$20,$21,$31,$C0,$5F,$00,$00,$00
dta $00,$00,$00,$5E,$AA,$C0,$0C,$0D,$0C,$0D,$0C,$0D,$0C,$0D,$31,$00,$20,$21,$20,$21,$20,$21,$20,$21,$20,$21,$31,$BC,$5F,$00,$00,$00
dta $00,$00,$00,$2E,$CD,$D1,$CE,$EE,$D2,$F0,$CE,$F1,$EF,$50,$CC,$CF,$EF,$F3,$F0,$CE,$CF,$F2,$D2,$CA,$CE,$D3,$D4,$D5,$2F,$00,$00,$00
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
BIN
View File
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
+8
View File
@@ -0,0 +1,8 @@
dta $00,$00,$00,$00,$00,$00,$01,$02,$02,$03,$04,$05,$06,$07,$04,$05,$04,$04,$09,$04,$04,$0A,$02,$02,$0B,$0C,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$0D,$0E,$0F,$10,$11,$12,$13,$14,$11,$12,$15,$16,$17,$11,$18,$19,$1A,$1B,$1C,$1D,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$1E,$1F,$20,$21,$11,$12,$22,$23,$11,$12,$24,$25,$26,$11,$27,$28,$11,$29,$11,$2A,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$1F,$20,$2B,$11,$12,$2C,$2D,$11,$12,$2E,$2F,$30,$11,$31,$32,$11,$33,$12,$20,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$36,$37,$38,$39,$39,$3A,$3B,$3C,$3D,$3E,$3F,$40,$41,$42,$39,$39,$43,$39,$37,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1F,$44,$45,$46,$47,$48,$49,$4A,$4B,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$4C,$4D,$4E,$4F,$50,$51,$52,$53,$54,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$55,$56,$57,$58,$59,$5A,$5B,$5C,$5D,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Binary file not shown.
+13
View File
@@ -0,0 +1,13 @@
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$34,$35,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6C,$6D,$6E,$E0,$E1,$6F,$70,$71,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$72,$73,$74,$75,$76,$77,$78,$79,$7A,$7B,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$E0,$E1,$62,$63,$64,$63,$63,$65,$E1,$E6,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$67,$68,$69,$6A,$6B,$6C,$63,$63,$65,$6D,$6E,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6F,$70,$71,$72,$F3,$74,$75,$76,$77,$71,$78,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$79,$7A,$7B,$7B,$7C,$7D,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$5D,$59,$59,$59,$59,$7F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6C,$6D,$6E,$E2,$E3,$6F,$70,$71,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6C,$6D,$6E,$E4,$E5,$6F,$70,$71,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6C,$6D,$6E,$E6,$E7,$6F,$70,$71,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6C,$6D,$6E,$E8,$E9,$6F,$70,$71,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$79,$7A,$7B,$7B,$7C,$7E,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
-1399
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+4
View File
@@ -0,0 +1,4 @@
[ViewState]
Mode=
Vid=
FolderType=Generic
+43
View File
@@ -0,0 +1,43 @@
SFX_PRIOR equ 0
STEREOMODE equ 0
PSEUDOSTEREO equ 1
;* --------BEGIN--------
;* Z:\GitHub\Young-lumberjack\msx\tbm5_str.rmt
FEAT_SFX equ 1
FEAT_GLOBALVOLUMEFADE equ 0 ;RMTGLOBALVOLUMEFADE variable
FEAT_NOSTARTINGSONGLINE equ 0
FEAT_INSTRSPEED equ 1
FEAT_CONSTANTSPEED equ 0 ;(10 times)
FEAT_COMMAND1 equ 0 ;(0 times)
FEAT_COMMAND2 equ 0 ;(0 times)
FEAT_COMMAND3 equ 0 ;(0 times)
FEAT_COMMAND4 equ 0 ;(0 times)
FEAT_COMMAND5 equ 0 ;(0 times)
FEAT_COMMAND6 equ 0 ;(0 times)
FEAT_COMMAND7SETNOTE equ 0 ;(0 times)
FEAT_COMMAND7VOLUMEONLY equ 0 ;(0 times)
FEAT_PORTAMENTO equ 0 ;(0 times)
FEAT_FILTER equ 1 ;(12 times)
FEAT_FILTERG0L equ 1 ;(12 times)
FEAT_FILTERG1L equ 0 ;(0 times)
FEAT_FILTERG0R equ 0 ;(0 times)
FEAT_FILTERG1R equ 0 ;(0 times)
FEAT_BASS16 equ 1 ;(11 times)
FEAT_BASS16G1L equ 1 ;(10 times)
FEAT_BASS16G3L equ 0 ;(0 times)
FEAT_BASS16G1R equ 0 ;(0 times)
FEAT_BASS16G3R equ 0 ;(0 times)
FEAT_VOLUMEONLYG0L equ 0 ;(0 times)
FEAT_VOLUMEONLYG2L equ 0 ;(0 times)
FEAT_VOLUMEONLYG3L equ 0 ;(0 times)
FEAT_VOLUMEONLYG0R equ 0 ;(0 times)
FEAT_VOLUMEONLYG2R equ 0 ;(0 times)
FEAT_VOLUMEONLYG3R equ 0 ;(0 times)
FEAT_TABLETYPE equ 0 ;(0 times)
FEAT_TABLEMODE equ 0 ;(0 times)
FEAT_TABLEGO equ 0 ;(0 times)
FEAT_AUDCTLMANUALSET equ 1 ;(2 times)
FEAT_VOLUMEMIN equ 0 ;(0 times)
FEAT_EFFECTVIBRATO equ 0 ;(0 times)
FEAT_EFFECTFSHIFT equ 1 ;(1 times)
;* --------END--------
+1431
View File
File diff suppressed because it is too large Load Diff
+642
View File
@@ -0,0 +1,642 @@
;
; Raster Music Tracker, RMT Atari routine version 1.20090108
; (c) Radek Sterba, Raster/C.P.U., 2002 - 2009
; http://raster.atari.org
;
; Warnings:
;
; 1. RMT player routine needs 19 itself reserved bytes in zero page (no accessed
; from any other routines) as well as cca 1KB of memory before the "PLAYER"
; address for frequency tables and functionary variables. It's:
; a) from PLAYER-$03c0 to PLAYER for stereo RMTplayer
; b) from PLAYER-$0320 to PLAYER for mono RMTplayer
;
; 2. RMT player routine MUST (!!!) be compiled from the begin of the memory page.
; i.e. "PLAYER" address can be $..00 only!
;
; 3. Because of RMTplayer provides a lot of effects, it spent a lot of CPU time.
;
; STEREOMODE equ 0..3 ;0 => compile RMTplayer for 4 tracks mono
; ;1 => compile RMTplayer for 8 tracks stereo
; ;2 => compile RMTplayer for 4 tracks stereo L1 R2 R3 L4
; ;3 => compile RMTplayer for 4 tracks stereo L1 L2 R3 R4
TRACKS equ 4
; RMT FEATures definitions file
; For optimizations of RMT player routine to concrete RMT modul only!
icl "feat.txt"
;FEAT_EFFECTS equ FEAT_EFFECTVIBRATO||FEAT_EFFECTFSHIFT
;
; RMT ZeroPage addresses
.zpvar p_tis .word
p_instrstable = p_tis
.zpvar p_trackslbstable .word
.zpvar p_trackshbstable .word
.zpvar p_song .word
.zpvar ns .word
.zpvar nr .word
.zpvar nt .byte
.zpvar reg1 .byte
.zpvar reg2 .byte
.zpvar reg3 .byte
.zpvar tmp .byte
.zpvar v_audctl .byte ; de-self-modification vars
.zpvar v_ainstrspeed .byte
.zpvar v_maxtracklen .byte
.zpvar v_abeat .byte
.zpvar v_bspeed .byte
.zpvar v_speed .byte
.zpvar RMTSFXVOLUME .byte
; MOVED TO lumber.asm
; org PLAYER-$400+$e0
;track_variables
;trackn_db .ds TRACKS
;trackn_hb .ds TRACKS
;trackn_idx .ds TRACKS
;trackn_pause .ds TRACKS
;trackn_note .ds TRACKS
;trackn_volume .ds TRACKS
;trackn_distor .ds TRACKS
;trackn_shiftfrq .ds TRACKS
;trackn_instrx2 .ds TRACKS
;trackn_instrdb .ds TRACKS
;trackn_instrhb .ds TRACKS
;trackn_instridx .ds TRACKS
;trackn_instrlen .ds TRACKS
;trackn_instrlop .ds TRACKS
;trackn_instrreachend .ds TRACKS
;trackn_volumeslidedepth .ds TRACKS
;trackn_volumeslidevalue .ds TRACKS
;trackn_effdelay .ds TRACKS
;trackn_effvibratoa .ds TRACKS
;trackn_effshift .ds TRACKS
;trackn_tabletypespeed .ds TRACKS
;trackn_tablenote .ds TRACKS
;trackn_tablea .ds TRACKS
;trackn_tableend .ds TRACKS
;trackn_tablelop .ds TRACKS
;trackn_tablespeeda .ds TRACKS
;trackn_command .ds TRACKS
;trackn_filter .ds TRACKS
;trackn_audf .ds TRACKS
;trackn_audc .ds TRACKS
;trackn_audctl .ds TRACKS
;v_aspeed .ds 1
;track_endvariables
INSTRPAR equ 12
tabbeganddistor
dta frqtabpure-frqtab,$00
dta frqtabpure-frqtab,$20
dta frqtabpure-frqtab,$40
dta frqtabbass1-frqtab,$c0
dta frqtabpure-frqtab,$80
dta frqtabpure-frqtab,$a0
dta frqtabbass1-frqtab,$c0
dta frqtabbass2-frqtab,$c0
vibtabbeg dta 0,vib1-vib0,vib2-vib0,vib3-vib0
vib0 dta 0
vib1 dta 1,-1,-1,1
vib2 dta 1,0,-1,-1,0,1
vib3 dta 1,1,0,-1,-1,-1,-1,0,1,1
vibtabnext
dta vib0-vib0+0
dta vib1-vib0+1,vib1-vib0+2,vib1-vib0+3,vib1-vib0+0
dta vib2-vib0+1,vib2-vib0+2,vib2-vib0+3,vib2-vib0+4,vib2-vib0+5,vib2-vib0+0
dta vib3-vib0+1,vib3-vib0+2,vib3-vib0+3,vib3-vib0+4,vib3-vib0+5,vib3-vib0+6,vib3-vib0+7,vib3-vib0+8,vib3-vib0+9,vib3-vib0+0
.align $100
frqtab
ERT [<frqtab]!=0 ;* frqtab must begin at the memory page bound! (i.e. $..00 address)
frqtabbass1
dta $BF,$B6,$AA,$A1,$98,$8F,$89,$80,$F2,$E6,$DA,$CE,$BF,$B6,$AA,$A1
dta $98,$8F,$89,$80,$7A,$71,$6B,$65,$5F,$5C,$56,$50,$4D,$47,$44,$3E
dta $3C,$38,$35,$32,$2F,$2D,$2A,$28,$25,$23,$21,$1F,$1D,$1C,$1A,$18
dta $17,$16,$14,$13,$12,$11,$10,$0F,$0E,$0D,$0C,$0B,$0A,$09,$08,$07
frqtabbass2
dta $FF,$F1,$E4,$D8,$CA,$C0,$B5,$AB,$A2,$99,$8E,$87,$7F,$79,$73,$70
dta $66,$61,$5A,$55,$52,$4B,$48,$43,$3F,$3C,$39,$37,$33,$30,$2D,$2A
dta $28,$25,$24,$21,$1F,$1E,$1C,$1B,$19,$17,$16,$15,$13,$12,$11,$10
dta $0F,$0E,$0D,$0C,$0B,$0A,$09,$08,$07,$06,$05,$04,$03,$02,$01,$00
frqtabpure
dta $F3,$E6,$D9,$CC,$C1,$B5,$AD,$A2,$99,$90,$88,$80,$79,$72,$6C,$66
dta $60,$5B,$55,$51,$4C,$48,$44,$40,$3C,$39,$35,$32,$2F,$2D,$2A,$28
dta $25,$23,$21,$1F,$1D,$1C,$1A,$18,$17,$16,$14,$13,$12,$11,$10,$0F
dta $0E,$0D,$0C,$0B,$0A,$09,$08,$07,$06,$05,$04,$03,$02,$01,$00,$00
.align $100
volumetab
dta $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
dta $00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01,$01,$01,$01,$01
dta $00,$00,$00,$00,$01,$01,$01,$01,$01,$01,$01,$01,$02,$02,$02,$02
dta $00,$00,$00,$01,$01,$01,$01,$01,$02,$02,$02,$02,$02,$03,$03,$03
dta $00,$00,$01,$01,$01,$01,$02,$02,$02,$02,$03,$03,$03,$03,$04,$04
dta $00,$00,$01,$01,$01,$02,$02,$02,$03,$03,$03,$04,$04,$04,$05,$05
dta $00,$00,$01,$01,$02,$02,$02,$03,$03,$04,$04,$04,$05,$05,$06,$06
dta $00,$00,$01,$01,$02,$02,$03,$03,$04,$04,$05,$05,$06,$06,$07,$07
dta $00,$01,$01,$02,$02,$03,$03,$04,$04,$05,$05,$06,$06,$07,$07,$08
dta $00,$01,$01,$02,$02,$03,$04,$04,$05,$05,$06,$07,$07,$08,$08,$09
dta $00,$01,$01,$02,$03,$03,$04,$05,$05,$06,$07,$07,$08,$09,$09,$0A
dta $00,$01,$01,$02,$03,$04,$04,$05,$06,$07,$07,$08,$09,$0A,$0A,$0B
dta $00,$01,$02,$02,$03,$04,$05,$06,$06,$07,$08,$09,$0A,$0A,$0B,$0C
dta $00,$01,$02,$03,$03,$04,$05,$06,$07,$08,$09,$0A,$0A,$0B,$0C,$0D
dta $00,$01,$02,$03,$04,$05,$06,$07,$07,$08,$09,$0A,$0B,$0C,$0D,$0E
dta $00,$01,$02,$03,$04,$05,$06,$07,$08,$09,$0A,$0B,$0C,$0D,$0E,$0F
;*
;* Set of RMT main vectors:
;*
RASTERMUSICTRACKER
jmp rmt_init
jmp rmt_play
jmp rmt_p3
jmp rmt_silence
jmp SetPokey
jmp rmt_sfx ;* A=note(0,..,60),X=channel(0,..,3 or 0,..,7),Y=instrument*2(0,2,4,..,126)
rmt_init
stx ns
sty ns+1
pha
ldy #track_endvariables-track_variables
lda #0
ri0 sta track_variables-1,y
dey
bne ri0
ldy #4
lda (ns),y
sta v_maxtracklen
iny
lda (ns),y
sta v_speed
ldy #8
ri1 lda (ns),y
sta p_tis-8,y
iny
cpy #8+8
bne ri1
pla
pha
asl @
asl @
clc
adc p_song
sta p_song
pla
php
and #$c0
asl @
rol @
rol @
plp
adc p_song+1
sta p_song+1
jsr GetSongLineTrackLineInitOfNewSetInstrumentsOnlyRmtp3
rmt_silence
lda #0
sta $d208
sta $d208+$10
ldy #3
sty $d20f
sty $d20f+$10
ldy #8
si1 sta $d200,y
sta $d200+$10,y
dey
bpl si1
lda #FEAT_INSTRSPEED
rts
GetSongLineTrackLineInitOfNewSetInstrumentsOnlyRmtp3
GetSongLine
ldx #0
stx v_abeat
nn0
nn1 txa
tay
lda (p_song),y
cmp #$fe
bcs nn2
tay
lda (p_trackslbstable),y
sta trackn_db,x
lda (p_trackshbstable),y
nn1a sta trackn_hb,x
lda #0
sta trackn_idx,x
lda #1
nn1a2 sta trackn_pause,x
lda #$80
sta trackn_instrx2,x
inx
xtracks01 cpx #TRACKS
bne nn1
lda p_song
clc
xtracks02 adc #TRACKS
sta p_song
bcc GetTrackLine
inc p_song+1
nn1b
jmp GetTrackLine
nn2
beq nn3
nn2a
lda #0
beq nn1a2
nn3
ldy #2
lda (p_song),y
tax
iny
lda (p_song),y
sta p_song+1
stx p_song
ldx #0
beq nn0
GetTrackLine
oo0
oo0a
lda v_speed
sta v_bspeed
ldx #-1
oo1
inx
dec trackn_pause,x
bne oo1x
oo1b
lda trackn_db,x
sta ns
lda trackn_hb,x
sta ns+1
oo1i
ldy trackn_idx,x
inc trackn_idx,x
lda (ns),y
sta reg1
and #$3f
cmp #61
beq oo1a
bcs oo2
sta trackn_note,x
iny
lda (ns),y
lsr @
and #$3f*2
sta trackn_instrx2,x
oo1a
lda #1
sta trackn_pause,x
ldy trackn_idx,x
inc trackn_idx,x
lda (ns),y
lsr @
ror reg1
lsr @
ror reg1
lda reg1
and #$f0
sta trackn_volume,x
oo1x
xtracks03sub1 cpx #TRACKS-1
bne oo1
lda v_bspeed
sta v_speed
sta v_aspeed
jmp InitOfNewSetInstrumentsOnly
oo2
cmp #63
beq oo63
lda reg1
and #$c0
beq oo62_b
asl @
rol @
rol @
sta trackn_pause,x
jmp oo1x
oo62_b
iny
lda (ns),y
sta trackn_pause,x
inc trackn_idx,x
jmp oo1x
oo63
lda reg1
bmi oo63_1X
iny
lda (ns),y
sta v_bspeed
inc trackn_idx,x
jmp oo1i
oo63_1X
cmp #255
beq oo63_11
iny
lda (ns),y
sta trackn_idx,x
jmp oo1i
oo63_11
jmp GetSongLine
p2xrmtp3 jmp rmt_p3
p2x0 dex
bmi p2xrmtp3
InitOfNewSetInstrumentsOnly
p2x1 ldy trackn_instrx2,x
bmi p2x0
jsr SetUpInstrumentY2
jmp p2x0
rmt_sfx
sta trackn_note,x
lda RMTSFXVOLUME ;* sfx note volume*16
;* label for sfx note volume parameter overwriting
sta trackn_volume,x
SetUpInstrumentY2
lda (p_instrstable),y
sta trackn_instrdb,x
sta nt
iny
lda (p_instrstable),y
sta trackn_instrhb,x
sta nt+1
lda #1
sta trackn_filter,x
tay
lda (nt),y
sta trackn_tablelop,x
iny
lda (nt),y
sta trackn_instrlen,x
iny
lda (nt),y
sta trackn_instrlop,x
iny
lda (nt),y
sta trackn_tabletypespeed,x
sta trackn_tablespeeda,x
iny
lda (nt),y
sta trackn_audctl,x
iny
lda (nt),y
sta trackn_volumeslidedepth,x
ldy #8
lda (nt),y
sta trackn_effdelay,x
iny
lda (nt),y
tay
lda vibtabbeg,y
sta trackn_effvibratoa,x
ldy #10
lda (nt),y
sta trackn_effshift,x
lda #128
sta trackn_volumeslidevalue,x
sta trackn_instrx2,x
asl @
sta trackn_instrreachend,x
sta trackn_shiftfrq,x
tay
lda (nt),y
sta trackn_tableend,x
adc #0
sta trackn_instridx,x
lda #INSTRPAR
sta trackn_tablea,x
tay
lda (nt),y
sta trackn_tablenote,x
xata_rtshere
rts
rmt_play
rmt_p0
jsr SetPokey
rmt_p1
rmt_p2
dec v_aspeed
bne rmt_p3
inc v_abeat
lda v_abeat
cmp v_maxtracklen
beq p2o3
jmp GetTrackLine
p2o3
jmp GetSongLineTrackLineInitOfNewSetInstrumentsOnlyRmtp3
go_ppnext jmp ppnext
rmt_p3
lda #>frqtab
sta nr+1
xtracks05sub1 ldx #TRACKS-1
pp1
lda trackn_instrhb,x
beq go_ppnext
sta ns+1
lda trackn_instrdb,x
sta ns
ldy trackn_instridx,x
lda (ns),y
sta reg1
iny
lda (ns),y
sta reg2
iny
lda (ns),y
sta reg3
iny
tya
cmp trackn_instrlen,x
bcc pp2
beq pp2
lda #$80
sta trackn_instrreachend,x
pp1b
lda trackn_instrlop,x
pp2 sta trackn_instridx,x
lda reg1
and #$0f
ora trackn_volume,x
tay
lda volumetab,y
sta tmp
lda reg2
and #$0e
tay
lda tabbeganddistor,y
sta nr
lda tmp
ora tabbeganddistor+1,y
sta trackn_audc,x
InstrumentsEffects
lda trackn_effdelay,x
beq ei2
cmp #1
bne ei1
lda trackn_shiftfrq,x
clc
adc trackn_effshift,x
clc
ldy trackn_effvibratoa,x
adc vib0,y
sta trackn_shiftfrq,x
lda vibtabnext,y
sta trackn_effvibratoa,x
jmp ei2
ei1
dec trackn_effdelay,x
ei2
ldy trackn_tableend,x
cpy #INSTRPAR+1
bcc ei3
lda trackn_tablespeeda,x
bpl ei2f
ei2c
tya
cmp trackn_tablea,x
bne ei2c2
lda trackn_tablelop,x
sta trackn_tablea,x
bne ei2a
ei2c2
inc trackn_tablea,x
ei2a
lda trackn_instrdb,x
sta nt
lda trackn_instrhb,x
sta nt+1
ldy trackn_tablea,x
lda (nt),y
sta trackn_tablenote,x
lda trackn_tabletypespeed,x
ei2f
sec
sbc #1
sta trackn_tablespeeda,x
ei3
lda trackn_instrreachend,x
bpl ei4
lda trackn_volume,x
beq ei4
tay
lda trackn_volumeslidevalue,x
clc
adc trackn_volumeslidedepth,x
sta trackn_volumeslidevalue,x
bcc ei4
tya
sbc #16
sta trackn_volume,x
ei4
lda reg2
sta trackn_command,x
and #$70
beq cmd0
cmd1
lda reg3
jmp cmd0c
cmd2
cmd3
cmd4
cmd5
cmd6
cmd7
cmd0
lda trackn_note,x
clc
adc reg3
cmd0a
clc
adc trackn_tablenote,x
cmp #61
bcc cmd0a1
lda #0
sta trackn_audc,x
lda #63
cmd0a1
tay
lda (nr),y
clc
adc trackn_shiftfrq,x
cmd0c
sta trackn_audf,x
pp9
ppnext
dex
bmi rmt_p4
jmp pp1
rmt_p4
lda trackn_audctl+0
ora trackn_audctl+1
ora trackn_audctl+2
ora trackn_audctl+3
tax
qq1
stx v_audctl
lda trackn_command+0
bpl qq2
lda trackn_audc+0
and #$0f
beq qq2
lda trackn_audf+0
clc
adc trackn_filter+0
sta trackn_audf+2
lda #0
sta trackn_audc+2
qq1a
txa
ora #4
tax
qq2
lda trackn_command+1
bpl qq3
lda trackn_audc+1
and #$0f
beq qq3
lda trackn_audf+1
clc
adc trackn_filter+1
sta trackn_audf+3
lda #0
sta trackn_audc+3
qq2a
txa
ora #2
tax
qq3
; cpx v_audctl
; bne qq5
;qq5
stx v_audctl
rmt_p5
; lda v_ainstrspeed
.IF TARGET = 800
ldx #$10 ; pseudo stereo
bne SetPokey_OffsetX ; pseudo stereo
.ELIF TARGET = 5200
rts
.ENDIF
SetPokey
ldx #0 ; POKEY registers offset (for stereo)
SetPokey_OffsetX
lda trackn_audf+0
sta AUDF1,x
lda trackn_audc+0
sta AUDC1,x
lda trackn_audf+1
sta AUDF2,x
lda trackn_audc+1
sta AUDC2,x
lda trackn_audf+2
sta AUDF3,x
lda trackn_audc+2
sta AUDC3,x
lda trackn_audf+3
sta AUDF4,x
lda trackn_audc+3
sta AUDC4,x
lda v_audctl
sta AUDCTL,x
rts
RMTPLAYEREND
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+8
View File
@@ -0,0 +1,8 @@
00 - title
07 - death
0A - in game (old)
0F - count down
11 - count down (pim 1)
13 - count down (pim 2)
15 - high score
1A - in game (new)
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+9
View File
@@ -0,0 +1,9 @@
00 - title
0D - death
10 - in game (old)
15 - count down
17 - high score
1C - in game (new)
0C - count down 1
0D - count down 2
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+5
View File
@@ -0,0 +1,5 @@
00 - title
0D - death
10 - count down
12 - high score
17 - in game
BIN
View File
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB