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
a82c1248db
Add untested framework for handling fringe tile rendering
2021-08-30 22:14:04 -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
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
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
7d5f7aa721
Refactor GTE Core to be included as an independent Segment in other projects
2021-08-25 09:38:02 -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
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
4609b5c4b9
Identify tiles that should be masked from Tiled maps
2021-08-17 16:23:23 -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
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
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
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
Lucas Scharenbroich
9cdba9a537
Add routine to do horizontal displacement of BG1
2021-07-19 22:52:42 -05:00
Lucas Scharenbroich
c5eb84ea37
Get the PEI Slammer working for exposing shadowed writes
2021-07-19 22:42:51 -05:00
Lucas Scharenbroich
d9e3ee14e8
Add small header to converted image data
2021-07-19 14:18:02 -05:00
Lucas Scharenbroich
9d33ff3000
Add file information metadata for cadius to use when adding assets to the disk image
2021-07-18 15:11:16 -05:00
Lucas Scharenbroich
760580d733
Tweak file loading functions
2021-07-18 08:59:19 -05:00
Lucas Scharenbroich
160a9afafb
Add proper handling of wraparound in vertical positioning
2021-07-17 21:00:46 -05:00
Lucas Scharenbroich
4b390fef20
Fix extra push in mixed rendering
2021-07-17 20:38:07 -05:00
Lucas Scharenbroich
bdf885dafd
First implementation of BG0/BG1 mixed exception handling
2021-07-16 23:09:08 -05:00
Lucas Scharenbroich
6fc772ce78
Sorted out BG1 edge artifacts
2021-07-16 17:05:29 -05:00
Lucas Scharenbroich
f2d82f810d
Very simple asset pipeline to transform PNG impage into raw binary files to load in the engine
2021-07-16 13:09:16 -05:00
Lucas Scharenbroich
62233d4abc
Remove dead code and fix right edge of BG1 rendering
2021-07-16 08:38:14 -05:00
Lucas Scharenbroich
abfcde54c2
Initial addition of BG1 support
2021-07-16 00:34:58 -05:00
Lucas Scharenbroich
63bfe5e8e7
Resolve horizontal scrolling issue with PEA code
2021-07-15 21:00:35 -05:00
Lucas Scharenbroich
26e39e3bfd
Horizontal scrolling no longer crashes; still have incorrect edge rendering
2021-07-15 15:30:24 -05:00
Lucas Scharenbroich
b6fadedfc7
WIP of fixing horizontal scrolling
2021-07-15 13:53:53 -05:00
Lucas Scharenbroich
50f5da5608
WIP on BG0X positioning; fix tile horizonal calculation
2021-07-15 11:01:42 -05:00
Lucas Scharenbroich
be446589b0
Fix horizaontal ranges in actions
2021-07-14 15:23:49 -05:00
Lucas Scharenbroich
e14a8ec36f
Add a simple benchmark
2021-07-12 00:16:18 -05:00
Lucas Scharenbroich
e03859406e
Fix indexing issue with calculating a tile's top line
2021-07-10 20:46:32 -05:00
Lucas Scharenbroich
d1e59e81ac
Fix off-by-one error when rendering tiles
2021-07-10 20:43:55 -05:00
Lucas Scharenbroich
b5fa2d9266
Fix comment typos
2021-07-10 20:35:27 -05:00
Lucas Scharenbroich
e4d480d2be
Fix addressing issue in font routine and data-overwrite bug; Render no longer crashes!
2021-07-10 17:15:35 -05:00
Lucas Scharenbroich
ab9a2682db
Fix table initialization and bank preservateion in _BltRange
2021-07-10 15:38:42 -05:00
Lucas Scharenbroich
469e8bb74a
Add all minimal function in place; not onto debugging
2021-07-09 15:38:32 -05:00
Lucas Scharenbroich
5d713caf5c
More parts of the render pipeline in place
2021-07-09 14:18:49 -05:00
Lucas Scharenbroich
7ee1ddb604
Fix cimpilation errors
2021-07-08 08:17:38 -05:00
Lucas Scharenbroich
8ec31631eb
Split up source code a bit more; work toward completing render pipeline
2021-07-08 07:46:35 -05:00
Lucas Scharenbroich
6b32d61fa9
Small optimization to save 1 cycle per line
2021-07-07 21:13:18 -05:00
Lucas Scharenbroich
39f61087ce
Fix stack initialization bug
2021-07-07 16:55:41 -05:00
Lucas Scharenbroich
92611281a4
Implemented a PEI slammer that can break for interrupt handling
2021-07-07 16:36:44 -05:00
Lucas Scharenbroich
d1557437c5
Init tile sizes; fix merlin bug and fix bad jump table values
2021-03-24 06:37:48 -05:00
Lucas Scharenbroich
89c9a5c791
Store scrren width and height in tiles
2021-03-24 06:36:47 -05:00
Lucas Scharenbroich
04f202c9f8
Allow dynamic user selection of playfield size
2021-03-21 23:44:33 -05:00
Lucas Scharenbroich
cfa1bd6f61
Refactor screen init to allow for all modes
2021-03-21 23:23:52 -05:00
Lucas Scharenbroich
50a3f27a9a
Reorg files; focus on S16 artifact
2021-03-21 21:59:54 -05:00
Lucas Scharenbroich
5e757f3cc5
More play-around
2020-08-23 00:25:39 -05:00
Lucas Scharenbroich
30cb545e5e
Update skeleon to show a pictire on-screen
2020-08-19 00:35:30 -05:00
Lucas Scharenbroich
3ba1564719
Add old docs about theoretical GTE blitter core
2020-08-16 16:37:23 -05:00
Lucas Scharenbroich
9efebd3382
Setting up basic xdev environment
2018-08-03 22:32:14 -05:00