1fd80c1c23 
					 
					
						
						
							
							feat: define APU registers  
						
						
						
						
					 
					
						2022-03-15 08:09:07 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						48679fa4ca 
					 
					
						
						
							
							fix: move code in scheduler to ppu  
						
						
						
						
					 
					
						2022-03-15 08:09:07 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						bdea19f280 
					 
					
						
						
							
							chore: create different types of emuloops  
						
						
						
						
					 
					
						2022-03-15 03:46:33 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5579643d65 
					 
					
						
						
							
							fix: resolve relative sprite priority issues  
						
						
						
						
					 
					
						2022-03-15 00:37:29 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c6e6b42869 
					 
					
						
						
							
							chore: improve accuracy of frame limiter  
						
						
						
						
					 
					
						2022-03-14 20:38:29 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3623362f72 
					 
					
						
						
							
							chore: improve accuracy of thread sleep in emu thread  
						
						
						
						
					 
					
						2022-03-14 08:54:48 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c538079ad4 
					 
					
						
						
							
							feat: implement video sync  
						
						
						
						
					 
					
						2022-03-14 05:16:02 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8e3f48837d 
					 
					
						
						
							
							chore: organize io switch statements  
						
						
						
						
					 
					
						2022-03-13 07:50:19 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						025f295c08 
					 
					
						
						
							
							fix: mirror SRAM  
						
						... 
						
						
						
						SRAM is mirrored in 64K chunks
TODO: According to GBATEK SRAM chips are 32K and mirrored 
						
						
					 
					
						2022-03-13 05:53:32 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						017ec407f5 
					 
					
						
						
							
							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-03-13 05:39:09 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4a76611fca 
					 
					
						
						
							
							feat: implement Timers  
						
						
						
						
					 
					
						2022-03-13 05:35:01 -03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cb10dfbdfd 
					 
					
						
						
							
							fix: implement sprite coord overflow behaviour  
						
						
						
						
					 
					
						2022-03-12 03:46:41 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0c50ef1e6d 
					 
					
						
						
							
							fix: resolve issues with sprite mirroring  
						
						
						
						
					 
					
						2022-03-11 23:52:56 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						05e67da181 
					 
					
						
						
							
							feat: Implement MVP of Mode 0 Sprites  
						
						
						
						
					 
					
						2022-03-11 01:43:47 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f1df3d6615 
					 
					
						
						
							
							chore: clean up io  
						
						
						
						
					 
					
						2022-03-04 22:55:04 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c5b4b51ae0 
					 
					
						
						
							
							feat: fix tile flipping issue  
						
						
						
						
					 
					
						2022-03-03 03:08:35 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						2e4854c2ff 
					 
					
						
						
							
							chore: add some type definitions for sprites  
						
						
						
						
					 
					
						2022-03-03 02:10:33 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						85f0b13f4a 
					 
					
						
						
							
							feat: improve DMA Transfer support  
						
						
						
						
					 
					
						2022-03-03 02:10:29 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						dccd00782b 
					 
					
						
						
							
							chore(ppu): resolve integer overflow regression  
						
						
						
						
					 
					
						2022-03-02 23:15:10 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3d8c944bcc 
					 
					
						
						
							
							feat(ppu): implement bg priority and transparency  
						
						
						
						
					 
					
						2022-03-02 01:39:05 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cb4d3a9a51 
					 
					
						
						
							
							chore: replace unnecessarily complex sign extension implementation  
						
						
						
						
					 
					
						2022-02-28 20:38:50 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ddb68a7952 
					 
					
						
						
							
							feat: pass beeg yoshi  
						
						
						
						
					 
					
						2022-02-28 18:24:24 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						97de5d1a96 
					 
					
						
						
							
							fix: palette id is a u16 not a u8  
						
						
						
						
					 
					
						2022-02-28 17:32:10 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d6ef53fd67 
					 
					
						
						
							
							feat: DMA Transfer MVP  
						
						
						
						
					 
					
						2022-02-28 12:34:00 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b65f833b28 
					 
					
						
						
							
							feat(ppu): implement transparency + backdrop in mode 0  
						
						
						
						
					 
					
						2022-02-26 18:33:16 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ac0486be1b 
					 
					
						
						
							
							chore(io): replace some bitfields with enums  
						
						
						
						
					 
					
						2022-02-24 17:20:23 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						441ebc38c7 
					 
					
						
						
							
							fix: better emulate behaviour of IO reads  
						
						
						
						
					 
					
						2022-02-24 17:20:20 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						be2dfb379a 
					 
					
						
						
							
							chore: document select unimplmented I/O registers  
						
						... 
						
						
						
						These registers are written to / read from Kirby: Nightmare in Dream Land 
						
						
					 
					
						2022-02-22 17:14:30 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						bc66be6c06 
					 
					
						
						
							
							feat: impelement a barebones SRAM  
						
						
						
						
					 
					
						2022-02-22 17:14:26 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5368ff912d 
					 
					
						
						
							
							feat: pass retAddr.gba  
						
						
						
						
					 
					
						2022-02-21 15:34:46 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c2cf2d2965 
					 
					
						
						
							
							feat: implement Hblank and Vcount Interrupts  
						
						... 
						
						
						
						Also implemented unique behaviour when writing to IF 
						
						
					 
					
						2022-02-21 14:45:47 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e5ab8b51a9 
					 
					
						
						
							
							chore: improve Bus log + panic messages  
						
						
						
						
					 
					
						2022-02-19 11:48:43 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c767e88e8d 
					 
					
						
						
							
							chore: improve io.zig  
						
						
						
						
					 
					
						2022-02-19 11:48:17 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9e2e8c3d1a 
					 
					
						
						
							
							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-02-19 10:08:31 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e426f2459e 
					 
					
						
						
							
							fix: resolve integer overflow in BG0 Drawing  
						
						
						
						
					 
					
						2022-02-19 06:55:30 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3746cf6025 
					 
					
						
						
							
							chore: don't panic on 32-bit I/O  
						
						
						
						
					 
					
						2022-02-19 06:45:39 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f6c8d7ca07 
					 
					
						
						
							
							chore: stub CPU HALTing  
						
						
						
						
					 
					
						2022-02-17 00:27:34 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						07343efdf3 
					 
					
						
						
							
							chore: correct logic errors in map size 1 and 3  
						
						
						
						
					 
					
						2022-02-16 23:49:08 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4018f3875b 
					 
					
						
						
							
							chore: properly write to VOFS and HOFS in 32-bit bus  
						
						
						
						
					 
					
						2022-02-16 23:23:41 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						034f2e8d1d 
					 
					
						
						
							
							feat: implement hofs and vofs on io bus  
						
						
						
						
					 
					
						2022-02-16 04:29:04 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d275a4890f 
					 
					
						
						
							
							feat: implement scrolling  
						
						
						
						
					 
					
						2022-02-16 03:37:25 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ce97a52868 
					 
					
						
						
							
							feat: add support for multiple BGs in Mode 0  
						
						
						
						
					 
					
						2022-02-16 03:27:06 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d2d4667f7b 
					 
					
						
						
							
							feat: document mode 0  
						
						
						
						
					 
					
						2022-02-16 03:05:19 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5835b509e4 
					 
					
						
						
							
							feat: Mode 0 MVP  
						
						
						
						
					 
					
						2022-02-16 02:27:15 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						338122ed43 
					 
					
						
						
							
							chore: use zig slices for fun  
						
						
						
						
					 
					
						2022-02-13 05:28:56 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e5a76a3c02 
					 
					
						
						
							
							chore: give DISPCNT DISPSTAT and VCOUNT to PPU struct  
						
						
						
						
					 
					
						2022-02-13 04:28:15 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						31fa06ac4a 
					 
					
						
						
							
							chore: give io read/write functions access to the entire Bus  
						
						
						
						
					 
					
						2022-02-13 04:13:06 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ec25a9aae4 
					 
					
						
						
							
							feat: implement BG Scrolling Registers  
						
						
						
						
					 
					
						2022-02-13 04:04:10 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b238a3e8f3 
					 
					
						
						
							
							feat: impelemnt BG0,1,2CNT and IF  
						
						
						
						
					 
					
						2022-02-13 03:23:09 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aca7fc9a60 
					 
					
						
						
							
							feat: implement OAM  
						
						
						
						
					 
					
						2022-02-13 02:30:02 -04:00