Jeffrey Pfau
|
66ee98513f
|
Pass pointers instead of offsets to composite
|
2013-11-03 01:00:56 -07:00 |
Jeffrey Pfau
|
32e0591fd0
|
Early finalization if possible
|
2013-11-02 22:36:07 -07:00 |
Jeffrey Pfau
|
e0eefa24da
|
Hack to guess when blending should be disabled
|
2013-11-01 23:50:13 -07:00 |
Jeffrey Pfau
|
a87d30ed9f
|
Fix channel 1 - 4 volume
|
2013-10-29 21:12:26 -07:00 |
Jeffrey Pfau
|
9fd181dba9
|
Fix potential issues with sound playing when they shouldn't, or with the wrong volume
|
2013-10-29 02:19:58 -07:00 |
Jeffrey Pfau
|
8902635e3a
|
Fix bugs in OBJ mosaic
|
2013-10-27 21:58:37 -07:00 |
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
|
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 |
Jeffrey Pfau
|
ea41ef7ae6
|
Fix main thread stalling when starting a game
|
2013-10-17 23:10:16 -07:00 |
Jeffrey Pfau
|
62d941a979
|
Plumb through filename for checking overrides
|
2013-10-17 01:07:08 -07:00 |
Jeffrey Pfau
|
451c16f4cb
|
Fix overwriting DISPSTAT with fixed values for the lower bits
|
2013-10-16 22:23:32 -07:00 |
Jeffrey Pfau
|
a1fb90635f
|
Functions for explicitly pausing and unpausing
|
2013-10-16 00:52:52 -07:00 |
Jeffrey Pfau
|
a107243c7a
|
Support pausing
|
2013-10-16 00:46:09 -07:00 |
Jeffrey Pfau
|
8e43ffed90
|
Adjust scaling/rotation state for backgrounds regardless of if they were actually drawn
|
2013-10-15 22:58:47 -07:00 |
Jeffrey Pfau
|
f4a1e994d6
|
Mark BG*CNT registers as safe to read
|
2013-10-15 21:55:28 -07:00 |
Jeffrey Pfau
|
0120ea93a5
|
Sprites shouldn't be blended if the current window has blending disabled
|
2013-10-15 21:44:47 -07:00 |
Jeffrey Pfau
|
1b5dd352af
|
Sprites can only be color variants when they aren't forced semitransparent
|
2013-10-15 02:09:23 -07:00 |
Jeffrey Pfau
|
1b54f50daa
|
Allow sprites to be ordered by priority in addition to OAM order
|
2013-10-15 01:45:49 -07:00 |
Jeffrey Pfau
|
ee344f0dca
|
Optimize and fix IntrWait, make sure that SVC doesn't trample its input register r0
|
2013-10-15 00:50:07 -07:00 |
Jeffrey Pfau
|
9430040cb3
|
Check for some invalid memory regions before performing BIOS decompression routines
|
2013-10-13 20:12:30 -07:00 |
Jeffrey Pfau
|
67007ee002
|
Fix 8-bit VRAM writes
|
2013-10-13 15:23:39 -07:00 |
Jeffrey Pfau
|
ee44e2ac89
|
Add Super Mario Bros. Advance 4 to the override list
|
2013-10-13 15:06:32 -07:00 |
Jeffrey Pfau
|
187687403c
|
Fix EEPROM initialization
|
2013-10-13 12:14:32 -07:00 |
Jeffrey Pfau
|
a20117ec14
|
Fix Huffman destinations
|
2013-10-13 12:14:16 -07:00 |
Jeffrey Pfau
|
9d08997fdc
|
Fix Huffman with tree sizes >127
|
2013-10-13 03:25:46 -07:00 |
Jeffrey Pfau
|
3ca0a97ca1
|
Prepopulate RCNT
|
2013-10-12 16:37:10 -07:00 |
Jeffrey Pfau
|
d8778cf516
|
Implement Huffman
|
2013-10-12 13:32:23 -07:00 |
Jeffrey Pfau
|
cf298474bc
|
Use 5_6_5 with SDL
|
2013-10-12 02:11:57 -07:00 |
Jeffrey Pfau
|
290b64b171
|
Compile-time flag for disabling debugger
|
2013-10-12 00:34:59 -07:00 |
Jeffrey Pfau
|
b3dc065144
|
Read DISPCNT, fix video register writing
|
2013-10-11 22:04:41 -07:00 |
Jeffrey Pfau
|
de39f23a1b
|
Add ROM override checking, seed with BPEE
|
2013-10-11 22:03:27 -07:00 |
Jeffrey Pfau
|
58611facf1
|
Fix OBJWIN blending modifications on BG modes 0 - 2
|
2013-10-11 00:43:01 -07:00 |
Jeffrey Pfau
|
cff77a3a81
|
Remove extraneous macros by adding a palette variable
|
2013-10-10 23:33:22 -07:00 |
Jeffrey Pfau
|
e789b324dc
|
Refactor BREAK_WINDOW into _breakWindow, fix bug cleaning up extra windows
|
2013-10-10 01:40:49 -07:00 |
Jeffrey Pfau
|
c19d1117f1
|
Add timings to CpuSet and CpuFastSet
|
2013-10-09 01:57:53 -07:00 |
Jeffrey Pfau
|
09a0f95ed4
|
Actually use GBATestIRQ
|
2013-10-09 01:56:59 -07:00 |
Jeffrey Pfau
|
6906df95e2
|
VCOUNT is not properly reset on wrap
|
2013-10-09 01:09:09 -07:00 |
Jeffrey Pfau
|
9698531702
|
Clean up thread starting, stopping and sound
|
2013-10-09 00:44:31 -07:00 |
Jeffrey Pfau
|
2f9bcf63b7
|
Clean up audio sync code
|
2013-10-08 22:36:55 -07:00 |
Jeffrey Pfau
|
84ad94b85e
|
Support loading BIOS
|
2013-10-08 22:36:19 -07:00 |
Jeffrey Pfau
|
68d85ab9b7
|
Implement VRAM load/store8
|
2013-10-08 21:43:43 -07:00 |
Jeffrey Pfau
|
3e3bb58ae5
|
Minor timing fixes
|
2013-10-08 02:10:43 -07:00 |
Jeffrey Pfau
|
40a0a0eb11
|
Fix reading 32-bit unaligned IO registers
|
2013-10-06 12:28:48 -07:00 |
Jeffrey Pfau
|
45501658b5
|
Sync to audio by default
|
2013-10-05 02:52:57 -07:00 |
Jeffrey Pfau
|
4ef6a70731
|
Refactor frame synchronization
|
2013-10-05 02:11:53 -07:00 |
Jeffrey Pfau
|
2f00e3d146
|
Don't trample audio buffer
|
2013-10-03 12:08:52 -07:00 |
Jeffrey Pfau
|
0dd69e8273
|
Fix incorrect condition in FIFO sampling
|
2013-10-03 01:23:16 -07:00 |
Jeffrey Pfau
|
ba0596da07
|
Hook up audio for DMA sound channels
|
2013-10-02 02:40:16 -07:00 |
Jeffrey Pfau
|
a834f8b1f6
|
Sample FIFOs with sound DMA timer
|
2013-10-02 00:46:51 -07:00 |
Jeffrey Pfau
|
09b4a4a29a
|
Build up DMA channel audio infrastructure from GBA.js
|
2013-10-01 23:56:10 -07:00 |
Jeffrey Pfau
|
9bf6b571b1
|
Fix naming
|
2013-09-30 02:02:26 -07:00 |
Jeffrey Pfau
|
f5bcb1eace
|
Change log level to mask
|
2013-09-30 01:48:41 -07:00 |
Jeffrey Pfau
|
aaaafb90a5
|
Add ability to get thread-specific GBA
|
2013-09-30 01:42:31 -07:00 |
Jeffrey Pfau
|
be36c1b5d6
|
Clean up error handling a bit
|
2013-09-30 01:31:14 -07:00 |
Jeffrey Pfau
|
3439fa5bf4
|
Start audio
|
2013-09-30 01:23:58 -07:00 |
Jeffrey Pfau
|
25885e1e82
|
Invalid memory reads
|
2013-09-27 23:48:56 -07:00 |
Jeffrey Pfau
|
453fdac3fe
|
Fix ArcTan2
|
2013-09-27 09:48:04 -07:00 |
Jeffrey Pfau
|
f8341f2d20
|
Rotate 16-bit unaligned loads
|
2013-09-27 02:07:44 -07:00 |
Jeffrey Pfau
|
f6e1e6e6d5
|
Fix OBJWIN for backgrounds
|
2013-09-26 17:12:46 -07:00 |
Jeffrey Pfau
|
07d3fbaceb
|
Support 16-bit color again
|
2013-09-26 15:11:09 -07:00 |
Jeffrey Pfau
|
187e099f25
|
Fix sorting in _composite
|
2013-09-26 10:35:26 -07:00 |
Jeffrey Pfau
|
662feed390
|
Always go through pointers for load and store
|
2013-09-25 22:11:58 -07:00 |
Jeffrey Pfau
|
fcdbbf2a43
|
Fix bank switch detection
|
2013-09-25 04:48:27 -07:00 |
Jeffrey Pfau
|
a0505ee7d7
|
Pepper memory access functions with warnings
|
2013-09-24 23:10:51 -07:00 |
Jeffrey Pfau
|
1a3f28d2b0
|
Start implementing OBJWIN
|
2013-09-24 22:58:53 -07:00 |
Jeffrey Pfau
|
cec9e67d88
|
Support flash game saves
|
2013-09-23 23:05:25 -07:00 |
Jeffrey Pfau
|
abc89982be
|
Windows on backdrop and blending with backdrop
|
2013-09-23 20:39:28 -07:00 |
Jeffrey Pfau
|
8132341b75
|
Support reading 8-bit values from palette RAM
|
2013-09-22 16:45:36 -07:00 |
Jeffrey Pfau
|
34ddb09516
|
Plumb through filename for proper saves
|
2013-09-22 16:45:19 -07:00 |
Jeffrey Pfau
|
388dbc0851
|
Fix window values where start >= max being broken
|
2013-09-22 15:14:14 -07:00 |
Jeffrey Pfau
|
2a6e7db693
|
Make GBALog actually use its log levels
|
2013-09-22 15:01:23 -07:00 |
Jeffrey Pfau
|
e7622ed70f
|
Fix tiles being shifted when adjusting outX
|
2013-09-22 11:15:52 -07:00 |
Jeffrey Pfau
|
ddf078383a
|
Fix buffer underrun in mode 0 rendering
|
2013-09-22 03:59:33 -07:00 |
Jeffrey Pfau
|
2ce017b555
|
Fix WIN0H writing with overlapping values
|
2013-09-22 03:00:43 -07:00 |
Jeffrey Pfau
|
4523777bee
|
Fix initializing savegames when writing to disk fails
|
2013-09-22 02:13:03 -07:00 |
Jeffrey Pfau
|
e80ab4c855
|
Make debugger optional
|
2013-09-21 18:10:13 -07:00 |
Jeffrey Pfau
|
9d10ca3f90
|
Move out int declarations for stricter parsers
|
2013-09-21 01:27:16 -07:00 |
Jeffrey Pfau
|
85e1c2d573
|
Exploit cache locality for slightly faster drawing
|
2013-08-03 01:15:08 -07:00 |
Jeffrey Pfau
|
3301cc9f97
|
Reuse code for splitting WIN0 for WIN1
|
2013-07-31 00:48:57 -07:00 |
Jeffrey Pfau
|
d2f15f4af4
|
Window bounds enforced
|
2013-07-31 00:48:34 -07:00 |
Jeffrey Pfau
|
0939d5e2bc
|
Fix WIN0 cases
|
2013-07-31 00:24:21 -07:00 |
Jeffrey Pfau
|
5a685558c7
|
Window respects y coordinate now
|
2013-07-30 21:39:25 -07:00 |
Jeffrey Pfau
|
453939fc8d
|
Sloppy first implementation of windows
|
2013-07-29 03:33:22 -07:00 |
Jeffrey Pfau
|
7291fcfe9e
|
Start windows
|
2013-07-29 01:46:09 -07:00 |
Jeffrey Pfau
|
27f5468e01
|
Writing for Window registers
|
2013-07-29 01:30:27 -07:00 |
Jeffrey Pfau
|
3f122dcf14
|
Fix 8-bit I/O writes
|
2013-07-29 01:30:06 -07:00 |
Jeffrey Pfau
|
15aa862d70
|
Small optimization for sprite drawing
|
2013-07-29 00:44:38 -07:00 |
Jeffrey Pfau
|
76cd712907
|
Fix modes 4 and 5
|
2013-07-26 00:10:33 -07:00 |
Jeffrey Pfau
|
3537099820
|
Fix sprites 64+ not drawing
|
2013-07-21 21:10:12 -07:00 |
Jeffrey Pfau
|
774b7d75bc
|
Fix broken bitmap
|
2013-07-21 19:04:24 -07:00 |
Jeffrey Pfau
|
6829b54234
|
Bitmap of enabled sprites
|
2013-07-21 18:58:32 -07:00 |
Jeffrey Pfau
|
edecf6c1f6
|
Minor optimization to backgroud mode 0
|
2013-07-21 18:56:45 -07:00 |
Jeffrey Pfau
|
da7853bda6
|
Mode 5
|
2013-07-20 01:46:40 -07:00 |
Jeffrey Pfau
|
15a2e43b2b
|
Fix read/write 0x0400020A
|
2013-07-20 01:40:17 -07:00 |
Jeffrey Pfau
|
02cb9c56c5
|
Reuse bitmap mode background code
|
2013-07-20 01:38:13 -07:00 |
Jeffrey Pfau
|
90ddf937a5
|
Implement modes 3 and 4
|
2013-07-19 21:51:14 -07:00 |
Jeffrey Pfau
|
1e4a82ef5b
|
Update GBA BIOS from GBA.js
|
2013-07-18 02:14:22 -07:00 |
Jeffrey Pfau
|
6a1afbda50
|
8-bit write to IO
|
2013-07-18 02:13:49 -07:00 |
Jeffrey Pfau
|
f8b0acd86a
|
Fix tile mapping for 256-color sprites
|
2013-05-13 02:47:11 -07:00 |
Jeffrey Pfau
|
c20efb42ff
|
Clean up thread locking in the software renderer
|
2013-05-11 21:07:10 -07:00 |
Jeffrey Pfau
|
63b72657c1
|
Fix transformed sprites that are off the top of the screen
|
2013-05-11 18:36:35 -07:00 |
Jeffrey Pfau
|
f7ddc3a2b6
|
Implement RLUnCompWram/RLUnCompVram
|
2013-05-11 18:22:23 -07:00 |
Jeffrey Pfau
|
a6d87bbfb9
|
Better cycle counting for STR
|
2013-05-11 18:01:16 -07:00 |