Commit Graph

511 Commits

Author SHA1 Message Date
Jeffrey Pfau f5a3fd7c7f Rearrange _composite to optimize for common cases first 2013-10-27 04:51:14 -07:00
Jeffrey Pfau 6e40c7ec29 Replace bit-packed map data with flags 2013-10-27 04:51:09 -07:00
Jeffrey Pfau 7cb183a8be Only update active region if necessary 2013-10-27 03:44:38 -07:00
Jeffrey Pfau 775f9db546 Begin OBJ mosaic 2013-10-27 03:12:55 -07:00
Jeffrey Pfau 3b0ee473d3 Refactor sprite code in preparation of implementing OBJ mosaic 2013-10-27 02:39:35 -07:00
Jeffrey Pfau 72ef1643c7 Rotate 16-bit without using AND 2013-10-26 16:40:31 -07:00
Jeffrey Pfau 0155d9c028 Remove SPRITE_DRAW_PIXEL_*_VARIANT 2013-10-26 14:56:35 -07:00
Jeffrey Pfau ffef3d2486 Preemptively mark the envelope as dead in some cases 2013-10-26 04:23:08 -07:00
Jeffrey Pfau 70365782de Reorganize audio code so as to only update channels when audible 2013-10-26 04:08:18 -07:00
Jeffrey Pfau cd448324c5 Fixed the first load from SRAM not returning a value 2013-10-26 03:04:21 -07:00
Jeffrey Pfau 9c922862e8 Fix mode 3 in 16-bit color 2013-10-26 02:39:45 -07:00
Jeffrey Pfau 7f17be5ead Support WIN0/1 in modes 2 - 5 2013-10-26 02:33:29 -07:00
Jeffrey Pfau 6376a1ff7f Support OBJWIN in mode 4 2013-10-26 02:26:08 -07:00
Jeffrey Pfau 38116f0ead Rearrange calculation to shave off some more time 2013-10-26 01:43:06 -07:00
Jeffrey Pfau 71b5473563 Fix white on 5-6-5 color 2013-10-26 01:32:27 -07:00
Jeffrey Pfau 915b04dded Add support for PowerPC to the memory and CPU interfaces 2013-10-26 01:53:13 -04:00
Jeffrey Pfau 07115ca655 Ensure thread-local storage is created before it is needed 2013-10-25 03:15:31 -07:00
Jeffrey Pfau d5291eb1b6 Remove unnecessary sprite post-processing passes 2013-10-25 00:27:42 -07:00
Jeffrey Pfau c12eca835f Don't busy-wait if the emulator is paused 2013-10-24 01:09:01 -07:00
Jeffrey Pfau 17ccb35c33 Small, trivial optimizations in GBAVideoSoftwareRendererDrawScanline 2013-10-24 00:54:51 -07:00
Jeffrey Pfau 6eafbc6331 Tear out counter-productive optimization 2013-10-24 00:21:59 -07:00
Jeffrey Pfau 4b9e9f84be Start implementing mosaic with a half-baked mode 0 implementation 2013-10-23 01:17:53 -07:00
Jeffrey Pfau 9358cbd690 Initialize rumble callback to null 2013-10-22 00:26:09 -07:00
Jeffrey Pfau 709434ce9f Add Drill Dozer to the override list 2013-10-22 00:18:56 -07:00
Jeffrey Pfau e74b0125a7 Expose rumble 2013-10-21 21:50:29 -07:00
Jeffrey Pfau 2fde9738be Add more overrides 2013-10-21 21:42:28 -07:00
Jeffrey Pfau 0458184a5e Implement gyro 2013-10-21 02:54:52 -07:00
Jeffrey Pfau c77ed8c11e Only reset save type manually for flash 2013-10-21 01:28:41 -07:00
Jeffrey Pfau fcaa0eb066 Implement RTC 2013-10-20 21:39:47 -07:00
Jeffrey Pfau 7e5eada69b Mark more registers as safe to read 2013-10-20 18:14:04 -07:00
Jeffrey Pfau ddc1034d42 Start GPIO 2013-10-20 18:08:18 -07:00
Jeffrey Pfau 228b6aaa01 Remove obsolete errno interface 2013-10-20 16:48:29 -07:00
Jeffrey Pfau 4429435071 Implement sound length 2013-10-20 16:33:37 -07:00
Jeffrey Pfau d6e466dda1 Fix pitch of channel 3 2013-10-20 16:04:22 -07:00
Jeffrey Pfau 76266a4ee7 Move mode 0 loops out of macros 2013-10-20 12:36:57 -07:00
Jeffrey Pfau 76f02be757 Ability to disable sound 2013-10-20 02:18:09 -07:00
Jeffrey Pfau ca80e5f32b Add l/r channel scaling 2013-10-20 02:10:54 -07:00
Jeffrey Pfau cc8eeb4353 Start audio channel 3 2013-10-19 03:04:45 -07:00
Jeffrey Pfau cfb0115c0e Commit unreadable sound memory for the sake of bitewise assignment 2013-10-19 00:49:20 -07:00
Jeffrey Pfau 4a0a462673 Clean up channel 1 2013-10-19 00:48:57 -07:00
Jeffrey Pfau 003a537dc7 Implement most of channels 1 and 2 2013-10-18 23:12:14 -07:00
Jeffrey Pfau 79d483d002 Fix audio loudness issues 2013-10-18 19:44:55 -07:00
Jeffrey Pfau 04f99bd358 Prescale audio 2013-10-18 09:41:13 -07:00
Jeffrey Pfau 565ee43bb2 Fix video cycle timing to match audio timing fix 2013-10-18 09:41:01 -07:00
Jeffrey Pfau 093c86c943 Add channel 4 envelope, fix audio timing 2013-10-18 09:33:07 -07:00
Jeffrey Pfau a55b4dc87f Fix valgrind-found uninitialized values 2013-10-18 08:42:15 -07:00
Jeffrey Pfau 3acabb01c8 Conglomerate save data initialization to ensure the struct is always initialized 2013-10-18 08:36:05 -07:00
Jeffrey Pfau d99bf7fdff Rename GBAAudioWave to GBAAudioEnvelope, add fields for internal state 2013-10-18 08:10:10 -07:00
Jeffrey Pfau 7393351e27 Start implementing channel 4 2013-10-18 01:21:44 -07:00
Jeffrey Pfau eac9dfb325 Start filling in audio framework 2013-10-18 01:21:22 -07:00