ad9463dcb9 
					 
					
						
						
							
							feat: implement SRAM saving and loading  
						
						
						
						
					 
					
						2022-10-21 05:12:29 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						242627199b 
					 
					
						
						
							
							chore: properly deallocate OAM buffer  
						
						
						
						
					 
					
						2022-10-21 05:12:29 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						22a8f67d81 
					 
					
						
						
							
							fix: speed percentage in title is now accurate  
						
						... 
						
						
						
						We now properly account for full speed being 59.97Hz not, 59Hz or 60Hz 
						
						
					 
					
						2022-10-21 05:12:29 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4ee0eed2e5 
					 
					
						
						
							
							chore: make some variables const  
						
						
						
						
					 
					
						2022-10-21 05:12:29 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						20f39176c6 
					 
					
						
						
							
							feat: minor performance improvements  
						
						
						
						
					 
					
						2022-10-21 05:12:29 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ed792d71d3 
					 
					
						
						
							
							feat: switch from BGR555 to RGBA8888  
						
						
						
						
					 
					
						2022-10-21 05:12:28 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c3ae727ed1 
					 
					
						
						
							
							fix: improve perf of instructions w/ rotr  
						
						
						
						
					 
					
						2022-10-21 05:12:28 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0116dcdbe1 
					 
					
						
						
							
							fix: improve frame limiting and fps counting  
						
						
						
						
					 
					
						2022-10-21 05:12:28 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5ecbcc9f33 
					 
					
						
						
							
							fix: implement proper SRAM mirroring and stub Flash  
						
						
						
						
					 
					
						2022-10-21 05:12:28 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						2d16e4a4e6 
					 
					
						
						
							
							chore: move DMA and Timers from io to bus  
						
						
						
						
					 
					
						2022-10-21 05:12:28 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						bb9dc45e0c 
					 
					
						
						
							
							feat: define APU registers  
						
						
						
						
					 
					
						2022-10-21 05:12:27 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9dcecc0d58 
					 
					
						
						
							
							fix: move code in scheduler to ppu  
						
						
						
						
					 
					
						2022-10-21 05:12:27 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						92e63f5dd6 
					 
					
						
						
							
							chore: create different types of emuloops  
						
						
						
						
					 
					
						2022-10-21 05:12:27 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						74cda6a1d0 
					 
					
						
						
							
							fix: resolve relative sprite priority issues  
						
						
						
						
					 
					
						2022-10-21 05:12:27 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d7354cca33 
					 
					
						
						
							
							chore: improve accuracy of frame limiter  
						
						
						
						
					 
					
						2022-10-21 05:12:27 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7684cf0f4a 
					 
					
						
						
							
							chore: improve accuracy of thread sleep in emu thread  
						
						
						
						
					 
					
						2022-10-21 05:12:27 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3994c2c7c8 
					 
					
						
						
							
							feat: implement video sync  
						
						
						
						
					 
					
						2022-10-21 05:12:26 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a768d28e7c 
					 
					
						
						
							
							chore: organize io switch statements  
						
						
						
						
					 
					
						2022-10-21 05:12:26 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						efd99f16e0 
					 
					
						
						
							
							fix: mirror SRAM  
						
						... 
						
						
						
						SRAM is mirrored in 64K chunks
TODO: According to GBATEK SRAM chips are 32K and mirrored 
						
						
					 
					
						2022-10-21 05:12:26 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						61d6288fec 
					 
					
						
						
							
							chore: don't panic on unknown bus and io writes/reads  
						
						... 
						
						
						
						This will lead to emulation bugs due to devices I've yet to implement but by
doing this a lot of games become playable "by default" such as Doom or
Kirby: Nightmare in Dream Land.
When implementing feature and/or debuggin make sure to set:
panic_on_und_bus and panic_on_und_io to true so that the emu crashes
on unknown reads/writes 
						
						
					 
					
						2022-10-21 05:12:26 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e3e45cd129 
					 
					
						
						
							
							feat: implement Timers  
						
						
						
						
					 
					
						2022-10-21 05:12:26 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						15191aedca 
					 
					
						
						
							
							fix: implement sprite coord overflow behaviour  
						
						
						
						
					 
					
						2022-10-21 05:12:26 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						63486f13f2 
					 
					
						
						
							
							fix: resolve issues with sprite mirroring  
						
						
						
						
					 
					
						2022-10-21 05:12:25 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						17455e40d1 
					 
					
						
						
							
							feat: Implement MVP of Mode 0 Sprites  
						
						
						
						
					 
					
						2022-10-21 05:12:25 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d54e593276 
					 
					
						
						
							
							chore: clean up io  
						
						
						
						
					 
					
						2022-10-21 05:12:25 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c6a544a824 
					 
					
						
						
							
							feat: fix tile flipping issue  
						
						
						
						
					 
					
						2022-10-21 05:12:25 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e3ae3635bc 
					 
					
						
						
							
							chore: add some type definitions for sprites  
						
						
						
						
					 
					
						2022-10-21 05:12:25 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6723bfb364 
					 
					
						
						
							
							feat: improve DMA Transfer support  
						
						
						
						
					 
					
						2022-10-21 05:12:25 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						12c628e82c 
					 
					
						
						
							
							chore(ppu): resolve integer overflow regression  
						
						
						
						
					 
					
						2022-10-21 05:12:24 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5f9abf69d3 
					 
					
						
						
							
							feat(ppu): implement bg priority and transparency  
						
						
						
						
					 
					
						2022-10-21 05:12:24 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						68b0601a42 
					 
					
						
						
							
							chore: replace unnecessarily complex sign extension implementation  
						
						
						
						
					 
					
						2022-10-21 05:12:24 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9455ffe837 
					 
					
						
						
							
							feat: pass beeg yoshi  
						
						
						
						
					 
					
						2022-10-21 05:12:24 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						02d2ff3e0c 
					 
					
						
						
							
							fix: palette id is a u16 not a u8  
						
						
						
						
					 
					
						2022-10-21 05:12:24 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						02572dd15c 
					 
					
						
						
							
							feat: DMA Transfer MVP  
						
						
						
						
					 
					
						2022-10-21 05:12:23 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6d253cc74e 
					 
					
						
						
							
							feat(ppu): implement transparency + backdrop in mode 0  
						
						
						
						
					 
					
						2022-10-21 05:12:23 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4885a86833 
					 
					
						
						
							
							chore(io): replace some bitfields with enums  
						
						
						
						
					 
					
						2022-10-21 05:12:23 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fd9ffb20b4 
					 
					
						
						
							
							fix: better emulate behaviour of IO reads  
						
						
						
						
					 
					
						2022-10-21 05:12:23 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						56ef2b077a 
					 
					
						
						
							
							chore: document select unimplmented I/O registers  
						
						... 
						
						
						
						These registers are written to / read from Kirby: Nightmare in Dream Land 
						
						
					 
					
						2022-10-21 05:12:23 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d4c7cfdf8b 
					 
					
						
						
							
							feat: impelement a barebones SRAM  
						
						
						
						
					 
					
						2022-10-21 05:12:23 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4d75d156e5 
					 
					
						
						
							
							feat: pass retAddr.gba  
						
						
						
						
					 
					
						2022-10-21 05:12:22 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d30a4d7ee5 
					 
					
						
						
							
							feat: implement Hblank and Vcount Interrupts  
						
						... 
						
						
						
						Also implemented unique behaviour when writing to IF 
						
						
					 
					
						2022-10-21 05:12:22 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d1fce8ba75 
					 
					
						
						
							
							chore: improve Bus log + panic messages  
						
						
						
						
					 
					
						2022-10-21 05:12:22 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0f74e4fcf9 
					 
					
						
						
							
							chore: improve io.zig  
						
						
						
						
					 
					
						2022-10-21 05:12:22 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4afcbd0957 
					 
					
						
						
							
							feat: implement mirroring for IWRAM EWRAM, OAM and PALRAM  
						
						... 
						
						
						
						Also realized I confused IWRAM and EWRAM. This is also fixed
TODO: Implemnt Mirroring for VRRAM 
						
						
					 
					
						2022-10-21 05:12:22 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						50dc31447d 
					 
					
						
						
							
							fix: resolve integer overflow in BG0 Drawing  
						
						
						
						
					 
					
						2022-10-21 05:12:22 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						acf1a10f91 
					 
					
						
						
							
							chore: don't panic on 32-bit I/O  
						
						
						
						
					 
					
						2022-10-21 05:12:21 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						606f9b959a 
					 
					
						
						
							
							chore: stub CPU HALTing  
						
						
						
						
					 
					
						2022-10-21 05:12:21 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f19b42baf3 
					 
					
						
						
							
							chore: correct logic errors in map size 1 and 3  
						
						
						
						
					 
					
						2022-10-21 05:12:21 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						2a3d0c8b0d 
					 
					
						
						
							
							chore: properly write to VOFS and HOFS in 32-bit bus  
						
						
						
						
					 
					
						2022-10-21 05:12:21 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4405fa6bbf 
					 
					
						
						
							
							feat: implement hofs and vofs on io bus  
						
						
						
						
					 
					
						2022-10-21 05:12:21 -03:00