Commit Graph

555 Commits

Author SHA1 Message Date
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
Lucas Scharenbroich
ce51563913 Fix small code issues and sync up tool output with code changes. Maps render again with solid tiles 2021-08-13 11:57:41 -05:00
Lucas Scharenbroich
652729081e Stub in more tile rendering functions; does not crash but renders incorrectly 2021-08-13 11:38:06 -05:00
Lucas Scharenbroich
90124b04bc First draft of masked tile support
Need to have the called provide a copy of the base line address to the
masked drawing code and need to verify that the JTable entries are
ordered the same way as the byte offset so the same register can be used
to load the JMP addresses and patch in the LDA (DP),y instructions.
2021-08-13 10:05:28 -05:00
Lucas Scharenbroich
e3cb742626 Fix tile rendering
This is not quite correct yet.  IT appears that two rows or columns are
drawn on the edges when only a single solumn or row is necessary.  Also,
this code is based on the old GTE codebase, so the initial rectangle for
rendering tiles is width+1, height+1. This can be improved.
2021-08-10 07:59:14 -05:00
Lucas Scharenbroich
b9fced46cd Debugging overlay to show variables on screen 2021-08-10 07:58:09 -05:00
Lucas Scharenbroich
97d05ee926 Fix wrong variable 2021-08-09 09:17:25 -05:00
Lucas Scharenbroich
d3b21a91b9 Fix full-screen tile refreshes; incremental tile drawing crashes 2021-08-09 06:08:09 -05:00
Lucas Scharenbroich
8d34da6c26 Add the old SMB keyboard read function to detect key-down instead of key-press 2021-08-07 21:22:37 -05:00
Lucas Scharenbroich
8d31720e1c Add an extra column when coordinates are not tile-aligned 2021-08-07 21:21:28 -05:00
Lucas Scharenbroich
8ed851cb33 First pass at importing tilesets into GTE 2021-08-06 16:35:47 -05:00
Lucas Scharenbroich
b8d4ae780b Fix crashing on horizontal tile map rendering; still some off-by-one errors 2021-08-06 15:57:03 -05:00
Lucas Scharenbroich
39639d54b5 Fix some small bugs with tile rendering; tiles display but crash after scrolling 8 bytes 2021-08-06 14:42:18 -05:00
Lucas Scharenbroich
d01791b440 Initialize more direct page variables and provide a flag to turn off sound 2021-08-06 14:41:23 -05:00
Lucas Scharenbroich
c6f6001e8f Pull exported Tiled level data into the application; does not display anything yet 2021-08-05 21:19:43 -05:00
Lucas Scharenbroich
72ee2e7bc0 First version of Tiled Map import tool 2021-08-05 21:19:02 -05:00
Lucas Scharenbroich
d0e52fcc37 Rename PNG conversion tool 2021-08-05 20:26:18 -05:00
Lucas Scharenbroich
c6bc28e907 Some Tiled project files for testing 2021-08-05 20:24:42 -05:00
Lucas Scharenbroich
1d17b802ad Add basic tilemap support back in 2021-08-05 08:20:38 -05:00
Lucas Scharenbroich
19070fa194 Reformat 2021-07-30 08:01:46 -05:00
Lucas Scharenbroich
56b5b69efa Move rotation data to its own segment 2021-07-30 08:01:16 -05:00
Lucas Scharenbroich
1936a0898c Sync up 2021-07-29 05:35:09 -05:00
Lucas Scharenbroich
65af5cbf26 Improve address generation 2021-07-27 16:28:18 -05:00
Lucas Scharenbroich
39e3fa9364 Fix an offset bug 2021-07-27 09:45:28 -05:00
Lucas Scharenbroich
87e46d95f5 Rotation! 2021-07-24 09:00:52 -05:00
Lucas Scharenbroich
cede4c69b4 Add timer infrastructure and two small examples 2021-07-20 12:42:21 -05:00
Lucas Scharenbroich
1fcd4589f7 Add horizontal BG1 offset support; frame lock demo to 60 fps 2021-07-20 00:02:20 -05:00