Commit graph

370 commits

Author SHA1 Message Date
Alex Janka c54027e5f6 cleanup: move stuff to util & use struct for options 2023-02-26 09:42:15 +11:00
Alex Janka 0c45be7c58 begin move to lib 2023-02-25 09:43:39 +11:00
Alex Janka 567cbf0264 fix opcodes e8 & f8... WE PASS CPU_INSTRS!!!!! 2023-02-24 19:28:18 +11:00
Alex Janka 5fbc661f5c SO CLOSE 2023-02-24 17:10:44 +11:00
Alex Janka d6c8be4bc5 lol 2023-02-24 16:49:08 +11:00
Alex Janka a760fecd05 fix flags again 2023-02-24 16:45:24 +11:00
Alex Janka ce76c32a21 better instructions... 2023-02-24 15:59:51 +11:00
Alex Janka 17a140e77c change initial register values for no audio pop 2023-02-24 15:42:41 +11:00
Alex Janka 44ad6bdad5 interrupt and halt improvements (?) 2023-02-24 15:05:57 +11:00
Alex Janka db57cf58e1 remove cycle start 2023-02-24 13:19:13 +11:00
Alex Janka b574e1b1bf interrupts work properly! and halt bug almost does 2023-02-24 11:53:44 +11:00
Alex Janka f0f194f5d2 dont fill int register with high bits 2023-02-24 11:06:10 +11:00
Alex Janka b95ab33ec9 cpu gets interrupts from struct rather than accessing memory directly 2023-02-24 10:50:59 +11:00
Alex Janka 710912d150 get bit from the wrong place 2023-02-24 10:49:56 +11:00
Alex Janka 6f3fd9b219 mmio interrupts 2023-02-24 10:41:09 +11:00
Alex Janka e0ee657fb3 say steps in timer 2023-02-24 10:41:01 +11:00
Alex Janka fd22f62f21 timer is memory mapped 2023-02-24 10:11:05 +11:00
Alex Janka 5c44401c68 move timer to mmio 2023-02-24 09:39:37 +11:00
Alex Janka eea5245d78 object priority 😝 2023-02-23 19:15:18 +11:00
Alex Janka d90b773c7f fixed sprites falling off top of screen 2023-02-23 18:31:34 +11:00
Alex Janka 02bc2df0e8 silly mistake that i have literally made before 2023-02-23 16:39:04 +11:00
Alex Janka 3fc25fcfb2 fix initial joypad + serial values 2023-02-23 15:34:54 +11:00
Alex Janka 4623c248db fixed it wrong lol 2023-02-23 15:32:10 +11:00
Alex Janka 1f3d1c41f9 fix stupids 2023-02-23 14:21:00 +11:00
Alex Janka c925beae8a mbc5 ram address fix 2023-02-23 11:24:27 +11:00
Alex Janka 9418d1e98a mbc5 w/ rumble 2023-02-23 11:01:50 +11:00
Alex Janka 30d9ddc713 add mbc5 2023-02-23 11:00:29 +11:00
Alex Janka 97f39e9c5d fix mbcs visibility 2023-02-23 10:19:33 +11:00
Alex Janka 9090aa4621 split mbcs to files 2023-02-22 21:58:47 +11:00
Alex Janka cf6a14179d fully mmio'd gpu! 2023-02-22 15:24:31 +11:00
Alex Janka 1e1e82a6e7 joypad: trigger even if gamepad button held for less than 1 frame 2023-02-22 13:28:19 +11:00
Alex Janka ac3b197d6d command line option to connect serial to stdout 2023-02-22 10:38:27 +11:00
Alex Janka 3df569a7a1 bootrom as option 2023-02-22 10:26:20 +11:00
Alex Janka 932e70a443 serial: dont fake a connection if it's not there 2023-02-22 10:12:35 +11:00
Alex Janka a9886a773a joypad clear buttons fn 2023-02-22 10:09:40 +11:00
Alex Janka 788afa49d4 fix serial 2023-02-22 10:09:32 +11:00
Alex Janka 8e910cfec8 joypad: action and direction not mutually exclusive 2023-02-22 09:48:39 +11:00
Alex Janka 5b353364cd remove commented code 2023-02-22 09:38:08 +11:00
Alex Janka 5dba0e039a move gpu to mmio module 2023-02-22 09:37:31 +11:00
Alex Janka c622a2ae4a serial as mmio peripheral 2023-02-21 10:10:24 +11:00
Alex Janka 2609fb966d fix masked io in apu 2023-02-20 16:21:16 +11:00
Alex Janka a790e4cbd1 fix length timer 2023-02-20 15:51:39 +11:00
Alex Janka 6676276706 noise channel works! 2023-02-20 15:35:20 +11:00
Alex Janka 9f9cd006c0 channel 4 mem interface + ditch apu ram array 2023-02-20 14:30:35 +11:00
Alex Janka 83080ed806 channel 3 audio 2023-02-20 14:26:30 +11:00
Alex Janka 62b7bced99 hehe 2023-02-20 10:03:34 +11:00
Alex Janka 5cfe28a309 wave channel memory implemented 2023-02-20 10:02:14 +11:00
Alex Janka e80fd6a73a nibbles :3 2023-02-20 10:01:53 +11:00
Alex Janka 0f38e89312 pulse channel control register empty bits are high rather than low 2023-02-20 10:01:32 +11:00
Alex Janka 20f324caa8 change update_sweep to be in line with other channel mmio functions 2023-02-19 21:49:58 +11:00