Lucas Scharenbroich
44cbba3f23
Add in new variants for sprite and priority tiles
2021-11-19 15:07:43 -06:00
Lucas Scharenbroich
5fdb4bcf06
Fix transposed argument in macro definition; dynamic tile + sprite now working
2021-11-19 13:26:19 -06:00
Lucas Scharenbroich
b4871efe8f
Streamlining tile blitter macros
2021-11-19 13:00:59 -06:00
Lucas Scharenbroich
4c31a0d056
Reorg of exception handling code in the core blitter
...
* Moved V-flag handling outside of the 32-byte exception handler
* Switched relative branches to JMP to save a cycle per word
* Updated macros to create a full code snippet instead of assuming
certain values exist in the exception handler buffer
2021-11-19 10:24:09 -06:00
Lucas Scharenbroich
0a9eb76ab5
Checkpoint; have old Dynamic Tile Renderers working
2021-11-18 16:23:44 -06:00
Lucas Scharenbroich
ba76b0047c
Checkpoint on dynamic tile blitters
2021-11-18 15:36:36 -06:00
Lucas Scharenbroich
9a6eb45b20
Add Masked Sprite Tile blitter and fix some minor issues with the macro
2021-11-15 21:23:15 -06:00
Lucas Scharenbroich
d268b34e76
Get masking working with tile map output again
2021-11-15 16:41:01 -06:00
Lucas Scharenbroich
976ab3163b
Fix offset for filling wrap-around byte in BG1
2021-11-15 12:32:38 -06:00
Lucas Scharenbroich
dfd5549918
Sync up with current WIP
2021-11-15 12:23:38 -06:00
Lucas Scharenbroich
bcf8820fbe
Better palette and mask handling
2021-11-14 16:30:16 -06:00
Lucas Scharenbroich
cc8e03e6d3
Add SCB binding infrastructure
2021-11-13 19:45:27 -06:00
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