Commit Graph

131 Commits

Author SHA1 Message Date
Lucas Scharenbroich 2966b1052b Add rendering path for masked dynamic tiles 2021-10-07 23:54:45 -05:00
Lucas Scharenbroich 59f9e61559 Compensate for the fact the Tiled animation IDs are one off of the map TileIDs 2021-10-07 21:57:56 -05:00
Lucas Scharenbroich d5421afdbd Fix off-by-one issue in tile IDs and make the entry point consistent in the code field generator 2021-10-07 18:33:06 -05:00
Lucas Scharenbroich 4006f76c02 Fix bcc/bcs typo when initializing timers 2021-10-07 16:38:20 -05:00
Lucas Scharenbroich 87ded17e20 Initial Tiled tile animation export support
* Tiled tile animations read from TSX files
* Hooks for initialization generated by the tiled export tool
* Animated tiles implements with dynamic tiles backed by 2KB of direct
  page space in Bank 00
* Animation resolution limited to 1/60th incremenents

TODO
* Fix crasher in the _DoScriptSequ timer callback
* Fix single-line of garbage on the top line of the dynamic tiles
2021-10-06 07:10:09 -05:00
Lucas Scharenbroich 7d7a54a731 Update tiled export to create code to start timer scripts for animated tiles 2021-09-05 17:40:34 -05:00
Lucas Scharenbroich 2ef67e0a1c Sample project to demonstrate fringe + base tiles 2021-09-02 16:53:21 -05:00
Lucas Scharenbroich a82c1248db Add untested framework for handling fringe tile rendering 2021-08-30 22:14:04 -05:00
Lucas Scharenbroich 5cfb32c4b1 Tweak ignore files 2021-08-30 22:13:24 -05:00
Lucas Scharenbroich a72ac83b12 Add skeleton for fatdog RPG demo 2021-08-30 20:31:02 -05:00
Lucas Scharenbroich 529e4a98bc Add a tool to export fatdog's images with embedded palette and SCB information 2021-08-28 16:44:14 -05:00
Lucas Scharenbroich 4d6b97ed2c Small PoC to validate animation timers working 2021-08-26 21:22:42 -05:00
Lucas Scharenbroich f55192436a Final reorg; all projects build into a unified disk image for testing 2021-08-26 17:15:44 -05:00
Lucas Scharenbroich dc8697af30 Add separate folder for different demos 2021-08-26 16:46:01 -05:00
Lucas Scharenbroich dcf93892a7 Reorg some more files and tweak paths 2021-08-26 16:45:23 -05:00
Lucas Scharenbroich 2e11ba74ee Rename memory init file 2021-08-26 16:43:14 -05:00
Lucas Scharenbroich 02eff2c612 Move all assets into shell demo 2021-08-26 16:30:14 -05:00
Lucas Scharenbroich 1263375095 Move test app into its own demo folder 2021-08-26 16:24:46 -05:00
Lucas Scharenbroich 69c6104742 Small initialization and jsr/jsl updates 2021-08-26 16:12:08 -05:00
Lucas Scharenbroich 4af66fa13a Fix initialization order 2021-08-26 09:45:40 -05:00
Lucas Scharenbroich fe18759759 Refactor original demo driver to use GTE Core; move functions around 2021-08-26 08:52:43 -05:00
Lucas Scharenbroich d261745347 Add a couple of fatdog image assets 2021-08-25 09:38:25 -05:00
Lucas Scharenbroich 7d5f7aa721 Refactor GTE Core to be included as an independent Segment in other projects 2021-08-25 09:38:02 -05:00
Lucas Scharenbroich 023332dfe6 Update fatdog demo to use shared GTE Core 2021-08-25 09:35:54 -05:00
Lucas Scharenbroich 99e4505a34 Consolidate all of the project macros into one folder; merlin32 only takes one macro path on the command line 2021-08-25 09:34:26 -05:00
Lucas Scharenbroich 23f7e5b0fb Fully flesh out Script execution implementation 2021-08-25 09:28:53 -05:00
Lucas Scharenbroich 740a0f260d Fix bug that causes one-shot timers to loop forever 2021-08-24 15:58:36 -05:00
Lucas Scharenbroich 48bb361730 Early peek at the Timers/Scripting engine 2021-08-24 15:45:33 -05:00
Lucas Scharenbroich 31ab86b7fc Wire up skeleton build framework; prove 2MG image in the emu/ folder as a buld target 2021-08-21 16:59:43 -05:00
Lucas Scharenbroich 0b4373469e Use new sprite sheet from fatdog; wire up MrSprite to generate sprite code for now 2021-08-21 14:25:44 -05:00
Lucas Scharenbroich a0055cee46 Add demo assets from Slack thread 2021-08-21 10:01:35 -05:00
Lucas Scharenbroich 238d2f0a6f Fix banking bug and enable BG1 tile maps 2021-08-20 20:20:47 -05:00
Lucas Scharenbroich e607612344 Add initial build-out of BG1 tile map support 2021-08-19 01:22:36 -05:00
Lucas Scharenbroich 4c5b090afe Fix crashing bug when replacing BG1 tiles with BG0 tiles 2021-08-19 01:21:37 -05:00
Lucas Scharenbroich 07ac2b017f Fix indexing error in Tiled export. Solid tiles are no longer marked as masked 2021-08-19 00:47:34 -05:00
Lucas Scharenbroich 0650c7dddc Fix package description 2021-08-19 00:03:36 -05:00
Lucas Scharenbroich c6491dc38c Remove binary file 2021-08-18 21:30:00 -05:00
Lucas Scharenbroich b382c20147 Create a skeleton for experimenting with Pa-Man playfields 2021-08-18 21:29:02 -05:00
Lucas Scharenbroich dfb2d10edf Clear the second background to solid tile 2021-08-17 16:23:55 -05:00
Lucas Scharenbroich 4609b5c4b9 Identify tiles that should be masked from Tiled maps 2021-08-17 16:23:23 -05:00
Lucas Scharenbroich aaac50cf8c Fix some script names that did not get changed 2021-08-17 09:47:01 -05:00
Lucas Scharenbroich 55e15aa894 Restore full tile dispatcher code 2021-08-17 09:46:45 -05:00
Lucas Scharenbroich b35a2c1e6e Complete masked tile rendering implementation
The core data tables were reworked to pre-reverse all of the
entries to directly match the right-to-left ordering of the code
fields.  This simplified some code but was required for register
reuse in the masked tile renderer.

Also fixed several offset calculation issues in the masked tile
renderer.
2021-08-17 09:33:27 -05:00
Lucas Scharenbroich 5ad95f4609 Use 8-bit accumulator to read softswitches 2021-08-15 09:25:42 -05:00
Lucas Scharenbroich 2540359f60 Fix plx/pla ordering in tile dispatcher 2021-08-14 21:56:08 -05:00
Lucas Scharenbroich 1492ac3b36 Map Tiled Horizontal and Vertical flip flags onto GTE equivalents 2021-08-14 21:22:21 -05:00
Lucas Scharenbroich 232f94d30e Fix layer comparison function 2021-08-14 21:09:35 -05:00
Lucas Scharenbroich d9133a2170 Switch to using exported Tiled project assets 2021-08-14 20:58:37 -05:00
Lucas Scharenbroich 44ee61a3f3 Improve export of Tiled projects. Does level data and tileset export in one command now 2021-08-14 20:57:00 -05:00
Lucas Scharenbroich 191094e7e6 Update Tiled project to include a second layer, transparent color on tiles and better names 2021-08-14 20:56:19 -05:00