Commit Graph

217 Commits

Author SHA1 Message Date
Jeffrey Pfau 0d7657e845 Implement BLDCNT (partially) and BLDY 2013-04-24 00:34:50 -07:00
Jeffrey Pfau 754725e124 Start using pixel flags to keep track of pixel states 2013-04-23 22:48:01 -07:00
Jeffrey Pfau 7c7e934dac Turbo mode 2013-04-23 22:32:15 -07:00
Jeffrey Pfau e82fd991fa More sane way of writing 32-bit values to VRAM, palette 2013-04-23 02:05:10 -07:00
Jeffrey Pfau 3a76cdc6e0 VRAM reading 2013-04-23 02:03:06 -07:00
Jeffrey Pfau 21704ab37a Allow use of wrong LZ77 destination 2013-04-22 22:55:49 -07:00
Jeffrey Pfau 11d1de39e1 Fix non-zero character base 2013-04-22 02:28:03 -07:00
Jeffrey Pfau bcf446737c Start implementing transparency 2013-04-22 02:07:35 -07:00
Jeffrey Pfau e1d5f3f457 Fix drawing wide backgrounds 2013-04-22 02:07:19 -07:00
Jeffrey Pfau b48b868cfb Write to VRAM 2013-04-22 01:59:25 -07:00
Jeffrey Pfau f136d8165a Was accidentally chopping off a bit in LZ77UnCompVram 2013-04-22 01:12:48 -07:00
Jeffrey Pfau 060ae364b5 Start drawing backgrounds 2013-04-22 01:11:48 -07:00
Jeffrey Pfau 764b6010c0 Sort backgrounds 2013-04-21 20:59:43 -07:00
Jeffrey Pfau a6fb91bb7d Do some cleanup of pthread data 2013-04-21 14:52:25 -07:00
Jeffrey Pfau 225729b79c Implement BGxHOFS/BGxVOFS 2013-04-21 14:43:28 -07:00
Jeffrey Pfau 3ec0afa8fc Implement BGxCNT 2013-04-21 14:09:41 -07:00
Jeffrey Pfau 265bbe4f8f Add struct for keeping track of background state 2013-04-21 13:17:15 -07:00
Jeffrey Pfau 933e8330d2 Start implementing DISPCNT 2013-04-21 13:16:06 -07:00
Jeffrey Pfau cdddcbf7aa Pass off video registers to renderer 2013-04-21 12:39:33 -07:00
Jeffrey Pfau 573fcead5d Start building up structs for video registers 2013-04-21 12:34:24 -07:00
Jeffrey Pfau 9f425c53c8 Spring IRQs if we need to 2013-04-21 01:09:11 -07:00
Jeffrey Pfau 3ca5e52de1 Handle key, quit events 2013-04-21 00:35:21 -07:00
Jeffrey Pfau 71986b0477 Support writing to palette, display palette on screen 2013-04-20 22:08:58 -07:00
Jeffrey Pfau eba5d547b9 Start using SDL for graphics syncing 2013-04-20 20:29:53 -07:00
Jeffrey Pfau a094024ad5 Add missing files 2013-04-20 18:11:27 -07:00
Jeffrey Pfau 0bfb77106b Properly init and deinit renderers 2013-04-20 16:47:04 -07:00
Jeffrey Pfau b4cee4c286 Properly isolate threading 2013-04-20 16:44:03 -07:00
Jeffrey Pfau fffe39153f Wait on thread initialization before returning from thread creation 2013-04-20 16:40:08 -07:00
Jeffrey Pfau 9ba9fac898 Restructure video memory 2013-04-20 16:16:37 -07:00
Jeffrey Pfau cb48145ea3 Move main emulation into thread 2013-04-20 15:54:09 -07:00
Jeffrey Pfau ff03bcf0f0 Fix MidiKey2Freq 2013-04-20 14:46:53 -07:00
Jeffrey Pfau 63e809550d Implement MidiKey2Freq 2013-04-20 03:01:50 -07:00
Jeffrey Pfau e83936152d Implement LZ77 decompression 2013-04-20 02:52:10 -07:00
Jeffrey Pfau cf9a7224a3 Init video memory from the dummy renderer 2013-04-20 02:51:40 -07:00
Jeffrey Pfau 1972e73bec Define memory regions 2013-04-19 23:34:26 -07:00
Jeffrey Pfau f72c195739 Labels for I/O regions in the switch statement 2013-04-19 23:04:01 -07:00
Jeffrey Pfau 5d81a4eb18 Remainder of timer infrastructure 2013-04-19 23:01:04 -07:00
Jeffrey Pfau 57dcbef030 Implement timers from GBA.js implementation 2013-04-19 22:26:44 -07:00
Jeffrey Pfau 6087ad8c5f Fix reading from DISPSTAT 2013-04-19 21:40:57 -07:00
Jeffrey Pfau aa7ef287bc Squelch HLE BIOS warnings 2013-04-19 21:04:53 -07:00
Jeffrey Pfau 283a48613b Read/write REG_IF 2013-04-19 00:05:13 -07:00
Jeffrey Pfau 9b1f3c3c73 Init GBA I/O registers 2013-04-19 00:04:50 -07:00
Jeffrey Pfau 422961a2df 8-bit I/O reads 2013-04-18 01:19:57 -07:00
Jeffrey Pfau 97b669e4d1 Store vcount back in IO 2013-04-18 01:19:41 -07:00
Jeffrey Pfau b5cbd55718 Read back I/O memory when reading 32-bit 2013-04-18 00:58:42 -07:00
Jeffrey Pfau 1e1c8fd2dd Ensure that DMAs read back from I/O memory properly 2013-04-18 00:58:22 -07:00
Jeffrey Pfau dd479ad907 Now include source for HLE BIOS, even without assembler script 2013-04-17 00:46:32 -07:00
Jeffrey Pfau 54fffb7fff Add HLE BIOS from GBA.js 2013-04-17 00:45:23 -07:00
Jeffrey Pfau 45fcd0fcb5 Implement FastCpuSet 2013-04-16 23:52:53 -07:00
Jeffrey Pfau 8c03c20019 Implement HALT 2013-04-16 23:14:16 -07:00
Jeffrey Pfau e88d177582 Copy GBA.js DMA implementation 2013-04-16 23:13:52 -07:00
Jeffrey Pfau 20622b6135 Copy some IRQ infrastructure from GBA.js 2013-04-16 19:44:16 -07:00
Jeffrey Pfau 2d0c3bf275 Implement IRQs 2013-04-16 07:50:34 -07:00
Jeffrey Pfau 2da11dd523 Continue implementing IRQs 2013-04-16 07:42:20 -07:00
Jeffrey Pfau 4dd98f4c25 Remove typo struct member 2013-04-16 07:20:28 -07:00
Jeffrey Pfau 9ac6f6d3bf Start implementing IRQ 2013-04-16 07:18:25 -07:00
Jeffrey Pfau 7de2c91efb Copy DISPSTAT implementation from GBA.js 2013-04-16 07:10:38 -07:00
Jeffrey Pfau e874266343 Initialize video->eventDiff 2013-04-15 23:15:02 -07:00
Jeffrey Pfau 2fe2c80ae5 Add dummy renderer + frame counting infrastructure from GBA.js 2013-04-15 23:01:40 -07:00
Jeffrey Pfau 9b5d5d6478 Start implementing events + add video stubs 2013-04-15 22:18:28 -07:00
Jeffrey Pfau 1838cc0597 Implement waitstate adjusting 2013-04-15 01:10:53 -07:00
Jeffrey Pfau fe5a8d6254 Add function for loading from I/O 2013-04-14 23:30:11 -07:00
Jeffrey Pfau ecc4775c31 Start implementing instruction timing 2013-04-14 23:12:03 -07:00
Jeffrey Pfau fa64310e83 Fix SWI32 2013-04-14 13:46:48 -07:00
Jeffrey Pfau 4e66d7f832 Implement CpuSet 2013-04-14 13:36:32 -07:00
Jeffrey Pfau 90e2443ccd Split gba.c 2013-04-14 13:24:55 -07:00
Jeffrey Pfau 1ca6487151 Create subdirs 2013-04-14 13:04:24 -07:00