Commit Graph

54 Commits

Author SHA1 Message Date
Lucas Scharenbroich
a5af4c206c Add hook for half and quarter speed updates 2023-06-27 21:24:59 -05:00
Lucas Scharenbroich
135a7384b9 Add FPS counter 2023-06-20 07:41:17 -05:00
Lucas Scharenbroich
df18dd7570 Init SHR before drawing to make sure linearization is on 2023-06-20 07:41:10 -05:00
Lucas Scharenbroich
7b521c8473 Tweak noise channel and get APU channel select working 2023-06-19 10:15:52 -05:00
Lucas Scharenbroich
01d8029125 Change how to calculate DOC reg values for noise channel 2023-06-19 07:14:10 -05:00
Lucas Scharenbroich
ecb11df945 Add Noise channel hooks to ROM 2023-06-18 22:11:43 -05:00
Lucas Scharenbroich
29e2cfd007 Fix bnk bug in APU STATUS register 2023-06-18 21:54:24 -05:00
Lucas Scharenbroich
13cc1a807e Turn on all four channels at startup 2023-06-18 00:26:11 -05:00
Lucas Scharenbroich
a1261e8339 Optimization to avoid recalculating DOC frequencies when APU value does not change 2023-06-18 00:12:53 -05:00
Lucas Scharenbroich
bdb4006e22 APU fixed
* Fixed type that caused triangle linear counter to be ignored
 * Changed sweep to shift the current period, not the register value
 * Moved muting logic early to avoid setting DOC registers when not needed
2023-06-17 23:50:38 -05:00
Lucas Scharenbroich
e06724eb4a Minor cleanup 2023-06-17 12:29:40 -05:00
Lucas Scharenbroich
95490b4996 Remove dead variable 2023-06-17 12:28:53 -05:00
Lucas Scharenbroich
ae2cb8f71d Move area palette change after GTERender to avoid flicker of new color on old pixels 2023-06-16 15:40:49 -05:00
Lucas Scharenbroich
24cd424d7c Add triangle wave back in with counters 2023-06-16 08:18:02 -05:00
Lucas Scharenbroich
99184396fc Mostly full implementations of the pulse channels 2023-06-16 01:07:19 -05:00
Lucas Scharenbroich
60d566e78c Create APU simulator for debugging 2023-06-16 01:05:31 -05:00
Lucas Scharenbroich
361c7dae56 Tweak conversion from APU value to DOC register value 2023-06-12 11:09:21 -05:00
Lucas Scharenbroich
1035af010d First sounds from emulated APU 2023-06-11 12:00:52 -05:00
Lucas Scharenbroich
4f2c2aac0b Wired all APU access to emulation layer. No sound yet :( 2023-06-10 21:05:11 -05:00
Lucas Scharenbroich
ef581ab97b Fix rendering bug that cause flicker when two sprites shared a block row 2023-06-07 23:42:48 -05:00
Lucas Scharenbroich
b45d2e27bf Fix bad color in overworld table 2023-06-06 14:31:07 -05:00
Lucas Scharenbroich
c2b37fdb71 Fix water world palette table 2023-06-06 10:57:23 -05:00
Lucas Scharenbroich
a2a0d3af9d Refine palette handling 2023-06-06 08:01:40 -05:00
Lucas Scharenbroich
d36e221080 Fix bowser flame init 2023-06-05 17:46:23 -05:00
Lucas Scharenbroich
552f32f917 Add more swizzle tables 2023-06-03 09:07:49 -05:00
Lucas Scharenbroich
5acd964917 Update palette based on AreaType 2023-06-02 21:55:55 -05:00
Lucas Scharenbroich
91454c9481 Move sprite blitter totally into app code 2023-06-02 15:56:13 -05:00
Lucas Scharenbroich
377ac1f788 Fix bad PPU attribute calculation 2023-06-02 08:16:00 -05:00
Lucas Scharenbroich
2c1b7567ec Fix comment typos 2023-06-02 08:15:43 -05:00
Lucas Scharenbroich
459bc645be Swizzle support 2023-06-02 00:37:14 -05:00
Lucas Scharenbroich
0715efa684 Check the background disable bit when rendering 2023-05-28 07:54:55 -05:00
Lucas Scharenbroich
cc36fcc0f8 Refix abs addr in rom 2023-05-27 08:23:18 -05:00
Lucas Scharenbroich
9560591642 Fix a few more abs addr locations 2023-05-26 12:42:15 -05:00
Lucas Scharenbroich
5e157072fa Adjust x-coordinate sprite cutoff 2023-05-26 12:41:49 -05:00
Lucas Scharenbroich
f8cd5c5a6c Fix typo in bowser setup 2023-05-26 08:04:07 -05:00
Lucas Scharenbroich
22f43a42de Add collision fixes 2023-05-25 08:03:20 -05:00
Lucas Scharenbroich
584f3b5ce5 Fix coin blocks 2023-05-24 20:59:12 -05:00
Lucas Scharenbroich
361e814fd0 Fixed title screen. Verified all of World 1 renders correctly 2023-05-24 14:44:15 -05:00
Lucas Scharenbroich
aa684ef58c Fresh rom2 that does not have the RenderArea bug 2023-05-24 14:31:49 -05:00
Lucas Scharenbroich
6c5bf4e494 Fix lakitu spawn bug and vine setup issue 2023-05-24 10:50:17 -05:00
Lucas Scharenbroich
56b66033a7 Add support for sprite priority 2023-05-22 13:55:56 -05:00
Lucas Scharenbroich
d402d60a4e Filter out more sprites and PPU nametable changes 2023-05-22 11:15:45 -05:00
Lucas Scharenbroich
166274c6c2 Move input read into VBL handler for better responsiveness 2023-05-22 00:36:47 -05:00
Lucas Scharenbroich
61cf1d49c8 Fix bmi/bpl branch bug 2023-05-22 00:05:51 -05:00
Lucas Scharenbroich
b0ed4f9692 Fix some bugs introduced by the abs indexed addressing mode changes 2023-05-21 23:37:36 -05:00
Lucas Scharenbroich
cc3ee6be0f Add larger PPU buffer 2023-05-21 23:36:52 -05:00
Lucas Scharenbroich
d3a7eecc6e Mostly working PPU integration with GTE rendering pipeline 2023-05-21 17:50:05 -05:00
Lucas Scharenbroich
64f7106143 Fix absolute address issue in rom 2023-05-19 20:40:52 -05:00
Lucas Scharenbroich
310c3487ca Support the sprite palette select bits in OAM 2023-05-17 12:59:07 -05:00
Lucas Scharenbroich
25c82cc44b Initial palette work; fix memory init bug 2023-05-16 22:38:54 -05:00