Lucas Scharenbroich
b87e2a8d33
Fix register assignments for dynamic tile renderer
2021-11-13 19:44:30 -06:00
Lucas Scharenbroich
596777da8d
Enable non-sprite, solid dynamic tiles
2021-11-12 15:11:29 -06:00
Lucas Scharenbroich
bab57f6e43
Add VSYNC toggle
2021-11-12 11:27:43 -06:00
Lucas Scharenbroich
45ad44f1a6
Update Tiled assets
2021-11-12 09:08:18 -06:00
Lucas Scharenbroich
de5bdc6041
Rename tile blitters to match internal bit fields and add in the solid prioity blitter
2021-11-12 09:07:51 -06:00
Lucas Scharenbroich
55484fd3e4
Regenerate map and add some priority tiles for testing
2021-11-12 09:06:48 -06:00
Lucas Scharenbroich
ab16035c0d
Create and pass options to png2iigs subroutines
2021-11-12 09:05:55 -06:00
Lucas Scharenbroich
6c5b283ae9
Merge pull request #2 from lscharen/multi-tile-sprites
...
Multi tile sprites (1/N)
2021-11-11 22:26:35 -06:00
Lucas Scharenbroich
673b97419a
Clear sprite flag when erasing sprite
2021-11-11 22:22:10 -06:00
Lucas Scharenbroich
dec9a3d106
Fix fast-path return value in PushDirtyTile and correct handling of TS_SPRITE_FLAG
2021-11-11 22:10:54 -06:00
Lucas Scharenbroich
678c9a0563
Initial shell of generalize sprite size support; just for marking the dirty tiles
2021-11-11 17:06:38 -06:00
Lucas Scharenbroich
13393965b3
Switch to the 256x128 tileset image
2021-11-02 22:01:31 -05:00
Lucas Scharenbroich
2f40c79ddf
Improve transparent / background color handling when generating tiles
2021-11-02 21:59:08 -05:00
Lucas Scharenbroich
3a5d2cb3ad
Merge pull request #1 from lscharen/20211020_sprite-and-tile-rewrite
...
20211020 sprite and tile rewrite
2021-11-01 23:47:30 -05:00
Lucas Scharenbroich
bb5f4493d9
Fully integration simple (8x8) sprites into the render pipeline
2021-11-01 23:36:53 -05:00
Lucas Scharenbroich
e83e8d8a0e
Update map assets
2021-10-31 15:44:31 -05:00
Lucas Scharenbroich
83ea7921ff
Switch to use Add/Update sprite and rely on Render to place sprites in frame
2021-10-31 15:44:03 -05:00
Lucas Scharenbroich
532af93538
Small update to add ability to specify a transparent color directly
2021-10-31 15:43:23 -05:00
Lucas Scharenbroich
631f40da23
Nearly complete integration of sprites into rendering function
2021-10-31 15:42:59 -05:00
Lucas Scharenbroich
8f0e82cb04
Update world map and tiles
2021-10-30 19:24:57 -05:00
Lucas Scharenbroich
2f73b9acf5
Small improvements to sprite prototype to fix dirty tiles getting out of sync
2021-10-30 19:24:23 -05:00
Lucas Scharenbroich
33280dc5c5
Add single-step and free-run controls to test harness
2021-10-29 11:12:58 -05:00
Lucas Scharenbroich
b1c11b09fc
Make the test sprite movement a bit more interesting
...
This results in trails being left on-screen and crashed after
a period of time. The emulator shows writes going to the
bank 01 I/O space ($01/$Cxxx) and there are occational garbage
words written to the screen.
2021-10-29 00:52:54 -05:00
Lucas Scharenbroich
b4155dc751
Expose the ApplyTiles subroutine
2021-10-29 00:52:29 -05:00
Lucas Scharenbroich
11bbe7be3d
Reference sprite updates that do not leave trails
2021-10-29 00:17:23 -05:00
Lucas Scharenbroich
9ecc262c58
First pass at validating erasing the sprite on update
2021-10-28 22:19:18 -05:00
Lucas Scharenbroich
0a7d9e15c7
Add external entry point to the erase function
2021-10-28 22:18:33 -05:00
Lucas Scharenbroich
7ec1b8bc29
Fix dumb initialization bug in sprite plane
2021-10-28 21:52:48 -05:00
Lucas Scharenbroich
4e46a6af85
WIP: manual sprite rendering showing on screen
2021-10-28 21:41:01 -05:00
Lucas Scharenbroich
2feb6f590b
Add address in sprite plane for tile rendering; use in tile dispatcher
2021-10-27 00:14:19 -05:00
Lucas Scharenbroich
cc18c67491
Expand tile blitter temp space
2021-10-27 00:11:13 -05:00
Lucas Scharenbroich
82c1a8e2e4
Remember to cacluate the tile address when adding to the dirty tile list
2021-10-26 21:34:38 -05:00
Lucas Scharenbroich
0366c1a0e0
Fix missing index in the dirty tile initializations
2021-10-26 21:21:08 -05:00
Lucas Scharenbroich
3f2a9bd8d4
Do not export BG0 tile descriptors ith the mask bit set if there is only one layer defined
2021-10-26 21:19:37 -05:00
Lucas Scharenbroich
3b8bf652e1
Continued bug fixing
...
* Missed an XBA to swap tile command bits into a proper index range
* Explicitly track the BASE_ADDR
* Fix some register overwriting
* Add an UpdateSprite method
2021-10-23 22:31:38 -05:00
Lucas Scharenbroich
160606bcc4
Remove ineffective debug command line arg
2021-10-23 22:29:34 -05:00
Lucas Scharenbroich
71327111ea
Remove unused package
2021-10-22 08:22:55 -05:00
Lucas Scharenbroich
494673416b
Fix several incorrect uses of internal API; work toward functional demo
2021-10-22 00:56:12 -05:00
Lucas Scharenbroich
7bf14d4ba8
Fix debug command line parameters
2021-10-22 00:53:33 -05:00
Lucas Scharenbroich
4e779e71d2
Tile rendering reorganization
...
This significantly simplifies the dispatch process by creating a
proper backing store for the tiles. Most values that were
calcualted on the fly are now stored as constants in the tile
store.
Also, all tile updated are run through the dirty tile list which
solved a checken-and-egg problem of which order to do sprites vs
new tiles and affords a lot of optimizations since tile rendering
is deferred and each tile is only drawn at most once per frame.
2021-10-21 08:50:07 -05:00
Lucas Scharenbroich
c4762888ed
Add brief readme to start documenting the internals of GTE
2021-10-21 08:47:17 -05:00
Lucas Scharenbroich
71fd9c29e3
Pull the sprite plane banks into the test build
2021-10-21 08:46:26 -05:00
Lucas Scharenbroich
d84ce1d8ed
Fix typo
2021-10-21 08:44:49 -05:00
Lucas Scharenbroich
cc6408b064
Add fixed banks of memory to hold the sprite plane
2021-10-21 08:44:08 -05:00
Lucas Scharenbroich
74f96138d5
Remove BG1 code to simplify the test harness
2021-10-13 17:45:25 -05:00
Lucas Scharenbroich
9dbdeb64fe
Ignore build products
2021-10-13 15:14:39 -05:00
Lucas Scharenbroich
25925c4b95
Sample project to focus on sprite development
2021-10-13 15:13:52 -05:00
Lucas Scharenbroich
5b276c5ace
Fix overlay implementation
2021-10-11 21:39:30 -05:00
Lucas Scharenbroich
4d224a92d9
Fix pre-shift bug in the tile address calculation
2021-10-11 16:47:38 -05:00
Lucas Scharenbroich
4338b64338
First cut at a non-trivial overlay. Pallettes and tile indexes still to be fixed
2021-10-11 14:09:38 -05:00