Commit Graph

650 Commits

Author SHA1 Message Date
scawful
c788f92c20 Add IBM Plex JP font 2023-08-26 12:18:14 -04:00
scawful
559c2e4830 Add SignalReady to APU init 2023-08-26 04:51:50 -04:00
scawful
b9d06f43bc Add JP font support 2023-08-26 04:51:08 -04:00
scawful
a2de3c2ffe SPC700 to get notified when ports are written 2023-08-26 02:33:19 -04:00
scawful
2b8d41c6ca Change SDL_Mixer frequency to match SNES S-SMP 2023-08-26 02:00:35 -04:00
scawful
d3e23e0b8f Update CMakeLists 2023-08-26 02:00:12 -04:00
scawful
3d793c452d Reorganize emu folder, update S-SMP system infra 2023-08-26 01:59:57 -04:00
scawful
758056dc98 Set minimum size for file dialog 2023-08-25 19:43:55 -04:00
scawful
037667bb21 Move Overworld constants to Overworld 2023-08-25 19:43:20 -04:00
scawful
1305e9de19 Update CMakeLists, add sdl2.cmake 2023-08-25 19:03:13 -04:00
scawful
c66d810828 Add support for JP rom and headered ROMs 2023-08-25 19:01:52 -04:00
scawful
af73af4300 Add addressing modes and opcodes for SPC700 2023-08-25 17:44:04 -04:00
scawful
25c43cbaaa housekeeping 2023-08-24 23:46:17 -04:00
scawful
5beb2ae4f6 Move CPU instruction impl to source file 2023-08-24 23:37:18 -04:00
scawful
453a2575f4 Inject SPC700 to APU, add APU and PPU observers 2023-08-24 22:54:52 -04:00
scawful
1cc0c45e79 Fix PaletteGroup display color math 2023-08-24 22:53:13 -04:00
scawful
3af0aee750 Remove GLEW, not needed 2023-08-24 22:06:17 -04:00
scawful
7619e5c977 Implement ADC, SBC, CMP for SPC700, untested 2023-08-20 23:46:26 -04:00
scawful
c5d47cbc19 Add Observer pattern to Memory for registers 2023-08-20 23:46:08 -04:00
scawful
d538317629 Add VirtualClock, MockClock, dependency injection 2023-08-20 23:45:56 -04:00
scawful
2084f2d5a5 Outline PPU cycles per scanline, get APU cycles 2023-08-20 22:59:24 -04:00
scawful
2ec43cfb3f Update Clock class for cycle accurate components 2023-08-20 22:30:06 -04:00
scawful
2f6c6d414c Add SPC700 class for APU 2023-08-20 21:21:59 -04:00
scawful
033bd148cf Update Emulator loop logic 2023-08-20 20:11:01 -04:00
scawful
8fb55b64bc Get ROM header and execute at Reset Vector 2023-08-20 20:10:41 -04:00
scawful
7e28cec0ec Persist ROM data by coping into memory space 2023-08-20 20:10:20 -04:00
scawful
c4ab2a4c7d CPU improvements, add opcode string map 2023-08-20 20:10:06 -04:00
scawful
4dfd27aa3a Log opcode and operands to terminal 2023-08-20 20:09:33 -04:00
scawful
ac7d8b6af9 Add BackgroundLayer to PPU, Create Loggable class 2023-08-20 16:15:18 -04:00
scawful
7448f80119 Add CMP, COP, DEC, EOR, update SNES and Memory 2023-08-20 15:39:22 -04:00
scawful
1795f8f3bf Add MockPPU class for testing later 2023-08-20 11:49:20 -04:00
scawful
675203ce07 Inherit Clock class from CPU 2023-08-20 11:49:07 -04:00
scawful
bc7accfe9e Add DMA and SNES Init, VBlank, NMI, etc 2023-08-20 11:48:51 -04:00
scawful
51ff47cb4d Add ROM metadata to Memory header 2023-08-20 11:48:22 -04:00
scawful
a024b5993e Add PPU registers and structs 2023-08-20 11:47:35 -04:00
scawful
905f81d60e Added ASL, BCS, BIT, BMI, BPL, BRA
BRK, BVC, BVS, CPX, CPY, DEX, DEY
INX, INY, LDX, LDY, LSR, ORA, PEA, PEI
PER ROL, ROR, RTL, RTS, STA, STX, STY
TRB, TSB, XBA,
2023-08-20 00:27:05 -04:00
scawful
536136d8c9 DirectPage and DirectPageIndirect 2023-08-19 20:12:56 -04:00
scawful
7dcbc7f83c Add JML, AND AbsoluteLong, ADC AbsoluteLong 2023-08-19 19:12:28 -04:00
scawful
f5c5c34b47 Add JMP Absolute, JMP Indirect, JSR Absolute, JSL_AbsoluteLong 2023-08-19 17:40:36 -04:00
scawful
d83d341b1e Add CPX, CPY, DEX, DEY, XCE, Emulation Mode 2023-08-19 17:27:01 -04:00
scawful
8d0f4110e0 Add PHX, PHY, PHB, PHD, PHK and PLX, PLY, PLB, PLD 2023-08-19 16:18:45 -04:00
scawful
76f40531f1 Add StackPointer to memory, PHA, PLA, PHP, PLP 2023-08-19 15:59:17 -04:00
scawful
de93f71d04 Fill memory on init, organize tests, housekeeping 2023-08-19 14:48:49 -04:00
scawful
e76aa69254 ADC, AND with tests for various addressing modes 2023-08-19 14:14:24 -04:00
scawful
28ac82d68b Add Memory Mapping, Direct Page memory 2023-08-19 14:13:52 -04:00
scawful
c2f8a55fd1 Add Emulator to View menu 2023-08-19 14:13:07 -04:00
scawful
54790366ef Create Emulator class for GUI with nav bar 2023-08-19 14:12:57 -04:00
scawful
f0d0d9abc6 Create SNES skeleton 2023-08-19 14:12:45 -04:00
scawful
8f713a08ef Update PPU Skeleton 2023-08-19 14:12:30 -04:00
scawful
bb1690c438 Update Debugger skeleton 2023-08-19 14:12:22 -04:00