Jeffrey Pfau
805e0b17eb
All: Add manpage to CMake
2015-08-09 01:52:49 -07:00
Jeffrey Pfau
e422c64a25
Qt: Convert several dialogs into QDialogs
2015-08-08 21:39:33 -07:00
Jeffrey Pfau
12ef93d784
Qt: Use openView for GDBWindow
2015-08-08 21:38:47 -07:00
Jeffrey Pfau
0fb8f51df4
GBA Hardware: Fix savestates with the Game Boy Player attached
2015-08-08 13:20:30 -07:00
Jeffrey Pfau
c9c9ff802c
Debugger: Only support breaking into the external debugger in debug builds
2015-08-08 02:26:35 -07:00
Anthony J. Bentley
7a311b339c
Qt: Really fix forums link
2015-08-08 01:38:29 -06:00
Jeffrey Pfau
db17646fe5
Qt: Fix forums link
2015-08-07 23:23:20 -07:00
Jeffrey Pfau
a9620df0b8
Qt: Create a new cheat set if no cheat set is specified
2015-08-07 21:04:47 -07:00
Jeffrey Pfau
3dc22d9cc5
Qt: Ensure frame size options stay checked
2015-08-07 20:26:19 -07:00
Jeffrey Pfau
c39be359df
Qt: Fix regression with held reverse breaking ( fixes #78 )
2015-08-07 19:10:08 -07:00
Jeffrey Pfau
9a5ac0bf72
Qt: Fix pausing and disable double buffering, since it is no longer needed
2015-08-06 19:42:08 -07:00
Jeffrey Pfau
870c8ebb8c
Qt: Fix sync, hopefully
2015-08-06 19:04:03 -07:00
Jeffrey Pfau
74c4cbe33e
GUI: Add scrolling
2015-08-06 15:43:45 -07:00
Jeffrey Pfau
94e329a58c
Wii: Add file selector from PSP2 port
2015-08-06 15:29:46 -07:00
Jeffrey Pfau
3b353ac621
Third-Party: Include zlib if not present
2015-08-06 11:45:02 -07:00
Jeffrey Pfau
8dd6a82201
Wii: Triple buffer audio until I can figure out why double buffering is garbage
2015-08-06 01:52:15 -07:00
Jeffrey Pfau
891d0c8541
Wii: Fix vsync issues
2015-08-06 00:50:58 -07:00
Jeffrey Pfau
607c7ec890
Wii: Fix silly mistake in audio code
2015-08-06 00:33:38 -07:00
Jeffrey Pfau
74ac89a584
PSP2: Move GUI_SRC dependency into ports that use it
2015-08-06 00:23:59 -07:00
Jeffrey Pfau
dabd72ac13
Wii: Initial, very broken audio support
2015-08-06 00:16:24 -07:00
Jeffrey Pfau
0cd28060e0
Merge branch 'master' into port/wii
2015-08-05 22:48:20 -07:00
Jeffrey Pfau
3dc02dc81c
Qt: Set window path to loaded ROM
2015-08-05 18:10:33 -07:00
Jeffrey Pfau
8e735a4668
Qt: Show checkmark for window sizes
2015-08-05 18:09:58 -07:00
Jeffrey Pfau
cf8e84a1f8
Qt: Fix passing command line options
2015-08-05 18:04:31 -07:00
Jeffrey Pfau
742296b8b9
Qt: Better window size handling
2015-08-05 01:03:07 -07:00
Jeffrey Pfau
a1808a2387
Qt: Switch default AudioProcessor to SDL
2015-08-05 00:41:57 -07:00
Jeffrey Pfau
03d2b3312e
Qt: Initialize draw context
2015-08-04 22:14:42 -07:00
Jeffrey Pfau
481833c205
Qt: Maybe don't resize the background
2015-08-04 22:13:11 -07:00
Jeffrey Pfau
de25c0db6b
Qt: Autofocus on the right save slot
2015-08-04 22:07:30 -07:00
Jeffrey Pfau
d4721cb30d
Qt: Force redraw when window gets focus
2015-08-04 19:59:59 -07:00
Jeffrey Pfau
071fe7ff2d
GBA Thread: Automatically load patches, if detected
2015-08-04 19:35:26 -07:00
Jeffrey Pfau
6dda6cc841
Qt: Fix cursor inconsistencies ( fixes #69 )
2015-08-04 19:14:19 -07:00
Jeffrey Pfau
b0b0b46413
SDL: Reduce rumble lag time
2015-08-04 18:27:58 -07:00
Jeffrey Pfau
a6ff9f6c60
Qt: Fix frame delay with pausing and frame advancing
2015-08-03 23:52:18 -07:00
Jeffrey Pfau
6ae001037d
Qt: Redraw screen when a status message is posted
2015-08-03 20:28:46 -07:00
Jeffrey Pfau
03f166509f
Qt: Make keymapper present more information, and space things out a bit more
2015-08-03 20:07:59 -07:00
Jeffrey Pfau
55866f8beb
Qt: Redo key shortcut editing
2015-08-03 20:02:50 -07:00
Jeffrey Pfau
5c32172076
Qt: Make keymapper present more information, and space things out a bit more
2015-08-02 15:28:53 -07:00
Jeffrey Pfau
df11c9d7f3
Qt: Allow setting of audio channels and video layers while games are not running
2015-08-02 12:46:23 -07:00
Jeffrey Pfau
ea91c48d3e
GBA: Add option to not hard-crash when a game crashes
2015-08-02 11:45:26 -07:00
Jeffrey Pfau
7fb1b90abf
Qt: Fix library ordering to ensure proper link order
2015-08-01 17:52:28 -07:00
Jeffrey Pfau
88ff7eda5e
Qt: Fix and clarify OpenGL checks for Qt
2015-08-01 10:27:03 -07:00
Jeffrey Pfau
4e3bad6cd6
SDL: BUILD_GLES2 should have the GBAGLES2Context
2015-08-01 09:22:16 -07:00
Jeffrey Pfau
d312aa2c7a
SDL: Fix some warnings
2015-07-31 21:53:53 -07:00
Jeffrey Pfau
de61a4aea4
SDL: Fix Raspberry Pi build
2015-07-31 21:50:24 -07:00
Jeffrey Pfau
dfd5c02e57
SDL: Actually remember to move the file this time
2015-07-31 21:41:29 -07:00
Jeffrey Pfau
03db6b3833
GBA Input: Fix warnings
2015-07-31 16:52:18 -07:00
Jeffrey Pfau
a8cbb100ea
SDL: Add missing files
2015-07-31 16:15:24 -07:00
Jeffrey Pfau
71be640e63
SDL: Use some common GL functionality between GL and GLESv2
2015-07-31 16:12:11 -07:00
Jeffrey Pfau
59f101eb49
Qt: Fix Windows build when Qt Multimedia is disabled
2015-07-31 13:09:17 -07:00
Jeffrey Pfau
87c4839c1b
Qt: Disable the Qt Multimedia build on Windows, since it's so broken
2015-07-31 12:51:57 -07:00
Jeffrey Pfau
687af6fd20
All: Find GLESv2 separately from GL
2015-07-31 12:42:33 -07:00
Jeffrey Pfau
13fbf3e6e3
Qt: Fix non-SDL build with compilers that fail to respect short-circuiting
2015-07-30 23:26:47 -07:00
Jeffrey Pfau
5a932631be
Libretro: Adjust light level with L3 and R3
2015-07-30 22:55:19 -07:00
Jeffrey Pfau
3a31577cab
Libretro: Support solar sensor
2015-07-30 18:01:16 -07:00
Jeffrey Pfau
903a8a654d
Qt: Use GLES2 if enabled and GL isn't found
2015-07-30 15:14:19 -07:00
Jeffrey Pfau
46e24e84da
OpenGL: Create video backend for GLES2, used on Raspberry Pi
2015-07-30 15:07:14 -07:00
Jeffrey Pfau
9b66243e37
Qt: Add about screen
2015-07-29 22:38:39 -07:00
Jeffrey Pfau
5c1140c34e
GBA Video: Fix bg mode 3 - 5 tiles properly this time
2015-07-29 01:18:34 -07:00
Jeffrey Pfau
36047f4c44
Revert "GBA Video: Fix sprites in modes 3 - 5 when character mapping is disabled"
...
This reverts commit cd3b9cdc6b
.
2015-07-29 01:18:34 -07:00
Jeffrey Pfau
5f572ffb62
GBA Video: Callback for VRAM writes
2015-07-29 01:18:34 -07:00
Anthony J. Bentley
7506bf8f19
Debugger: Accept break/a, break/t
2015-07-29 02:08:36 -06:00
Anthony J. Bentley
19d7d90119
Qt: Fix non-SDL2 build
2015-07-28 23:36:10 -06:00
Anthony J. Bentley
b7545bfe46
All: OpenBSD build fixes
2015-07-28 17:50:07 -06:00
endrift
3d4096c715
Merge pull request #71 from D-Pyro/port/psp2
...
Update memory.c
2015-07-28 16:25:09 -07:00
D-Pyro
ac408cab59
Update memory.c
...
Fix sysmem.h include
2015-07-28 19:21:37 -04:00
Jeffrey Pfau
cd3b9cdc6b
GBA Video: Fix sprites in modes 3 - 5 when character mapping is disabled
2015-07-28 10:03:11 -07:00
Jeffrey Pfau
fa7660020f
Qt: Fix non-SDL2 build
2015-07-28 09:08:53 -07:00
Jeffrey Pfau
2b80e3573f
All: OpenBSD build fixes
2015-07-28 09:04:44 -07:00
Jeffrey Pfau
ade9402578
PSP2: Add GUI framework and use for file chooser
2015-07-28 00:59:28 -07:00
Jeffrey Pfau
cddae84a43
PSP2: Implement VDirSce
2015-07-27 21:46:23 -07:00
Jeffrey Pfau
08c6943c93
PSP2: Move running functionality into separate file
2015-07-27 21:16:48 -07:00
Jeffrey Pfau
68e70b61f1
Merge branch 'master' into port/psp2
2015-07-26 19:43:11 -07:00
Jeffrey Pfau
818bde5869
GBA: Add function for loading default overrides
2015-07-26 18:32:25 -07:00
Jeffrey Pfau
d957736ed9
PSP2: Load default overrides
2015-07-26 18:22:33 -07:00
Jeffrey Pfau
5c6f8e3799
GBA: Add function for loading default overrides
2015-07-26 18:22:17 -07:00
Jeffrey Pfau
1300b7570d
PSP2: Add fullscreen toggle
2015-07-26 16:28:49 -07:00
Jeffrey Pfau
e3f0c87399
PSP2: Mostly functional sound
2015-07-26 16:13:18 -07:00
Jeffrey Pfau
a669eebaa7
PSP2: Fix GBAInputMap leak
2015-07-26 12:01:56 -07:00
Jeffrey Pfau
509fabb42f
PSP2: Analog stick support
2015-07-26 11:43:36 -07:00
Jeffrey Pfau
f5092737ff
GBA Input: Add GBAInputMapKeyBits for packed key information
2015-07-26 11:20:46 -07:00
Jeffrey Pfau
7c87bcd616
PSP2: Use GBAInputMapKeyBits for remappable keys
2015-07-26 11:20:32 -07:00
Jeffrey Pfau
33b66e5d44
GBA Input: Add GBAInputMapKeyBits for packed key information
2015-07-26 11:19:10 -07:00
Jeffrey Pfau
8c1194244d
Qt: Fix analog buttons not getting unmapped
2015-07-25 22:02:16 -07:00
Jeffrey Pfau
24a910c9d3
Qt: Buttons for clearing analog and buttons
2015-07-25 21:55:28 -07:00
Jeffrey Pfau
3c55784c54
GBA Hardware: Game Boy Player detection is off by default
2015-07-25 12:19:19 -07:00
Jeffrey Pfau
036784e49f
PSP2: Triangle to exit (temporary until a menu is created)
2015-07-24 22:52:08 -07:00
Jeffrey Pfau
96add00a5b
PSP2: Disable alpha
2015-07-24 22:48:43 -07:00
Jeffrey Pfau
47332ef017
PSP2: Fix build
2015-07-24 22:39:32 -07:00
Jeffrey Pfau
127a2d0820
PSP2: Update threading.h for newer SDK
2015-07-24 21:21:04 -07:00
Jeffrey Pfau
97b82ae6cd
VFS: Fix file handle leak in 7z
2015-07-24 19:57:57 -07:00
Jeffrey Pfau
e9436e43db
Qt: Reduce duplicated lines
2015-07-24 00:02:14 -07:00
Jeffrey Pfau
a08f092913
Qt: Allow keys and axes to be bound at the same time
2015-07-24 00:02:14 -07:00
Jeffrey Pfau
500eeb7ee3
GBA Input: Unbind axes at the appropriate time
2015-07-24 00:02:13 -07:00
Jeffrey Pfau
e9c82df518
Qt: Fix rewinding enabling the menu bar
2015-07-22 21:34:49 -07:00
Jeffrey Pfau
da226abba6
Qt: Add 360 profile for Linux
2015-07-22 21:22:50 -07:00
Jeffrey Pfau
b9c9425464
Qt: Hacky way to swap out focus for a gamepad ( fixes #64 )
2015-07-22 21:16:28 -07:00
Jeffrey Pfau
0ecdc1ac44
GBA Config: Functions for loading and saving configs from a path
2015-07-21 19:46:39 -07:00
Twinaphex
037e518f5c
(iOS) Fix build - to16Bit ARM routine not iOS ABI-compatible
2015-07-20 23:03:59 -07:00
Jeffrey Pfau
7015f38b37
Qt: Save and quit on Stop call
2015-07-19 18:35:18 -07:00
Jeffrey Pfau
393252718f
Qt: Ensure thread has not exited if we say it is open
2015-07-19 18:14:35 -07:00
Jeffrey Pfau
2575097b7c
GBA BIOS: Stub out SoundBias
2015-07-19 18:14:09 -07:00
Jeffrey Pfau
d588b8c462
GBA BIOS: Implement Stop
2015-07-19 18:13:29 -07:00
Jeffrey Pfau
75fb2548bb
Qt: Bind controllers to specific windows
2015-07-18 00:20:54 -07:00
Jeffrey Pfau
85c4162ad1
Libretro: BIOS loading
2015-07-17 20:48:23 -07:00
Jeffrey Pfau
1975fc7706
Qt: Fix SDL build
2015-07-17 18:22:57 -07:00
Jeffrey Pfau
3a53e27927
Qt: Update input profiles
2015-07-17 18:22:46 -07:00
Jeffrey Pfau
b6889d77f8
GBA Input: Allow axes and buttons to be mapped to the same key
2015-07-17 18:22:27 -07:00
Jeffrey Pfau
d0bc4d4f4e
Qt: Reduce time that it takes for the mouse to disappear
2015-07-17 00:07:28 -07:00
Jeffrey Pfau
8ff8876e37
Qt: Block a bug whereby undoing a save can overwrite the wrong save
2015-07-16 23:50:33 -07:00
Jeffrey Pfau
f05cc8d139
Qt: Add missing separator
2015-07-16 23:48:36 -07:00
Jeffrey Pfau
963758c348
Qt: Default controller profiles, with a few included already
2015-07-16 23:45:55 -07:00
Jeffrey Pfau
b9c276ee30
Qt: Put undo savestate in the correct menu
2015-07-15 00:28:53 -07:00
Jeffrey Pfau
8ef50827fd
Qt: Controller profiles now store shortcut settings
2015-07-14 22:51:27 -07:00
Jeffrey Pfau
73518ceda5
Qt: Add savestate save undo
2015-07-14 20:45:29 -07:00
Jeffrey Pfau
b3cf9ec162
Qt: Only hide cursor if the display is the top widget
2015-07-13 22:09:20 -07:00
Jeffrey Pfau
f50f98416b
Qt: Add savestate load undo
2015-07-13 21:56:05 -07:00
Jeffrey Pfau
5ed05dc66f
GBA: Get GB Player working with savestates
2015-07-13 21:19:01 -07:00
Jeffrey Pfau
43d9c8b754
GBA: Gigantic refactor and add preliminary Game Boy Player support
2015-07-13 20:46:41 -07:00
Jeffrey Pfau
56208521d6
ARM7: Fix decoding LDR3
2015-07-13 01:15:59 -07:00
Jeffrey Pfau
4d5c1f9849
Qt: Hide cursor opportunistically
2015-07-12 17:42:30 -07:00
Jeffrey Pfau
18ec3de2e2
Libretro: Add rumble support
2015-07-12 15:49:27 -07:00
Jeffrey Pfau
386da2accd
VFS: Add VFile.sync for memory vfs
2015-07-12 15:49:04 -07:00
Jeffrey Pfau
1b8fe1aa09
Qt: Add fast forward cap to settings
2015-07-12 12:27:15 -07:00
Jeffrey Pfau
712b0ccb84
Qt: Ensure proper audio sample rate is used when resampling audio
2015-07-12 00:19:17 -07:00
Jeffrey Pfau
9d7b79db27
GBA: Cannot clean a savefile if there is no vf
2015-07-11 16:32:11 -07:00
Jeffrey Pfau
0496691c9b
Qt: Prompt for restart when changing display driver
2015-07-11 14:51:09 -07:00
Jeffrey Pfau
6a426c0891
Third-Party: Add libpng
2015-07-09 23:21:03 -07:00
Jeffrey Pfau
1ee5ccd1ff
GBA: Clean up non-standard logging a bit
2015-07-09 21:55:13 -07:00
Jeffrey Pfau
f6581773d8
GBA: Remove GBA_LOG_INFO from default log levels
2015-07-08 20:43:26 -07:00
Jeffrey Pfau
305e8c009c
GBA Hardware: Use localtime_s on Win32 and PSP2
2015-07-08 19:28:28 -07:00
Jeffrey Pfau
9911484aee
Qt: Add confirmation for making portable
2015-07-07 22:51:28 -07:00
Jeffrey Pfau
f0c8c246cc
VFS: Fix Windows build
2015-07-07 01:03:36 -07:00
Jeffrey Pfau
c4800792ec
PSP2: Add dummy VDirOpen for now
2015-07-07 00:38:25 -07:00
Jeffrey Pfau
e0e6235657
PSP2: Implement VFileSce.sync
2015-07-07 00:38:10 -07:00
Jeffrey Pfau
33ca1e2e9c
Merge branch 'master' into port/psp2
2015-07-07 00:30:29 -07:00
Jeffrey Pfau
4b3df31e49
GBA: Savedata is now synced shortly after data finishes being written
2015-07-07 00:30:10 -07:00
Jeffrey Pfau
250d3b940d
VFS: Add sync method to force syncing with backing
2015-07-07 00:27:08 -07:00
Jeffrey Pfau
b4c3440bc4
GBA Cheats: Fix Pro Action Replay and GameShark issues when used together
2015-07-06 23:12:06 -07:00
Jeffrey Pfau
a0a38caabe
PSP2: More threading improvements
2015-07-05 21:22:54 -07:00
Jeffrey Pfau
2ae4030c19
PSP2: Fix ConditionWaitTimed
2015-07-05 18:19:26 -07:00
Jeffrey Pfau
fd809b3b39
GBA: Fix Windows build
2015-07-05 15:00:29 -07:00
Jeffrey Pfau
38ec77b803
Qt: Menu option to make portable
2015-07-05 14:42:11 -07:00
Jeffrey Pfau
9a9381bda9
PSP2: Add (untested) threading implementation
2015-07-05 14:00:13 -07:00
Jeffrey Pfau
883f6dbb48
Third-Party: Fix inih on PSP2
2015-07-05 13:59:33 -07:00
Jeffrey Pfau
a6fe304ad5
Merge branch 'master' into port/psp2
2015-07-05 13:05:50 -07:00
Jeffrey Pfau
d9778a98d4
Util: Check for SETLOCALE too
2015-07-05 13:05:09 -07:00
Jeffrey Pfau
32cb7bfcdc
GBA Thread: Properly use _WIN32 to increase portability
2015-07-05 12:55:53 -07:00
Jeffrey Pfau
6c87c1c69d
GBA Video: Slightly optimize mode 0 mosaic rendering
2015-07-05 02:12:22 -07:00
Jeffrey Pfau
61ddffbcae
PSP2: Use vita2d for drawing
2015-07-04 21:44:38 -07:00
Jeffrey Pfau
2e43210eac
PSP2: Initial support
2015-07-04 20:56:27 -07:00
Jeffrey Pfau
3f2426ef4c
Qt: Initialize some members in Display
2015-07-04 01:40:13 -07:00
Jeffrey Pfau
016b64bf15
Qt: Initial logging throughout
2015-07-04 01:24:37 -07:00
Jeffrey Pfau
ebca878c31
Qt: Replace remaining toLocal8Bit with toUtf8
2015-07-04 01:06:13 -07:00
Jeffrey Pfau
e0a6af087e
Qt: Adjust memory selection by shift-clicking
2015-07-04 00:38:08 -07:00
Jeffrey Pfau
abdf448f81
Qt: Fix memory editing overlay not displaying hex A-F properly
2015-07-04 00:32:28 -07:00
Jeffrey Pfau
3c9433b74c
Qt: Central log controller
2015-07-04 00:16:26 -07:00
Jeffrey Pfau
4e6ed63848
GBA Memory: Revert lazy prefetch
...
This reverts commits d4ecdfc2ac
and aed62605cf
.
2015-07-03 00:22:28 -07:00
Jeffrey Pfau
e8b5127dac
Qt: Configurable display driver (requires restart)
2015-07-03 00:05:55 -07:00
Jeffrey Pfau
41c19a8f09
Qt: Fix setting the display driver
2015-07-02 23:21:25 -07:00
Jeffrey Pfau
5b3fd879b4
Qt: Pre-render messages for improved speed
2015-07-02 23:19:29 -07:00
Jeffrey Pfau
7395d47a5a
Qt: Move message painting into Display
2015-07-02 22:17:06 -07:00
Lioncash
2141868cf2
Qt: (GameController) Add a missing va_end call to the log handler lambda
2015-07-02 10:21:22 -04:00
Jeffrey Pfau
06f02ef873
GBA Config: Check current directory for portable.ini
2015-07-01 21:55:21 -07:00
Jeffrey Pfau
27898fb1f3
Qt: Prevent messages from queuing up too quickly ( fixes #43 )
2015-07-01 21:08:29 -07:00
Jeffrey Pfau
5afa24c656
GBA: Properly handle failed loading of PNG savestates
2015-07-01 19:56:10 -07:00
Jeffrey Pfau
b3ea09e150
GBA: Savestates with negative audio registers are only relevant if not dead
2015-07-01 19:43:34 -07:00
Jeffrey Pfau
d4ecdfc2ac
GBA Memory: Fix prefetch invalidation delay
2015-07-01 19:24:15 -07:00
endrift
ac7a9a8174
Merge pull request #40 from waddlesplash/patch-1
...
All: initial work on MSVC support.
2015-07-01 00:19:57 -07:00
Jeffrey Pfau
aed62605cf
GBA Memory: Lazily evaluate prefetch
2015-06-30 21:39:40 -07:00
Augustin Cavalier
fc74db8c09
All: Initial work on MSVC support.
2015-06-30 22:09:17 -04:00
Jeffrey Pfau
bddebef90b
Qt: Fix window being too tall after exiting fullscreen ( fixes #45 )
2015-06-29 22:47:07 -07:00
Jeffrey Pfau
df79ee19c3
Qt: Fix fullscreen shortcut on Windows
2015-06-29 22:29:16 -07:00
Jeffrey Pfau
5bae2087fe
All: Proper handling of Unicode file paths
2015-06-29 22:24:53 -07:00
Jeffrey Pfau
99878b32ca
GBA Hardware: Backport generic RTC source into core
2015-06-29 21:09:36 -07:00
Jeffrey Pfau
908e61f415
All: Add clang-format options and run them
2015-06-29 20:45:08 -07:00
Jeffrey Pfau
3ba13e9286
SDL: Fix finding pixman
2015-06-29 19:33:08 -07:00
endrift
1c367c390e
Merge pull request #52 from lioncash/typo
...
ARM: ARMHotplugDetach should call deinit
2015-06-29 19:20:15 -07:00
Jeffrey Pfau
5f8548b8dc
GBA Audio: Fix 8-bit writes to audio channel 3 frequency
2015-06-29 01:30:59 -07:00
Jeffrey Pfau
8a0c5b9a1f
GBA Audio: Fix sample order in audio channel 3
2015-06-29 01:08:14 -07:00
Jeffrey Pfau
841a0909b9
GBA Audio: Implement audio reset for channels A/B
2015-06-29 01:07:28 -07:00
Lioncash
3736462c14
arm: ARMHotplugDetach should call deinit.
2015-06-29 03:17:04 -04:00
Jeffrey Pfau
735d7642e0
GBA Hardware: Fix embarrassing build breakage
2015-06-28 23:58:21 -07:00
Jeffrey Pfau
527fbf0fc5
GBA Hardware: Add a function for detecting a GB Player-compatible game
2015-06-28 23:50:17 -07:00
Jeffrey Pfau
0772fc4967
GBA Memory: Optimize stall code
2015-06-28 22:39:52 -07:00
Jeffrey Pfau
9bee2f4cd3
VFS: Make VFileFILE.unmap only write back if the file was mapped as writable
2015-06-28 17:52:27 -07:00
Jeffrey Pfau
697b550b37
Qt: Fix screen not redrawing when loading a state
2015-06-28 17:46:07 -07:00
Jeffrey Pfau
0aef1bc6df
Util: Allow loading IPS patches that grow the ROM
2015-06-28 02:00:33 -07:00
Jeffrey Pfau
68790c1b2a
GBA: Fix patching being incompatible with GBAUnloadROM
2015-06-28 01:32:34 -07:00
Jeffrey Pfau
2346c2355a
GBA Memory: Minor prefetch fixes
2015-06-27 14:05:37 -07:00
Jeffrey Pfau
262cbf046c
GBA Memory: More sensible approach to prefetch. It reports fewer successes but on average is more accurate.
2015-06-27 00:14:26 -07:00
Jeffrey Pfau
bd2c472cb3
SDL: Clean up GL context
2015-06-26 02:15:05 -07:00
Jeffrey Pfau
8e8ca17ba3
GBA Memory: Initialize prefetch member
2015-06-26 02:02:29 -07:00
Jeffrey Pfau
346e436b52
GBA Video: Clean up video enum values
2015-06-25 22:59:16 -07:00
Jeffrey Pfau
a85ae6563c
GBA: Fix timing of reading from timer registers
2015-06-22 22:32:46 -07:00
Jeffrey Pfau
9cc4c9e43d
GBA Memory: Fix mystery value
2015-06-22 21:20:37 -07:00
Jeffrey Pfau
93b85215a9
GBA: Don't include GBACLIDebugger struct unless needed
2015-06-22 19:31:19 -07:00
Jeffrey Pfau
42a887369f
VFS: Fix sign warning
2015-06-22 01:38:40 -07:00
Jeffrey Pfau
86a36853ed
GBA: Make sure unloading only frees if needed and always zeroes variable
2015-06-22 01:32:49 -07:00
Jeffrey Pfau
051af279c9
GBA Memory: Implement game pak prefetch approximation
2015-06-22 00:27:21 -07:00
Jeffrey Pfau
bdb7635156
ARM7: Reduce the size of the Thumb instruction table
2015-06-21 16:19:23 -07:00
Jeffrey Pfau
4388e36ddc
GBA: Fix freeing the right things when unloading a ROM
2015-06-20 16:18:06 -07:00
Jeffrey Pfau
2f2e539871
Wii: Use generic VFileOpen
2015-06-20 03:30:42 -07:00
Jeffrey Pfau
52c66de694
Merge branch 'master' into port/wii
2015-06-20 03:25:01 -07:00
Jeffrey Pfau
ef93f68658
VFS: Move VDirOptionalOpenFile back to vfs.c
2015-06-20 03:17:05 -07:00
Jeffrey Pfau
43f9f2dfd3
VFS: VFileOpen can now have a swappable backend
2015-06-20 03:11:11 -07:00
Jeffrey Pfau
2bb16fd0a8
GBA: Better savestate error reporting
2015-06-20 00:49:50 -07:00
Jeffrey Pfau
83dfbe6123
Qt: ROM replacing
2015-06-19 22:29:59 -07:00
Jeffrey Pfau
635fae7d05
GBA: Rom unloading and replacing
2015-06-19 22:28:49 -07:00
Jeffrey Pfau
289e9b0cf1
GBA: Implement more game removal pieces
2015-06-19 22:28:02 -07:00
Jeffrey Pfau
8538e99a08
GBA: Flash erase timing changes
2015-06-19 04:25:29 -07:00
Jeffrey Pfau
833d81ee75
GBA Memory: Prefetch timing changes
2015-06-19 04:25:01 -07:00
Jeffrey Pfau
2a6d79fee2
GBA Memory: Fix load/store multiple video memory waitstates
2015-06-19 02:44:50 -07:00
Jeffrey Pfau
af4d5d7eb1
GBA: Yank support, needs work
2015-06-19 01:12:46 -07:00
Jeffrey Pfau
d524148469
ARM7: Add emulation for Undefined CPU mode
2015-06-19 00:59:52 -07:00
Jeffrey Pfau
270ce0cba3
GBA Video: Refactor software renderer into separate files
2015-06-19 00:33:26 -07:00
Jeffrey Pfau
5e26f74f17
Qt: Fix Windows not being deleted
2015-06-18 19:57:01 -07:00
Jeffrey Pfau
9739f177c7
Wii: Remove bad ssize_t definition
2015-06-18 02:47:41 -07:00
Jeffrey Pfau
80dc3a8fb7
Wii: Bring Wii port in line with other ports
2015-06-18 02:42:23 -07:00
Jeffrey Pfau
e94744d8c7
Merge branch 'master' into port/wii
2015-06-18 02:06:19 -07:00
Jeffrey Pfau
3c18fe162c
Merge branch 'master' into port/3ds
2015-06-18 01:37:29 -07:00
Jeffrey Pfau
6f4871fb72
VFS: Fix line-reading to return proper values
2015-06-18 01:26:46 -07:00
Jeffrey Pfau
6589eade24
Util: Clean up some defines
2015-06-18 01:19:33 -07:00
Jeffrey Pfau
a992fcd3d1
VFS: Move VDirOptionalOpenFile to vfs-dirent.c
2015-06-18 01:16:54 -07:00
Jeffrey Pfau
c0fcec22b7
Util: Separate out platform threading headers
2015-06-18 01:00:35 -07:00
Jeffrey Pfau
8f77c9ffab
GBA Video: Fix regression with sprite visibility
2015-06-18 00:19:21 -07:00
Jeffrey Pfau
e84a01f219
Qt: Make the default fullscreen binding for Windows be Alt-Enter
2015-06-17 22:08:23 -07:00
Jeffrey Pfau
b54f5a997a
All: Include util/string.h wherever strdup is used
2015-06-17 21:50:10 -07:00
Jeffrey Pfau
4bd3555045
GBA Video: Fix windows not affecting sprites
2015-06-16 22:02:19 -07:00
Jeffrey Pfau
3bb8075fe7
Wii: Setup fixes, pad fixes
2015-06-16 22:01:44 -07:00
Jeffrey Pfau
3cddb33288
GBA: Fix calls to endian-independent loadstores
2015-06-16 05:16:16 -07:00
Jeffrey Pfau
2391a10900
GBA: Fix calls to endian-independent loadstores
2015-06-16 05:15:32 -07:00
Jeffrey Pfau
4f04c30f70
Wii: Initial port
2015-06-15 23:02:58 -07:00
Jeffrey Pfau
dc33a4f173
GBA: Fix video callback not being called
2015-06-15 23:02:02 -07:00
Jeffrey Pfau
5c1988c48a
Util: VFile using FILE* backing
2015-06-15 22:35:24 -07:00
Jeffrey Pfau
bbc63a2392
Util: Add strdup implementation for platforms without it
2015-06-14 23:25:49 -07:00
Jeffrey Pfau
021ada03f0
Qt: Memory view minor optimizations
2015-06-13 23:38:14 -07:00
Jeffrey Pfau
437a634ed5
Qt: Memory view saving and copying
2015-06-13 23:38:00 -07:00
Jeffrey Pfau
6d40031d99
Qt: Memory view autoupdate
2015-06-13 22:55:29 -07:00
Jeffrey Pfau
4cb3dad3c3
Qt: Memory view selection boundary fixes
2015-06-13 22:13:21 -07:00
Jeffrey Pfau
edb91143d0
Qt: Memory view scrolling with cursor
2015-06-13 22:05:49 -07:00
Jeffrey Pfau
750027a03c
Qt: Memory viewer bounds and alignment fixes
2015-06-13 21:44:13 -07:00
Jeffrey Pfau
de6808f3c8
Qt: MemoryModel keyboard navigation
2015-06-13 20:58:44 -07:00
Jeffrey Pfau
e9d8f1ca46
Qt: Don't save window size when entering fullscreen
2015-06-13 12:39:09 -07:00
Jeffrey Pfau
f1396aa844
Qt: Rename "Fullscreen" to "Toggle fullscreen"
2015-06-13 12:39:09 -07:00
Jeffrey Pfau
857fc21d21
Util: Fix warning on Windows
2015-06-13 05:09:23 -07:00
Jeffrey Pfau
d1a51637bc
Util: Fix FreeBSD build
2015-06-13 03:26:07 -07:00
Jeffrey Pfau
6529b3edf5
Qt: Make display driver configurable
2015-06-13 03:02:04 -07:00
Jeffrey Pfau
87d26d39f9
All: Clean up OpenGL detection
2015-06-13 03:01:43 -07:00
Jeffrey Pfau
fe845d1ee8
Qt: Use MessagePainter with GL and Qt messages
2015-06-13 02:55:33 -07:00
Jeffrey Pfau
4469a9a05f
All: Threads are now named
2015-06-13 01:41:07 -07:00
Jeffrey Pfau
910ff621b3
ARM7: Fix timing of multiplies to use N cycles
2015-06-12 03:26:50 -07:00
Jeffrey Pfau
f8fd3ae2cc
SDL: Clean up initialization functions
2015-06-12 00:58:03 -07:00
Jeffrey Pfau
d09d0e505f
SDL: Properly check for initialization
2015-06-12 00:58:03 -07:00
Jeffrey Pfau
f2e298f78d
SDL: Fix SDL build when OpenGL is missing
2015-06-12 00:58:02 -07:00
Jeffrey Pfau
4ba576ef87
Qt: Disable held-rewind when a window loses focus
2015-06-11 01:28:04 -07:00
Jeffrey Pfau
40ae214a7d
GBA Thread: Split GBASync into a separate file
2015-06-10 01:06:09 -07:00
Jeffrey Pfau
79e06612cb
Qt: Add app icon
2015-06-10 00:37:11 -07:00
Jeffrey Pfau
5fcba6a8b2
Qt: XDG Desktop file
2015-06-10 00:26:25 -07:00
Jeffrey Pfau
cda462e24f
All: Fix asm to __asm__ in PPC code
2015-06-09 21:22:32 -07:00
Jeffrey Pfau
97da8b43c9
All: Some portability fixes
2015-06-09 21:22:11 -07:00
Jeffrey Pfau
67072e649c
GBA SIO: Some lockstep fixes
2015-06-08 22:53:41 -07:00
Jeffrey Pfau
a816bd960b
GBA: SIO logging layer
2015-06-08 22:53:03 -07:00
Jeffrey Pfau
ce647c8613
SDL: Fix ^C not exiting emulator (SDL 2.0.4+ only)
2015-06-08 20:58:53 -07:00
Jeffrey Pfau
91a66c9346
GBA: Better portable GBARTC packing
2015-06-08 01:25:36 -07:00
Jeffrey Pfau
cd2533edce
GBA: Fix savestate ROM check
2015-06-08 01:24:03 -07:00
Jeffrey Pfau
596c7503b6
GBA: Ability to boot directly into the BIOS
2015-06-08 00:19:13 -07:00
Jeffrey Pfau
a51ae873bd
GBA Audio: Fix audio pitch changing when adjusting buffer size
2015-06-07 22:47:13 -07:00
Jeffrey Pfau
c0909c8713
All: Fix typo, disabling __builtin_expect on MSVS
2015-06-07 21:20:54 -07:00
Jeffrey Pfau
1a4ed6fe5e
Qt: Reshuffle some audio handling code
2015-06-07 15:18:10 -07:00
Jeffrey Pfau
870417d46e
GBA Thread: Fix uses of videoFrameOn being overridden
2015-06-07 14:26:43 -07:00
Jeffrey Pfau
982408281e
Merge branch 'feature/redo-sync'
2015-06-07 13:37:33 -07:00
Jeffrey Pfau
9c0ae33ddd
Qt: Fix Windows build
2015-06-06 23:44:01 -07:00
Jeffrey Pfau
e7798091d4
Qt: Start revamping sync
2015-06-06 23:37:11 -07:00
Jeffrey Pfau
36daee6de3
Merge commit 'a21d773ae8dd52b6e2e1e7b34f8bca4ec3d5b457'
2015-06-06 23:10:21 -07:00
Jeffrey Pfau
12505766e1
All: MSVS2015 fixes (via zeromus)
2015-06-06 21:43:24 -07:00
tony971
acb7c93670
Qt: Rename rewind variables
2015-06-05 16:13:45 -04:00
Jeffrey Pfau
a21d773ae8
OpenGL: Clear screen when resizing
2015-06-05 00:44:45 -07:00
Jeffrey Pfau
d05e596b38
Qt: Use common OpenGL code
2015-06-05 00:44:45 -07:00
Jeffrey Pfau
ea0b6a14cc
OpenGL: Start modular renderer
2015-06-05 00:44:45 -07:00
Jeffrey Pfau
855923e4b0
GBA Memory: Fix potential DMA issue when loading a savestate
2015-06-04 23:37:42 -07:00
Jeffrey Pfau
688fcbb89c
Qt: Fix variable to be static
2015-06-04 23:34:54 -07:00
Jeffrey Pfau
4ec19aac71
Qt: Add fast forward speed caps up to 10x
2015-06-03 20:55:44 -07:00
Jeffrey Pfau
ab028c9d80
GBA: Add more savestate checks
2015-06-03 20:50:34 -07:00
Jeffrey Pfau
3b29ba1aa2
Util: Allow disabling the threading code entirely
2015-06-03 20:37:45 -07:00
Jeffrey Pfau
6530bfe94a
GBA: Remove bad savestate corruption check
2015-06-03 20:31:49 -07:00
Jeffrey Pfau
31993afd2a
GBA Video: Fix out-of-bounds tiles in mosaic
2015-06-02 22:52:13 -07:00
Jeffrey Pfau
6ad402170c
GBA: Fix ROM size check
2015-06-02 22:20:19 -07:00
Jeffrey Pfau
c0818c3a0c
GBA: Ensure proper audio timing in savestates
2015-06-02 22:13:29 -07:00
Jeffrey Pfau
cd43d07561
GBA: Check for savestates made from differently sized ROMs
2015-06-02 21:50:42 -07:00
Jeffrey Pfau
a51066820a
Qt: Replace pause-after-frame mutex with an atomic
2015-06-01 23:55:44 -07:00
Jeffrey Pfau
3af3fab3cf
Qt: Fix held-rewind getting into bad pause states
2015-06-01 23:40:48 -07:00
Jeffrey Pfau
502ca7abd7
GBA: Check for improperly sized savestates when loading
2015-06-01 20:53:41 -07:00
Jeffrey Pfau
ee6e53cfc8
GBA: Check for corrupted savestates when loading
2015-06-01 20:52:45 -07:00
Jeffrey Pfau
ab6eac53ee
GBA: Cap audio FIFO read size during deserialization
2015-06-01 00:33:16 -07:00
Jeffrey Pfau
1157ab06d2
Perf: Ability to load savestates immediately on launch
2015-05-31 23:49:31 -07:00
Jeffrey Pfau
d67481c9de
GBA Thread: Fix GBARunOnThread to not trample old state
2015-05-31 21:44:34 -07:00
Jeffrey Pfau
3dc8d7d4c9
Qt: Only hide cursor in full screen
2015-05-31 19:55:05 -07:00
Jeffrey Pfau
24b1fb7b30
Qt: Fix some button binding bugs
2015-05-31 13:38:40 -07:00
Jeffrey Pfau
67e13114ef
Qt: Fix some rewind timer bugs
2015-05-31 13:21:06 -07:00
Jeffrey Pfau
041b58ebce
Qt: Fix maximum year in sensor override
2015-05-30 23:36:41 -07:00
Jeffrey Pfau
d135fd6a63
Qt: Fix windows being resizable when they shouldn't have been
2015-05-30 23:33:08 -07:00
Jeffrey Pfau
ffa2f62cf1
Qt: Fix palette view sizing
2015-05-30 19:46:03 -07:00
Jeffrey Pfau
f8362d680b
Qt: Export to ACT
2015-05-30 17:42:31 -07:00
Jeffrey Pfau
632316eef0
GBA: Export to ACT
2015-05-30 17:42:18 -07:00
Jeffrey Pfau
bbac206364
Qt: Unified file opening and saving with last location
2015-05-30 00:45:53 -07:00
Jeffrey Pfau
0378fa229d
Qt: Cap the maximum number of multiplayer windows
2015-05-30 00:35:04 -07:00
Jeffrey Pfau
27b4f35139
Qt: Migrate multiplayer window handling into GBAApp
2015-05-29 22:58:07 -07:00
Jeffrey Pfau
03543eeab4
GBA SIO: Fix regression when switching modes
2015-05-29 22:57:47 -07:00
Jeffrey Pfau
a2cba75819
All: Enable static linking for OS X
2015-05-29 20:45:58 -07:00
Jeffrey Pfau
920d5b71cb
Qt: Remove mutable qualifier from VFileDevice now that it isn't needed anymore
2015-05-29 02:04:27 -07:00
Jeffrey Pfau
c79780f832
ARM7: Fix Thumb MUL timing
2015-05-29 01:45:27 -07:00
Jeffrey Pfau
87313041c0
Qt: Unified VFile opening interface
2015-05-29 00:17:04 -07:00
Jeffrey Pfau
3c65ac986e
GBA: Palette RIFF exporter
2015-05-29 00:17:04 -07:00
Jeffrey Pfau
56e876f362
GBA Video: Add convenience macros for extracting color bits
2015-05-29 00:17:04 -07:00
Jeffrey Pfau
a73cfe4496
Util: Add VFS helper functions for reading/writing little endian values
2015-05-29 00:17:04 -07:00
Jeffrey Pfau
6b06579277
All: Move most macros back into common.h
2015-05-29 00:17:04 -07:00
Jeffrey Pfau
1559438deb
All: Enable static linking for Windows
2015-05-28 00:20:44 -07:00
Jeffrey Pfau
a0624b8b4f
Qt: Memory inspector now shows per-nybble feedback when typing
2015-05-27 00:06:54 -07:00
Jeffrey Pfau
7e411fda30
Qt: Holdable shortcut for rewinding one frame at a time
2015-05-26 20:38:33 -07:00
Jeffrey Pfau
4c5cdcaa4e
GBA: GBARewind now returns how many states it has rewound
2015-05-26 20:36:04 -07:00
Jeffrey Pfau
db30642645
GBA SIO: Fix embarrassing build breakage
2015-05-25 00:44:15 -07:00
Jeffrey Pfau
e0d0e86b70
GBA SIO: Add a dummy driver for Normal mode
2015-05-24 23:55:13 -07:00
Jeffrey Pfau
3974042259
GBA Memory: Remove incorrect hack
2015-05-24 23:54:43 -07:00
Jeffrey Pfau
bdc72bb73b
GBA Thread: Fix initial volume when starting a game
2015-05-23 23:22:02 -07:00
Jeffrey Pfau
04c6080f24
Qt: FPS target option is now a double
2015-05-23 23:21:36 -07:00
Jeffrey Pfau
7bc834526a
Qt: Ability to cap fast forward speed (fixes B#218)
2015-05-23 23:03:02 -07:00
Jeffrey Pfau
9085bbb8a4
SDL: Add rumble PWM support
2015-05-21 22:53:41 -07:00
Jeffrey Pfau
c6c57273b5
Qt: Fix clearing analog shortcuts
2015-05-19 20:04:20 -07:00
Jeffrey Pfau
3ace420e3f
Qt: Fix open ROM dialog filtering for archive formats
2015-05-19 00:18:07 -07:00
Jeffrey Pfau
2161769660
GBA Video: Re-fix sprite blending
2015-05-18 22:44:43 -07:00
Jeffrey Pfau
f2eae7ce33
SDL: Fix joystick when no window is open
2015-05-18 22:16:06 -07:00
Jeffrey Pfau
e797d009d0
GBA Memory: Fix ROMs incorrectly being resized
2015-05-17 15:37:55 -07:00
Jeffrey Pfau
57e84f0c69
Qt: Better cleanup when a game crashes
2015-05-17 15:06:35 -07:00
Jeffrey Pfau
178b2f85ee
Qt: Fix Windows build
2015-05-15 22:12:29 -07:00
Jeffrey Pfau
e2b964a8be
Qt: Show version info in window title
2015-05-15 09:11:12 -07:00
Jeffrey Pfau
47d945bf75
All: Make version.c
2015-05-15 08:56:28 -07:00
Jeffrey Pfau
284f4df31b
GBA: Fix crash if a 512kb flash save is loaded when a game has a 1Mb flash override
2015-05-15 01:54:07 -07:00
Jeffrey Pfau
ec529a86c7
GBA Video: Blended sprites should never have other effects applied
2015-05-15 01:33:29 -07:00
Jeffrey Pfau
adee44f6e9
Qt: Load/save the most recent savestate slot
2015-05-10 23:13:33 -07:00
Jeffrey Pfau
73d2c8fda8
Perf: Fix race condition if a game crashes immediately on start
2015-05-10 08:22:03 -07:00
Jeffrey Pfau
6f24064f4f
All: Add --help flag for command line programs
2015-05-10 03:02:03 -07:00
Jeffrey Pfau
a651a91aa1
GBA Video: Fix second frame mode 5
2015-05-09 17:28:29 -07:00
Jeffrey Pfau
37f5058de0
GBA Memory: Fix jumping to invalid memory when switching from Thumb to ARM
2015-05-09 17:14:11 -07:00
Jeffrey Pfau
cb3f029d9e
SDL: Fix potential build issues when Qt and SDL2 are in use
2015-05-09 13:53:19 -07:00
Jeffrey Pfau
32d1f5bbfb
ARM7: Fix ARM multiply instructions when PC is a destination register
2015-05-09 13:40:58 -07:00
Jeffrey Pfau
179f12bf09
GBA BIOS: Initialize a variable that may be uninitialized in very rare cases
2015-05-09 00:29:52 -07:00
Jeffrey Pfau
ec14557a1e
ARM7: Make illegal instruction decoding consistent between ARM and Thumb
2015-05-09 00:23:56 -07:00
Jeffrey Pfau
262e46b8a6
GBA: Fix bounds-checking on EEPROM access
2015-05-09 00:09:37 -07:00
Jeffrey Pfau
78db3e1a74
GBA: Handle out-of-bounds I/O access
2015-05-08 01:48:22 -07:00
Jeffrey Pfau
ebcb344d64
ARM7: Handle writeback for PC in addressing modes 2 and 3
2015-05-08 01:23:44 -07:00
Jeffrey Pfau
3c844a9ae9
GBA Memory: Soft-crash if jumping past the end of a ROM
2015-05-08 00:34:01 -07:00
Jeffrey Pfau
924efefc38
SDL: Allocate properly sized input maps
2015-05-06 01:19:27 -07:00
Jeffrey Pfau
b079c3bd56
SDL: Add ability to suspend screensaver
2015-05-05 22:43:57 -07:00
Jeffrey Pfau
1b74517e8b
Qt: Move exit fullscreen to the frame size menu
2015-05-03 03:33:19 -07:00
Jeffrey Pfau
74af12317c
Qt: Move fast forward setting to emulation menu
2015-05-03 03:32:56 -07:00
Jeffrey Pfau
d37cf5f0c3
Qt: Refactor PNG savestate code for slightly better behavior
2015-05-02 01:13:56 -07:00
Jeffrey Pfau
07a3d08b26
Util: Fix a null-pointer issue when attempting to delete a key
2015-05-02 01:08:29 -07:00
Jeffrey Pfau
298b7e7a8b
Qt: Memory viewer can now edit select regions of memory
2015-05-01 23:06:33 -07:00
Jeffrey Pfau
63071d9bc2
Qt: Add small decoder bar at the bottom of the hex view, still needs work
2015-05-01 22:47:22 -07:00
Jeffrey Pfau
a977ecb491
Qt: Memory view should use system colors
2015-05-01 21:59:24 -07:00
Jeffrey Pfau
ebece20a43
Qt: Memory view selection
2015-05-01 00:53:25 -07:00
Jeffrey Pfau
21542034d3
Qt: Memory view address jump
2015-04-30 23:15:20 -07:00
Jeffrey Pfau
28f174fb66
Qt: Memory view alignment adjustment
2015-04-30 22:58:06 -07:00
Jeffrey Pfau
7ac49be6df
Qt: Memory view readability fixes
2015-04-30 00:02:37 -07:00
Jeffrey Pfau
c021267ce6
Qt: MemoryView subregions
2015-04-29 22:13:05 -07:00
Jeffrey Pfau
a7ad78d46e
Qt: Close game inspector windows when game ends
2015-04-29 21:16:29 -07:00
Jeffrey Pfau
a01f9921f5
Qt: Fix non-printing characters in Memory view
2015-04-29 01:22:40 -07:00
Jeffrey Pfau
10d5588d4c
Qt: Optimize drawing in MemoryModel
2015-04-29 01:16:53 -07:00
Jeffrey Pfau
e3cc98e034
Qt: MemoryModel scrolling
2015-04-29 00:23:25 -07:00
Jeffrey Pfau
0bc9d18bc7
Qt: Remove dead code
2015-04-28 23:49:55 -07:00
Jeffrey Pfau
328a41dec7
Qt: Rudimentary memory viewer
2015-04-28 22:38:11 -07:00
Jeffrey Pfau
8b19ad7809
Qt: Optimize palette view drawing
2015-04-27 23:13:25 -07:00
Jeffrey Pfau
57999df85e
Qt: Fix status size on non-HiDPI displays
2015-04-27 02:50:01 -07:00
Jeffrey Pfau
711c7e9903
Qt: Refactor to make non-SDL gamepad input possible
2015-04-27 01:40:00 -07:00
Jeffrey Pfau
6ebef8dc16
Qt: Status messages
2015-04-26 15:00:15 -07:00
Jeffrey Pfau
91ee44c458
GBA Thread: Add functionality for running callbacks on the GBA thread
2015-04-26 14:06:57 -07:00
Jeffrey Pfau
9c07698068
GBA: Add status log level
2015-04-26 13:47:24 -07:00
Jeffrey Pfau
f52d91c6c8
Qt: Move GL drawing back into its own thread
2015-04-26 03:29:10 -07:00
Jeffrey Pfau
65543bdd69
Qt: Return early from setTurbo if possible
2015-04-25 15:42:41 -07:00
Jeffrey Pfau
03c2eb0776
GBA: A bit less confusing addressing into the middle of a struct
2015-04-24 00:13:50 -07:00
Jeffrey Pfau
d091de4057
SDL: Fix boundary conditions for joystick adjustments
2015-04-24 00:07:18 -07:00
Jeffrey Pfau
104a80422c
Qt: Initialize LoadStoreState mode
2015-04-24 00:00:31 -07:00
Jeffrey Pfau
aae1564db4
Qt: Make LoadSaveState row/column manipulation a bit more readable
2015-04-23 23:59:44 -07:00
Jeffrey Pfau
73dd9ed3f8
Video: Fix an issue with very long filenames
2015-04-23 23:57:06 -07:00
Jeffrey Pfau
3ae3b292ee
Debugger: Fix boundary conditions in tab completion
2015-04-23 23:54:35 -07:00
Jeffrey Pfau
cedfc01a4c
GBA BIOS: Add comments
2015-04-22 23:33:56 -07:00
Jeffrey Pfau
a2e1cd615c
VFS: Fix resource leaks if some allocations fail
2015-04-22 22:08:09 -07:00
Jeffrey Pfau
9552512329
Util: Fix resource leak in UTF-8 handling code
2015-04-22 22:02:55 -07:00
Jeffrey Pfau
c4aedfa69a
Debugger: Free watchpoints in addition to breakpoints
2015-04-22 21:24:56 -07:00
Jeffrey Pfau
2666c77837
Debugger: Fix use-after-free in breakpoint clearing code
2015-04-22 21:24:02 -07:00
Jeffrey Pfau
86bf02b9d5
Debugger: Fix uninitialized variables
2015-04-22 20:42:32 -07:00
Jeffrey Pfau
242dc5067b
GBA: Fix hang when loading a savestate if sync to video is enabled
2015-04-22 20:41:54 -07:00
Jeffrey Pfau
255242a665
Qt: Fix a load of uninitialized members
2015-04-22 20:18:54 -07:00
Jeffrey Pfau
aacab52a84
SDL: Ensure polled axes exist
2015-04-21 21:36:34 -07:00
Jeffrey Pfau
e0185740f7
Qt: Handle saving input settings better
2015-04-21 21:18:21 -07:00
Jeffrey Pfau
6248e44e47
Qt: Remappable controls for tilt and gyroscope sensors
2015-04-21 21:04:25 -07:00
Jeffrey Pfau
3eb4c01515
Qt: Fix controllers sometimes not loading the right profile
2015-04-21 20:35:35 -07:00
Jeffrey Pfau
0fbba68b02
SDL: Fix pointer aliasing warning
2015-04-21 02:28:14 -07:00
Jeffrey Pfau
657bcec879
SDL: Fix Windows build
2015-04-21 02:27:54 -07:00
Jeffrey Pfau
d0a332ffd4
Qt: Add incomplete sensor mapping editor
2015-04-21 01:06:39 -07:00
Jeffrey Pfau
b97be4b461
SDL: Add ability to control gyro sensor with left analog stick (currently hardcoded)
2015-04-21 00:38:20 -07:00
Jeffrey Pfau
7fa043cb50
SDL: Add ability to control tilt sensor with right analog stick (currently hardcoded)
2015-04-19 23:25:05 -07:00
Jeffrey Pfau
049e3639d1
Qt: Fix multiplayer windows opening as the wrong size
2015-04-19 04:31:50 -07:00
Jeffrey Pfau
b84c421865
SDL: Ensure switching gamepad uses haptic from the right gamepad
2015-04-19 03:43:00 -07:00
Jeffrey Pfau
3203158b1d
Qt: Menu items for specific solar sensor brightness levels
2015-04-18 22:20:53 -07:00
Jeffrey Pfau
f94c959cac
GBA Memory: Patching functions can now expand ROM
2015-04-18 13:56:56 -07:00
Jeffrey Pfau
0789ebb8cc
GBA Memory: Fix 32-bit loads from unaddress cartridge space
2015-04-18 13:54:09 -07:00
Jeffrey Pfau
b8edf968a4
Qt: Add 59.727 fps option
2015-04-18 05:10:13 -07:00
Jeffrey Pfau
b81f045d27
Qt: DisplayGL cleanup
2015-04-18 03:49:48 -07:00
Jeffrey Pfau
d4ab0564eb
Qt: Post empty frames if frameskipping
2015-04-18 03:49:24 -07:00
Jeffrey Pfau
e11d34d761
Qt: Remove backing from startDrawing signal
2015-04-18 02:51:28 -07:00
Jeffrey Pfau
34512371bb
Qt: Fix crash if no axes are found
2015-04-18 02:46:56 -07:00
Jeffrey Pfau
c42c08c5e1
GBA Memory: Fix 16-bit bad loads
2015-04-18 01:26:12 -07:00
Jeffrey Pfau
0c8a0cd0e4
Qt: Analog inputs can be used for shortcuts
2015-04-18 01:12:18 -07:00
Jeffrey Pfau
a0a3ac191a
Qt: Recalibrate axes in more places
2015-04-18 01:12:18 -07:00
Jeffrey Pfau
6750e7775e
Qt: Rough deadzone estimation
2015-04-18 01:12:18 -07:00
Jeffrey Pfau
02ecfa6843
GBA Memory: Improve Thumb open bus behavior (fixes issue #10 )
2015-04-17 03:20:09 -07:00
Jeffrey Pfau
592f6614aa
SDL: Fix some embarrassing indentation errors
2015-04-17 01:56:31 -07:00
Jeffrey Pfau
6b975dcbd3
Qt: Fix controller axis querying
2015-04-17 00:58:27 -07:00
Jeffrey Pfau
ee6c9f71c2
SDL: Implement rumble using SDL2 haptic
2015-04-17 00:00:22 -07:00
Jeffrey Pfau
05e04ba76a
GBA Memory: Allow SRAM to be 64kB
2015-04-15 21:36:07 -07:00
Jeffrey Pfau
af19f5bc45
Qt: Add "Step backwards" item for single increment rewind
2015-04-15 21:12:05 -07:00
Jeffrey Pfau
dee394f10f
GBA: Allow disabling checksum verification
2015-04-15 21:05:01 -07:00
Jeffrey Pfau
37b2eb05ae
GBA: Fix GCC warnings
2015-04-15 04:37:24 -07:00
Jeffrey Pfau
688be6948b
GBA: Create GameShark snapshots
2015-04-15 04:17:28 -07:00
Jeffrey Pfau
3ff8467ba7
GBA: Support for loading Gameshark snapshots
2015-04-15 03:58:58 -07:00
Jeffrey Pfau
27a178fe3c
Qt: Fix potential crash if a gamepad causes focus to change
2015-04-14 20:46:41 -07:00
Jeffrey Pfau
e112e86715
GBA: Add initial I/O register settings for background matrix registers
2015-04-14 20:45:44 -07:00
Jeffrey Pfau
3ff3c24821
Qt: DisplayGL does not use paintEvent
2015-04-12 20:22:51 -07:00
Jeffrey Pfau
2309898152
Qt: Rewind now shows the frame after rewinding
2015-04-12 20:22:32 -07:00
Jeffrey Pfau
293e0a9c9b
GBA: Rewind now shows the frame after rewinding
2015-04-12 20:22:04 -07:00
Jeffrey Pfau
2a9a738bfb
GBA: Fix rewind boundary conditions
2015-04-12 20:19:02 -07:00
Jeffrey Pfau
470538d4db
Qt: Show multiplayer numbers in window title
2015-04-09 23:16:17 -07:00
Jeffrey Pfau
41bbee1efd
Qt: Make quick save/load and solar sensor shortcuts adjustable
2015-04-09 23:04:04 -07:00
Jeffrey Pfau
8636b81f13
GBA: Split cheats out into separate source files
2015-04-09 00:41:00 -07:00
Jeffrey Pfau
1dd82f21d9
GBA: Fix unintialized stack variable
2015-04-08 21:45:46 -07:00
Jeffrey Pfau
72a0de2940
GBA Memory: Fix audio regression...may be a huge hack
2015-04-08 00:54:12 -07:00
Jeffrey Pfau
8266f54d76
Volume control
2015-04-08 00:32:29 -07:00
Jeffrey Pfau
3182b5e35d
Qt: Follow-up fix for regression
2015-04-07 00:51:19 -07:00
Jeffrey Pfau
eb0b9dca0f
Qt: Fix regression where video would not record if the game had already started
2015-04-06 22:18:57 -07:00
Jeffrey Pfau
3449c5cb3b
Qt: Fix window not regaining focus after exiting savestate window
2015-04-06 22:02:06 -07:00
Jeffrey Pfau
25e70e37c7
GBA Memory: Ensure changing the timing of a DMA reschedules it
2015-04-06 03:47:42 -07:00
Jeffrey Pfau
1856b77cbc
GBA Audio: Force audio FIFOs to 32-bit
2015-04-06 02:34:21 -07:00
Jeffrey Pfau
cda804656b
Qt: Palette viewer
2015-04-05 23:46:48 -07:00
Jeffrey Pfau
97479c4d00
ARM7: Fix SWI and IRQ timings
2015-04-05 18:06:31 -07:00
Jeffrey Pfau
609a9c5aa0
Qt: Fix "QOpenGLContext::swapBuffers() called with non-exposed window" warning
2015-04-05 18:02:59 -07:00
Jeffrey Pfau
190ace3003
Qt: Clean up some technical debt with opening views
2015-04-05 17:59:34 -07:00
Jeffrey Pfau
73e4516257
GBA Audio: Ability to mute individual audio channels
2015-04-05 01:39:34 -07:00
Jeffrey Pfau
8533f01be5
GBA Video: Ability to hide individual background layers, or OBJs
2015-04-05 01:28:05 -07:00
Jeffrey Pfau
db2659962b
Qt: Fix tr missing or being present where it shouldn't be
2015-04-05 01:06:53 -07:00
Jeffrey Pfau
4a36c3766b
GBA Audio: FIFOs should not poll DMAs that are not scheduled for audio
2015-04-04 22:07:46 -07:00
Jeffrey Pfau
d3a0ce00db
Qt: Fix .deb dependencies
2015-04-04 21:14:32 -07:00
Jeffrey Pfau
9df80a437a
Qt: Add framePosted slot to Display for push-based updates
2015-04-04 14:17:46 -07:00
Jeffrey Pfau
2448ff715f
Qt: Move Display setup code to common code
2015-04-04 14:17:06 -07:00
Jeffrey Pfau
e9365cdda2
Qt: Fix Display object leak when closing a window
2015-04-04 14:14:28 -07:00
Jeffrey Pfau
13a77ea3ff
GBA: Fix timers not updating timing when writing to only the reload register
2015-04-03 23:51:36 -07:00
Jeffrey Pfau
67bc9e7280
Qt: Move solar sensor menu to emulation menu
2015-04-03 21:46:23 -07:00
Jeffrey Pfau
f136fa040c
Qt: Fix regression involving displayed screenshots in savestate view
2015-04-03 21:14:02 -07:00
Jeffrey Pfau
36af5fba87
Qt: Fix shortcuts conflicting between views
2015-04-03 21:13:24 -07:00
Jeffrey Pfau
5da7198d07
Qt: Fix build with some non-Apple versions of GCC
2015-04-03 21:12:37 -07:00
Jeffrey Pfau
065474d14e
Qt: Fix crash when attempting to pause if a game is not running
2015-04-03 21:07:26 -07:00
Jeffrey Pfau
7cc903a217
Qt: Pause game while open file dialogs are open ( fixes #6 on GitHub)
2015-04-02 22:32:38 -07:00
Jeffrey Pfau
24ff4e8a01
Util: Move VDirOptionalOpenFile back into vfs.c
2015-04-01 21:42:14 -07:00
Jeffrey Pfau
7bb17bc99d
Util: Split vfs.c into vfs.c, vfs-fd.c and vfs-dirent.c
2015-04-01 21:13:16 -07:00
Jeffrey Pfau
f2559ad169
Qt: Add pure-Qt display backend
2015-04-01 00:35:55 -07:00
Jeffrey Pfau
11eab66247
Qt: Move screenshot to GameController
2015-03-31 23:43:47 -07:00
Jeffrey Pfau
0d6cc88f9f
Qt: Remove unneeded second draws
2015-03-31 23:37:14 -07:00
Jeffrey Pfau
4fb121bbe0
Qt: Start modularizing Qt drawing
2015-03-31 22:58:29 -07:00
Jeffrey Pfau
24b0e78360
Merge branch 'optimization/idle-loops'
2015-03-31 21:48:26 -07:00
Jeffrey Pfau
bed6a0c130
SDL: Allow runtime switching of rendering backend
2015-03-31 21:41:53 -07:00
Jeffrey Pfau
2eb765eacc
SDL: Fix pixman build if includes aren't in base path
2015-03-31 21:38:55 -07:00
Jeffrey Pfau
8fcd095b03
GBA Audio: #define some macros BEFORE we use them
2015-03-30 02:22:29 -07:00
Jeffrey Pfau
cab9f3343b
Qt: Double-clicking on the window toggles full screen
2015-03-29 17:12:39 -07:00
Jeffrey Pfau
3a3b7dffdb
GBA: Fix Pro Action Replay ROM patches
2015-03-29 13:56:46 -07:00
Jeffrey Pfau
d38f99e041
GBA: Fix PARv3 IO codes, add master code support
2015-03-29 04:48:42 -07:00
Jeffrey Pfau
178f9a83bb
GBA: Almost entirely untested Pro Action Replay v3 code support
2015-03-29 04:38:13 -07:00
Jeffrey Pfau
44d3718eb0
Qt: Save fullscreen setting
2015-03-28 23:23:32 -07:00
Jeffrey Pfau
7a9807f030
GBA: Fix BIOS loading setting
2015-03-28 23:19:21 -07:00
Jeffrey Pfau
3fe32281c9
Qt: Remember window position
2015-03-28 23:14:10 -07:00
Jeffrey Pfau
e93240f90c
GBA: Add somewhat more realistic flash timings, disabled currently
2015-03-28 03:25:46 -07:00
Jeffrey Pfau
c665ed78e6
GBA Memory: Add timing information to bad cart stores
2015-03-27 22:42:17 -07:00
Jeffrey Pfau
45473bf7bc
ARM7: Fix cycle counting for loads
2015-03-27 21:21:17 -07:00
Jeffrey Pfau
afff253928
GBA Memory: Fix cycle counting for 32-bit load/stores
2015-03-27 21:20:13 -07:00
Jeffrey Pfau
8e87e3a528
GBA Memory: Fix I cycles that had been moved to ARM7 core
2015-03-27 01:35:16 -07:00
Jeffrey Pfau
811ada598e
GBA: Fix timer initialization
2015-03-27 01:34:49 -07:00
Jeffrey Pfau
4b957cb66d
Qt: Fix non-SDL build
2015-03-25 21:56:23 -07:00
Jeffrey Pfau
9d80089194
Qt: Add keyboard shortcut to exit fullscreen ( fixes #205 )
2015-03-24 22:54:13 -07:00
Jeffrey Pfau
b6ddf8fd00
GBA RR: Fix VBM handling of lag frames
2015-03-24 22:26:37 -07:00
Jeffrey Pfau
3d8cfda57d
Qt: Warning dialog if an unimplemented BIOS feature is called ( fixes #177 )
2015-03-23 22:12:57 -07:00
Jeffrey Pfau
740f733563
Qt: Change audio driver back to SDL by default
2015-03-23 21:34:20 -07:00
Jeffrey Pfau
1c422d4057
SDL: Use SDL2 audio APIs when compiled against SDL2
2015-03-23 21:23:10 -07:00
Jeffrey Pfau
9bb306f831
All: Buildfixes for OS X and FreeBSD
2015-03-23 02:47:10 -07:00
Jeffrey Pfau
b55c873e34
GBA BIOS: Define M_PI if not defined
2015-03-23 02:16:17 -07:00
Jeffrey Pfau
f519976c7f
All: Attempt to downgrade from GNU99 to C99
2015-03-23 02:03:01 -07:00
Jeffrey Pfau
817dec97c2
GBA: Add Mega Man Zero override
2015-03-23 01:16:15 -07:00
Jeffrey Pfau
64cbdf8aa0
GBA: Ensure idle loops are not removed on the first iteration
2015-03-23 01:15:56 -07:00
Jeffrey Pfau
8fad1d136c
Qt: Ability to prevent opposing directional input
2015-03-23 00:11:19 -07:00
Jeffrey Pfau
302b041507
Qt: Fix crash when initializing gamepads
2015-03-22 13:03:39 -07:00
Jeffrey Pfau
475954aff1
GBA: Add idle loops for Super Mario Advance 4
2015-03-21 18:22:37 -07:00
Jeffrey Pfau
f0cebb3fe7
GBA: Add some idle loops for different regions of the same game
2015-03-21 18:21:05 -07:00
Jeffrey Pfau
6e16b2992c
GBA: Add idle loops for Advance Wars
2015-03-21 18:16:50 -07:00
Jeffrey Pfau
1c10743995
GBA: Loosen checks on idle loops
2015-03-21 18:15:06 -07:00
Jeffrey Pfau
291d5c500b
Qt: Fix useBios config option not being bound properly
2015-03-21 17:12:37 -07:00
Jeffrey Pfau
afae3c8b80
Qt: Allow configuring arbitrary attached gamepads ( fixes #204 )
2015-03-21 17:09:15 -07:00
Jeffrey Pfau
d4ef56cd16
SDL: Gamepads can now be preferentially loaded
2015-03-21 16:27:00 -07:00
Jeffrey Pfau
c1d02a1369
GBA: Savestates now take into account savedata state machines ( fixes #109 )
2015-03-21 01:12:39 -07:00
Jeffrey Pfau
d36c0ec7df
GBA: Fix RTC bincompat with 0.1
2015-03-21 01:05:07 -07:00
Jeffrey Pfau
073dbd6b8d
GBA: Remove unused portions of EEPROM state machine
2015-03-21 00:23:19 -07:00
Jeffrey Pfau
64b396aff9
Merge branch 'feature/sio-lockstep'
2015-03-19 22:19:49 -07:00
Jeffrey Pfau
ae2b20e476
Qt: Make ConfigOption able to handle multiple consumers
2015-03-19 22:11:23 -07:00
Jeffrey Pfau
b8fe87324f
SDL: Esc to quit, only on Pandora for now
2015-03-18 23:46:13 -07:00
Jeffrey Pfau
4fa1ad7ce0
SDL: Fix typo
2015-03-18 23:41:54 -07:00
Jeffrey Pfau
e0ff8e4371
SDL: Add Pandora-specific main file
2015-03-18 23:40:18 -07:00
Jeffrey Pfau
e21b4e3ee5
SDL: Move render context freeing to the right files
2015-03-18 23:38:42 -07:00
Jeffrey Pfau
2dd391046a
SDL: Fix exporting SDL compile flags
2015-03-18 23:38:09 -07:00
Jeffrey Pfau
ae3acd658b
SDL: Make sure scaling ratio is at least 1
2015-03-18 01:39:36 -07:00
Jeffrey Pfau
1af7b56349
SDL: Use pixman for software scaling
2015-03-18 01:39:20 -07:00
Jeffrey Pfau
b677d41469
SDL: Do not cache SDL variables
2015-03-18 01:36:48 -07:00
Jeffrey Pfau
c75224ce8c
SDL: Add Pandora bindings
2015-03-17 22:30:58 -07:00
Jeffrey Pfau
fe0af2c563
GBA: Add option to disable loading BIOS even if BIOS path is stored ( fixes #203 )
2015-03-16 23:16:05 -07:00
Jeffrey Pfau
a8dae9b9d5
GBA Video: Fix modes 3 and 5 with RGB565 pixel format
2015-03-16 23:16:05 -07:00
Jeffrey Pfau
20aae1202a
Qt: Properly preprocess Windows RC file
2015-03-16 00:35:09 -07:00
Jeffrey Pfau
c04ca093e1
SDL: Ability to lock aspect ratio
2015-03-16 00:10:59 -07:00
Jeffrey Pfau
e6377f2e6a
GBA: Add player IDs to allow multiple controller profiles to be used at once
2015-03-15 23:48:35 -07:00
Jeffrey Pfau
51b8c862b9
Merge branch 'master' into feature/sio-lockstep
...
Conflicts:
CMakeLists.txt
src/gba/gba.c
2015-03-15 23:29:01 -07:00
Jeffrey Pfau
0b38dd1289
GBA: Controller profiles
2015-03-15 19:33:38 -07:00
Jeffrey Pfau
b2c2a9acf7
GBA BIOS: Fix regression with BgAffineSet
2015-03-15 02:21:22 -07:00
Jeffrey Pfau
343924908a
Libretro: Rename a variable to avoid #define namespace collision with Windows headers
2015-03-14 01:41:53 -07:00
Jeffrey Pfau
dd17c6f8b0
GBA: Eliminate bitpacked struct for GPIO devices
2015-03-14 01:05:33 -07:00
Jeffrey Pfau
f80406efb0
GBA: Replace RTC bitpacked structs with bitfields
2015-03-14 00:56:24 -07:00
Jeffrey Pfau
1584687c14
Util: Ensure stack is not marked executable
2015-03-14 00:22:29 -07:00
Jeffrey Pfau
84a14b6c00
Util: NEONize 16-bit color packing
2015-03-14 00:22:06 -07:00
Jeffrey Pfau
d9797cf084
Qt: Move soloar sensor menu items into submenu
2015-03-13 00:11:10 -07:00
Jeffrey Pfau
943b805306
Qt: Sync light sensor window with current state
2015-03-13 00:07:59 -07:00
Jeffrey Pfau
2c5d11539a
Qt: Ensure closing a game clears overrides in backend too
2015-03-12 23:49:22 -07:00
Jeffrey Pfau
f3c723d713
Qt: Clear all override settings when closing a game
2015-03-12 23:35:33 -07:00
clobber
b9427cc0ce
GBA: Add additional overrides (Merge pull request #5 )
...
These are the ones I could verify so far that fix game loading and save issues. There could still be others needed from VBA's vba-over.ini that have problems due to AP further in-game that require more effort to verify.
2015-03-12 23:13:52 -07:00
Jeffrey Pfau
bdf6d7f7ec
All: Fix CMake files to not use function defined in CMake 2.8.11
2015-03-12 01:09:12 -07:00
Jeffrey Pfau
3c652a10b5
Libretro: Use audio buffer callback instead of audio sample callback
2015-03-12 00:45:29 -07:00
Jeffrey Pfau
b6e274c3d4
GBA: Add postAudioBuffer callback
2015-03-12 00:45:08 -07:00
Jeffrey Pfau
9dc49df0bc
3DS: Fix loading DEVKITARM from environment
2015-03-12 00:07:31 -07:00
Jeffrey Pfau
24f40a7959
GBA: Fix GBAInputUnbindKey prototype
2015-03-11 23:50:24 -07:00
Jeffrey Pfau
1a3425d31d
GBA: Fix GBAInputUnbindKey prototype
2015-03-11 23:50:06 -07:00
Jeffrey Pfau
22245617f4
3DS: Modernize 3DS port
2015-03-11 23:49:25 -07:00
Jeffrey Pfau
513b9fb751
All: Unify how feature defines work, allowing specific targets to not use them
2015-03-11 02:17:45 -07:00
Jeffrey Pfau
bf58976290
Libretro: Fix a warning in gcc
2015-03-10 01:17:24 -07:00
Jeffrey Pfau
54a30af1aa
Qt: Fix PulseAudio output with small buffer size
2015-03-10 00:33:04 -07:00
Jeffrey Pfau
589b5f473c
Libretro: Copy game data; apparently it is freed by the frontend before starting the game
2015-03-09 22:07:50 -07:00
Jeffrey Pfau
207219b25e
Libretro: Use predefined overrides
2015-03-09 21:18:00 -07:00
Jeffrey Pfau
11f0e690f8
GBA: Initialize gba.sync to null
2015-03-09 21:17:41 -07:00
Jeffrey Pfau
ad10b5dedf
GBA: Fix crash if GBALog is called with a null context
2015-03-09 21:16:41 -07:00
Jeffrey Pfau
f90ac6e9a9
Libretro: Do game unload cleanup
2015-03-08 22:51:41 -07:00
Jeffrey Pfau
6c5a1315ea
Libretro: Add warnings about pixel formats
2015-03-08 22:51:41 -07:00
Jeffrey Pfau
de7bd2fb55
Libretro: Add savedata support
2015-03-08 22:51:41 -07:00
Jeffrey Pfau
1b591b5844
Libretro: Use callbacks for audio and video
2015-03-08 22:51:41 -07:00
Jeffrey Pfau
a000f219db
GBA: Move A/V stream interface into core
2015-03-08 22:51:41 -07:00
Jeffrey Pfau
cf71d39bf0
Libretro: Add initial libretro version
2015-03-08 22:51:40 -07:00
Jeffrey Pfau
eb21dd722f
GBA: Move logging construct into GBA struct
2015-03-08 22:51:40 -07:00
Jeffrey Pfau
3f9abf2b05
SDL: Reserve correct number of bytes for video buffer allocation
2015-03-08 22:45:40 -07:00
Jeffrey Pfau
9a76ba6b43
Video: Fix warnings in ImageMagick
2015-03-08 22:27:18 -07:00
Jeffrey Pfau
06a0399186
Qt: Fix 15- and 16-bit modes in Qt port
2015-03-08 20:33:06 -07:00
Jeffrey Pfau
5feec0317f
Video: Fix FFmpeg encoder support for 15- and 16-bit video pixel formats
2015-03-08 20:33:06 -07:00
Jeffrey Pfau
2a6ff14a3b
GBA: Fix crash if no components are defined
2015-03-06 22:19:09 -08:00
Jeffrey Pfau
6835ac8a81
GBA: Better const correctness for serialization
2015-03-06 22:19:08 -08:00
Jeffrey Pfau
826569fdf7
GBA BIOS: Fix BIOS decompression routines with invalid source addresses
2015-03-06 22:18:27 -08:00
Jeffrey Pfau
e61d413d69
Util: VFile backed by memory
2015-03-05 18:44:28 -08:00
Jeffrey Pfau
9adfcad1b5
Util: Cleanup of VFileZip and VFile7z
2015-03-05 18:40:33 -08:00
Jeffrey Pfau
a268d462c0
GBA RR: Add VBM parser, for comparing VBA sync
2015-03-05 14:25:35 -08:00
Jeffrey Pfau
f69d9db9d4
GBA RR: Add way to play movies from startup
2015-03-05 14:10:23 -08:00
Jeffrey Pfau
bb77d278dd
GBA RR: Modularize RR
2015-03-05 00:32:49 -08:00
Jeffrey Pfau
95e4820743
SDL: Remove RR functions
2015-03-05 00:22:57 -08:00
Jeffrey Pfau
e810f1b9f0
GBA Video: Clear video buffer when starting
2015-03-03 21:18:53 -08:00
Jeffrey Pfau
0ab8cfe6ad
Util: Fix SocketPoll on pthreads
2015-03-03 03:07:04 -08:00
Jeffrey Pfau
9273a4ca72
GBA SIO: Fix RCNT mode selection
2015-03-02 01:21:30 -08:00
Jeffrey Pfau
dcd2e3a64f
GBA: Fix JOY_TRANS_HI register name
2015-03-02 01:21:30 -08:00
Jeffrey Pfau
618092a5f6
GBA SIO: Fix lockstep barrier
2015-03-01 15:53:09 -08:00
Jeffrey Pfau
31d39bbd1d
Debugger: Fix software breakpoints not being properly initialized
2015-03-01 12:16:38 -08:00
Jeffrey Pfau
4e2a27b426
GBA SIO: Fix child bit in lockstep driver
2015-03-01 05:39:13 -08:00
Jeffrey Pfau
a7985c39ac
Qt: Fix crash when loading a game after stopping GDB server
2015-02-28 15:28:34 -08:00
Jeffrey Pfau
9b8b56d701
GBA SIO: Fix writing to RCNT
2015-02-28 14:53:06 -08:00
Jeffrey Pfau
f775af67f3
GBA SIO: Fix writing to RCNT
2015-02-28 14:52:52 -08:00
Jeffrey Pfau
e241566ee7
GBA SIO: Clean up lockstep a bit
2015-02-28 14:51:39 -08:00
Jeffrey Pfau
33c2c53795
Qt: Add missing function
2015-02-27 01:37:44 -08:00
Jeffrey Pfau
8112ffdabc
GBA SIO: Properly deinitialize SIO
2015-02-27 01:13:59 -08:00
Jeffrey Pfau
a5a7ace86e
GBA SIO: Fix RCNT reading for mode
2015-02-27 01:13:59 -08:00
Jeffrey Pfau
80960f9e9a
GBA SIO: Properly deinitialize SIO
2015-02-27 01:12:58 -08:00
Jeffrey Pfau
d1e01266c6
GBA SIO: Partially functional lockstep driver
2015-02-27 00:59:47 -08:00
Jeffrey Pfau
2fc8f0b567
Qt: Add option for opening new window
2015-02-27 00:59:20 -08:00
Jeffrey Pfau
e1a8befcbb
GBA SIO: Fix RCNT reading for mode
2015-02-26 23:10:01 -08:00
Jeffrey Pfau
6e467a0332
Qt: Create MultiplayerController
2015-02-26 00:07:36 -08:00
Jeffrey Pfau
5b40951c05
GBA SIO: Build up lockstep driver a bit more
2015-02-26 00:07:12 -08:00
Jeffrey Pfau
1e912abf4b
GBA SIO: Start building up skeleton for lockstep driver
2015-02-25 20:35:13 -08:00
Jeffrey Pfau
bb05764cd5
GBA SIO: Update timings based on observation
2015-02-24 01:14:46 -08:00
Jeffrey Pfau
29e118b512
Util: Fix C++ build for Win32
2015-02-24 00:02:24 -08:00
Jeffrey Pfau
a0b94db9a7
All: Fix *nix build
2015-02-23 23:49:40 -08:00
Jeffrey Pfau
5d1b05c990
Debugger: Use new SocketWouldBlock layer
2015-02-23 23:29:01 -08:00
Jeffrey Pfau
c73ea2e595
Util: Fix sockets on Windows
2015-02-23 23:29:01 -08:00
Jeffrey Pfau
1ff9968a90
Qt: Draw frame even if it times out
2015-02-22 22:14:26 -08:00
Jeffrey Pfau
afbadf242b
Qt: Copy state from old audio processor to new
2015-02-22 21:17:41 -08:00
Jeffrey Pfau
27c4308ef5
Debugger: Add CLI function for writing a register
2015-02-22 17:33:35 -08:00
Jeffrey Pfau
c1261a5b74
GBA: Remove struct partial initialization for structs that are initialized later
2015-02-22 02:42:08 -08:00
Jeffrey Pfau
b2ed141cea
GBA Video: Allow negative output stride
2015-02-22 01:53:12 -08:00
Jeffrey Pfau
0209381d11
SDL: Fix some warnings in sw-sdl.c
2015-02-22 01:51:44 -08:00
Jeffrey Pfau
d497cecfd1
Util: Add header for ARM util functions
2015-02-22 01:47:23 -08:00
Jeffrey Pfau
f51044e94c
Util: Attempt to fix erroneous clobber warning
2015-02-22 01:32:02 -08:00
Jeffrey Pfau
815e4d5b0d
Qt: Use latest cheat set for set properties
2015-02-22 00:35:10 -08:00
Jeffrey Pfau
097feb0a55
GBA Thread: Increase frame timeout
2015-02-22 00:35:10 -08:00
Jeffrey Pfau
09f8c4977b
GBA Video: Squelch OBJWIN warnings
2015-02-21 19:07:40 -08:00
Jeffrey Pfau
407b0537d6
Qt: Add bps to the list of patch formats
2015-02-21 11:35:48 -08:00
Jeffrey Pfau
f646be0472
Qt: Fix patch loading while a game is running
2015-02-21 11:35:36 -08:00
Jeffrey Pfau
d9ad68bad6
GBA: Re-add idle loops that got merged out
2015-02-21 11:13:46 -08:00
Jeffrey Pfau
d4d42a2eee
GBA BIOS: Fix more potential regressions with signed 16-bit loads
2015-02-21 11:01:08 -08:00
Jeffrey Pfau
01f7036401
GBA BIOS: Fix some regressions regarding signed 16-bit loads ( fixes #196 )
2015-02-21 10:58:24 -08:00
Jeffrey Pfau
8a90066965
GBA Thread: Make GBASyncWaitFrameStart time out
2015-02-21 03:44:15 -08:00
Jeffrey Pfau
37fd51df39
Qt: Fix thread sync issues with QtMultimedia audio driver
2015-02-21 02:44:59 -08:00
Jeffrey Pfau
56475e578b
Qt: Fix crash when starting GDB stub after closing a game
2015-02-21 02:01:55 -08:00
Jeffrey Pfau
2235dcf2ab
Qt: Fix crash when adjusting settings after closing a game
2015-02-21 01:59:33 -08:00
Jeffrey Pfau
7f592f78e8
Qt: Runtime configurable audio driver
2015-02-21 01:54:50 -08:00
Jeffrey Pfau
7cad9ab33a
Qt: Fix QtMultimedia build with blip
2015-02-21 01:02:26 -08:00
Jeffrey Pfau
86ff4b1577
GBA: Silence some warnings in cheats
2015-02-20 23:59:12 -08:00
Jeffrey Pfau
1994977c8f
Qt: Fix crash starting a GDB stub if a game isn't loaded
2015-02-20 00:23:03 -08:00
Jeffrey Pfau
d983f31b38
GBA: Fix savestate loading of DISPSTAT and WAITCNT registers
2015-02-18 02:37:21 -08:00
Jeffrey Pfau
0cdb26df54
Qt: Move frame upload back onto main thread
2015-02-17 22:22:31 -08:00
Jeffrey Pfau
848cf162af
GBA Thread: Fix possible deadlock in video sync
2015-02-17 22:20:37 -08:00
Jeffrey Pfau
1273ab4ca5
Qt: Optimize logo drawing
2015-02-17 21:27:23 -08:00
Jeffrey Pfau
d3ebcda24b
Qt: Ability to properly copy cheats
2015-02-17 01:17:29 -08:00
Jeffrey Pfau
cc214e0f44
GBA: Cheat saving
2015-02-15 04:52:21 -08:00
Jeffrey Pfau
bc8175515b
Util: Hopefully fix all of the Socket warnings this time
2015-02-15 00:31:57 -08:00
Jeffrey Pfau
f0e99779d4
All: Fix more warnings
2015-02-14 23:47:08 -08:00
Jeffrey Pfau
2ec2e75634
Util: Fix warnings on Windows
2015-02-14 23:40:59 -08:00
Jeffrey Pfau
8c7d5b5b86
GBA: Cheat set disabling
2015-02-14 23:04:56 -08:00
Jeffrey Pfau
ca6b2e7b09
Qt: Display hex values within cheats
2015-02-14 22:45:40 -08:00
Jeffrey Pfau
8741a374a5
Qt: Removing cheats
2015-02-14 18:39:18 -08:00
Jeffrey Pfau
dc5fb14fa1
Qt: Clear cheats when the game ends
2015-02-14 18:04:01 -08:00
Jeffrey Pfau
297551a5be
Qt: Start cheat input
2015-02-14 17:45:46 -08:00
Jeffrey Pfau
c8d3488804
GBA: Split out autodetected version cheats from GameShark cheats
2015-02-14 17:44:53 -08:00
Jeffrey Pfau
0bd9ae087e
Qt: Start Cheats view
2015-02-14 16:38:29 -08:00
Jeffrey Pfau
1f08d4c3c5
Debugger: Add CLI functions for examining memory regions
2015-02-13 01:14:08 -08:00
Jeffrey Pfau
90e57c027b
Debugger: Rename read/write commands
2015-02-13 00:56:43 -08:00
Jeffrey Pfau
8ca2e3adbd
Debugger: Make I/O register names be addresses instead of values
2015-02-13 00:49:13 -08:00
Jeffrey Pfau
61c95ed7fb
Util: Fix warnings on FreeBSD
2015-02-12 00:37:52 -08:00
Jeffrey Pfau
1e71f62a3c
Util: Add universal float parsing and formatting functions
2015-02-11 00:26:30 -08:00
Jeffrey Pfau
f2c29bc8d6
Util: Fix Win32 build
2015-02-10 02:46:12 -08:00
Jeffrey Pfau
4b14b71861
Util: Use proper locale for reading and writing float values
2015-02-10 02:21:40 -08:00
Jeffrey Pfau
9c3e16925b
GBA: Allow overriding GameShark type
2015-02-10 00:42:11 -08:00
Jeffrey Pfau
7d36331dc4
GBA: Make some codes work without master codes
2015-02-10 00:34:50 -08:00
Jeffrey Pfau
5015975e4c
GBA: Fix CodeBreaker codes
2015-02-10 00:24:36 -08:00
Jeffrey Pfau
31a9bafae8
GBA: Cheats can now be grouped and named
2015-02-09 02:54:17 -08:00
Jeffrey Pfau
3d44065826
GBA: Add more Pro Action Replay v3 skeleton
2015-02-08 21:03:53 -08:00
Jeffrey Pfau
05e18ac255
GBA: Change how GameShark ROM patches work
2015-02-08 21:03:05 -08:00
Jeffrey Pfau
2b92eab1b2
GBA: Add GameShark reseeding
2015-02-08 01:26:56 -08:00
Jeffrey Pfau
3c9cc0ad87
GBA: GameShark v1/v2 codes mostly complete
2015-02-07 18:46:26 -08:00
Jeffrey Pfau
e30312f360
GBA: Fix Windows build
2015-02-06 03:31:51 -08:00
Jeffrey Pfau
502fdfcfad
GBA RR: Fix fallthrough error when reading tags from a movie
2015-02-05 23:39:15 -08:00
Jeffrey Pfau
ef65d185a3
GBA: Support for unencrypted CodeBreaker codes
2015-02-05 03:20:02 -08:00
Jeffrey Pfau
af6ead2c97
Util: Fix VFile.readline
2015-02-05 03:18:37 -08:00
Jeffrey Pfau
8eeaa11256
ARM7: Add ARMRunFake for rolling back the PC and running a fake opcode
2015-02-04 23:30:04 -08:00
Jeffrey Pfau
f9110fc51e
ARM7: Make component numbers be size_t instead of int
2015-02-04 02:35:30 -08:00
Jeffrey Pfau
f62c068a2c
Util: Add Vector append
2015-02-04 02:34:59 -08:00
Jeffrey Pfau
09cd56820f
Util: Add a simple Vector definition
2015-02-04 01:11:02 -08:00
Jeffrey Pfau
15b3a3281f
GBA Memory: Add GBAPatch functions for force-writing and patching memory addresses
2015-02-03 23:49:34 -08:00
Jeffrey Pfau
56291e63e5
Debugger: Add support for soft breakpoints
2015-02-03 03:12:04 -08:00
Jeffrey Pfau
8caf58ee42
ARM7: Add function for turning r15 into the address of the current instruction
2015-02-03 03:12:04 -08:00
Jeffrey Pfau
7149dd3102
GBA: Refactor gba directory, dropping gba- prefix and making supervisor directory
2015-02-03 03:12:04 -08:00
Jeffrey Pfau
5499ec8113
GBA: Refactor gba-sensors and gba-gpio into gba-hardware
2015-01-29 23:50:02 -08:00
Jeffrey Pfau
0de46a7867
GBA: Add API for getting Configuration structs for overrides and input
2015-01-29 23:16:25 -08:00
Jeffrey Pfau
370bbd83ba
Qt: Rename GamePakView to OverrideView
2015-01-29 00:37:30 -08:00
Jeffrey Pfau
b9c7016c30
Qt: Expand RTC to Realtime clock in strings
2015-01-29 00:37:30 -08:00
Jeffrey Pfau
d665105082
Qt: Support idle loop optimization
2015-01-29 00:37:30 -08:00
Jeffrey Pfau
9992282b1c
GBA: Add constant for invalid idle loop address
2015-01-29 00:25:15 -08:00
Jeffrey Pfau
eb4f33e23a
Qt: Split out sensor editor from override view
2015-01-28 23:37:11 -08:00
Jeffrey Pfau
41559813b7
Merge branch 'optimization/idle-loop-detection'
2015-01-28 22:34:06 -08:00
Jeffrey Pfau
7e973c207a
GBA BIOS: Prevent CpuSet and CpuFastSet from using BIOS addresses as a source ( fixes #184 )
2015-01-27 21:43:28 -08:00
Jeffrey Pfau
e61acf6218
Merge branch 'master' into optimization/idle-loop-detection
2015-01-27 02:09:53 -08:00
Jeffrey Pfau
6d08ed3dd8
GBA Video: Fix DISPSTAT write after refactor
2015-01-27 02:09:41 -08:00
Jeffrey Pfau
2dc710feeb
Merge branch 'master' into optimization/idle-loop-detection
...
Conflicts:
src/gba/gba-overrides.c
src/gba/gba.c
2015-01-26 22:29:41 -08:00
Jeffrey Pfau
10ba7d16b3
GBA: Fix FFTA idle loop location
2015-01-26 01:56:44 -08:00
Jeffrey Pfau
d11428ad40
GBA: Bump idle loop detection threshold to 10000
2015-01-26 01:56:44 -08:00
Jeffrey Pfau
e1fc839ed8
GBA: Bump idle detection down to idle removal if a pre-vetted idle loop is known
2015-01-26 01:56:44 -08:00
Jeffrey Pfau
e85e8968f2
ARM7: Tidy up decoder MSR and MRS instructions
2015-01-26 01:42:21 -08:00
Jeffrey Pfau
96bc5b9bc7
Debugger: Disassembly now lists PSR bitmasks ( fixes #191 )
2015-01-26 01:41:06 -08:00
Jeffrey Pfau
96ac72fbf9
Debugger: Watchpoints now report address watched ( fixes #68 )
2015-01-26 01:16:24 -08:00
Jeffrey Pfau
6116f730e7
Qt: Saving of game overrides
2015-01-25 16:01:03 -08:00
Jeffrey Pfau
f33e9c060f
Qt: Configurable game overrides for Game Pak devices
2015-01-25 15:21:48 -08:00
Jeffrey Pfau
f4fcdf35d4
Debugger: Clean up debugger interface, removing obsolete state ( fixes #67 )
2015-01-25 13:28:14 -08:00
Jeffrey Pfau
eb4c41d6fc
Qt: Drag and drop game loading ( fixes #146 )
2015-01-25 04:54:18 -08:00
Jeffrey Pfau
0367a9db06
SDL: Properly clean up if a game doesn't launch
2015-01-25 03:37:15 -08:00
Jeffrey Pfau
19eaba3cdd
GBA: Fix unmapping values that are out of range
2015-01-25 03:34:14 -08:00
Jeffrey Pfau
09db378531
Perf: Fix crash when the GBA thread fails to start
2015-01-25 03:12:53 -08:00
Jeffrey Pfau
e70df7b6f7
All: Fix warnings
2015-01-25 00:24:18 -08:00
Jeffrey Pfau
e67bf2fd42
Third-Party: Fix warnings in LZMA SDK
2015-01-25 00:20:46 -08:00
Jeffrey Pfau
0cf3006952
GBA Thread: Fix possible hang when loading an archive
2015-01-25 00:12:33 -08:00
Jeffrey Pfau
c50b228243
All: Support 7-Zip files ( fixes #151 )
2015-01-25 00:11:36 -08:00
Jeffrey Pfau
a30ca1ac2c
Util: Add UTF-16 and UTF-8 parsing functions
2015-01-25 00:02:55 -08:00
Jeffrey Pfau
075308e837
GBA Thread: Make sure idle loop setting is set at the right time
2015-01-24 21:08:17 -08:00
Jeffrey Pfau
dba275c570
GBA: Fix warning in config loader
2015-01-24 21:08:08 -08:00
Jeffrey Pfau
030f12e39f
Perf: Detect idle loops by default
2015-01-24 21:08:08 -08:00
Jeffrey Pfau
43ddcf56cc
Qt: Show window later that usual to ensure that it scales properly initially
2015-01-24 15:50:04 -08:00
Jeffrey Pfau
19758d7115
GBA Video: Refactor video routines to be in a more consistent state during callbacks
2015-01-24 01:02:09 -08:00
Jeffrey Pfau
a7357df857
GBA Thread: Interrupting should halt the emulation as soon as possible
2015-01-24 00:32:56 -08:00
Jeffrey Pfau
acb510619f
Qt: Add error message if listening for GDB port fails
2015-01-21 22:57:45 -08:00
Jeffrey Pfau
c7593d7073
Qt: Add menu items for adjusting in-game solar levels
2015-01-21 01:13:28 -08:00
Jeffrey Pfau
fc172147ee
GBA: Stop trying to detect idle loops if it fails too many times
2015-01-20 22:16:21 -08:00
Jeffrey Pfau
71e5aacd5b
SDL: Faster texture uploads for GL using glTexSubImage2D
2015-01-19 22:04:15 -08:00
Jeffrey Pfau
ca3566de8c
Qt: Remove leftover code from GDB fixup
2015-01-19 03:21:11 -08:00
Jeffrey Pfau
2400b760c8
Qt: Fix crash if a game pauses before any frames are shown
2015-01-19 02:40:55 -08:00
Jeffrey Pfau
21f9c0107a
Qt: Close GDB window when shutting down a game
2015-01-19 02:39:43 -08:00
Jeffrey Pfau
973f1a64a0
Debugger: Ensure GDB stub never hard-blocks
2015-01-19 02:34:36 -08:00
Jeffrey Pfau
29623ecd0b
Qt: GDB debugger can now accept without blocking main thread
2015-01-19 01:46:16 -08:00
Jeffrey Pfau
ddfffd22de
GBA Memory: Fix prefetch values in Thumb mode
2015-01-19 01:16:18 -08:00
Jeffrey Pfau
6d43fb7890
Debugger: Merge Thumb BL instructions when disassembling ( fixes #133 )
2015-01-18 13:28:58 -08:00
Jeffrey Pfau
99d75ee9ed
Debugger: Simplify debugger state machine to play nicer with the GBA thread loop
2015-01-18 02:27:25 -08:00
Jeffrey Pfau
1f75e41bae
GBA: Make sure axes are properly mapped and unmapped vis-a-vis buttons
2015-01-18 01:21:01 -08:00
Jeffrey Pfau
61467cacd9
Util: Add easy way to remove keys
2015-01-18 01:19:28 -08:00
Jeffrey Pfau
0ba9d1e247
GBA Audio: Revert 16-bit audio FIFO write behavior outside of DMAs
2015-01-17 09:16:49 -08:00
Jeffrey Pfau
b66ce64c47
GBA: Fix timers 2 and 3 updating incorrectly
2015-01-17 02:21:49 -08:00
Jeffrey Pfau
3a7bdbf8dd
GBA: Only run idle loop detection outside of BIOS region
2015-01-17 00:53:14 -08:00
Jeffrey Pfau
d49a9a84f7
Merge branch 'master' into optimization/idle-loop-detection
...
Conflicts:
CHANGES
src/gba/gba-overrides.c
src/gba/gba-thread.h
src/gba/gba.c
2015-01-16 02:55:21 -08:00
Jeffrey Pfau
56d5fb579d
Debugger: Clean up GDB stub network interfacing
2015-01-16 00:50:15 -08:00
Jeffrey Pfau
69fb4e4c7b
Util: Fix SOCKET_FAILED macro
2015-01-16 00:11:50 -08:00
Jeffrey Pfau
d5ce3d5ee1
Debugger: Enable GDB stub to update while running
2015-01-15 21:23:32 -08:00
Jeffrey Pfau
535d179eb0
GBA: Improve accuracy of event timing
2015-01-15 20:52:49 -08:00
Jeffrey Pfau
900dc3c13f
GBA Audio: Properly initialize audio FIFO channels
2015-01-15 20:49:39 -08:00
Jeffrey Pfau
c2040a1f63
GBA Video: Fix mode 0 being able to read tiles above appropriate tile range
2015-01-15 02:01:33 -08:00
Jeffrey Pfau
1a9b0eec6f
GBA BIOS: Fix HuffUnComp boundary conditions
2015-01-15 01:35:02 -08:00
Jeffrey Pfau
06bf931b77
GBA Memory: Fix alignment of open bus 8- and 16-bit loads
2015-01-15 01:10:54 -08:00
Jeffrey Pfau
1119d773e1
Util: Fix some warnings
2015-01-15 00:13:41 -08:00
Jeffrey Pfau
543ffac706
GBA: Add prefetch data to savestate
2015-01-14 22:39:23 -08:00
Jeffrey Pfau
10b0ad961a
GBA BIOS: Fix BIOS prefetch after reset
2015-01-14 22:08:51 -08:00
Jeffrey Pfau
68e6fc4dd7
GBA BIOS: Fix BIOS prefetch after returning from an IRQ
2015-01-14 22:06:55 -08:00
Jeffrey Pfau
6f11092565
Debugger: Make watchpoints work with STM/LDM ( fixes #169 )
2015-01-14 20:51:07 -08:00
Jeffrey Pfau
7bc39569ed
GBA Video: Start video at the last scanline instead of the first
2015-01-14 02:29:45 -08:00
Jeffrey Pfau
e7dd041618
GBA BIOS: Fix BIOS prefetch after returning from an HLE SWI
2015-01-14 00:51:37 -08:00
Jeffrey Pfau
cf88e47a8a
GBA Memory: Fix initial DMA state
2015-01-14 00:28:49 -08:00
Jeffrey Pfau
47661def29
GBA BIOS: Reject bit length 1 in HuffUnComp
2015-01-13 21:37:38 -08:00
Jeffrey Pfau
369ccc6402
GBA Memory: Properly bounds-check VRAM accesses
2015-01-13 21:24:41 -08:00
Jeffrey Pfau
787b2bd1a3
GBA BIOS: Fix GetBiosChecksum to return the value of a real GBA, regardless of used BIOS
2015-01-13 21:23:07 -08:00
Jeffrey Pfau
2688642f01
GBA BIOS: Fix HuffUnComp to work when games pass an invalid bit length
2015-01-13 20:46:29 -08:00
Jeffrey Pfau
cb14f00279
GBA: Even less stringent GBA ROM detection
2015-01-13 04:06:47 -08:00
Jeffrey Pfau
c05b166469
SDL: Clean up key handling, change rewind key to backtick
2015-01-13 03:02:36 -08:00
Jeffrey Pfau
b9623efc0c
Perf: Load the config file
2015-01-13 02:41:49 -08:00
Jeffrey Pfau
466916729e
GBA: Configurable game overrides
2015-01-13 02:41:49 -08:00
Jeffrey Pfau
eb81fc3c65
Perf: Load the config file
2015-01-13 02:40:01 -08:00
Jeffrey Pfau
cafc67a606
GBA: Make idle loop detection configurable
2015-01-13 02:39:48 -08:00
Jeffrey Pfau
542662ca68
Merge branch 'master' into optimization/idle-loop-detection
...
Conflicts:
CHANGES
2015-01-13 01:57:45 -08:00
Jeffrey Pfau
5f62e33717
GBA: Configurable game overrides
2015-01-13 01:54:02 -08:00
Jeffrey Pfau
eced06bc2a
GBA: Split out save autodetect from no save present
2015-01-12 00:59:48 -08:00
Jeffrey Pfau
19648c786d
GBA SIO: Add timing data
2015-01-11 16:31:02 -08:00
Jeffrey Pfau
8118c94c81
GBA: Move numbered savestate loading to GBAThread, clear rewind buffer when loading ( fixes #174 )
2015-01-11 06:24:24 -08:00
Jeffrey Pfau
1fe5a7847a
Util: Perform checksum validation on BPS patches
2015-01-11 06:22:58 -08:00
Jeffrey Pfau
8c2d3e5d59
Util: Add BPS patch support ( fixes #150 )
2015-01-11 01:38:04 -08:00
Jeffrey Pfau
a6001496bc
Util: Add VFile.size function ( fixes #153 )
2015-01-11 00:35:26 -08:00
Jeffrey Pfau
c8be60f88b
Qt: Restrict load types
2015-01-10 23:28:41 -08:00
Jeffrey Pfau
087810a125
Qt: Error dialog if a game fails to load
2015-01-10 23:28:30 -08:00
Jeffrey Pfau
78002b4df7
GBA: Add overrides for Japanese Boktai games
2015-01-10 23:17:43 -08:00
Jeffrey Pfau
372eb39599
Qt: Save directory of last loaded file
2015-01-10 22:46:59 -08:00
Jeffrey Pfau
97291824a5
GBA BIOS: Fix LZ77UnCompVram to use 16-bit loads from decompressed memory
2015-01-10 20:55:01 -08:00
Jeffrey Pfau
54ef61f715
GBA: Implement idle loop detection
2015-01-10 15:44:11 -08:00
Jeffrey Pfau
293831e3bf
ARM: Fix some decoder errors
2015-01-10 14:19:05 -08:00
Jeffrey Pfau
7a3db31eb2
Perf: Return non-zero if a game crashes
2015-01-10 04:44:09 -08:00
Jeffrey Pfau
cd4c790050
GBA Memory: Fix open bus 16-bit loads
2015-01-10 04:44:09 -08:00
Jeffrey Pfau
6d18b9aea5
GBA Memory: Simplify memory API and use fixed bus width
2015-01-10 01:20:21 -08:00
Jeffrey Pfau
f0f929665e
Qt: Fix window geometry on launch when window is still hidden
2015-01-09 23:23:31 -08:00
Jeffrey Pfau
76bf0427f1
Util: Support IPv6
2015-01-09 02:03:57 -08:00
Jeffrey Pfau
968069ff5e
GBA: Fix logging moving events
2015-01-08 23:46:31 -08:00
Jeffrey Pfau
f22391275b
SDL: Better error checking
2015-01-08 20:06:05 -08:00
Jeffrey Pfau
f05a385d6a
GBA Thread: Add a crashed state to the thread
2015-01-08 20:06:05 -08:00
Jeffrey Pfau
4d0f855923
Debugger: Add rewind command
2015-01-08 20:06:05 -08:00
Jeffrey Pfau
da094de3da
Debugger: Fix binary print putting spaces between digits
2015-01-08 01:03:27 -08:00
Jeffrey Pfau
12fce1fba0
Qt: Migrate axis bindings to GamepadAxisEvent
2015-01-08 00:24:43 -08:00
Jeffrey Pfau
f2e24f9c55
GBA BIOS: Implement SoftReset
2015-01-07 22:33:16 -08:00
Jeffrey Pfau
afc0a9df57
GBA BIOS: Implement (most of) RegisterRamReset
2015-01-07 22:24:18 -08:00
Jeffrey Pfau
600080ba0c
GBA BIOS: Implement Diff8bitUnFilterVram
2015-01-07 21:43:21 -08:00
Jeffrey Pfau
fb35a8b3f7
GBA BIOS: Clean up decompression routines and add writeback
2015-01-07 21:31:39 -08:00
Jeffrey Pfau
7059fcc257
GBA BIOS: Fix Diff16bitUnFilter
2015-01-07 21:30:04 -08:00
Jeffrey Pfau
9da3e5e1f9
Util: Fix socket code to not use struct designated initialization
2015-01-07 02:06:38 -08:00
Jeffrey Pfau
aa12eeef3a
Qt: Update debugger portions to use threadInterrupt/threadContinue
2015-01-07 02:05:52 -08:00
Jeffrey Pfau
7a7dcea212
GBA: Remove unused GBAError struct
2015-01-07 02:05:18 -08:00
Jeffrey Pfau
f9120b842f
ARM: Create component hotplugging and use it for attaching and detaching the debugger
2015-01-07 02:05:04 -08:00
Jeffrey Pfau
30c28f2259
GBA Memory: Filter out top nybble of DMA addresses
2015-01-07 00:58:31 -08:00
Anthony J. Bentley
ce28d6d966
All: Clarify that -p takes an argument. (Merge pull request #2 )
2015-01-07 00:13:47 -08:00
Jeffrey Pfau
c3fef5febd
GBA Video: Properly combine OBJWIN blend flags with BG blend flags
2015-01-07 00:09:10 -08:00
Jeffrey Pfau
fac82c2ca1
GBA BIOS: Implement Diff8bitUnFilterWram and Diff16bitUnFilter
2015-01-06 23:07:59 -08:00
Jeffrey Pfau
f97ba6517b
Qt: Expose rewind ( fixes #136 )
2015-01-05 23:14:07 -08:00
Jeffrey Pfau
d6e24b2051
GBA Thread: Rewind API enhancements
2015-01-05 23:11:56 -08:00
Jeffrey Pfau
5c699e9d6c
GBA: Fix rewind boundary conditions
2015-01-05 22:56:56 -08:00
Jeffrey Pfau
24fc26d560
GBA Video: Properly separate OBJWIN blend flags from BG blend flags
2015-01-05 04:19:15 -08:00
Jeffrey Pfau
ec5445d5ad
Qt: Allow tab and backtab to be mapped for key sequences
2015-01-05 02:27:50 -08:00
Jeffrey Pfau
851d942cdd
Qt: Fix a few more UX grievances
2015-01-05 02:06:37 -08:00
Jeffrey Pfau
c90d105e34
Qt: Add clear button for shortcut editor
2015-01-05 01:57:25 -08:00
Jeffrey Pfau
3854c7e401
Qt: Fix a handful of UX issues with gamepad mapping
2015-01-05 01:17:53 -08:00
Jeffrey Pfau
e263467f13
Qt: Fix focus loss after cancelling a save state load/save
2015-01-05 01:01:49 -08:00
Jeffrey Pfau
721145a319
Qt: Persist shortcut configurations to a settings file
2015-01-05 00:13:57 -08:00
Jeffrey Pfau
92f877e6a7
Qt: Move MRU to QSettings
2015-01-04 23:23:08 -08:00
Jeffrey Pfau
4da22679b9
Qt: Only send button events if there is a widget in focus
2015-01-04 22:45:20 -08:00
Jeffrey Pfau
ac686e3942
Qt: Clear axis direction when setting a button value ( fixes #179 )
2015-01-04 22:35:41 -08:00
Jeffrey Pfau
c96c1f6211
Qt: Fix some cases where key mapping can break if focus is adjusted
2015-01-04 22:30:23 -08:00
Jeffrey Pfau
4fdb4991f4
GBA: Detect when a BIOS file is not actually a BIOS file
2015-01-04 19:11:46 -08:00
Jeffrey Pfau
98a6510b92
Qt: Fix race condition when a game crashes immediately
2015-01-04 19:11:46 -08:00
Jeffrey Pfau
811ad23e61
Qt: Shortcut view now supports held events
2015-01-04 16:49:10 -08:00
Jeffrey Pfau
a1480e2698
Qt: Get submenus working with the shortcut editor
2015-01-04 15:46:35 -08:00
Jeffrey Pfau
33c4b17941
Qt: Add GamepadButtonEvent and remove signal associated; use this for button controls in emulator
2015-01-04 04:23:20 -08:00
Jeffrey Pfau
53c586044d
Qt: Allow shortcuts to be controlled with a gamepad
2015-01-04 02:16:43 -08:00
Jeffrey Pfau
d15c4f4bfb
Qt: Refactor out gamepad monitoring code into a new class
2015-01-04 01:14:36 -08:00
Jeffrey Pfau
0ce8ca36fa
Qt: Start on key shortcut editor
2015-01-03 23:57:37 -08:00
Jeffrey Pfau
bb78cc1bd3
Qt: Move settings items to consistent location in Tools
2015-01-03 14:59:27 -08:00
Jeffrey Pfau
caef397ad4
Qt: Fix build on OS X with Qt 5.4
2015-01-03 13:08:47 -08:00
Jeffrey Pfau
9ec24a5b97
Qt: Minor code cleanup for setTurbo
2015-01-02 02:04:09 -08:00
Jeffrey Pfau
569e6ef7db
Qt: Clear active buttons when focus is lost
2015-01-02 02:03:12 -08:00
Jeffrey Pfau
3384863382
GBA Audio: Fix GB audio channels being too quiet
2015-01-01 23:19:16 -08:00
Jeffrey Pfau
9933c58eec
Qt: Fix integer overflow in frame -> seconds calculation
2015-01-01 22:40:55 -08:00
Jeffrey Pfau
682ed7dcee
Qt: Add "Now" button to RTC overrides
2015-01-01 16:26:42 -08:00
Jeffrey Pfau
d676d26f5f
Qt: Use low logLevel for GBA object, overridden by GBAThread
2015-01-01 16:05:36 -08:00
Jeffrey Pfau
642ba374e7
GBA: Allow GBAThread to override GBA object logLevel
2015-01-01 16:05:07 -08:00
Jeffrey Pfau
b51710e92f
GBA: Use GBALog with appropriate GBA object in new GPIO code
2015-01-01 16:04:05 -08:00
Jeffrey Pfau
6938c8bea6
Video: Fix FFmpeg crashing when the file extension is wrong
2015-01-01 14:51:20 -08:00
Jeffrey Pfau
24e10fe0df
Qt: Fix Windows build
2015-01-01 03:36:48 -08:00
Jeffrey Pfau
da5d109d69
GBA: Add frame counter and more GPIO state to savestates
2015-01-01 03:21:29 -08:00
Jeffrey Pfau
8c0f082a83
Qt: RTC overrides
2015-01-01 03:01:40 -08:00
Jeffrey Pfau
f534638342
Qt: Add tilt sensor properly into the Game Pak override interface
2015-01-01 00:43:33 -08:00
Jeffrey Pfau
85c3ed4178
GBA Video: Fix sprite boundary conditions with mosaic
2014-12-31 20:53:50 -08:00
Jeffrey Pfau
bbfd7d8e2c
GBA Video: Fix window interactions with 16-color mode 0 mosaic
2014-12-31 19:59:26 -08:00
Jeffrey Pfau
eeb7060bda
SDL: Fix blip audio buffer repeat while paused
2014-12-31 14:51:52 -08:00
Jeffrey Pfau
c141063101
GBA: Implement tilt sensor
2014-12-31 14:43:02 -08:00
Jeffrey Pfau
c9b8254971
GBA Audio: Remove sample rate adjustment code
2014-12-31 13:41:34 -08:00
Jeffrey Pfau
d83b00e4fa
GBA: Put in tilt sensor stubs
2014-12-31 04:43:06 -08:00
Jeffrey Pfau
38a4e9988f
All: Silence a few warnings
2014-12-31 03:11:06 -08:00
Jeffrey Pfau
aaf96b43cd
Qt: Fix bug with frame not resizing properly
2014-12-31 02:27:29 -08:00
Jeffrey Pfau
794b9f0e64
Qt: Actually enable light sensor control widgets
2014-12-31 00:56:39 -08:00
Jeffrey Pfau
7935d58eac
Qt: Light sensor setting from GUI
2014-12-30 23:24:39 -08:00
Jeffrey Pfau
d759305e23
Qt: Game Pak override dialog, half implemented
2014-12-30 22:56:55 -08:00
Jeffrey Pfau
a55a3cb4d4
GBA: Refactor out savetype forcing
2014-12-30 22:56:17 -08:00
Jeffrey Pfau
1e60a30114
GBA Video: Fix sprite mis-ordering behavior in some cases ( fixes #168 )
2014-12-29 23:33:12 -08:00
Jeffrey Pfau
38cb3eeaa8
Merge branch 'feature/blip-buf'
2014-12-29 02:38:38 -08:00
Jeffrey Pfau
4fa9401971
Qt: Fix OS X build in some unusual circumstances
2014-12-29 02:34:16 -08:00
Jeffrey Pfau
73a6b47879
GBA Audio: Rip out FFmpeg resampler
2014-12-29 01:51:50 -08:00
Jeffrey Pfau
b92ed79a85
GBA Audio: Add blip_buf support
2014-12-29 01:45:24 -08:00
Jeffrey Pfau
37d21b24b8
Qt: Remove absolute path for bundle installation to make CPack work
2014-12-27 19:11:48 -08:00
Jeffrey Pfau
27eb75fcde
Qt: Replace macdeployqt with tools/deploy-mac.py
2014-12-27 18:17:47 -08:00
Jeffrey Pfau
747fcca3b2
Debugger: Add CLI functions for writing to memory
2014-12-26 01:40:50 -08:00
Jeffrey Pfau
63d4929c0c
GBA: Ability to use an external source for the RTC
2014-12-26 01:37:24 -08:00
Jeffrey Pfau
90a3872552
GBA: Fix GPIO being readable when set to write-only
2014-12-25 14:49:06 -08:00
Jeffrey Pfau
f25821524d
Debugger: Fix watchpoints triggering too late
2014-12-25 14:48:30 -08:00
Jeffrey Pfau
ca51098ca0
GBA: Hook up light sensor API
2014-12-25 04:17:33 -08:00
Jeffrey Pfau
9b1769d67d
GBA: Implement light sensor GPIO interface with a hardcoded value for the moment
2014-12-25 04:17:32 -08:00
Jeffrey Pfau
a6f895da7d
Debugger: Align PC-relative loads in Thumb
2014-12-25 04:17:32 -08:00
Jeffrey Pfau
8515036cb9
Qt: Further CMakeLists fixes
2014-12-25 04:03:07 -08:00
Jeffrey Pfau
b6d189d88b
GBA Video: Fix windows not disabling target 1 appropriately ( fixes #161 )
2014-12-24 20:27:52 -08:00
Jeffrey Pfau
b8076be860
All: Use COMPONENT for selecting installation pieces
2014-12-24 18:40:36 -08:00
Jeffrey Pfau
9edf42b454
Video: Fix uncompressed PCM audio recording
2014-12-24 00:06:26 -08:00
Jeffrey Pfau
6656f53f61
Qt: Fix uninitialized value
2014-12-23 23:15:40 -08:00
Jeffrey Pfau
d6def0d407
Video: Ensure FFmpeg encoder has audio frames
2014-12-23 23:15:40 -08:00
Jeffrey Pfau
55df6ce26b
Qt: Guard GDBController class with an ifdef
2014-12-23 23:00:24 -08:00
Jeffrey Pfau
280c803305
Qt: Fix FPS target and SDL initialization audio issues
2014-12-23 21:58:29 -08:00
Jeffrey Pfau
5b3a2e04b1
GBA Audio: Redo lavr audio loop
2014-12-23 21:57:42 -08:00
Jeffrey Pfau
e89e7cc18a
GBA: Fix prefetch value on bus
2014-12-23 03:00:51 -08:00
Jeffrey Pfau
c942758af0
GBA Memory: Implement 16- and 32-bit loads from SRAM
2014-12-23 02:59:26 -08:00
Jeffrey Pfau
65bb4b4996
Qt: Add FPS target back to settings view
2014-12-23 00:26:47 -08:00
Jeffrey Pfau
2414df6527
Qt: Fix maxing out at 120 FPS on OS X
2014-12-23 00:23:31 -08:00
Jeffrey Pfau
ee8dedeea1
GBA Video: Fix blend issues with obscured middle layers
2014-12-23 00:10:08 -08:00
Jeffrey Pfau
6cc8890226
Qt: Add MRU list
2014-12-22 23:00:31 -08:00
Jeffrey Pfau
9c92a29b28
3DS: Remove duplicate license headers
2014-12-22 21:57:31 -08:00
Jeffrey Pfau
0d4999ff33
Qt: Clarify some phrasing in the menus
2014-12-21 22:24:19 -08:00
Jeffrey Pfau
c91c46ce97
GBA Audio: Audio buffer sizes are now correct sizes for both sample rates
2014-12-21 21:30:59 -08:00
Jeffrey Pfau
892a5e5d5e
GBA Audio: Make larger buffer sizes than 2048 actually work properly
2014-12-21 21:27:55 -08:00
Jeffrey Pfau
c7a49ce8f2
Qt: Set default log level to FATAL, ERROR and WARN
2014-12-21 20:22:49 -08:00
Jeffrey Pfau
9a0640f834
GBA: Add option to skip BIOS start screen
2014-12-21 20:21:27 -08:00
Jeffrey Pfau
f53f9555a2
GBA: Add bilinear resampling option
2014-12-21 16:50:55 -08:00
Jeffrey Pfau
7c8f1d9726
Qt: Rudimentary settings window
2014-12-21 16:29:56 -08:00
Jeffrey Pfau
22826f2e7a
Qt: Fix config options being erroneously added as null
2014-12-21 16:01:55 -08:00
Jeffrey Pfau
4420309dc5
Qt: Properly set default video recording settings
2014-12-21 15:24:49 -08:00
Jeffrey Pfau
830511472a
GBA Memory: Properly initialize 1 Mb flash, and add debug logging
2014-12-21 14:49:54 -08:00
Jeffrey Pfau
c52a5d2859
GBA Audio: Support 16-bit writes to FIFO audio
2014-12-21 03:19:56 -08:00
Jeffrey Pfau
ce0ad004e4
GBA Audio: Better audio resampling via FFmpeg
2014-12-21 02:13:27 -08:00
Jeffrey Pfau
660ac6a6be
GBA Audio: Change internal audio sample buffer from 32-bit to 16-bit samples
2014-12-21 02:13:27 -08:00
Jeffrey Pfau
2fb098cb01
GBA Config: Expose emulator config directory
2014-12-20 18:41:41 -08:00
Jeffrey Pfau
0a3cf87745
Debugger: Negative PC-relative loads now properly subtract the offset
2014-12-20 15:10:54 -08:00
Jeffrey Pfau
48c0dcf320
GBA BIOS: Fix BIOS prefetch after returning from a SWI
2014-12-20 06:08:55 -08:00
Jeffrey Pfau
28ac288d2c
ARM7: Extend prefetch by one stage
2014-12-20 05:19:16 -08:00
Jeffrey Pfau
f57b47b3f2
GBA Memory: Fix value obtained from missing SRAM
2014-12-20 05:17:29 -08:00
Jeffrey Pfau
da612b51e8
Debugger: Add CLI "frame", frame advance command
2014-12-20 01:43:48 -08:00
Jeffrey Pfau
9aed9754d0
Qt: Handle a game crash without crashing
2014-12-19 20:36:38 -08:00
Jeffrey Pfau
802e4b8720
GBA: Exit cleanly on FATAL if the port supports it
2014-12-19 20:36:38 -08:00
Jeffrey Pfau
6bb61bc670
GBA Memory: Don't call into GPIO write calls if GPIO devices are absent
2014-12-19 20:36:38 -08:00
Jeffrey Pfau
7c7af90b5c
Qt: Set strong focus policy on main Window
2014-12-18 02:17:17 -08:00
Jeffrey Pfau
58d8cdde82
Qt: Focusing a button when mapping a gamepad now works
2014-12-18 01:31:20 -08:00
Jeffrey Pfau
61fc28e03e
Qt: Ensure holding down a button while mapping only takes effect once
2014-12-18 01:20:37 -08:00
Jeffrey Pfau
e80cf92eee
Qt: Return active axis values as signs, to ensure sets are consistent
2014-12-18 01:20:08 -08:00
Jeffrey Pfau
0ae81e6e8f
Qt: Improved versioning information
2014-12-17 21:25:43 -08:00
Jeffrey Pfau
3d21ce1fd0
ARM7: Fix LDM writeback to a register already written
2014-12-17 21:15:49 -08:00
Jeffrey Pfau
9eca161dc9
GBA BIOS: Fix HLE Lz77 and RL functions to properly account for width and invalid addresses
2014-12-17 02:36:22 -08:00
Jeffrey Pfau
9bd5b02644
GBA Video: Remove stale renderers
2014-12-16 23:30:18 -08:00
Jeffrey Pfau
9c1ec8c96d
GBA Thread: Allow halted games to exit cleanly
2014-12-16 22:36:46 -08:00
Jeffrey Pfau
43b0d070b8
SDL: Add scale presets for up to 6x
2014-12-16 22:25:35 -08:00
Jeffrey Pfau
65a8a4e76b
Qt: Add scale presets for up to 6x
2014-12-16 22:23:58 -08:00
Jeffrey Pfau
0351d2e0ec
Qt: Fix emulator crashing when full screen if a game is not running
2014-12-16 22:13:42 -08:00
Jeffrey Pfau
d0604c35af
Qt: Add ability to lock aspect ratio ( fixes #147 )
2014-12-16 01:33:08 -08:00
Jeffrey Pfau
1ee69deffb
Qt: Fix issue with set frame sizes being the wrong height
2014-12-16 00:21:29 -08:00
Jeffrey Pfau
fcac245b98
Qt: Fix crash when mapping gamepad if no key is selected
2014-12-16 00:12:57 -08:00
Jeffrey Pfau
412aa147ea
Qt: Axis mapping
2014-12-14 21:16:17 -08:00
Jeffrey Pfau
1c1fbfe163
GBA Input: Add ability to save configured axes
2014-12-14 00:56:06 -08:00
Jeffrey Pfau
a9106d526c
GBA Input: Add key names
2014-12-14 00:55:48 -08:00
Jeffrey Pfau
1b6389164c
Util: Enumerating a Table should list the key, too
2014-12-14 00:41:03 -08:00
Jeffrey Pfau
2b6462c3a8
Qt: Fix axes overriding hats
2014-12-14 00:28:15 -08:00
Jeffrey Pfau
0aea272583
SDL: Axis mapping loading
2014-12-14 00:27:57 -08:00
Jeffrey Pfau
9b74e27d7a
Qt: Disable sync to video by default
2014-12-14 00:01:48 -08:00
Jeffrey Pfau
a10a84aa89
SDL: Add gamepad axis support, not currently mappable
2014-12-14 00:00:48 -08:00
Jeffrey Pfau
e25fa272a8
Qt: Fix Qt::5Multimedia build
2014-12-13 16:07:04 -08:00
Jeffrey Pfau
a66fa48aa5
Qt: Fix build if USE_GDB_STUB is disabled
2014-12-12 14:33:52 -08:00
Jeffrey Pfau
8ea97f0047
Perf: Fix deadlock when interrupting the process
2014-12-12 01:10:53 -08:00
Jeffrey Pfau
31f0e179c0
GBA Thread: Wake up threads waiting for frames when ending a GBA thread
2014-12-11 22:34:07 -08:00
Jeffrey Pfau
7faee5a426
GBA: Fix I/O register lookup table
2014-12-11 16:08:37 -08:00
Jeffrey Pfau
ad2c401505
GBA Thread: Properly stop thread when video wait is enabled
2014-12-11 04:57:37 -08:00
Jeffrey Pfau
4d7fbf37db
All: Add Debian-style dependencies for CPack
2014-12-10 21:26:55 -08:00
Jeffrey Pfau
e0851f2f44
Qt: Fix build if QtMultimedia is not installed
2014-12-10 19:55:48 -08:00
Jeffrey Pfau
29ea8d1539
Video: Make FFmpeg encoder work with libav
2014-12-10 19:55:27 -08:00
Jeffrey Pfau
8cf1e449f0
Qt: Set default audio buffer size to 2048 to ensure smoothness on as many platforms as possible
2014-12-10 17:21:32 -08:00
Jeffrey Pfau
6d23328bda
GBA Memory: Force disable a repeating DMA when it would repeat infinitely
2014-12-10 06:44:39 -08:00
Jeffrey Pfau
d931dab37c
3DS: Press X to go back to homebrew menu
2014-12-10 05:38:31 -08:00
Jeffrey Pfau
5f7bbb1c4d
3DS: Rotate and center screen
2014-12-10 04:55:05 -08:00
Jeffrey Pfau
57828f6d85
3DS: Get input working
2014-12-10 03:13:38 -08:00
Jeffrey Pfau
40d14fe613
3DS: General cleanup
2014-12-10 03:13:26 -08:00
Jeffrey Pfau
2d6749f8c8
3DS: Use linearAlloc instead of malloc
2014-12-10 03:12:47 -08:00
Jeffrey Pfau
07464e8f2b
GBA: Cap out the ROM loaded size
2014-12-10 01:46:12 -08:00
Jeffrey Pfau
ae71a7ec19
GBA: Cap out the ROM loaded size
2014-12-10 01:44:22 -08:00
Jeffrey Pfau
3d5e0f29fa
3DS: Better implementation of VFile3DS.map
2014-12-10 01:43:56 -08:00
Jeffrey Pfau
82cccd74eb
3DS: Working main loop
2014-12-10 01:43:32 -08:00
Jeffrey Pfau
13a6f4b924
3DS: Fixes to CMakeToolchain
2014-12-10 01:39:55 -08:00
Jeffrey Pfau
21cdbf6438
3DS: Implement threading primitives, but leave them disabled
2014-12-09 23:47:39 -08:00
Jeffrey Pfau
bdb6a46910
3DS: Fix name of libctru
2014-12-09 23:18:22 -08:00
Jeffrey Pfau
63a439406c
GBA Memory: Fix DMA cycle counting
2014-12-09 17:04:48 -08:00
Jeffrey Pfau
c5cf9957a1
GBA Thread: Revert 0a946a0b43
, it broke vsync
2014-12-09 15:55:19 -08:00
Jeffrey Pfau
df3f2796f7
GBA: Error check to make sure ROM and BIOS mapping succeed
2014-12-09 15:19:51 -08:00
Jeffrey Pfau
090048ec06
GBA Thread: Handle the lack of a sync object properly
2014-12-09 12:58:47 -08:00
Jeffrey Pfau
7edf934a59
GBA Thread: Handle the lack of a sync object properly
2014-12-09 12:58:35 -08:00
Jeffrey Pfau
da3c45a0e7
3DS: Clean out unnecessary abstraction in VFS
2014-12-09 03:46:34 -08:00
Jeffrey Pfau
4b5822a8ec
3DS: Add 3DS main file
2014-12-08 19:39:07 -08:00
Jeffrey Pfau
39c88da650
3DS: Add VFile3DS type
2014-12-08 19:32:29 -08:00
Jeffrey Pfau
d6952b6fa6
3DS: Add 3dstool relocation
2014-12-08 18:58:45 -08:00
Jeffrey Pfau
211616e4f1
3DS: 3DS-capable version of _vfdMap and _vfdUnmap
2014-12-08 18:58:19 -08:00
Jeffrey Pfau
461eb3bae0
GBA Thread: Dummy out threading functions, let GBASync* functions still be called
2014-12-08 18:50:08 -08:00
Jeffrey Pfau
53023441da
GBA Thread: Dummy out threading functions, let GBASync* functions still be called
2014-12-08 18:49:05 -08:00
Jeffrey Pfau
2aae3dc660
3DS: Progress on 3DS linking
2014-12-08 18:42:13 -08:00
Jeffrey Pfau
4748ef7d5d
3DS: Update CMakeToolchain with properties from devkitARM makefiles
2014-12-08 18:36:52 -08:00
Jeffrey Pfau
b2a4780b17
3DS: Get core library building on 3DS
2014-12-08 17:42:17 -08:00
Jeffrey Pfau
eb2315cdd8
3DS: Add CMakeToolchain for 3DS
2014-12-08 16:02:11 -08:00
Jeffrey Pfau
ed8852bbe0
GBA Thread: Add half-baked ability to disable threading
2014-12-08 16:00:08 -08:00
Jeffrey Pfau
a4a7ef4a1b
Debugger: Properly isolate CLI debugger code
2014-12-08 15:59:17 -08:00
Jeffrey Pfau
9299b75be5
Qt: Rename project binaries for platforms excluding OS X and Windows
2014-12-06 19:25:57 -08:00
Jeffrey Pfau
5a9cf99249
Qt: Bundle OS X target app
2014-12-06 19:11:10 -08:00
Jeffrey Pfau
f6a7fedb28
All: Add MPL 2.0 license and associated headers
2014-12-03 00:39:06 -08:00
Jeffrey Pfau
e6ea94d229
Qt: Rudimentary gamepad mapper
2014-12-03 00:07:56 -08:00
Jeffrey Pfau
091e717133
Qt: Add Opus to the audio codec mapping and list
2014-11-28 14:41:33 -08:00
Jeffrey Pfau
eb2809829d
Qt: Show FPS in title bar
2014-11-27 17:35:25 -08:00
Jeffrey Pfau
12a014e726
GBA: Add load and save CLI debugger commands
2014-11-27 11:18:41 -08:00
Jeffrey Pfau
97931784e7
GBA: Do not put decoded image on the stack
2014-11-27 11:18:22 -08:00
Jeffrey Pfau
55ba676d7c
Debugger: Actually execute system commands
2014-11-27 11:02:47 -08:00
Jeffrey Pfau
15ef638f95
GBA: Add identifier lookup for GBA registers
2014-11-27 10:36:19 -08:00
Jeffrey Pfau
4a9b87cfd0
GBA: Add skeleton of GBA-specific CLI debugger
2014-11-27 10:11:10 -08:00
Jeffrey Pfau
a8731d280f
Debugger: Add support for additional platforms in CLI
2014-11-27 09:47:03 -08:00
Jeffrey Pfau
8ec961d2e8
Debugger: Add reset command
2014-11-27 08:58:22 -08:00
Jeffrey Pfau
e7fa65f876
SDL: Ensure that the emulation loop cannot end between a redraw and an SDL event poll
2014-11-27 08:48:58 -08:00
Jeffrey Pfau
65d74a2e34
Qt: Discard log levels without cross-thread communication if we can
2014-11-27 01:23:25 -08:00
Jeffrey Pfau
467fbcf54d
GBA: Add overrides for Pokemon Mystery Dungeon
2014-11-27 00:39:56 -08:00
Jeffrey Pfau
64ba9d2d8e
GBA: Make sure interrupting the thread actually pauses it
2014-11-27 00:06:49 -08:00
Jeffrey Pfau
22e7eff33c
GBA BIOS: Clear BIOS-acknowledged interrupt flag before IntrWait
2014-11-26 00:34:28 -08:00
Jeffrey Pfau
e3573d402f
Qt: Remove aac codec mapping; ffmpeg has a built-in aac encoder
2014-11-25 05:08:20 -08:00
Jeffrey Pfau
0cbe5eb4ad
Qt: Require CMake 2.8.11
2014-11-25 04:55:44 -08:00
Jeffrey Pfau
c5e5efca2e
Perf: Fix perf build on Windows
2014-11-25 04:55:00 -08:00
Jeffrey Pfau
6a40e3e455
SDL: Use constants instead of literals for the screen dimensions
2014-11-23 04:37:03 -08:00
Jeffrey Pfau
3177226e8e
GBA: BLDALPHA is readable
2014-11-23 00:24:02 -08:00
Jeffrey Pfau
5a0e4e7a2d
GBA Audio: Fix integer overflow sampling of channel 3
2014-11-23 00:23:37 -08:00
Jeffrey Pfau
ebe543e482
GBA Video: Fix another window bug with windows going too far
2014-11-22 23:33:09 -08:00
Jeffrey Pfau
89f7a69f3a
GBA Video: Fix vertical window wrapping
2014-11-22 20:17:24 -08:00
Jeffrey Pfau
a1712f038d
GBA Video: Fix poorly documented window case with windows that wrap around
2014-11-22 19:56:59 -08:00
Jeffrey Pfau
881dc1d8a3
Qt: Always show menu bar when paused, even in full screen
2014-11-22 02:10:50 -08:00
Jeffrey Pfau
636e01d8df
Video: Fix ImageMagick warnings
2014-11-22 00:39:14 -08:00
Jeffrey Pfau
279cc1027b
GBA Video: Fix a format string warning
2014-11-22 00:33:41 -08:00
Jeffrey Pfau
942ae92c4e
GBA Video: Disable sentinel code in release builds
2014-11-22 00:24:55 -08:00
Jeffrey Pfau
ed70ab9f05
Qt: Fix erroneous filename casing
2014-11-21 00:58:10 -08:00
Jeffrey Pfau
90b27e758a
GBA: Fix DMA count register not being copied into savestate
2014-11-21 00:40:30 -08:00
Jeffrey Pfau
52b96e16f8
GBA Video: Reset renderer when reseting video
2014-11-20 22:58:26 -08:00
Jeffrey Pfau
cf55fcbb52
GBA: Improve reset behavior
2014-11-20 22:55:29 -08:00
Jeffrey Pfau
1205ff1895
GBA Video: Fix edge cases in mode 0 rendering, add sentinels to make sure any more get caught
2014-11-20 22:34:19 -08:00
Jeffrey Pfau
38ab86fdcb
GBA: Add DANGER level, which is ERROR in release and FATAL in debug
2014-11-20 22:34:18 -08:00
Jeffrey Pfau
271211846f
GBA Video: Fix windowing with sprites after c9f0ac5
2014-11-20 22:34:18 -08:00
Jeffrey Pfau
d8b7452526
SDL: Fix SDL audio in some cases
2014-11-20 22:34:04 -08:00
Jeffrey Pfau
51896cdcd6
Qt: Use SDL audio, when available
2014-11-19 23:14:44 -08:00
Jeffrey Pfau
853bcec0c2
ARM: Use a more robust ROR idiom
2014-11-19 03:37:40 -08:00
Jeffrey Pfau
9e400e86da
ARM: multiply wait macros should write to local variable instead of global cycle count
2014-11-19 03:37:40 -08:00
Jeffrey Pfau
3c41bd2427
ARM: Reduce size of ARM condition prediction
2014-11-19 03:37:40 -08:00
Jeffrey Pfau
845d6e1d24
ARM: Run tighter loop in CPU
2014-11-19 03:37:40 -08:00
Jeffrey Pfau
888b64f8b5
Video: GIF encoder using ImageMagick
2014-11-19 03:36:14 -08:00
Jeffrey Pfau
0308f136c7
GBA Memory: partially unroll loops for LDM/STM and add UNLIKELYs
2014-11-18 04:37:17 -08:00
Jeffrey Pfau
d49df216b8
GBA Memory: Simplify LDM/STM loop
2014-11-18 04:37:17 -08:00
Jeffrey Pfau
37554a40ea
Add likely/unlikely macros
2014-11-18 04:37:17 -08:00
Jeffrey Pfau
c9f0ac5c7b
GBA Video: Fix postprocessing sprites with objwin and win0/1
2014-11-18 03:03:18 -08:00
Jeffrey Pfau
5b5c8c8d2d
Video: Allow GIF recording
2014-11-18 01:40:48 -08:00
Jeffrey Pfau
5a6d09405d
GBA BIOS: Remove outdated, inaccurate comment
2014-11-18 00:57:57 -08:00
Jeffrey Pfau
a1829a920d
GBA Config: Fix null ports from crashing
2014-11-17 01:17:56 -08:00
Jeffrey Pfau
9176260044
Perf: Fix perf port crashing with some implementations of strlen
2014-11-16 20:26:39 -08:00
Jeffrey Pfau
938c9e965d
Util: Fix build with strndup on some platforms
2014-11-16 20:25:52 -08:00
Jeffrey Pfau
c19673ce40
Qt: Hide menu bar when in full-screen and allow shortcuts to still work
2014-11-16 05:37:45 -08:00
Jeffrey Pfau
d030914c37
Qt: Fix build with g++, grumble grumble
2014-11-16 03:58:06 -08:00
Jeffrey Pfau
6f4a6d6372
Debugger: Disassemble shifted registers in addressing mode 2
2014-11-15 17:16:11 -08:00
Jeffrey Pfau
8b44ea61ab
Debugger: Fix *RBT being called *RTB
2014-11-15 17:04:34 -08:00
Jeffrey Pfau
5ace8e5023
Debugger: Fix ARM LDM/STM disassembling
2014-11-15 16:54:19 -08:00
Jeffrey Pfau
264f6f1df2
Debugger: disassemble register shifts
2014-11-15 16:32:38 -08:00
Jeffrey Pfau
cade03e10d
Qt: Prevent flicker upon pausing the emulator
2014-11-15 15:00:27 -08:00
Jeffrey Pfau
81b85d1843
GBA Video: Implement mosaic for modes 2 - 5, untested with windows
2014-11-15 01:32:58 -08:00
Jeffrey Pfau
eb51195769
Qt: Move FPS target options to A/V menu
2014-11-15 00:28:54 -08:00
Jeffrey Pfau
5988b4ad2e
Qt: Increase bitrates of h.264 video now that the video is being encoded at a faster, lower quality
2014-11-14 03:55:13 -08:00
Jeffrey Pfau
97f2594ec9
Video: Automatically use different presets based on video size
2014-11-14 03:53:30 -08:00
Jeffrey Pfau
8607275f9f
Video: Fix x264 tune option
2014-11-14 03:26:10 -08:00
Jeffrey Pfau
793f552f43
GBA: Fix DMA in savestates hopefully for good this time
2014-11-14 01:19:34 -08:00
Jeffrey Pfau
d3a60f6555
Video: Try to improve encoding speed/ratefactor a bit
2014-11-14 01:18:53 -08:00
Jeffrey Pfau
ec0b206fee
Qt: Add ability to manually specify and lock video aspect ratio
2014-11-12 02:22:05 -08:00
Jeffrey Pfau
72fd09dbc9
Qt: Fix radio button unchecking in Video UI
2014-11-12 01:47:46 -08:00
Jeffrey Pfau
61cfdbaccb
Qt: Disallow opening the context twice
2014-11-12 01:35:51 -08:00
Jeffrey Pfau
b0fdbab77e
Video: Support scaling the output frame
2014-11-12 01:25:50 -08:00
Jeffrey Pfau
046a1b71ed
Qt: Add video recording presets
2014-11-12 00:55:37 -08:00
Jeffrey Pfau
e51285a0db
GBA Config: Load config from the correct location on Windows
2014-11-11 02:07:50 -08:00
Jeffrey Pfau
20c5c27bf9
Qt: Reset audio output when changing sample size
2014-11-11 01:25:46 -08:00
Jeffrey Pfau
5c0c966a74
GBA Config: Windows support
2014-11-11 00:46:30 -08:00
Jeffrey Pfau
a64259f12c
Qt: Use common idiom for interrupting thread within the GameController
2014-11-11 00:01:25 -08:00
Jeffrey Pfau
0ef07f7c26
Util: Configuration should use FILE instead of fds to be more portable
2014-11-11 00:01:25 -08:00
Jeffrey Pfau
fba659daa1
Qt: Fix non-USE_FFMPEG build
2014-11-11 00:01:25 -08:00
Jeffrey Pfau
bbdb8b513b
Qt: re-layout menus
2014-11-10 04:53:08 -08:00
Jeffrey Pfau
b1e6a0df08
Qt: Video view should codecs update as you type
2014-11-10 04:52:50 -08:00
Jeffrey Pfau
04af84a1d2
Qt: Add some more video formats
2014-11-10 04:52:34 -08:00
Jeffrey Pfau
9f5df2a6f2
GBA Config: Move config file to ~/.config/mgba/config.ini
2014-11-09 23:27:43 -08:00
Jeffrey Pfau
6066c6e373
Qt: Fix boolean setting loading
2014-11-09 23:44:06 -08:00
Jeffrey Pfau
ea66055c63
Qt: Turn on video sync by default
2014-11-09 22:51:05 -08:00
Jeffrey Pfau
d83520c5a2
GBA Thread: Make GBAThreadInterrupt and -Continue check for the thread status, resolving several deadlocks
2014-11-09 20:31:24 -08:00
Jeffrey Pfau
6e62ba8bb2
Qt: Fix deadlock while telling GL thread to stop
2014-11-09 16:36:36 -08:00
Jeffrey Pfau
c2564c77a9
Qt: Init joystick bindings
2014-11-09 16:10:18 -08:00
Jeffrey Pfau
237e354636
SDL: Fix typo in function name
2014-11-09 16:07:56 -08:00
Jeffrey Pfau
7c8401e7f8
SDL: Set higher number of audio samples if the obtained audio spec is more samples than requested
2014-11-09 16:07:35 -08:00
Jeffrey Pfau
e10d28918d
SDL: Fix command line graphics arguments
2014-11-09 15:56:09 -08:00
Jeffrey Pfau
2d37f8cd60
SDL: Set default width and height
2014-11-09 15:51:06 -08:00
Jeffrey Pfau
f008c68761
GBA Thread: Make GBAThreadInterrupt thread-safe
2014-11-08 04:28:16 -08:00
Jeffrey Pfau
190ea71646
GBA Thread: Wakeup audio condition if trying to interrupt the thread to avoid a deadlock
2014-11-08 03:49:20 -08:00
Jeffrey Pfau
7cdcdbd7b4
Qt: Fix g++ build
2014-11-08 01:21:31 -08:00
Jeffrey Pfau
26a087d24e
Qt: Keymap saving
2014-11-08 00:14:42 -08:00
Jeffrey Pfau
0f2c4e5baf
Qt: Draw with QPicture instead of a pixmap
2014-11-07 22:46:53 -08:00
Jeffrey Pfau
81e65c08d8
Qt: Add keyboard remapper
2014-11-07 03:11:44 -08:00
Jeffrey Pfau
0efe988161
Qt: Add log level SWI
2014-11-06 00:30:35 -08:00
Jeffrey Pfau
d75042ea38
GBA Input: Refactor SDL and Qt input code
2014-11-06 00:17:58 -08:00
Jeffrey Pfau
9ba250e9bb
GBA Video: Fix rendering of sprites with objwin passthrough ( fixes #128 )
2014-11-05 05:07:44 -08:00
Jeffrey Pfau
25f5520b0b
SDL: Merge egl-main
2014-11-05 04:11:09 -08:00
Jeffrey Pfau
d5b8fdf81c
SDL: Fix SDL 1.2 build
2014-11-05 03:42:19 -08:00
Jeffrey Pfau
9cc43cd883
SDL: Split out non-shared functionality of GL and SW into their own files
2014-11-05 03:34:23 -08:00
Jeffrey Pfau
fb7f1d07ef
SDL: Unify gl-main and sw-main
2014-11-05 03:21:50 -08:00
Jeffrey Pfau
2b8d1dda7c
SDL: Only use scancodes with SDL2
2014-11-05 02:59:04 -08:00
Jeffrey Pfau
b01e15b913
Qt: Fix memory leak in ~GameController
2014-11-05 02:45:23 -08:00
Jeffrey Pfau
f4d6ef74b4
Util: Fix memory leak in Configuration
2014-11-05 02:45:00 -08:00
Jeffrey Pfau
0fd9e9ad0f
GBA Config: const-correctness
2014-11-05 02:34:51 -08:00
Jeffrey Pfau
50d76d9528
Qt: Fix draw context memory leak when deleting the GameController
2014-11-05 02:28:03 -08:00
Jeffrey Pfau
cbe5fbfeea
Qt: Remove stale TODO
2014-11-05 02:24:49 -08:00
Jeffrey Pfau
a3fff6d1a5
Qt: Store window size setting when resizing
2014-11-05 02:23:47 -08:00
Jeffrey Pfau
8751f5cc0c
Qt: Add integrated configuration loader for the menu
2014-11-05 02:17:26 -08:00
Jeffrey Pfau
19346dff87
GBA Config: Add GBAConfigGetValue
2014-11-05 02:16:35 -08:00
Jeffrey Pfau
37212c1f23
Qt: Move configuration loading to its own class
2014-11-05 00:34:05 -08:00
Jeffrey Pfau
2ddb074bda
GBA Config: Refresh configuration system to be more versatile
2014-11-04 23:54:09 -08:00
Jeffrey Pfau
e884bc4d7a
Util: Add helper functions for setting overloaded Configuration types
2014-11-04 23:48:09 -08:00
Jeffrey Pfau
11bf4fdfda
Util: Adding a null value to a Configuration removes the value
2014-11-04 23:47:31 -08:00
Jeffrey Pfau
75557d11b2
GBA: const-correctness in GBAMap*ToContext
2014-11-04 01:56:59 -08:00
Jeffrey Pfau
4115b240eb
GBA Config: Add audio/video sync setting
2014-11-04 01:19:10 -08:00
Jeffrey Pfau
d3bb022bf1
Video: Fix setting global extradata in FFmpeg
2014-11-04 00:15:54 -08:00
Jeffrey Pfau
67e31c9666
Third-Party: Move third-party to src/third-party
2014-11-03 23:32:18 -08:00
Jeffrey Pfau
72136951bf
SDL: Swap A and B for more standard default layout
2014-11-03 23:28:56 -08:00
Jeffrey Pfau
629196e7a1
SDL: Load SDLK and SDLB input maps
2014-11-03 23:28:33 -08:00
Jeffrey Pfau
3e75a8e3fe
GBA Input: Add input map loading
2014-11-03 23:27:47 -08:00
Jeffrey Pfau
ab4d35c7d9
SDL: Use scancodes instead of keycodes
2014-11-03 22:35:08 -08:00
Jeffrey Pfau
6d89c37886
Qt: Support setting for width and height
2014-11-02 18:30:46 -08:00
Jeffrey Pfau
d744714ac5
Qt: Load configuration file
2014-11-02 18:30:46 -08:00
Jeffrey Pfau
6788008418
Qt: Support loading fpsTarget and audioBuffers
2014-11-02 18:30:46 -08:00
Jeffrey Pfau
776c64b0c8
Qt: Initialize arguments and options
2014-11-02 18:30:46 -08:00
Jeffrey Pfau
a7dc4e3285
GBA Config: Add audio buffers and FPS target
2014-11-02 18:30:46 -08:00
Jeffrey Pfau
6afa678a41
GBA Config: Further separate arguments from options, renaming things in the process
2014-11-02 18:30:46 -08:00
Jeffrey Pfau
f36a74759a
GBA Config: Begin refactor of separating out command line args from settings
2014-11-02 18:30:46 -08:00
Jeffrey Pfau
5607a13039
GBA Config: Support loading BIOS from config files
2014-11-02 18:30:45 -08:00
Jeffrey Pfau
3ed2993e8c
GBA: Add configuration loader
2014-11-02 18:30:45 -08:00
Jeffrey Pfau
5f440b6a02
Util: Add Configuration datatype
2014-11-02 18:30:45 -08:00
Jeffrey Pfau
e66bcfb818
Util: Flesh out Table and add HashTable
2014-11-02 18:30:45 -08:00
Jeffrey Pfau
f7c76788f3
Util: Add murmurhash3 hashing
2014-11-02 18:30:45 -08:00
Jeffrey Pfau
e0b05403f4
Util: Pull basic table struct from another branch
2014-11-02 18:30:45 -08:00
Jeffrey Pfau
bd9fae1466
GBA Memory: Fix out-of-bounds BIOS reads to read off of the bus
2014-11-02 18:28:22 -08:00
Jeffrey Pfau
8b6a76142a
GBA DMA: Emulate DMA bus
2014-11-02 16:54:11 -08:00
Jeffrey Pfau
2ff5809252
GBA Memory: Fix LDM in BIOS
2014-11-02 01:31:50 -07:00
Jeffrey Pfau
acb69161bb
Video: Kludgily fix warnings in sws_scale call
2014-11-01 22:03:54 -07:00
Jeffrey Pfau
1cc4839d4f
Fix build on older versions of FFmpeg
2014-11-01 22:00:31 -07:00
Jeffrey Pfau
d8bee5d34b
GBA Memory: Return misaligned addresses from LDM/STM
2014-11-01 14:40:13 -07:00
Jeffrey Pfau
3ad2047855
Video: Support AAC in MP4
2014-10-28 23:30:15 -07:00
Jeffrey Pfau
eab30ebf05
Video: Consolidate state initialization
2014-10-28 02:53:52 -07:00
Jeffrey Pfau
c101703b20
Qt: Re-add Xvid and use YUV libx264 instead of RGB
2014-10-28 02:27:32 -07:00
Jeffrey Pfau
3878e4b196
Video: use libswscale to handle video format conversion
2014-10-28 02:17:18 -07:00
Jeffrey Pfau
9c83462343
Qt: Fix VBR
2014-10-28 01:35:31 -07:00
Jeffrey Pfau
f4f6ff902c
Qt: fix bitrates for video
2014-10-27 23:38:40 -07:00
Jeffrey Pfau
e9333c8749
Fix audio frame pts
2014-10-27 23:31:51 -07:00
Jeffrey Pfau
4fb82e4b80
Remove specialized code for resampling to allow for broader variety of sample formats
2014-10-27 22:57:26 -07:00
Jeffrey Pfau
aed170b670
Merge branch 'port/qt'
2014-10-27 22:03:02 -07:00
Jeffrey Pfau
e9b26dda08
FFmpeg resampling
2014-10-27 21:59:10 -07:00
Jeffrey Pfau
c3e29f2df2
Lower bitrate limits for video to be more sensible for 240x160 video
2014-10-27 00:54:28 -07:00
Jeffrey Pfau
5dcf3a5d43
Use libfaac for aac
2014-10-27 00:32:52 -07:00
Jeffrey Pfau
1a09f93b27
Allow videos to be recorded from when a ROM is loaded, and end when a ROM is shut down
2014-10-27 00:17:29 -07:00
Jeffrey Pfau
b51e72fcab
Hook up and finish up video recorder
2014-10-26 23:49:25 -07:00
Jeffrey Pfau
61569c0559
Merge branch 'master' into port/qt
2014-10-26 23:48:52 -07:00
Jeffrey Pfau
281f190ae6
Enhance usability and resiliency of ffmpeg encoder
2014-10-26 23:48:34 -07:00
Jeffrey Pfau
3dfc2bfcb3
Begin setting up video recording UI
2014-10-26 18:27:53 -07:00
Jeffrey Pfau
27c7041008
Make sure Qt knows where SDL2 libs are
2014-10-26 03:51:36 -07:00
Jeffrey Pfau
f98d6486ef
Merge branch 'master' into port/qt
2014-10-26 03:49:12 -07:00
Jeffrey Pfau
21ea47ea9e
Fix SDL2 library exporting
2014-10-26 02:04:24 -07:00
Jeffrey Pfau
8d002913f0
Fix windows build on case-sensitive filesystems
2014-10-26 02:03:07 -07:00
Jeffrey Pfau
a5b9faa88c
Fix savestate size on Windows
2014-10-25 18:52:16 -07:00
Jeffrey Pfau
6c9a5a2420
Fix savestate size on Windows
2014-10-25 18:50:33 -07:00
Jeffrey Pfau
f49ceb7e3b
Remove out-of-date comment
2014-10-25 18:10:15 -07:00
Jeffrey Pfau
b33e75daec
Move thread unpausing from destructor to shutdown
2014-10-25 17:32:11 -07:00
Jeffrey Pfau
fe3f01a5ae
Fix potential overflow in huffman decoding
2014-10-25 06:05:00 -07:00
Jeffrey Pfau
10a907e387
Remove out-of-date comment
2014-10-25 05:57:49 -07:00
Jeffrey Pfau
d40d4c1cf2
Use ICO file on Windows
2014-10-25 03:21:46 -07:00
Jeffrey Pfau
b51ec046da
Fix C++ flags
2014-10-25 03:06:57 -07:00
Jeffrey Pfau
2415d59d94
Windows C++ fixes
2014-10-25 03:06:45 -07:00
Jeffrey Pfau
c8d5219212
Merge branch 'master' into port/qt
2014-10-25 01:53:15 -07:00
Jeffrey Pfau
732e29e3c6
Fix argument number errors
2014-10-25 01:48:55 -07:00
Jeffrey Pfau
86003496b0
Handle out-of-bounds SRAM and ROM reads
2014-10-25 01:48:55 -07:00
Jeffrey Pfau
5450bd8d59
Force files into binary mode on Windows
2014-10-25 01:45:42 -07:00
Jeffrey Pfau
a265cf45a9
Fix build on Windows
2014-10-24 22:01:13 -07:00
Jeffrey Pfau
bd74fa1fbc
Add frameskip
2014-10-24 21:45:50 -07:00
Jeffrey Pfau
dcbfba03c3
Fix locking up when triggering turbo with no game loaded
2014-10-24 21:45:37 -07:00
Jeffrey Pfau
02116415d1
Unload patch after the end of the game
2014-10-24 02:25:18 -07:00
Jeffrey Pfau
26c1b3c6c9
Patch menu
2014-10-24 02:23:48 -07:00
Jeffrey Pfau
a2ee0c20dc
Fix filename getting deleted early
2014-10-24 02:23:37 -07:00
Jeffrey Pfau
397ddafdd2
Game resets when loading a patch or BIOS
2014-10-24 01:57:18 -07:00
Jeffrey Pfau
422e2e2f62
Move screen widget to its own class, allowing for a size hint
2014-10-24 01:47:12 -07:00
Jeffrey Pfau
6041bf422a
Load patch from command line
2014-10-24 01:25:06 -07:00
Jeffrey Pfau
344364695e
Fix parsing of numbers starting with 0 (and disregarding octal)
2014-10-23 01:53:18 -07:00
Jeffrey Pfau
61915939b5
Log division by zero
2014-10-23 01:53:18 -07:00
Jeffrey Pfau
768316a8d3
Fix two small consistency issues
2014-10-23 01:53:18 -07:00
Jeffrey Pfau
d3b78b2fd2
Log level for SWI
2014-10-23 01:53:17 -07:00
Jeffrey Pfau
043bb75a6b
Use cleaner mechanism for checking the register list bits
2014-10-22 22:01:48 -07:00
Jeffrey Pfau
1619b760e1
Use better popcount than the GCC one...
2014-10-22 22:01:11 -07:00
Jeffrey Pfau
eecf70ee58
Fix magic number for some games
2014-10-22 22:00:08 -07:00
Jeffrey Pfau
0050fb23c3
Use proper literal sizes for uint64_t
2014-10-22 00:47:32 -07:00
Jeffrey Pfau
f484ef9fa8
Fix timing on palette RAM and VRAM 32-bit load/stores
2014-10-21 23:42:24 -07:00
Jeffrey Pfau
a57312d0cc
Refine and reuse STM/LDM code
2014-10-21 23:31:49 -07:00
Jeffrey Pfau
9abe700d37
Use GCC popcount intrinsic for popcount
2014-10-21 22:51:39 -07:00
Jeffrey Pfau
537480b940
Load/Store multiple functions
2014-10-21 22:35:02 -07:00
Jeffrey Pfau
4bb8b7b1fd
Shutdown thread preemptively if the loaded file is not a ROM
2014-10-21 22:24:32 -07:00
Jeffrey Pfau
03b5e2d78e
Change the GBA magic to work on even improperly compiled ROMs
2014-10-21 22:17:52 -07:00
Jeffrey Pfau
8903d31458
Pepper logging throughout the savegame loading mechanism
2014-10-21 22:12:57 -07:00
Jeffrey Pfau
c52edab71a
Add override for NES classic series games
2014-10-21 22:10:20 -07:00
Jeffrey Pfau
b11528c69d
Prevent deinitializing savegame data when the data is not masked
2014-10-21 22:08:20 -07:00
Jeffrey Pfau
501b6b621c
Classic NES games jump to VRAM
2014-10-21 22:07:18 -07:00
Jeffrey Pfau
f7b1cee66e
Use branchType instead of branches in decoder for more expressive branch decoding
2014-10-21 00:45:06 -07:00
Jeffrey Pfau
e7bd5f9ade
Remove loop in DMA to find a value we already know
2014-10-19 23:30:10 -07:00
Jeffrey Pfau
d44bf73a81
Check if VFileOpen is actually passed a path before trying to open it
2014-10-19 21:13:32 -07:00
Jeffrey Pfau
ba5c77523d
Remove stale file
2014-10-19 18:56:55 -07:00
Jeffrey Pfau
10509fe69d
Fix objwin on objs when objs are off in winout
2014-10-19 06:24:09 -07:00
Jeffrey Pfau
f1afeae74c
Properly reset after loading BIOS
2014-10-19 05:41:35 -07:00
Jeffrey Pfau
29337a60b5
Mark DMA registers as special to keep loading them from messing up state
2014-10-19 05:19:19 -07:00
Jeffrey Pfau
6b382caa0f
Fix decoding of {STR/LDR}[B]T
2014-10-19 03:45:11 -07:00
Jeffrey Pfau
ca5f7a45ee
Move string utilities out to separate file (really fixing Linux build this time)
2014-10-19 03:01:26 -07:00
Jeffrey Pfau
bfa5fb6173
Merge branch 'master' into qt
2014-10-19 01:17:09 -07:00
Jeffrey Pfau
894cc3783b
*Wait -> bool
2014-10-19 01:13:55 -07:00
Jeffrey Pfau
05ec732a83
Add turbo
2014-10-19 01:10:00 -07:00
Jeffrey Pfau
24094ecdf0
Make audo/video sync adjustable externally
2014-10-19 00:50:23 -07:00
Jeffrey Pfau
ad12bdde9d
Move savestates to file menu
2014-10-19 00:39:24 -07:00
Jeffrey Pfau
e7bf4388a4
Merge branch 'master' into qt
2014-10-19 00:30:27 -07:00
Jeffrey Pfau
0a946a0b43
Don't wait on for a frame if we already have any pending
2014-10-19 00:30:07 -07:00
Jeffrey Pfau
65be8610f3
Unblock audio processing when reducing buffer size
2014-10-19 00:13:34 -07:00
Jeffrey Pfau
8aa5880afd
Support FileOpen events on OS X
2014-10-18 23:18:08 -07:00
Jeffrey Pfau
8fc3ef27ad
Don't initialize SDL video in Qt port
2014-10-18 23:16:13 -07:00
Jeffrey Pfau
e84727c94b
Load BIOS from menu
2014-10-18 17:21:05 -07:00
Jeffrey Pfau
54be75bb92
Load BIOS from command line
2014-10-18 17:15:39 -07:00
Jeffrey Pfau
23592af3cc
Add screenshot support
2014-10-18 16:37:05 -07:00
Jeffrey Pfau
b24b02d46c
Screenshot numbering
2014-10-18 16:25:48 -07:00
Jeffrey Pfau
9efd8f2452
Close the savestate window, not just hiding it, when we shut things down
2014-10-18 05:07:45 -07:00
Jeffrey Pfau
e2901db7c1
Unmark the Qt frontend as a separate project
2014-10-18 04:39:44 -07:00
Jeffrey Pfau
2627d1c768
Mark Qt frontend as C++
2014-10-18 04:33:46 -07:00
Jeffrey Pfau
bfb986b974
Make logo scaled to the correct device pixel ratio
2014-10-18 04:33:30 -07:00
Jeffrey Pfau
711231add6
Add custom plist.info.in file
2014-10-18 04:33:09 -07:00
Jeffrey Pfau
2c74cb46ab
Ensure savestate window closes when a game is shut down
2014-10-18 04:12:44 -07:00
Jeffrey Pfau
e3bfe86579
Disable drawing while the thread is shutting down
2014-10-18 04:10:34 -07:00
Jeffrey Pfau
e2812b30b2
Remove code that expects the GBA thread to still be around after it has ended
2014-10-18 04:09:49 -07:00
Jeffrey Pfau
dbe5e7e2a5
Only blank cursor for Display widget, even when in full screen
2014-10-18 03:40:26 -07:00
Jeffrey Pfau
8e4a3439c0
Fix threading issues with the video thread and the main thread deadlocking
2014-10-18 02:26:32 -07:00
Jeffrey Pfau
f1de3d603a
Merge branch 'master' into qt
2014-10-18 02:24:05 -07:00
Jeffrey Pfau
4d9c375f0e
If video sync is suspended, do not wait
2014-10-18 02:23:54 -07:00
Jeffrey Pfau
c0d1ca089c
Expose GBASync{Suspend/Resume}Drawing
2014-10-18 02:08:20 -07:00
Jeffrey Pfau
4b7883e1fd
Add command line parsing to Qt frontend
2014-10-18 01:54:51 -07:00
Jeffrey Pfau
acd0e58235
Add dirmode to Qt frontend
2014-10-18 01:54:35 -07:00
Jeffrey Pfau
c32122c153
Add slot for setting all the log levels at once
2014-10-18 01:40:44 -07:00
Jeffrey Pfau
093036db76
Detect Qt modules without hard-failing
2014-10-18 01:10:47 -07:00
Jeffrey Pfau
fb5f01e46a
Show project name and game title in title bar
2014-10-18 01:07:42 -07:00
Jeffrey Pfau
c12b8e6e6d
Merge branch 'master' into qt
2014-10-18 01:06:35 -07:00
Jeffrey Pfau
1fcca799eb
Add GBAGetGameTitle
2014-10-18 01:06:17 -07:00
Jeffrey Pfau
2b012ef0bc
Remove unnecessary QFile object add zip loading
2014-10-18 00:51:47 -07:00
Jeffrey Pfau
d0b63162d5
Add exit menu item on non-OS X
2014-10-18 00:42:35 -07:00
Jeffrey Pfau
830e6dbda6
Write back to GBAThread.audioBuffers if not previously initialized
2014-10-17 23:41:03 -07:00
Jeffrey Pfau
0867325b96
Fix GBASyncProduceAudio signature
2014-10-17 23:40:39 -07:00
Jeffrey Pfau
1dbecb2c64
Initialize FIFO samples
2014-10-17 23:40:26 -07:00
Jeffrey Pfau
add64ce269
Initialize audio drift
2014-10-17 23:39:38 -07:00
Jeffrey Pfau
3bf43133cb
Replace soundbias with a bitfield
2014-10-17 03:26:47 -07:00
Jeffrey Pfau
62a0447cc9
Draw logo when a game is not loaded
2014-10-17 01:45:34 -07:00
Jeffrey Pfau
c91ad7f85f
Fix resizeEvent blocking when the thread has shut down
2014-10-17 01:38:00 -07:00
Jeffrey Pfau
a6f5bbbeb9
Redo background texturing
2014-10-17 00:53:34 -07:00
Jeffrey Pfau
b74a5a5293
Allow enter to be used to select a state
2014-10-16 04:15:57 -07:00
Jeffrey Pfau
556209e75f
Fix warning
2014-10-16 04:11:09 -07:00
Jeffrey Pfau
0fda035c21
Fix typo
2014-10-16 04:07:42 -07:00
Jeffrey Pfau
b9d4101937
Paint background on savestate window
2014-10-16 04:07:19 -07:00
Jeffrey Pfau
1d00ccf6dd
Show savestate manager over game when in fullscreen
2014-10-16 01:52:45 -07:00
Jeffrey Pfau
73d28a1ae4
Mouse enter tracking for savestate screen
2014-10-16 01:32:06 -07:00
Jeffrey Pfau
f49494cd1d
Don't open a new state window if one is already open
2014-10-16 00:28:41 -07:00
Jeffrey Pfau
4a9ab53231
Don't block while forcing a draw
2014-10-16 00:19:11 -07:00
Jeffrey Pfau
d52be5b3d9
Key overrides for selecting states
2014-10-16 00:18:58 -07:00
Jeffrey Pfau
a8d87a7979
Remove redundant shortcut code
2014-10-16 00:17:26 -07:00
Jeffrey Pfau
cd8cc12829
Draw text for empty slots
2014-10-16 00:17:09 -07:00
Jeffrey Pfau
e2de508b99
Quick savestate menu
2014-10-15 23:53:01 -07:00
Jeffrey Pfau
be9363b7f4
Set real size to minimum for display
2014-10-15 23:42:24 -07:00
Jeffrey Pfau
05cb9d47ab
Load the right states in the right slots
2014-10-15 23:40:52 -07:00
Jeffrey Pfau
961121808d
Wake up the drawing thread after loading a state to make sure it draws the loaded state
2014-10-15 23:40:40 -07:00
Jeffrey Pfau
8c02615593
Name slots more predictably
2014-10-15 23:26:46 -07:00
Jeffrey Pfau
6afc00b472
Move state loading/storing into GameController
2014-10-15 23:22:30 -07:00
Jeffrey Pfau
ad37ae3d61
Only unpause after savestate window if the game was not previously paused
2014-10-15 23:09:50 -07:00
Jeffrey Pfau
71458f2140
Close savestate window with Esc
2014-10-15 23:08:05 -07:00
Jeffrey Pfau
cd8b1e56db
Pause game while savestate window is open
2014-10-15 23:06:23 -07:00
Jeffrey Pfau
0579ececb3
Merge branch 'master' into qt
2014-10-15 04:57:20 -07:00
Jeffrey Pfau
69d041d373
VFile write should use const void*
2014-10-15 04:55:46 -07:00
Jeffrey Pfau
18e67378fe
C++ build fixes
2014-10-15 04:55:46 -07:00
Jeffrey Pfau
65ce79c611
Expose GBAGetState
2014-10-15 04:55:46 -07:00
Jeffrey Pfau
0d1b323e22
Fix edge case with video-frame sync where it may never wake up the display thread
2014-10-15 04:51:19 -07:00
Jeffrey Pfau
ca128a97ea
Make Display take a QGLFormat
2014-10-15 04:48:59 -07:00
Jeffrey Pfau
ddd8c8db29
Make AudioDevice::setFormat thread-safe
2014-10-15 04:48:18 -07:00
Jeffrey Pfau
7353092b84
Merge branch 'master' into qt
2014-10-15 02:49:22 -07:00
Jeffrey Pfau
49b676fa7e
Fix double-ending the GBA thread
2014-10-15 02:48:37 -07:00
Jeffrey Pfau
39b5396c0b
Set thread priorities for time-critical threads
2014-10-15 02:38:58 -07:00
Jeffrey Pfau
bd731e8266
Remove unneeded GL context code
2014-10-15 02:38:43 -07:00
Jeffrey Pfau
1ef3f4256f
Fix flickering when resizing emulator window
2014-10-15 02:28:32 -07:00
Jeffrey Pfau
113d7da345
Small style fix
2014-10-15 02:16:57 -07:00
Jeffrey Pfau
70f94db208
Fix some uninitialized reads
2014-10-15 02:13:46 -07:00
Jeffrey Pfau
4cf5b533fb
Fix overlooked crc32 call
2014-10-15 02:13:34 -07:00
Jeffrey Pfau
fdbb0ac753
Fix build in g++
2014-10-15 01:47:01 -07:00
Jeffrey Pfau
38187bac7a
Rename crc32 to doCrc32 to avoid symbol naming conflicts
2014-10-15 01:41:50 -07:00
Jeffrey Pfau
ae256542cb
Better, C++11 style initialization of m_threadContext
2014-10-15 01:40:16 -07:00
Jeffrey Pfau
7d8041cb58
Increase savestate view usability
2014-10-15 00:50:15 -07:00
Jeffrey Pfau
c60a5ea545
Fix path name use-after-free
2014-10-14 23:15:31 -07:00
Jeffrey Pfau
fdf2ce299c
Add savestate load/saving in Qt frontend
2014-10-14 23:15:15 -07:00
Jeffrey Pfau
642b92fed3
Add VFileDevice QIODevice subclass
2014-10-14 23:14:25 -07:00
Jeffrey Pfau
54f5f133b7
VFile write should use const void*
2014-10-14 03:08:39 -07:00
Jeffrey Pfau
51a6371eef
Close LogView if the main window closes
2014-10-14 01:58:36 -07:00
Jeffrey Pfau
78759dc12e
Fix QAction ownership
2014-10-14 01:57:49 -07:00
Jeffrey Pfau
aaf9c42782
C++ build fixes
2014-10-14 01:48:56 -07:00
Jeffrey Pfau
02ef49dea8
Expose GBAGetState
2014-10-14 01:05:53 -07:00
Jeffrey Pfau
49d668f285
Fix crashing on exit
2014-10-13 22:22:43 -07:00
Jeffrey Pfau
2e031a8c49
Update log view styling
2014-10-13 03:03:47 -07:00
Jeffrey Pfau
24a579044f
Ability to adjust line limit
2014-10-13 02:56:08 -07:00
Jeffrey Pfau
d3a4c027e4
Clear backlog automatically
2014-10-13 02:43:27 -07:00
Jeffrey Pfau
fa255dc808
Start of log view
2014-10-13 02:24:54 -07:00
Jeffrey Pfau
eef1a5e8a3
Clean up Qt CMakeLists
2014-10-13 01:25:39 -07:00
Jeffrey Pfau
dd1387732d
Remove stopgap measure
2014-10-13 01:02:19 -07:00
Jeffrey Pfau
51ad9d37e1
Merge branch 'master' into qt
2014-10-12 21:00:01 -07:00
Jeffrey Pfau
24c826e5b1
Don't log everything to the log handler when that log level is disabled
2014-10-12 19:43:19 -07:00
Jeffrey Pfau
4247db81e4
Split out macros from common.h
2014-10-11 18:18:47 -07:00
Jeffrey Pfau
4ecdcf25f5
Disable blending in backgrounds when unnecessary
2014-10-11 16:01:26 -07:00
Jeffrey Pfau
bbcf161fec
Fix warning about exceeding bounds of array
2014-10-11 15:49:45 -07:00
Jeffrey Pfau
2bca4c399b
Fix assumption that savedata->vf is non-null within flash memory code
2014-10-11 15:46:59 -07:00
Jeffrey Pfau
435edc8017
Prefix completion
2014-10-10 03:27:10 -07:00
Jeffrey Pfau
ab904f2cfd
Don't tab complete null
2014-10-10 03:22:44 -07:00
Jeffrey Pfau
ef6e1f9e74
Fix tab-completing past the end of the completions list
2014-10-10 02:56:13 -07:00
Jeffrey Pfau
0b736c9cc8
Add disassemble alias
2014-10-10 02:50:09 -07:00
Jeffrey Pfau
be82f04618
Print address alongside disassembled instructions
2014-10-10 02:45:57 -07:00
Jeffrey Pfau
6aee0693ec
Add support for 0b-style literals
2014-10-10 02:38:05 -07:00
Jeffrey Pfau
fd1128f90a
Fix 0 not being recognized as a valid token
2014-10-10 02:33:50 -07:00
Jeffrey Pfau
e293134a78
Unify optional directory file opening
2014-10-09 23:55:02 -07:00
Jeffrey Pfau
747e30c5e1
Fix perf-main parsing when errno is not cleared
2014-10-09 03:43:51 -07:00
Jeffrey Pfau
8ae1a3a3a3
Use bitfield for BIOS Huffman nodes
2014-10-09 03:02:35 -07:00
Jeffrey Pfau
59f1018dd2
Speculative fixes for SDL fallback and failing configuring
2014-10-08 04:48:23 -07:00
Jeffrey Pfau
0890d21645
Fix types for some LP64 systems
2014-10-08 01:16:50 -07:00
Jeffrey Pfau
b12f7a136e
Fix printf format string to use unsigned instead of signed
2014-10-08 01:04:19 -07:00
Jeffrey Pfau
6560db2ef5
Merge branch 'master' into qt
...
Conflicts:
CMakeLists.txt
2014-10-07 02:50:57 -07:00
Jeffrey Pfau
bc2979679e
Write audio FIFO in discrete chunks to avoid ordering issues
2014-10-07 01:54:02 -07:00
Jeffrey Pfau
54bda1757e
Replace remaining bit-packed structs in audio with bitfields
2014-10-07 00:53:39 -07:00
Jeffrey Pfau
d2adc2449a
Replace sound channel bitpacked structs with bitfields
2014-10-07 00:36:07 -07:00
Jeffrey Pfau
ad7f1ae939
Fix build when PNG support is not enabled
2014-10-06 23:38:48 -07:00
Jeffrey Pfau
e9864cbc99
Add some missing usage documentation
2014-10-06 23:36:52 -07:00
Jeffrey Pfau
bac0d35034
Enhance perf-main with higher granularity output, optional parseable output and higher granularity duration setting
2014-10-06 23:32:26 -07:00
Jeffrey Pfau
32bc6750c1
Migrate mosaic to bitfields
2014-10-06 00:49:06 -07:00
Jeffrey Pfau
7d12de0cb9
Move BLDCNT definition from video-softare to gba-video
2014-10-06 00:37:08 -07:00
Jeffrey Pfau
8bbac2f512
Add __attribute__((unused)) to generated bitfield functions
2014-10-06 00:18:53 -07:00
Jeffrey Pfau
0c18e415e8
Use bitfields for windows
2014-10-06 00:16:33 -07:00
Jeffrey Pfau
4f8c021f95
Enhance CMake lists to have unified feature detection, summaries
2014-10-05 23:08:11 -07:00
Jeffrey Pfau
8ef31b1c3d
Use bitfields for BLDCNT
2014-10-05 22:36:25 -07:00
Jeffrey Pfau
fd5b95024e
Clean up transformed sprite rendering using accumulators
2014-10-05 22:08:07 -07:00
Jeffrey Pfau
18c5c950db
Use LOAD_16 for sprites instead of accessing the array directly
2014-10-04 00:36:14 -07:00
Jeffrey Pfau
f30a625b51
Reduce size of ARMInstructionInfo
2014-10-02 04:42:18 -07:00
Jeffrey Pfau
c6954bcb4a
Fix regressed sprite x wrapping
2014-10-02 00:54:39 -07:00
Jeffrey Pfau
58400c859f
Merge preprocess transformed and normal sprite routines
2014-10-02 00:53:51 -07:00
Jeffrey Pfau
935182fdc4
Split out OBJ attributes and load memory with proper translation
2014-10-02 00:41:41 -07:00
Jeffrey Pfau
b0726d0185
Replace bit packed structs in sprites with bitfields
2014-10-02 00:20:15 -07:00
Jeffrey Pfau
235141f1f3
Fix PSRs on some PPC compilers
2014-10-01 12:42:12 +00:00
Jeffrey Pfau
d1f8e58b13
Attempt to stabilize PPC asm across compilers
2014-10-01 12:41:51 +00:00
Jeffrey Pfau
43e5aa698a
Fix modes 3 and 5 after vram load refactor
2014-10-01 23:30:26 -07:00
Jeffrey Pfau
fb10622946
Clean up background charBase shifting
2014-10-01 23:24:15 -07:00
Jeffrey Pfau
f9ebe36fac
Fix regression caused by converting DISPSTAT into a bitfield
2014-10-01 23:19:26 -07:00
Jeffrey Pfau
38e8cc1ee4
Preliminary pass at straightening out VRAM loads
2014-10-01 04:00:15 -07:00
Jeffrey Pfau
56a105e3da
Fix addresses being truncated
2014-10-01 03:23:16 -07:00
Jeffrey Pfau
14b6393b51
Replace BGCNT with bitfield
2014-10-01 02:50:10 -07:00
Jeffrey Pfau
0a5a099059
Make PPC asm directives a bit more resilient to different compilers
2014-10-01 09:33:37 +00:00
Jeffrey Pfau
996cfe8a26
Fix crashes in sdl/sw-main
2014-10-01 01:59:03 -07:00
Jeffrey Pfau
5afd8ea1bb
The old implementation of endian swapping was sufficient, put it back
2014-10-01 00:57:52 -07:00
Jeffrey Pfau
f4d27e5e40
Use new bitfields for DMAs
2014-10-01 00:17:51 -07:00
Jeffrey Pfau
7e4dc6c15c
Replace dispstat assorted variables with a bitfield
2014-09-30 23:29:30 -07:00
Jeffrey Pfau
015e6700d7
Remove unused union
2014-09-30 22:57:05 -07:00
Jeffrey Pfau
5874d416df
Start replacing packed structs with flags
2014-09-30 22:50:27 -07:00
Jeffrey Pfau
3cd0b50bce
Add phony strndup implementation for when we do not have one
2014-09-30 22:05:07 -07:00
Jeffrey Pfau
b6b1060676
Fix PPC asm directives on older GCCs
2014-09-30 22:03:49 -07:00
Jeffrey Pfau
6672aebfe4
Proper endian swapping on older PPC ISAs
2014-09-30 10:08:43 +00:00
Jeffrey Pfau
d8b0bba968
Make GBAIsROM more portable
2014-09-30 01:48:04 -07:00
Jeffrey Pfau
c035d97286
Make libPNG/zlib optional dependencies
2014-09-30 01:43:43 -07:00
Jeffrey Pfau
834395d5d9
Add customizable parsers per command
2014-09-02 21:54:19 -07:00
Jeffrey Pfau
232ae47a6c
CLI debugger help
2014-09-02 09:55:05 -07:00
Jeffrey Pfau
9cdc93eeed
Add watchpoints to gdb stub
2014-09-01 02:24:00 -07:00
Jeffrey Pfau
21437e91f6
Implement watchpoint removing
2014-09-01 02:23:31 -07:00
Jeffrey Pfau
98cb4698f8
Fix GDB stub not responding to invalid Z packets
2014-09-01 02:06:07 -07:00
Jeffrey Pfau
c1abe54ec9
Fix debuggers not logging
2014-09-01 02:05:37 -07:00
Jeffrey Pfau
be13627d37
Send correct signal back to gdb when stepping
2014-09-01 01:57:11 -07:00
Jeffrey Pfau
be46f2bac9
Fix frames redrawing in the middle of syncing
2014-09-01 00:52:16 -07:00
Jeffrey Pfau
4fb42d58b6
Clean up setting up vsync on SDL port
2014-09-01 00:51:45 -07:00
Jeffrey Pfau
2c5fd6acd5
HLE BIOS SVC handler stores r11 and r12 instead of r4 and r5
2014-08-31 04:20:40 -07:00
Jeffrey Pfau
8a6254cc73
Implement HFlip for 256 color partial tiles ( fixes #39 )
2014-08-31 04:19:13 -07:00
Jeffrey Pfau
610982fdcf
Add makefile for regenerating hle-bios.c so I can stop doing it by hand
2014-08-30 04:25:20 -07:00
Jeffrey Pfau
9a87840e7e
Add invalid commands to the CLI debugger history instead of discarding them
2014-08-30 04:02:19 -07:00
Jeffrey Pfau
e6148ddb13
Add p/t to CLI debugger
2014-08-30 04:00:17 -07:00
Jeffrey Pfau
383c630891
Selectable disassemble modes in CLI debugger ( fixes #113 )
2014-08-30 03:48:14 -07:00
Jeffrey Pfau
d41b8c5df6
Fix uninitialized memory for OAM count
2014-08-30 01:26:33 -07:00
Jeffrey Pfau
cdd6d5a815
Initialize previous uninitialzed audio channel members
2014-08-29 02:39:01 -07:00
Jeffrey Pfau
270c09c26e
Fix palette pointer in GBALoad8
2014-08-29 02:31:15 -07:00
Jeffrey Pfau
a825c6e4a6
Use bitshift instead of bitmask for determining load/store region
2014-08-29 01:58:39 -07:00
Jeffrey Pfau
1e1b0fc89e
Check active region instead of pc for BIOS loads
2014-08-29 01:46:46 -07:00
Jeffrey Pfau
6cff3d423e
Remove unnecessarily duplicated code in ARMStep
2014-08-29 01:41:32 -07:00
Jeffrey Pfau
4d2ccd5df4
Add busy loop optimization back
2014-08-29 00:35:43 -07:00
Jeffrey Pfau
5002cf44f4
Fix savestate loading after prefetch changes
2014-08-29 00:34:12 -07:00
Jeffrey Pfau
baa71027e3
Reimplement prefetch, temporarily removing busy loop optimization
2014-08-28 05:45:37 -07:00
Jeffrey Pfau
ca3e1c428e
Add missing newline in perf usage
2014-08-28 05:11:16 -07:00
Jeffrey Pfau
433f0ba360
Tighter looping for ARMRun
2014-08-28 05:00:38 -07:00
Jeffrey Pfau
61c410154f
Use older const png_bytep instead of png_const_bytep
2014-08-15 01:54:13 -07:00
Jeffrey Pfau
a78772ee47
Add mGBA icon for OS X
2014-08-13 00:14:25 -07:00
Jeffrey Pfau
8f5145f4b8
Rename Qt frontend
2014-08-12 23:43:52 -07:00
Jeffrey Pfau
2b3631dc91
Merge branch 'master' into qt
...
Conflicts:
CMakeLists.txt
2014-08-12 23:37:29 -07:00
Jeffrey Pfau
30fa9d8675
Remove prototype for removed function
2014-08-12 23:23:14 -07:00
Jeffrey Pfau
94d091b6ed
Use DualShock 3 button mapping for now
2014-08-12 23:19:13 -07:00
Jeffrey Pfau
2805cc5fea
Fix gamepad input
2014-08-12 22:50:24 -07:00
Jeffrey Pfau
d7968ccc0d
Merge branch 'ffmpeg'
2014-08-12 22:28:13 -07:00
Jeffrey Pfau
9ed4fad33c
Add library versions and installation targets
2014-08-12 22:18:06 -07:00
Jeffrey Pfau
09c49d5f3b
Clean up list usage in CMakeLists
2014-08-12 22:06:31 -07:00
Jeffrey Pfau
408223cfef
External support for changing codecs in FFmpeg encoder
2014-08-12 02:11:43 -07:00
Jeffrey Pfau
11c00d8958
Use FFV1 for reduced filesize
2014-08-09 04:17:34 -07:00
Jeffrey Pfau
88695a5ab1
Rough FFmpeg video encoder
2014-08-09 03:59:31 -07:00
Jeffrey Pfau
6291a62860
Fix stream recording resumption
2014-08-07 02:01:17 -07:00
Jeffrey Pfau
484a7f299a
Add rerecord count
2014-08-07 01:13:50 -07:00
Jeffrey Pfau
e732448aa4
Write full finalization data when stopping recording
2014-08-07 01:13:34 -07:00
Jeffrey Pfau
a4cd807b70
Fix writing max strem ID in RR metadata
2014-08-07 01:13:03 -07:00
Jeffrey Pfau
ba993980dc
Big cleanup to how RR handles separate segments, and adding lots of logging ( fixes #106 )
2014-08-07 00:24:25 -07:00
Jeffrey Pfau
f005326800
Add backslash as another frame advance key
2014-08-07 00:23:05 -07:00
Jeffrey Pfau
06da7fcb09
Fix rr writing to the wrong file
2014-08-06 21:57:35 -07:00
Jeffrey Pfau
0389237fc6
Loading savestates now changes the active branch
2014-08-05 23:52:08 -07:00
Jeffrey Pfau
5ee336d274
Fix masking savegames so it can write to a masked savegame
2014-08-04 23:46:33 -07:00
Jeffrey Pfau
82b31c46f1
RR starting from savegame (currently broken) and savestate
2014-08-04 23:37:37 -07:00
Jeffrey Pfau
86a2edbdf1
Save/load state with file parameter
2014-08-04 22:40:11 -07:00
Jeffrey Pfau
d979e04606
Unmask savedata if reseting while a movie is not recording or replaying
2014-08-04 22:24:43 -07:00
Jeffrey Pfau
f8fff828e3
Start working on ability to bundle save data with movies
2014-08-04 01:11:46 -07:00
Jeffrey Pfau
220d836f13
Save initialization type and metadata magic number
2014-08-04 00:54:50 -07:00
Jeffrey Pfau
ff200093ca
Fix crashing when trying to start recording while recording
2014-08-03 20:19:19 -07:00
Jeffrey Pfau
fabdfc86f3
Add magic numbers to movie files
2014-08-03 20:15:34 -07:00
Jeffrey Pfau
a09bb6d51a
Detect basic desync in rr
2014-08-03 19:47:02 -07:00
Jeffrey Pfau
4534574f50
Fix game ID for Wario Ware Twisted override
2014-07-30 01:50:22 -07:00
Jeffrey Pfau
5ca6888840
Savestate loading during recording and replaying
2014-07-30 00:13:11 -07:00
Jeffrey Pfau
28218b2465
Fix .log -> .dat for the first chunk, and make sure it bails if the load fails
2014-07-30 00:03:19 -07:00
Jeffrey Pfau
9cc97410d3
Make sure not to reload an old rr stream chunk when reaching the end of a file
2014-07-29 23:39:55 -07:00
Jeffrey Pfau
e3410fc457
Fix _readTag to not crash if the VFile has been closed
2014-07-29 23:15:08 -07:00
Jeffrey Pfau
fade994137
Clean up logic with an EOF tag
2014-07-29 23:13:16 -07:00
Jeffrey Pfau
6845454969
Add more rr tags, some implemented
2014-07-29 22:50:46 -07:00
Jeffrey Pfau
35bf1f3990
Keep max stream ID separate from current stream ID
2014-07-29 22:50:19 -07:00
Jeffrey Pfau
0023613625
Clean up movie state when exiting
2014-07-29 22:49:24 -07:00
Jeffrey Pfau
dbc6567317
Only make GUI_MOD SDL events happen when no other modifiers are active
2014-07-29 22:48:55 -07:00
Jeffrey Pfau
9873da0eb7
Ability to chunk movie streams into multiple files
2014-07-27 19:06:30 -07:00
Jeffrey Pfau
b115cb564d
Fix GBARR not starting in SDL port
2014-07-27 18:22:53 -07:00
Jeffrey Pfau
45b8ffb9cf
New movie format
2014-07-27 18:22:39 -07:00
Jeffrey Pfau
f39d7e3640
Move screenshot function to gba-thread.h
2014-07-27 18:21:58 -07:00
Jeffrey Pfau
b4d90e7e84
Restore pixels from PNG when loading savestate
2014-07-26 14:06:28 -07:00
Jeffrey Pfau
a872bd3642
Remove some ifdefed code by adding a constant for number of bytes per pixel
2014-07-26 13:28:44 -07:00
Jeffrey Pfau
15ece309b7
PNG savestate loading
2014-07-26 13:20:29 -07:00
Jeffrey Pfau
89bb9c7eac
Code for embedding savestates in PNG chunk, loading not yet implemented
2014-07-26 00:04:24 -07:00
Jeffrey Pfau
deb278dc22
Add function to GBAVideoRenderer for taking screenshot
2014-07-26 00:03:54 -07:00
Jeffrey Pfau
bbe52bf632
Add screenshot capability
2014-07-25 05:44:20 -07:00
Jeffrey Pfau
103bef17c9
Avoid compiler warnings
2014-07-25 03:45:54 -07:00
Jeffrey Pfau
5189d9afd4
Add mechanism for adding halts to busy loops
2014-07-24 04:21:33 -07:00
Jeffrey Pfau
a701a6d9dd
Benchmark option to disable video rendering fully
2014-07-24 03:23:41 -07:00
Jeffrey Pfau
8e49360ffd
Add missing dummy video functions
2014-07-24 03:20:12 -07:00
Jeffrey Pfau
e2c3c4068d
Pull out vram pointer
2014-07-24 02:52:02 -07:00
Jeffrey Pfau
553f345bbd
Remember to initialize rr
2014-07-24 02:38:36 -07:00
Jeffrey Pfau
436c53b0a6
Remove redefinition of COMPOSITE_16_NO_OBJWIN
2014-07-24 02:37:04 -07:00
Jeffrey Pfau
900d1684a9
Fix window edge case that might cause 0-width windows to draw
2014-07-24 02:34:42 -07:00
Jeffrey Pfau
a855f53355
Fix mosiac on edges of mode 0 regions
2014-07-24 02:02:44 -07:00
Jeffrey Pfau
cbb522a702
Fix *mull, *mlal instructions in disassembler
2014-07-23 23:12:54 -07:00
Jeffrey Pfau
5477c891c5
Fix cmp and related opcodes in disassembler
2014-07-23 23:12:28 -07:00
Jeffrey Pfau
5eb729faf6
Remove unused HLE BIOS length constant
2014-07-23 23:05:17 -07:00
Jeffrey Pfau
6c9ee4c212
Modernize egl-main
2014-07-23 22:57:58 -07:00
Jeffrey Pfau
754d3f50ce
Check if we have a subparser before trying to use it
2014-07-23 22:57:44 -07:00
Jeffrey Pfau
ec4eb253e5
Unify swi state saving, keep I bit
2014-07-23 03:06:09 -07:00
Jeffrey Pfau
f1a58c7254
Fix ObjAffineSet over multiple inputs
2014-07-23 00:54:11 -07:00
Jeffrey Pfau
c7f7d0f752
Don't make empty savestate files when loading savestates
2014-07-23 00:19:50 -07:00
Jeffrey Pfau
94001b1133
Fix crashes when GBARR is not initialized
2014-07-23 00:09:14 -07:00
Jeffrey Pfau
3051143fa3
First pass at input mapping
2014-07-23 00:06:44 -07:00
Jeffrey Pfau
f55d085162
Change log handler API
2014-07-22 22:34:08 -07:00
Jeffrey Pfau
08fee36c20
Window resizing options
2014-07-22 03:26:16 -07:00
Jeffrey Pfau
d020bf4f0a
Add FPS target options
2014-07-22 03:14:28 -07:00
Jeffrey Pfau
2ce9806de5
Fix ability to make audio buffers as big as they initially were
2014-07-22 02:33:45 -07:00
Jeffrey Pfau
0717e4ab76
Use lambda syntax for audio buffer size slots
2014-07-22 02:33:01 -07:00
Jeffrey Pfau
a7588f25bb
Sync pause setting with the menu properly
2014-07-22 02:22:03 -07:00
Jeffrey Pfau
42041fa059
Fix frame advance
2014-07-22 02:11:41 -07:00
Jeffrey Pfau
04823fb06c
Merge branch 'master' into qt
2014-07-22 01:53:34 -07:00
Jeffrey Pfau
d1eda4250d
Thread pausing refining
2014-07-22 01:52:16 -07:00
Jeffrey Pfau
b0662fe766
Run audio pausing in the right thread
2014-07-22 01:13:27 -07:00
Jeffrey Pfau
fe7deb0aab
Only try to stop audio output if there is an audio output device
2014-07-22 00:44:43 -07:00
Jeffrey Pfau
8ff6d77869
Make shutdown disabled when a game is not running
2014-07-22 00:43:53 -07:00
Jeffrey Pfau
6403d531bd
Add reset option and reshuffle menu items a bit
2014-07-22 00:40:42 -07:00
Jeffrey Pfau
71211bac46
Add sound buffer resizing menu options
2014-07-22 00:32:38 -07:00
Jeffrey Pfau
62f6471c0d
Move AudioThread into AudioProcessor, run in its own thread
2014-07-22 00:10:38 -07:00
Jeffrey Pfau
d5c0dffb29
Remove unused member in GameController
2014-07-21 23:08:31 -07:00
Jeffrey Pfau
ae534aff74
Merge branch 'master' into qt
2014-07-21 22:51:26 -07:00
Jeffrey Pfau
6e727db553
Set buffer size to 512 samples in the SDL/GL port
2014-07-21 00:29:38 -07:00
Jeffrey Pfau
e527220398
Ability to resize internal sound buffers
2014-07-21 00:14:48 -07:00
Jeffrey Pfau
10fc916425
Revise circle buffer types
2014-07-20 23:56:12 -07:00
Jeffrey Pfau
eabac4c413
Variable FPS target
2014-07-20 23:45:30 -07:00
Jeffrey Pfau
b14f22191c
Function for calculating audio rate for target FPS
2014-07-20 23:24:02 -07:00
Jeffrey Pfau
ad5cdb97a8
Fix memory leak
2014-07-20 22:07:08 -07:00
Jeffrey Pfau
a57f911ecc
Handle closing games a bit safer
2014-07-20 21:44:06 -07:00
Jeffrey Pfau
c9f74b43af
Make SDL port QUIT events thread-safe
2014-07-20 21:32:05 -07:00
Jeffrey Pfau
a77f7f0be2
Cleanup merge issues
2014-07-20 21:28:25 -07:00
Jeffrey Pfau
489b932c52
Header include cleanup
2014-07-20 20:28:01 -07:00
Jeffrey Pfau
23679adc38
Fix build after GBAThread API changes
2014-07-20 16:38:27 -07:00
Jeffrey Pfau
4da65d0f2f
Merge branch 'master' into qt
2014-07-20 16:38:00 -07:00
Jeffrey Pfau
d48dad27d1
Fix build against C++
2014-07-20 16:37:54 -07:00
Jeffrey Pfau
f62ccde49d
Merge branch 'master' into qt
2014-07-20 16:28:12 -07:00
Jeffrey Pfau
e77238e5ef
Fix typos in savestate format documentation
2014-07-20 15:53:37 -07:00
Jeffrey Pfau
3915158c96
Update GPIO for serialization
2014-07-20 15:53:15 -07:00
Jeffrey Pfau
381fc94d73
Move file CRC32 code into crc32.h
2014-07-20 15:11:22 -07:00
Jeffrey Pfau
7a0f86ae99
Serialize ROM CRC32 for error checking
2014-07-20 15:10:59 -07:00
Jeffrey Pfau
b4d6d11d19
Add ability to resume recording as soon as a movie ends
2014-07-20 03:14:55 -07:00
Jeffrey Pfau
74dae5033b
Rewrite rr to be streaming-only
2014-07-20 02:50:43 -07:00
Jeffrey Pfau
a95e2c06b7
Remove unused function
2014-07-20 01:40:05 -07:00
Jeffrey Pfau
16cf389986
Make writing to RO mapped memory perform COW
2014-07-20 01:36:18 -07:00
Jeffrey Pfau
5825c2ee5f
Move vfs-zip into vfs folder
2014-07-19 22:15:39 -07:00
Jeffrey Pfau
7d4f1fb661
Fix loading too many states from a file
2014-07-19 17:54:29 -07:00
Jeffrey Pfau
7172e6428c
Create concept of state directory
2014-07-19 17:48:37 -07:00
Jeffrey Pfau
e8a78c9547
Very basic movie saving/loading
2014-07-19 17:38:25 -07:00
Jeffrey Pfau
c6cd179101
Fix scanline rendering when parameters change mid-scanline
2014-07-19 15:59:27 -07:00
Jeffrey Pfau
79301a365f
Fix perf build
2014-07-19 15:58:58 -07:00
Jeffrey Pfau
3202811e41
Be more rigorous when reseting
2014-07-19 14:34:24 -07:00
Jeffrey Pfau
6456a88669
Reset memory when reseting the board ( fixes #94 )
2014-07-19 04:13:25 -07:00
Jeffrey Pfau
823b97603a
Properly account for LDR I cycles ( fixes #90 )
2014-07-19 00:39:51 -07:00
Jeffrey Pfau
14636f5b8a
Beginning of rerecording code, ability to record/replay from a savegame
2014-07-19 00:09:18 -07:00
Jeffrey Pfau
c50bd95258
Fix naming of savegames from files with no .
2014-07-18 00:53:08 -07:00
Jeffrey Pfau
5a0247ac78
Place save files in directories when loading in dirmode
2014-07-18 00:52:53 -07:00
Jeffrey Pfau
a14ce5c815
Add some missing cleanup
2014-07-18 00:52:22 -07:00
Jeffrey Pfau
c9ec91b75f
Forcibly disable some currently unsupported zip operations
2014-07-18 00:52:07 -07:00
Jeffrey Pfau
2367abe67d
Don't crash if no ROM is loaded
2014-07-17 02:55:13 -07:00
Jeffrey Pfau
74fcdf54e0
Fix reading more than a block but less than the rest of the file
2014-07-17 02:51:38 -07:00
Jeffrey Pfau
793a89d091
Fix seeking to end of file
2014-07-17 02:51:17 -07:00
Jeffrey Pfau
d2272ba9ba
Support reading from ZIPs
2014-07-17 02:45:17 -07:00
Jeffrey Pfau
ee5c918ff2
Directory mode for loading the first ROM in a directory, still a bit buggy
2014-07-17 00:53:17 -07:00
Jeffrey Pfau
73425e80b5
Move VFile to vfs.h and add VDirs
2014-07-17 00:52:21 -07:00
Jeffrey Pfau
80c61379a0
Clean up GBAThread variables
2014-07-16 23:53:11 -07:00
Jeffrey Pfau
e53135a7b9
Clean up command line args
2014-07-16 23:47:47 -07:00
Jeffrey Pfau
6519fad652
Fix some signatures
2014-07-16 03:02:16 -07:00
Jeffrey Pfau
42484bbcc3
Allow save file to be specified externally
2014-07-16 02:57:04 -07:00
Jeffrey Pfau
7bb5e29a98
Now that mapping is done through a different code path, we can properly allocate large memory chunks on Windows
2014-07-16 02:20:29 -07:00
Jeffrey Pfau
0584c19229
Remove declaration for unimplemented function
2014-07-16 02:09:19 -07:00
Jeffrey Pfau
f1f55cea47
Use VFiles for all file operations
2014-07-16 02:08:54 -07:00
Jeffrey Pfau
377d8e60a7
VFiles for abstract file operations, used at first in patches
2014-07-16 01:31:10 -07:00
Jeffrey Pfau
d8654f3b88
Use stdbool for readability
2014-07-16 01:02:34 -07:00
Jeffrey Pfau
fce2fb9252
Move flags and masks into defines to avoid making enums with values that are too large
2014-07-15 23:38:44 -07:00
Jeffrey Pfau
e89a705419
Revise macros for stricter C99 conformance
2014-07-15 23:30:55 -07:00
Jeffrey Pfau
6716b13621
Ability to reset emulator while running
2014-07-15 00:01:35 -07:00
Jeffrey Pfau
939c349533
Slightly more accurate waitstate emulation
2014-07-13 22:21:37 -07:00
Jeffrey Pfau
94438e141e
Only assemble NEON code when NEON is enabled
2014-07-13 18:32:10 -07:00
Jeffrey Pfau
0b9d6e03f1
Support 5_6_5 in SDL/GL port
2014-07-13 18:31:28 -07:00
Jeffrey Pfau
ca23c47aeb
Add missing include
2014-07-13 05:47:16 -07:00
Jeffrey Pfau
5958d8c0da
Fix missing value for divide precedence
2014-07-12 18:41:11 -07:00
Jeffrey Pfau
4638e4a017
Add parenthesis support
2014-07-12 17:58:03 -07:00
Jeffrey Pfau
a58f8f8675
Support identifiers
2014-07-12 17:25:51 -07:00
Jeffrey Pfau
b89d6216ac
Free identifiers
2014-07-12 17:13:58 -07:00
Jeffrey Pfau
ce1dd4416f
Proper parser, without identifier support currently
2014-07-12 17:12:35 -07:00
Jeffrey Pfau
f71edb1684
Parse expressions in a separate function
2014-07-12 14:50:09 -07:00
Jeffrey Pfau
f74815988b
Remove redundant includes
2014-07-12 04:43:41 -07:00
Jeffrey Pfau
5b7da978d1
Remove project name strings from the code
2014-07-12 04:29:12 -07:00
Jeffrey Pfau
8f151ec90f
DebugVectors should inherit failure
2014-07-12 04:12:04 -07:00
Jeffrey Pfau
903f384e05
Operations on numbers in CLI debugger
2014-07-12 04:04:15 -07:00
Jeffrey Pfau
5b7a551ed8
Add disassemble CLI debugger command
2014-07-12 03:36:04 -07:00
Jeffrey Pfau
aefa5f0ab8
Merge branch 'decoder'
...
Conflicts:
src/debugger/cli-debugger.c
2014-07-12 00:40:40 -07:00
Jeffrey Pfau
3261dd482c
Fix should-be-zero operands being listed
2014-07-12 00:39:05 -07:00
Jeffrey Pfau
b41e11d4c1
Decode MSR and MRS
2014-07-12 00:29:00 -07:00
Jeffrey Pfau
a2eec31632
Show s flag for ARM instructions
2014-07-12 00:13:11 -07:00
Jeffrey Pfau
d245eb3f88
Remove leftover code
2014-07-11 23:52:17 -07:00
Jeffrey Pfau
027a6f129c
Fix ordering of flags and condition
2014-07-11 23:31:46 -07:00
Jeffrey Pfau
a09d8649ee
Begin work on ARM disassembler
2014-07-11 03:50:29 -07:00
Jeffrey Pfau
ba4874f8b7
Cleaning up writeback and add some TODOs
2014-07-11 03:19:02 -07:00
Jeffrey Pfau
874f23fc59
Add mnemonics and fourth operand for ARM
2014-07-11 01:28:02 -07:00
Jeffrey Pfau
2b0dccb243
Fold direction into memory format
2014-07-11 01:27:32 -07:00
Jeffrey Pfau
45c6299b3b
Fix decoding Thumb TST
2014-07-11 01:26:57 -07:00
Jeffrey Pfau
2921ba8842
Split ARM emitters into own file
2014-07-10 23:21:28 -07:00
Jeffrey Pfau
fde2107a6b
Fix disassembler memory boundary conditions
2014-07-10 03:31:24 -07:00
Jeffrey Pfau
64cc5ada86
Merge Thumb mnemonics into ARM mnemonics in preparation for ARM decoder
2014-07-10 03:30:59 -07:00
Jeffrey Pfau
a22c89fedb
Remove notion of special register
2014-07-10 02:33:16 -07:00
Jeffrey Pfau
6c1476403e
Reorder log levels so more important ones have lower numbers
2014-07-10 01:12:25 -07:00
Jeffrey Pfau
b810e38bd7
Fix a compiler warning in SIO code
2014-07-10 01:05:28 -07:00
Jeffrey Pfau
d56dec79e7
Fix function prototype for GBAThreadInterrupt
2014-07-10 01:03:02 -07:00
Jeffrey Pfau
c2fc2dbac3
Remove unused variable
2014-07-10 01:02:13 -07:00
Jeffrey Pfau
55977796f3
Move UNUSED macro to common.h
2014-07-10 01:00:38 -07:00
Jeffrey Pfau
0a48d4cc2f
Draw a polygon every frame, even when paused, to make sure screen is not stale ( fixes #87 )
2014-07-09 23:18:34 -07:00
Jeffrey Pfau
87913a4c33
Add missing return statement
2014-07-09 23:17:51 -07:00
Jeffrey Pfau
642cbf3429
Hopefully fix edge cases for windows for real this time ( fixes #88 )
2014-07-09 23:09:28 -07:00
Jeffrey Pfau
b762ce41a0
Only take slow mosaic path when mosiac is actually in play
2014-07-09 23:01:03 -07:00
Jeffrey Pfau
e6863a6cc5
Fix mosaic drawing of 256-color mirrored background tiles
2014-07-09 22:49:05 -07:00
Jeffrey Pfau
c3136b914e
Fix sampling order of sound channel 3
2014-07-09 03:53:23 -07:00
Jeffrey Pfau
3e827c24a8
Fix 8-bit IO writes on SOUND3CNT_X
2014-07-09 03:53:23 -07:00
Jeffrey Pfau
78bd884a05
Fix setting window sizes to 0xFFFF from actually making a window
2014-07-09 03:53:23 -07:00
Jeffrey Pfau
3ee3f7625f
Link with SDL2_LIBDIR if necessary
2014-07-09 01:46:40 -07:00
Jeffrey Pfau
f1b4e7039f
Fix sprites whose tiles go out of bounds
2014-07-09 01:32:02 -07:00
Jeffrey Pfau
79cfc4fd0a
Make GBAThreadInterrupt work properly with paused threads again
2014-07-09 00:36:04 -07:00
Jeffrey Pfau
ecee71cfa1
Resizing of SDL2 windows
2014-07-09 00:03:05 -07:00
Jeffrey Pfau
548793e551
Remove audio processing loop now that there is an event processing loop
2014-07-08 22:00:53 -07:00
Jeffrey Pfau
83e16d56c0
Fix a case where deserializing the FIFO may not restore up to three bytes
2014-07-08 21:56:03 -07:00
Jeffrey Pfau
a62a932282
Ensure interrupting the GBA thread actually gets to a safe point to read from the thread
2014-07-08 00:04:38 -07:00
Jeffrey Pfau
8c9790bb3b
Add audio FIFOs to savestates
2014-07-08 00:02:39 -07:00
Jeffrey Pfau
6bf0e704d2
Allow for savestates to be loaded between BIOS versions so long as they aren't in BIOS code
2014-07-07 22:59:24 -07:00
Jeffrey Pfau
ea656f188e
Remove out-of-date TODO
2014-07-07 03:00:58 -07:00
Jeffrey Pfau
a450b0470a
UPS patch loading support
2014-07-07 01:54:40 -07:00
Jeffrey Pfau
f420232bbf
IPS patch loading support
2014-07-06 23:39:27 -07:00
Jeffrey Pfau
a6c8089601
Add read watchpoints ( fixes #69 )
2014-07-05 22:30:20 -07:00
Jeffrey Pfau
28ba251cfb
Fix some warnings
2014-07-05 16:29:31 -07:00
Jeffrey Pfau
ced5220975
Out of bounds start coordinates are treated as 0 for windows ( fixes #82 )
2014-07-05 14:40:15 -07:00
Jeffrey Pfau
7142a0f820
Fix WININ priority trampling over the active windows ( fixes #75 )
2014-07-05 14:34:10 -07:00
Jeffrey Pfau
ae12dd907c
Reduce the code size of division by zero a bit
2014-07-05 13:55:36 -07:00
Jeffrey Pfau
2fd9ab1197
Emulate division by zero edge cases ( fixes #80 )
2014-07-05 05:19:58 -07:00
Jeffrey Pfau
26c33b18e1
Properly do bounds checking in CpuSet and CpuFastSet ( fixes #81 )
2014-07-05 03:52:07 -07:00
Jeffrey Pfau
34145543f2
Remove redundant checks that are in the BIOS code already
2014-07-05 01:03:04 -07:00
Jeffrey Pfau
dea143829a
Prevent lr from being trampled in the middle of long-running CpuSet
2014-07-05 01:01:29 -07:00
Jeffrey Pfau
107f91aac8
Fix typo in documentation
2014-07-05 00:13:54 -07:00
Jeffrey Pfau
678c5465ff
Add (currently undocumented) command line flag for setting logging level
2014-07-04 18:43:07 -07:00
Jeffrey Pfau
80d1764e6c
Save some registers we were overwriting in IntrWait
2014-07-04 18:41:13 -07:00
Jeffrey Pfau
d6a28c8a6e
Log SWIs in debug
2014-07-04 18:17:34 -07:00
Jeffrey Pfau
599537a41b
Fix and optimize CpuSet and CpuFastSet a bit
2014-07-04 17:48:38 -07:00
Jeffrey Pfau
fde6515a56
Implement CpuSet/CpuFastSet in assembly ( fixes #31 and #76 )
2014-07-03 03:51:53 -07:00
Jeffrey Pfau
e5245b6cbb
Reset timers when enabling them ( fixes #78 )
2014-07-02 00:48:20 -07:00
Jeffrey Pfau
2693f9d09b
Implement high VRAM mirroring for writes
2014-07-01 00:26:57 -07:00
Jeffrey Pfau
a7eced1324
Fix stub debugger entering
2014-04-26 18:25:45 -07:00
Jeffrey Pfau
12e5425b9b
Use subparsers instead of stuffing everything into one parser
2014-04-26 16:05:09 -07:00
Jeffrey Pfau
6ca25e44aa
Add some NEON resizing code
2014-04-26 03:31:53 -07:00
Jeffrey Pfau
6e32ade69e
Clear alpha channel in fragment shader ( fixes #51 )
2014-04-25 23:48:51 -07:00
Jeffrey Pfau
084f0f037e
Fix fullscreen initialization
2014-04-25 21:33:07 -07:00
Jeffrey Pfau
0386d41b40
Add option of not using GL
2014-04-25 03:34:21 -07:00
Jeffrey Pfau
7e90eb2631
Start porting sw-main to SDL2
2014-04-25 03:34:03 -07:00
Jeffrey Pfau
82f3a45888
Build fix in case no debuggers are being built
2014-04-23 21:50:26 -07:00
Jeffrey Pfau
64e8d3fb83
Fix GBDStub build on Windows
2014-04-23 21:42:08 -07:00
Jeffrey Pfau
16608a408c
Bring sw-main into line
2014-04-23 02:09:27 -07:00
Jeffrey Pfau
ffea820148
Remove some redundant flags
2014-04-23 02:09:06 -07:00
Jeffrey Pfau
232abab7f4
Add long-missing arm-algo.S
2014-04-23 02:05:50 -07:00
Jeffrey Pfau
53389684db
Add more command line options and perf-main duration
2014-04-20 22:15:17 -07:00
Jeffrey Pfau
810c35c318
Disentagle graphics flags from global flags
2014-04-20 21:54:05 -07:00
Jeffrey Pfau
5b300bbcff
Make command line arguments more dynamic
2014-04-20 21:41:21 -07:00
Jeffrey Pfau
7334b89833
Add more command line options + usage
2014-04-20 21:33:27 -07:00
Jeffrey Pfau
7c356ffd07
Move debugger creation off the stack
2014-04-20 04:19:03 -07:00
Jeffrey Pfau
89ccb41b03
Start moving command line parsing into a separate file
2014-04-20 04:06:44 -07:00
Jeffrey Pfau
e739e4000b
Initialize halt
2014-04-20 01:05:29 -07:00
Jeffrey Pfau
9bf77f6653
Call ARMDeinit
2014-04-20 00:52:37 -07:00
Jeffrey Pfau
7a4ca414e5
Restructure watchpoints
2014-04-20 00:47:49 -07:00
Jeffrey Pfau
0f68dbc832
Redo component model/type punning
2014-04-20 00:19:55 -07:00
Jeffrey Pfau
c0eb7c81f7
Remove ARMMemory and ARMBoard shims
2014-04-19 18:14:17 -07:00
Jeffrey Pfau
775e417cc6
Move halting functionality out of GBAHalt
2014-04-16 23:05:44 -07:00
Jeffrey Pfau
b8ecabbaa9
Fix the build
2014-04-03 00:00:06 -07:00
Jeffrey Pfau
ecb1939ff1
Move common headers to common.h, remove util and debugger from being first class include directories
2014-04-02 23:51:35 -07:00
Jeffrey Pfau
73d32e7cc7
Initialize some SIO variables properly
2014-04-02 23:16:37 -07:00
Jeffrey Pfau
fec4040691
Load/store with immediate width corrections
2014-03-29 23:08:32 -07:00
Jeffrey Pfau
fc132b4d93
Some instructions can write to pc directly
2014-03-29 23:08:32 -07:00
Jeffrey Pfau
01d4672f56
Reclassify thumb load/store multiple instructions
2014-03-29 23:08:32 -07:00
Jeffrey Pfau
764d9740ee
Fix exporting of ARMDecodeThumb
2014-03-29 23:08:32 -07:00
Jeffrey Pfau
c8a2f595d4
Start cycle counting
2014-03-29 23:08:32 -07:00
Jeffrey Pfau
9b2cd97505
Split out decoder files in preparation of ARM decoder
2014-03-29 23:08:31 -07:00
Jeffrey Pfau
c8e1a9cd59
PC-relative disassembling
2014-03-29 23:08:31 -07:00
Jeffrey Pfau
39e1a85ffc
Implement memory decoding
2014-03-29 23:06:07 -07:00
Jeffrey Pfau
f32155526b
More thumb decompilation
2014-03-29 23:06:07 -07:00
Jeffrey Pfau
e60cbfaf84
Begin disassembler
2014-03-29 23:06:07 -07:00
Jeffrey Pfau
58545f112e
Rename decompiler to decoder
2014-03-29 22:59:40 -07:00
Jeffrey Pfau
65c1d67dfd
Descriptions of all opcodes
2014-03-29 22:59:40 -07:00
Jeffrey Pfau
5d19919df2
Extract emittor macros into headers
2014-03-29 22:59:39 -07:00
Jeffrey Pfau
66d1c0c55c
Start fleshing out decompiler
2014-03-29 22:59:39 -07:00
Jeffrey Pfau
5b91d6d336
Small framework for decompiler
2014-03-29 22:59:39 -07:00
Jeffrey Pfau
4c1014685f
Fix some valgrind errors
2014-03-29 22:58:58 -07:00
Jeffrey Pfau
2cd4bb3cff
Initialize memory->eventDiff; fixes a valgrind warning
2014-03-29 22:58:58 -07:00
Jeffrey Pfau
2f39a57567
Get RPi EGL port building again
2014-03-29 22:58:58 -07:00
Jeffrey Pfau
8f241e2cfb
Partially implement SOUNDBIAS
2014-03-29 22:53:56 -07:00
Jeffrey Pfau
683e90fa06
Remove special treatment for DISPSTAT
2014-03-29 22:53:52 -07:00
Jeffrey Pfau
8e51ffbf2c
Add function for connecting to an already-open TCP port
2014-02-11 00:19:29 -08:00
Jeffrey Pfau
c5d243fca2
Merge branch 'master' into qt
2014-02-10 23:59:12 -08:00
Jeffrey Pfau
4d8a00c180
Add thread-interrupt functions for having multiple threads that want to pause the GBA thread
2014-02-10 23:59:07 -08:00
Jeffrey Pfau
e9c4412819
Put missing returns in SDL event handling
2014-02-10 23:13:39 -08:00
Jeffrey Pfau
eb5580f719
Make DriverSet setting read in normal driver
2014-02-10 01:42:44 -08:00
Jeffrey Pfau
6451aeaefc
Support normal mode drivers
2014-02-10 01:42:44 -08:00
Jeffrey Pfau
764b3fce10
Fix SIO loading of a driver that is for the current mode
2014-02-10 01:42:44 -08:00
Jeffrey Pfau
9c8e5fc222
SIO registers can now be read and written properly
2014-02-10 01:42:40 -08:00
Jeffrey Pfau
3422527d5a
Read SIO registers from sio field
2014-02-10 01:41:20 -08:00
Jeffrey Pfau
a2a3f317b5
Make driver loading signal failure, and fix case where setting a driver can cause a null pointer deref
2014-02-05 01:50:01 -08:00
Jeffrey Pfau
043d396320
Make socket shims inline
2014-02-05 01:22:34 -08:00
Jeffrey Pfau
924c6cf5a6
Clarify some function names and add more essenital SIO architecture
2014-02-05 01:03:34 -08:00
Jeffrey Pfau
e5ee1aa07f
Fill out SIO driver infrastructure
2014-02-04 01:28:16 -08:00
Jeffrey Pfau
70e1661342
Begin SIO
2014-02-04 00:39:55 -08:00
Jeffrey Pfau
20a5fa8476
Abstract out sockets
2014-02-03 23:01:26 -08:00
Jeffrey Pfau
23e0737649
Add missing GBA_KEY_NONE
2014-02-03 22:56:24 -08:00
Jeffrey Pfau
90760a30a3
Move key mapping into its own function
2014-02-03 22:28:49 -08:00
Jeffrey Pfau
b691c93416
Add joypad support via SDL to Qt build
2014-02-03 22:28:28 -08:00
Jeffrey Pfau
edc6de0467
Move key mapping into its own function
2014-02-03 22:27:58 -08:00
Jeffrey Pfau
2eb5a7a639
Partially implement SOUNDBIAS
2014-02-03 05:22:29 -08:00
Jeffrey Pfau
5a17030c65
Automatically break into the debugger if it was provided at launch time
2014-02-03 03:48:39 -08:00
Jeffrey Pfau
285b94b66a
Add thread-safe function for telling if the GBA thread has started
2014-02-03 03:48:39 -08:00
Jeffrey Pfau
0f6523941c
Null out threadContext->gba when shutting down
2014-02-03 03:48:39 -08:00
Jeffrey Pfau
7bee813846
Make GDB server able to be detached before GBA thread starts
2014-02-03 03:45:43 -08:00
Jeffrey Pfau
844cee07e8
Make sure GDB window is created in sync with GDB server state
2014-02-03 03:44:39 -08:00
Jeffrey Pfau
8c53fbeb4f
Make GDB server able to be attached when the emulator starts
2014-02-03 03:42:29 -08:00
Jeffrey Pfau
d16737ccf2
Automatically break into the debugger if it was provided at launch time
2014-02-03 03:42:02 -08:00
Jeffrey Pfau
eb23269011
Add thread-safe function for telling if the GBA thread has started
2014-02-03 03:41:32 -08:00
Jeffrey Pfau
6d12ef81a5
Reuse an audio thread instead of shutting it down and making a new one
2014-02-03 01:13:52 -08:00
Jeffrey Pfau
186e0b1ee5
GBA thread can be shut down and opened again, cleanly
2014-02-03 00:44:19 -08:00
Jeffrey Pfau
acc58fccc9
Null out threadContext->gba when shutting down
2014-02-03 00:42:20 -08:00
Jeffrey Pfau
9f3cf19c2d
Add missing ellipses for menu items that open windows
2014-02-02 04:01:41 -08:00
Jeffrey Pfau
56c51181e1
Debugger can get detached during a callback, clean up appropriately
2014-02-02 03:59:03 -08:00
Jeffrey Pfau
c621fb16d8
Add missing GDB classes
2014-02-02 03:58:40 -08:00
Jeffrey Pfau
412890d838
Debugger can get detached during a callback, clean up appropriately
2014-02-02 03:57:41 -08:00
Jeffrey Pfau
243cf2236b
Ability to fullscreen the window in SDL2
2014-02-02 03:05:30 -08:00
Jeffrey Pfau
19142a2881
Use command key on OS X
2014-02-02 02:56:02 -08:00
Jeffrey Pfau
ad38ae63ec
Properly support 16-bit color
2014-02-02 02:47:50 -08:00
Jeffrey Pfau
02aec4fc65
Add SDL2 support
2014-02-02 02:39:34 -08:00
Jeffrey Pfau
3b7dbdecba
Use C++11 override and nullptr
2014-02-02 01:42:36 -08:00
Jeffrey Pfau
020aec4e7b
The debugger should not stop by default
2014-02-01 20:49:12 -08:00
Jeffrey Pfau
0c332d972b
Add ability to detach debugger
2014-02-01 20:49:12 -08:00
Jeffrey Pfau
6341172813
The debugger should not stop by default
2014-02-01 20:48:25 -08:00
Jeffrey Pfau
1a7656fe36
Support creating the GDB stub in Qt
2014-02-01 20:47:44 -08:00
Jeffrey Pfau
adcfc37db2
Add ability to detach debugger
2014-02-01 20:24:38 -08:00
Jeffrey Pfau
11e3bdc585
Merge branch 'master' into qt
...
Conflicts:
CMakeLists.txt
src/gba/gba.c
2014-02-01 17:37:18 -08:00
Jeffrey Pfau
cc53b06cae
Implement OBJWIN for OBJs
2014-02-01 16:58:55 -08:00
Jeffrey Pfau
d09004cf01
Fix infinite listen errors
2014-02-01 16:27:48 -08:00
Jeffrey Pfau
69d188668d
Fix debugging shim to work even if there is no GBA struct at the moment
2014-02-01 16:27:27 -08:00
Jeffrey Pfau
b9f8955890
Add debugging logging interface
2014-02-01 16:26:48 -08:00
Jeffrey Pfau
d97976d0df
Add stepping and clean up
2014-02-01 15:50:12 -08:00
Jeffrey Pfau
325380989c
Clean up unnecessary operation in GDB stub
2014-02-01 15:39:47 -08:00
Jeffrey Pfau
9435226c58
Breakpoint clearing in CLI debugger
2014-02-01 15:39:30 -08:00
Jeffrey Pfau
c30807117f
Breakpoint clearing
2014-02-01 15:37:15 -08:00
Jeffrey Pfau
ea6b129509
LLDB compatibility
2014-02-01 15:21:17 -08:00
Jeffrey Pfau
1541e6e0b0
Expand packet size for lldb compat
2014-02-01 05:44:40 -08:00
Jeffrey Pfau
cc9575228c
Add support for qHostInfo command for lldb
2014-02-01 05:40:39 -08:00
Jeffrey Pfau
e4375fd3d9
Stub out [qQvV].* commands
2014-02-01 05:23:56 -08:00
Jeffrey Pfau
1c60ada7de
Add support for g, m and p GDB packets
2014-02-01 05:02:54 -08:00
Jeffrey Pfau
434099ac77
Parse GDB packet format
2014-02-01 04:10:22 -08:00
Jeffrey Pfau
244f197742
Begin GDB stub
2014-02-01 03:08:32 -08:00
Jeffrey Pfau
38aac38a0c
Remove obsolete, dead code
2014-02-01 01:41:25 -08:00
Jeffrey Pfau
6616ca9111
Always enable the debugger framework
2014-02-01 01:14:41 -08:00
Jeffrey Pfau
a214481b76
Fix typo in type
2014-02-01 01:02:26 -08:00
Jeffrey Pfau
5bbf7f2308
Separate out CLI debugger from debugging interface
2014-02-01 00:47:36 -08:00
Jeffrey Pfau
6822a0d770
Start separating out debugger logic
2014-02-01 00:27:53 -08:00
Jeffrey Pfau
6ad2b673b1
Omit sprites that are off-screen vertically from OAM calculations
2014-01-31 22:40:21 -08:00
Jeffrey Pfau
bab92ba659
Squelch compiler warning in perf shutdown
2014-01-31 02:30:56 -08:00
Jeffrey Pfau
4255d10f08
Squelch compiler warning about type punning
2014-01-31 02:29:27 -08:00
Jeffrey Pfau
d6a4fbd25a
Squelch a compiler warning about an uninitialized variable
2014-01-31 02:27:17 -08:00
Jeffrey Pfau
f8449482de
Squelch warnings in software renderer
2014-01-31 02:17:41 -08:00
Jeffrey Pfau
2122ff1f43
Change override structure to not use multi-byte char literals
2014-01-31 02:17:41 -08:00
Jeffrey Pfau
4eb705ca91
Squelch warnings in software renderer
2014-01-31 02:15:43 -08:00
Jeffrey Pfau
307404adf7
Change override structure to not use multi-byte char literals
2014-01-31 02:05:01 -08:00
Jeffrey Pfau
bce620e717
Split SDL build into its own CMake list
2014-01-31 00:13:33 -08:00
Jeffrey Pfau
80511fcb9f
Fix perf main after adding BIOS loading
2014-01-31 00:11:55 -08:00
Jeffrey Pfau
9022deed9e
Split SDL build into its own CMake list
2014-01-31 00:11:19 -08:00
Jeffrey Pfau
22ef0977dc
Fix perf main after adding BIOS loading
2014-01-31 00:10:56 -08:00
Jeffrey Pfau
2ee3d17d33
Put OpenGL include explicitly in Qt CMake file
2014-01-31 00:06:37 -08:00
Jeffrey Pfau
95cf2909c1
Unblock on audio when closing thread
2014-01-30 04:05:53 -08:00
Jeffrey Pfau
8e3d104625
Qt audio thread should mark itself as exiting
2014-01-30 04:05:39 -08:00
Jeffrey Pfau
e27c10ab78
Unblock on audio when closing thread
2014-01-30 04:03:54 -08:00
Jeffrey Pfau
6834401e67
Close process cleanly
2014-01-30 04:00:52 -08:00
Jeffrey Pfau
6407ad3adc
Video drawing in separate thread
2014-01-30 04:00:30 -08:00
Jeffrey Pfau
2f98f542e5
Add frame advance
2014-01-29 23:58:57 -08:00
Jeffrey Pfau
1eeeb36015
Add emulation menu with Pause option
2014-01-29 23:39:24 -08:00
Jeffrey Pfau
5abd1572dc
Use an initializer for GBAThread in Qt
2014-01-29 23:39:09 -08:00
Jeffrey Pfau
a076e88bb5
Ditch uic
2014-01-29 23:14:23 -08:00
Jeffrey Pfau
3d339b1327
Key input
2014-01-29 23:14:23 -08:00
Jeffrey Pfau
98c9121ac2
Move audio initialization into thread
2014-01-29 23:14:23 -08:00
Jeffrey Pfau
0ca3afa3e6
Run audio on separate thread
2014-01-29 23:14:23 -08:00
Jeffrey Pfau
baeaf8729f
Audio rendering in Qt
2014-01-29 23:14:23 -08:00
Jeffrey Pfau
8a82144ceb
Ensure the GBA thread exits when destroying the game controller
2014-01-29 23:14:23 -08:00
Jeffrey Pfau
4659635fb5
Start Qt frontend
2014-01-29 23:14:23 -08:00
Jeffrey Pfau
f0481d9413
Enable piping through BIOS
2014-01-29 23:13:44 -08:00
Jeffrey Pfau
79d4011650
Initialize OAM
2014-01-29 23:02:12 -08:00
Jeffrey Pfau
13d3146d0b
Add LOG_FATAL
2014-01-29 22:49:34 -08:00
Jeffrey Pfau
70afe23fe4
Add log handling
2014-01-29 22:49:24 -08:00
Jeffrey Pfau
9d351d4a58
SDL audio should use now centralized audio functions
2014-01-29 22:49:09 -08:00
Jeffrey Pfau
5fde0d8c35
GBAAudioResampleNN returns how many (destination) samples were read
2014-01-29 22:49:09 -08:00
Jeffrey Pfau
a79a592c1e
Move audio resampling out of SDL code
2014-01-29 22:48:38 -08:00
Jeffrey Pfau
2e2ca19220
Add GBAThreadEnd function for manually shutting down the GBA thread
2014-01-29 22:48:38 -08:00
Jeffrey Pfau
c8b04a2ca5
Ensure rewind buffer is null if we are not enabling rewinding
2014-01-29 22:48:38 -08:00
Jeffrey Pfau
48a3522fbc
Move inline struct definitions out of place for C++ compatibility
2014-01-29 22:48:19 -08:00
Jeffrey Pfau
a72c77a3df
Update DMA timings, and higher priority DMAs always take precedence, regardless of timing
2014-01-28 21:56:14 -08:00
Jeffrey Pfau
8e5b806cdd
Have board re-read CPSR when it is modified by MSR
2014-01-27 00:21:14 -08:00
Jeffrey Pfau
ef66e4a8c7
Only unpause from state operations when we paused manually
2014-01-26 23:17:17 -08:00
Jeffrey Pfau
c3a5fb497a
Fix rewind buffer sizing itself wrong
2014-01-26 12:47:47 -08:00
Jeffrey Pfau
705b6e9b13
Simple rewind buffer
2014-01-26 02:50:28 -08:00
Jeffrey Pfau
b1a648e46e
Don't sync on audio and video at the same time--this can cause audio skipping
2014-01-25 18:08:33 -08:00
Jeffrey Pfau
9c2c93220b
Implement most of audio serialization
2014-01-25 18:01:31 -08:00
Jeffrey Pfau
668c4f68b7
Fix OAM deserialization
2014-01-25 15:06:28 -08:00
Jeffrey Pfau
941c629f8b
Serialize timers and DMA state
2014-01-25 15:02:55 -08:00
Jeffrey Pfau
408d39a297
Move mode 0 into macro-land so that much of the logic can be inlined
2014-01-25 14:47:21 -08:00
Jeffrey Pfau
0e379fed41
Fix audio buffer reading in SDL audio
2014-01-23 20:59:15 -08:00
Jeffrey Pfau
709269ee5c
Fix initial DMA count
2014-01-23 20:59:15 -08:00
Jeffrey Pfau
968dbe55db
Properly sync to frame only when not in turbo
2014-01-22 03:25:09 -08:00
Jeffrey Pfau
1e0f400091
Precompute some parameters in mode 0
2014-01-22 01:39:48 -08:00
Jeffrey Pfau
7132c873e3
Make viewport size not-hardcoded
2014-01-21 23:51:52 -08:00
Jeffrey Pfau
a8921116dc
Preprocess OBJ heights
2014-01-21 23:49:10 -08:00
Jeffrey Pfau
04c3b61d1c
Basic OAM dirtying
2014-01-21 23:41:41 -08:00
Jeffrey Pfau
2553b96e9b
Skip table lookup in ARMStep if not needed
2014-01-21 23:15:51 -08:00
Jeffrey Pfau
f08e466fce
Partially unroll video clearing loop
2014-01-21 22:37:08 -08:00
Jeffrey Pfau
52808da265
Inline CPU stepping
2014-01-21 22:36:40 -08:00
Jeffrey Pfau
f8de62ba71
Null out frameCallback on perf-main
2014-01-21 22:36:40 -08:00
Jeffrey Pfau
e432c66249
Fix some uninitialized values
2014-01-21 22:36:40 -08:00
Jeffrey Pfau
86bc662d9f
Support proper DMA timings and priority
2014-01-21 21:07:15 -08:00
Jeffrey Pfau
3c100a5e31
Prevent bank switching when reloading CPU state
2014-01-20 23:42:07 -08:00
Jeffrey Pfau
98c8b42b0f
Slow down audio slightly to match target FPS
2014-01-20 20:02:44 -08:00
Jeffrey Pfau
dccde662c6
Minor cleanup
2014-01-20 18:01:49 -08:00
Jeffrey Pfau
728f6481d6
Abort in invalid memory instead of SEGVing
2014-01-20 17:46:17 -08:00
Jeffrey Pfau
aa99196700
Smarter I/O serialization
2014-01-20 17:42:30 -08:00
Jeffrey Pfau
872c3ceba3
Savestate game checks
2014-01-20 17:18:12 -08:00
Jeffrey Pfau
26c1fbd48f
Add frame advance
2014-01-20 16:39:46 -08:00
Jeffrey Pfau
e7d4f3ae8a
Fix MSR with immediate
2014-01-20 15:40:56 -08:00
Jeffrey Pfau
12f4ff6cbb
Fix ARM_ROR
2014-01-20 15:40:44 -08:00
Jeffrey Pfau
2db6d27496
Implement SWP, SWPB
2014-01-20 15:19:52 -08:00
Jeffrey Pfau
fede211874
Remove checks for ARM writeback operations that fail on real hardware
2014-01-20 15:10:41 -08:00
Jeffrey Pfau
35a5e83465
Unified DISPSTAT representation
2014-01-20 14:18:24 -08:00
Jeffrey Pfau
5a1a04a353
Add basic IO and video serialization
2014-01-20 03:05:54 -08:00
Jeffrey Pfau
9f28b1ec73
Add missing version magic
2014-01-20 03:05:31 -08:00
Jeffrey Pfau
a5d8be30d8
Don't block any signals on the run thread
2014-01-20 02:33:40 -08:00
Jeffrey Pfau
1f8c1bcdfa
Fix signal handling for debugger
2014-01-19 23:42:34 -08:00
Jeffrey Pfau
4e98546cd6
Add missing header guard
2014-01-19 03:38:18 -08:00
Jeffrey Pfau
daf12994db
Start savestates
2014-01-19 01:59:35 -08:00
Jeffrey Pfau
f2b031467f
Fix non-debugger build
2014-01-19 01:24:29 -08:00
Jeffrey Pfau
7b682dd7c5
Break into debugger with F11
2014-01-19 00:37:53 -08:00
Jeffrey Pfau
fbf8edf19b
Create savestate format
2014-01-19 00:32:49 -08:00
Jeffrey Pfau
a969d70de3
Handle illegal and stub opcodes separately
2014-01-18 00:39:51 -08:00
Jeffrey Pfau
ce4d0b5203
Checksum BIOS
2014-01-18 00:17:58 -08:00
Jeffrey Pfau
94cc48faf1
Account for floating point error in resampling
2014-01-16 02:12:35 -08:00
Jeffrey Pfau
4e88cc86d9
Have circle buffer work when memory is misaligned
2014-01-16 01:56:17 -08:00
Jeffrey Pfau
39025dedff
Ensure that video buffers are flushed to the GPU before unlocking the mutex
2014-01-16 01:05:32 -08:00
Jeffrey Pfau
48e89fb5eb
Fix buffer size in SDL audio
2014-01-16 00:27:15 -08:00
Jeffrey Pfau
5758964617
Unlock mutex before swapping buffers
2014-01-16 00:26:59 -08:00
Jeffrey Pfau
3837213f94
Support Win32 threads on Vista and higher
2014-01-15 23:46:47 -08:00
Jeffrey Pfau
2b558a5a65
Rearchitect audio copying to make it cleaner and more atomic
2014-01-15 03:43:56 -08:00
Jeffrey Pfau
b8167f55b1
Create Windows and POSIX platform directories
2014-01-15 01:28:30 -08:00
Jeffrey Pfau
270c1a35d7
Fix mappedMemoryFree on *nix
2014-01-15 00:34:45 -08:00
Jeffrey Pfau
dd1f1bc79e
Initial support for Windows
2014-01-15 00:32:54 -08:00
Jeffrey Pfau
003db6019c
Fix _mix for 16-bit color
2014-01-15 00:32:53 -08:00
Jeffrey Pfau
d53b1c784f
Mirror SRAM across 0x0F000000
2013-11-23 16:22:26 -08:00
Jeffrey Pfau
bc03872ab5
Add FireRed/LeafGreen to the override list
2013-11-18 00:34:54 -08:00
Jeffrey Pfau
e6eea94626
Revert "Move halting code out from below the ARM emulator"
...
This reverts commit 3b74b61862
.
2013-11-14 23:17:14 -08:00
Jeffrey Pfau
0bc5c4a69e
Fix color blending in 16-bit 5-5-5 mode
2013-11-14 23:09:13 -08:00
Jeffrey Pfau
55c6103116
Remove "finalized" flag in favor of stricter sorting
2013-11-14 00:33:34 -08:00
Jeffrey Pfau
a2a306bb03
Significantly optimize 16-bit color mixing
2013-11-14 00:19:18 -08:00
Jeffrey Pfau
620adbd577
Remove extra free in SDL code
2013-11-11 19:40:37 -08:00
Jeffrey Pfau
f8d5842240
Implement mosaic for mode 0 with 256-color tiles
2013-11-10 23:09:50 -08:00
Jeffrey Pfau
c2658ce7a1
Initialize mosaic to 0
2013-11-10 22:53:12 -08:00
Jeffrey Pfau
7d526e97f4
Support narrow windows
2013-11-10 22:43:57 -08:00
Jeffrey Pfau
53dd260b3e
Fast 32-to-16-bit memory conversion routine on ARM
2013-11-09 13:30:25 -08:00
Jeffrey Pfau
95b6cc9b00
Initialize halted
2013-11-09 13:29:08 -08:00
Jeffrey Pfau
f43c82e79e
Preprocess instead of post-process 5-6-5 color
2013-11-07 02:57:22 -08:00
Jeffrey Pfau
f09e44062f
Use gettimeofday for perf-main instead of clock_gettime
2013-11-06 22:20:29 -08:00
Jeffrey Pfau
2a683aaf99
Preselect palettes for sprites
2013-11-06 00:00:42 -08:00
Jeffrey Pfau
fd6e9cb311
Use unsigned instead of uint16_t in sprite drawing
2013-11-05 23:25:44 -08:00
Jeffrey Pfau
e3dac089e7
Small refactor of _composite
2013-11-05 21:57:24 -08:00
Jeffrey Pfau
818ce96d0d
Fix mixing colors on 16-bit
2013-11-05 04:13:49 -08:00
Jeffrey Pfau
9253eeba23
Optimize range check in mode 2 rendering
2013-11-05 01:49:29 -08:00
Jeffrey Pfau
53515b41cd
Fix warnings in CircleBuffer
2013-11-05 01:20:46 -08:00
Jeffrey Pfau
2c826e208c
Optimize palette access
2013-11-05 00:19:42 -08:00
Jeffrey Pfau
7d688ceb5a
Use unsigned instead of color_t where size is irrelevant
2013-11-04 21:47:44 -08:00
Jeffrey Pfau
3005c6c9fb
Add per-second perf updating
2013-11-04 21:07:41 -08:00
Jeffrey Pfau
3b74b61862
Move halting code out from below the ARM emulator
2013-11-03 23:26:10 -08:00
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
53a52d8cf8
Call setActiveRegion with the right address
2013-11-02 03:56:13 -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
09888a8852
Add performance-monitoring main thread
2013-10-27 05:16:07 -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
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
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
3edb2da58d
Make platform directory for ports
2013-10-16 01:35:49 -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
ce33adf5e4
Don't wait on frame swap when we aren't doing frame synchronization in the first place
2013-10-15 02:34:37 -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
f90b01b95d
Fix setting privilege mode when entering SVC
2013-10-14 22:32:52 -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
973abb7b94
Uncomment audio initialization line
2013-10-12 02:29:24 -07:00
Jeffrey Pfau
51ec1c1099
Bring SDL main to parity with GL main
2013-10-12 02:13:26 -07:00
Jeffrey Pfau
cf298474bc
Use 5_6_5 with SDL
2013-10-12 02:11:57 -07:00
Jeffrey Pfau
25cc40f3e1
Bring Raspberry Pi main to parity with GL main
2013-10-12 01:18:34 -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
2ef64ede02
Basic tab-completion
2013-10-10 01:05:25 -07:00
Jeffrey Pfau
01d8569262
Remove reliance on linenoise
2013-10-10 00:29:41 -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
c3a7d87214
Add missing variable
2013-10-09 00:44:44 -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
4a09d41aab
Fix circle buffers
2013-10-03 01:25:51 -07:00
Jeffrey Pfau
0dd69e8273
Fix incorrect condition in FIFO sampling
2013-10-03 01:23:16 -07:00
Jeffrey Pfau
da38027654
Add missing changes
2013-10-02 02:45:41 -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
71ec6162f1
Fix circle buffer sizing
2013-10-02 00:46:19 -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
a7182b8df9
Add watchpoints
2013-09-26 00:26:11 -07:00
Jeffrey Pfau
99769695d7
Fix ADCS C bit
2013-09-26 00:25:48 -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
13a2289e25
Fix ADCS
2013-09-25 00:27:40 -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
6b86cdf9ef
LDM should force-align loads
2013-07-31 01:59:00 -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
425056ca15
Ensure LDM does not write back incorrectly with register list overlaps
2013-07-27 03:02:52 -07:00
Jeffrey Pfau
9e578da5a1
Do register writeback in addressing mode 2 before actual load/store
2013-07-26 23:42:45 -07:00
Jeffrey Pfau
8b1eb01a96
Fix MUL, UMULL, UMLAL
2013-07-26 01:03:34 -07:00
Jeffrey Pfau
6321b1f827
Fix ARM_CARRY_FROM
2013-07-26 00:50:20 -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
8dc3fa9bec
Use software renderer for EGL, just use it for uploading the texture
2013-07-21 05:15:02 -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
8215afcee6
Decouple GLSL and GL mains
2013-07-17 23:31:19 -07:00
Jeffrey Pfau
49de0fb52e
Different mains for SDL and EGL, supporting Raspberry Pi and BeagleBone Black
2013-05-29 21:18:25 -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
Jeffrey Pfau
b6361cdfa9
Start LDM/STM timings
2013-05-11 17:05:57 -07:00
Jeffrey Pfau
0a37300bcf
Improve LDR/STR cycle counting
2013-05-11 14:55:29 -07:00
Jeffrey Pfau
013e322c0b
Improved cycle counting for branches
2013-05-11 14:45:31 -07:00
Jeffrey Pfau
f6592b17b8
Implement MUL timings
2013-05-11 14:35:10 -07:00
Jeffrey Pfau
5c31757912
Remove int operations and vectorize shader calculation
2013-05-08 21:10:32 -07:00
Jeffrey Pfau
f246587a9d
Add support for (my) joystick
2013-05-08 16:57:17 -07:00
Jeffrey Pfau
12e681392d
Fragment shader now no longer requires extensions
2013-05-08 15:19:54 -07:00
Jeffrey Pfau
8047ce11d0
Fix off-by-one scanline
2013-05-07 22:22:35 -07:00
Jeffrey Pfau
5b5251434f
Add background sizes to GLSL mode 0
2013-05-07 22:21:40 -07:00
Jeffrey Pfau
f278805255
Fix x indexing into VRAM
2013-05-07 21:48:46 -07:00
Jeffrey Pfau
5388fb8cea
Draw backdrop in GLSL renderer
2013-05-07 04:40:25 -07:00
Jeffrey Pfau
03fb87acd0
Continue implementing GLSL mode 0, now with layers and offsets
2013-05-07 04:11:49 -07:00
Jeffrey Pfau
cc2262149e
Reindent GBAVideoGLSLRendererProcessEvents
2013-05-07 03:36:50 -07:00
Jeffrey Pfau
20b67240ae
Start on mode 0 renderer
2013-05-07 03:36:34 -07:00
Jeffrey Pfau
f6a9467e86
Write to renderer VRAM
2013-05-07 03:36:15 -07:00
Jeffrey Pfau
bb1e598a78
Start GLSL renderer
2013-05-07 01:04:36 -07:00
Jeffrey Pfau
db96be98dc
Deinit video when shutting down
2013-05-07 01:00:18 -07:00
Jeffrey Pfau
8bc5ec4222
Roll out incorrect fix for Halt bug and apply proper fix
2013-05-05 20:37:35 -07:00
Jeffrey Pfau
7ec435b94c
Fix 512x512 backgrounds in Mode 0
2013-05-05 01:33:05 -07:00
Jeffrey Pfau
ae3f623fd5
Overwrite IF while attempting to IntrWait
2013-05-05 00:44:30 -07:00
Jeffrey Pfau
fc7aec557b
Count cycles for load/store singles
2013-05-04 23:57:12 -07:00
Jeffrey Pfau
738b3dc44e
Implement ArcTan2
2013-05-04 15:50:42 -07:00
Jeffrey Pfau
374aca2ff7
Move event polling to after framedraw only
2013-05-04 14:49:04 -07:00
Jeffrey Pfau
ac0c7ba792
Implement BgAffineSet
2013-05-04 01:20:42 -07:00
Jeffrey Pfau
fb2ddd6c32
Start implementing modes 1/2
2013-05-04 01:20:24 -07:00
Jeffrey Pfau
7373c37e19
Fix sprite blending with between layers
2013-05-03 22:23:45 -07:00
Jeffrey Pfau
813b2c0697
Partially implement frameskip
2013-05-03 10:24:56 -07:00
Jeffrey Pfau
3ad2510b78
Get rid of flags struct and redo compositing
2013-05-03 10:02:01 -07:00
Jeffrey Pfau
6ef3e3b6a8
Copy ObjAffineSet implementation from GBA.js
2013-05-03 01:43:39 -07:00
Jeffrey Pfau
2bc11c9aac
32- and 16-bit reads of OAM
2013-05-03 01:33:20 -07:00
Jeffrey Pfau
862c93916d
Support edge cases for 256-color mode 0, excluding hflip
2013-05-03 01:21:25 -07:00
Jeffrey Pfau
1c6fc26bf7
Support hflip on mode 0 edges
2013-05-02 21:51:00 -07:00
Jeffrey Pfau
ebb1c08840
Fix warnings on gcc
2013-05-02 00:40:12 -07:00
Jeffrey Pfau
13a46429e2
Remove -Wno-unused and fix resulting errors
2013-05-02 00:35:32 -07:00
Jeffrey Pfau
a635f4de4d
Implement addressing mode 1 ASR register shift
2013-05-02 00:32:04 -07:00
Jeffrey Pfau
86c228f2e4
Implement SMLAL
2013-05-02 00:29:06 -07:00
Jeffrey Pfau
a80175e689
Fix sprite variant condition
2013-05-01 23:56:59 -07:00
Jeffrey Pfau
3b3f55b14c
Variant and 256-color transformed sprites
2013-05-01 23:54:39 -07:00
Jeffrey Pfau
0423656ad8
Extract more into macros
2013-05-01 23:46:15 -07:00
Jeffrey Pfau
d6c88fc7cb
Introduce macros for sprite drawing
2013-05-01 23:39:55 -07:00
Jeffrey Pfau
e3fddc5739
Support 256-color sprites
2013-05-01 23:27:49 -07:00
Jeffrey Pfau
61c6b7186e
Implement UMLAL
2013-05-01 23:11:00 -07:00
Jeffrey Pfau
cd73c562ea
Implement addressing mode 1 LSL/LSR with register
2013-05-01 23:08:22 -07:00
Jeffrey Pfau
aeecbdb56f
Draw backgrounds with variant palette when appropriate
2013-05-01 02:51:33 -07:00
Jeffrey Pfau
40e9a7ef26
Update variant palettes when writing to palette
2013-05-01 02:37:15 -07:00
Jeffrey Pfau
03361f20a2
Start drawing backdrop
2013-05-01 02:32:56 -07:00
Jeffrey Pfau
2e9a64a26e
Implement Sqrt
2013-05-01 00:27:31 -07:00
Jeffrey Pfau
6ed3c18afd
Support IWRAM in LZ77
2013-05-01 00:24:28 -07:00
Jeffrey Pfau
5f6cf337a0
16-bit DMA address writes
2013-04-30 23:22:39 -07:00
Jeffrey Pfau
da489b90f8
Ensure shifter carry-out gets bits set right
2013-04-30 21:02:56 -07:00
Jeffrey Pfau
f7fbb877e0
Fix Div output registers
2013-04-30 20:54:09 -07:00
Jeffrey Pfau
118c393d1b
Fix addressing mode 2 register post-indexed
2013-04-30 02:43:12 -07:00
Jeffrey Pfau
337d4dc1e6
Implement addressing mode 1 ROR with register
2013-04-30 02:42:54 -07:00
Jeffrey Pfau
e1963c6e60
Implement SMULL
2013-04-30 01:42:24 -07:00
Jeffrey Pfau
698bc0ada5
Re-add 256-color
2013-04-30 01:38:19 -07:00
Jeffrey Pfau
6cdfa43e97
hflip in fast path
2013-04-29 22:05:32 -07:00
Jeffrey Pfau
87e5973039
Proper blending on sprite targets
2013-04-29 21:27:29 -07:00
Jeffrey Pfau
2d4c1fdc2c
Add back compositing
2013-04-29 21:27:05 -07:00
Jeffrey Pfau
56333d3344
Use base rendering mode
2013-04-29 21:12:56 -07:00
Jeffrey Pfau
7bb4d9d5ff
Throw out slow background renderer. Let me try again.
2013-04-29 00:42:04 -07:00
Jeffrey Pfau
6c2f7b3b73
Use 32-bit color internally
2013-04-28 23:01:45 -07:00
Jeffrey Pfau
7c597d5205
Rearrange some code in preparation of adding windows
2013-04-28 02:57:06 -07:00
Jeffrey Pfau
dfd360bfbb
Remove accidentally left in testing code
2013-04-28 01:46:43 -07:00
Jeffrey Pfau
5f6b57734d
Implement character mapping
2013-04-28 01:43:39 -07:00
Jeffrey Pfau
8072ff7d2c
Rotate LDR
2013-04-28 01:33:59 -07:00
Jeffrey Pfau
6450ce16b2
Fix LDR(3)
2013-04-28 01:33:45 -07:00
Jeffrey Pfau
e86f7d79fb
Clean up and fix conditions for CPSR V
2013-04-28 00:19:15 -07:00
Jeffrey Pfau
19f9b72c33
Fix CPSR C being written
2013-04-28 00:06:13 -07:00
Jeffrey Pfau
682684cb6d
Output MUL into the right register
2013-04-27 23:44:33 -07:00
Jeffrey Pfau
2c8786ae4c
Use LE instead of GE where appropriate
2013-04-27 23:44:17 -07:00
Jeffrey Pfau
dd4e6b0ce1
Stub RegisterRamReset
2013-04-27 22:54:41 -07:00
Jeffrey Pfau
ca959c640a
Implement EEPROM
2013-04-27 21:51:58 -07:00
Jeffrey Pfau
f4fa423135
EEPROM only works in DMAs
2013-04-27 20:39:14 -07:00
Jeffrey Pfau
4380ec0260
Start implementing EEPROM
2013-04-27 20:25:31 -07:00
Jeffrey Pfau
e02059947c
Start implementing save games
2013-04-27 19:59:41 -07:00
Jeffrey Pfau
dab27463a9
Implement DivArm
2013-04-27 19:58:21 -07:00
Jeffrey Pfau
fd5661e941
Fix alpha blending when neither target 1 or target 2 are set
2013-04-27 03:09:23 -07:00
Jeffrey Pfau
2e78381e55
Implement SWI
2013-04-27 02:56:34 -07:00
Jeffrey Pfau
6c44cf8dfc
Implement BL
2013-04-27 02:54:16 -07:00
Jeffrey Pfau
21b9222357
Fix entering SWI mode
2013-04-27 02:50:35 -07:00
Jeffrey Pfau
bd9714b540
Implement STR(2)/STRH(2)
2013-04-27 02:42:42 -07:00
Jeffrey Pfau
2fc5474d91
Implement addressing mode 1 ROR immediate
2013-04-27 01:54:57 -07:00
Jeffrey Pfau
2bc23e7aa2
Redo compositing and sprite blending
2013-04-27 01:36:06 -07:00
Jeffrey Pfau
b3e1aa7853
Don't blend if not target 1
2013-04-27 00:11:04 -07:00
Jeffrey Pfau
f7922c1627
Restructure background drawing code for multipalette
2013-04-26 23:59:50 -07:00
Jeffrey Pfau
1ff337c6fc
Allow 256-color rendering
2013-04-26 22:21:38 -07:00
Jeffrey Pfau
13c95a2aae
Build fixes for linux
2013-04-26 03:08:59 -07:00
Jeffrey Pfau
3cd5e8d093
Implement Div
2013-04-26 02:05:54 -07:00
Jeffrey Pfau
d2e84f0a30
Implement IntrWait
2013-04-26 02:00:59 -07:00
Jeffrey Pfau
7c895f6091
Load files from arg 1
2013-04-26 01:50:14 -07:00
Jeffrey Pfau
301c07dda3
Implement ADC, SBC
2013-04-26 01:25:31 -07:00
Jeffrey Pfau
c61812325c
Transformed sprites
2013-04-26 01:06:50 -07:00
Jeffrey Pfau
f91149e30f
Flipped background tiles
2013-04-25 22:03:15 -07:00
Jeffrey Pfau
a1910206c0
Support blending with sprites behind a background
2013-04-25 02:08:12 -07:00
Jeffrey Pfau
fefbf7a296
Flip sprites vertically after applying boundary operations
2013-04-25 01:55:47 -07:00
Jeffrey Pfau
cea8109c06
Run Vblank and Hblank DMAs
2013-04-25 01:50:28 -07:00
Jeffrey Pfau
e9e29610a4
Read from palette memory
2013-04-25 01:48:28 -07:00
Jeffrey Pfau
65e0445375
Implement TST
2013-04-25 00:56:43 -07:00
Jeffrey Pfau
cfc3ec4f3b
Implement ROR
2013-04-25 00:53:24 -07:00
Jeffrey Pfau
21490dcf51
Implement CMN
2013-04-25 00:48:35 -07:00
Jeffrey Pfau
c8b2d2753e
Use variant palette on sprites when target 1
2013-04-25 00:28:39 -07:00
Jeffrey Pfau
e1932f2411
Implement sprite flipping
2013-04-25 00:17:17 -07:00
Jeffrey Pfau
9dbd925d90
Allow for negative-y sprites
2013-04-25 00:11:27 -07:00
Jeffrey Pfau
4446e0dbde
Implement blending on sprites
2013-04-24 23:49:16 -07:00
Jeffrey Pfau
07b96cddef
Begin sprites
2013-04-24 23:40:22 -07:00
Jeffrey Pfau
00dd5bdaa8
Dual condition-variable non-hacky waiting-on-frame
2013-04-24 02:43:55 -07:00
Jeffrey Pfau
5122a236e0
Squelch warnings, turn on -Werror
2013-04-24 01:32:49 -07:00
Jeffrey Pfau
1c0af22990
Implement BLDALPHA
2013-04-24 01:16:03 -07:00
Jeffrey Pfau
40b00e7927
Refactor some code to enable compositing code to be shared
2013-04-24 00:50:17 -07:00
Jeffrey Pfau
0d7657e845
Implement BLDCNT (partially) and BLDY
2013-04-24 00:34:50 -07:00
Jeffrey Pfau
b3d9a1918b
Kludge to prevent busy-waiting while no frames are generating
2013-04-23 23:07:24 -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
190f9b41e6
Implement STRB(2)
2013-04-23 02:13:59 -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
2860714714
Draw output buffer
2013-04-20 21:40:06 -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
67d25794e1
Fix LDMIA/STMIA
2013-04-20 18:03:59 -07:00
Jeffrey Pfau
14100f19d1
Implement LSL(2)
2013-04-20 18:03:48 -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
18fae08450
Fix Load/store shifters
2013-04-20 14:21:42 -07:00
Jeffrey Pfau
cd0f75c83f
Implement MLA
2013-04-20 13:36:42 -07:00
Jeffrey Pfau
bf54a68b0e
Implement UMULL
2013-04-20 13:22:10 -07:00
Jeffrey Pfau
63e809550d
Implement MidiKey2Freq
2013-04-20 03:01:50 -07:00
Jeffrey Pfau
e272481ccd
Implement LDR(2)
2013-04-20 02:57:20 -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
adfd8f6872
Make sure if we reset the CPSR to the SPSR that we check if we get tossed into Thumb
2013-04-19 21:26:00 -07:00
Jeffrey Pfau
633a87269a
Initialize cpu->privilegeMode
2013-04-19 21:09:00 -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
0ba7451e3a
Install SIGINT signal handler for debugger
2013-04-18 01:52:46 -07:00
Jeffrey Pfau
0b468a9db8
Null-check that DebugVectors get generated
2013-04-18 01:39:51 -07:00
Jeffrey Pfau
5f1f6088bd
Implement MUL
2013-04-18 01:35:48 -07:00
Jeffrey Pfau
783b2a3e09
Implement ADD(5)
2013-04-18 01:24:46 -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
0048de2108
Fix addressing mode 3 immediate
2013-04-18 01:06:19 -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
4f8c288f20
Ensure cpsr.t reads back out properly
2013-04-18 00:19:41 -07:00
Jeffrey Pfau
ed48ab1c64
Fix storing SPSR
2013-04-18 00:15:45 -07:00
Jeffrey Pfau
062e09ccf5
Implement MSRI
2013-04-18 00:09:28 -07:00
Jeffrey Pfau
fdf36f5820
Implement MRS
2013-04-18 00:06:48 -07:00
Jeffrey Pfau
b3832205fc
Fix some MRS/MSR encoding problems
2013-04-18 00:03:39 -07:00
Jeffrey Pfau
6608ae282c
Ensure loads to PC work
2013-04-17 23:54:31 -07:00
Jeffrey Pfau
cb03781a5b
Implement LDM, STM
2013-04-17 23:44:35 -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
38b1c8d235
Make sure CPSR is updated for IRQ mode properly
2013-04-17 00:29:20 -07:00
Jeffrey Pfau
f30b367c7e
Make sure to rewrite active region data when jumping to IRQ handler
2013-04-17 00:24:00 -07:00
Jeffrey Pfau
45fcd0fcb5
Implement FastCpuSet
2013-04-16 23:52:53 -07:00
Jeffrey Pfau
c143dec77d
Fix ADD(4) and MOV(3)
2013-04-16 23:52:30 -07:00
Jeffrey Pfau
4b4914afb6
Implement MUL
2013-04-16 23:26:49 -07:00
Jeffrey Pfau
6b07dd33af
Implement ASR(1)
2013-04-16 23:24:19 -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
bc9d0690bb
Clean up extra backslashes
2013-04-16 19:29:00 -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
Jeffrey Pfau
7c5a6b121c
Implement SWI
2013-04-14 11:57:39 -07:00
Jeffrey Pfau
475af6fde2
Squelch some warnings
2013-04-14 04:22:53 -07:00
Jeffrey Pfau
201d34a4d7
Stub out I/O
2013-04-14 04:21:33 -07:00
Jeffrey Pfau
2cb00fe065
Move GBA load/stores internal to gba.c
2013-04-14 04:08:06 -07:00
Jeffrey Pfau
1d445958c9
Initialize breakpoints
2013-04-14 03:49:48 -07:00
Jeffrey Pfau
82a4fa094b
Initialize debugger->lastCommand
2013-04-14 03:47:11 -07:00
Jeffrey Pfau
cd75d3b399
Implement LDR[S]B/LDR[S]H (2)
2013-04-14 03:38:09 -07:00
Jeffrey Pfau
9cd468794e
Implement BIC
2013-04-14 03:31:35 -07:00
Jeffrey Pfau
288eba1f80
Fix POP {pc}
2013-04-14 03:28:58 -07:00
Jeffrey Pfau
3b3b6e0546
Implement MVN
2013-04-14 03:26:04 -07:00
Jeffrey Pfau
3121ed0bb6
Fix BX
2013-04-14 03:23:37 -07:00
Jeffrey Pfau
8eb8cdfad8
Implement SUB(1)
2013-04-14 03:15:21 -07:00
Jeffrey Pfau
18b1fd490f
Implement SUB(3)
2013-04-14 03:13:06 -07:00
Jeffrey Pfau
280fc18cff
Implement LDRB(1)
2013-04-14 03:10:25 -07:00
Jeffrey Pfau
ee5375a8ff
Implement CMP(2)
2013-04-14 03:08:07 -07:00
Jeffrey Pfau
b541b99d0c
Implement NEG
2013-04-14 03:06:11 -07:00
Jeffrey Pfau
53212baee5
Implement SUB(2)
2013-04-14 03:05:12 -07:00
Jeffrey Pfau
5be88fe123
Implement LDRH(1)
2013-04-14 03:00:06 -07:00
Jeffrey Pfau
ce593c4bfa
Implement STRB(1)
2013-04-14 02:58:05 -07:00
Jeffrey Pfau
7c8d76eb06
Implement BX
2013-04-14 02:55:12 -07:00
Jeffrey Pfau
d7ff6aa14b
Add missing field for breakpoints
2013-04-14 02:54:58 -07:00
Jeffrey Pfau
81909bed56
Fix indentation of LSR(2)/ASR(2)
2013-04-14 02:51:21 -07:00
Jeffrey Pfau
97ce972b2a
Implement LSR(2)
2013-04-14 02:49:07 -07:00
Jeffrey Pfau
76a85c763c
Rudimentary breakpoints
2013-04-14 02:42:09 -07:00
Jeffrey Pfau
baad7b50bd
Add n command, and command repetition
2013-04-13 14:06:57 -07:00
Jeffrey Pfau
4df2d6de8f
Pause on stub opcodes
2013-04-13 13:56:29 -07:00
Jeffrey Pfau
e5379c99e0
Add ability to run code indefinitely (or at least until we crash)
2013-04-13 13:50:41 -07:00
Jeffrey Pfau
dbe9796b34
Implement B
2013-04-13 12:38:47 -07:00
Jeffrey Pfau
abd522a2ce
Implement ADD(4)
2013-04-13 12:32:15 -07:00
Jeffrey Pfau
bc4924cef5
Implement CMP(3)
2013-04-13 12:28:24 -07:00
Jeffrey Pfau
aa14ed441c
Implement AND, EOR and ORR
2013-04-13 01:50:21 -07:00
Jeffrey Pfau
75fdcd6750
Add missing CPSR update for ASR(2)
2013-04-13 01:48:00 -07:00
Jeffrey Pfau
c51ad65cac
Implement ASR(2)
2013-04-13 01:42:34 -07:00
Jeffrey Pfau
5094b7717a
Add memory reading commands to debugger
2013-04-13 01:36:01 -07:00
Jeffrey Pfau
5465543acc
Properly recognize syntax errors
2013-04-13 01:27:05 -07:00
Jeffrey Pfau
0180ee090e
Print hex
2013-04-13 01:25:21 -07:00
Jeffrey Pfau
f715534083
Begin command line parsing
2013-04-13 01:23:41 -07:00
Jeffrey Pfau
10884de57a
Add ability to print current instruction
2013-04-13 00:22:27 -07:00
Jeffrey Pfau
67750e351b
Fix sign-extension on BL1
2013-04-12 22:59:19 -07:00
Jeffrey Pfau
eed0e77079
Implement B(1)
2013-04-12 22:58:50 -07:00
Jeffrey Pfau
be8849d7fe
Implement CMP(1)
2013-04-12 22:44:51 -07:00
Jeffrey Pfau
3a097dca96
Implement ADD(3), refactor other ADDs
2013-04-12 22:34:44 -07:00
Jeffrey Pfau
36670b3fa2
Implement LSR(1) and reindent LSL(1)
2013-04-12 22:24:35 -07:00
Jeffrey Pfau
9ca65038ed
Implement LDR(4)
2013-04-12 22:18:46 -07:00
Jeffrey Pfau
9f77c32375
Implement ADD(1)
2013-04-12 22:17:37 -07:00
Jeffrey Pfau
d7ddbee448
Fix BL(1)
2013-04-12 22:14:01 -07:00
Jeffrey Pfau
f86fb9dc74
Implement LDR(1)
2013-04-12 22:06:17 -07:00
Jeffrey Pfau
33fc9587cc
Implement STR(1)
2013-04-12 21:57:50 -07:00
Jeffrey Pfau
c8f85a657e
Implement STR(3)
2013-04-12 21:48:30 -07:00
Jeffrey Pfau
3e57e46046
Implement ADD(2)
2013-04-12 21:48:19 -07:00
Jeffrey Pfau
b5182915d7
Command to break into attached debugger
2013-04-12 21:27:43 -07:00
Jeffrey Pfau
a7bc99c846
Implement LDR(3)
2013-04-12 20:09:27 -07:00
Jeffrey Pfau
57f2cccacf
Implement STRH(1)
2013-04-12 20:06:58 -07:00
Jeffrey Pfau
21ee7946f1
Implement LSL(1)
2013-04-12 20:00:14 -07:00
Jeffrey Pfau
71c68fe79f
Implement ADD(6)
2013-04-12 19:59:55 -07:00
Jeffrey Pfau
21df1c48c2
Implement MOV(1)
2013-04-12 02:44:04 -07:00
Jeffrey Pfau
9ab3b0c20a
Implement ADD(7)/SUB(4)
2013-04-12 02:22:37 -07:00
Jeffrey Pfau
1ac7f0eb15
Implement MOV(3)
2013-04-12 02:15:47 -07:00
Jeffrey Pfau
37ce1383fc
Set bits in MSR properly
2013-04-12 02:10:09 -07:00
Jeffrey Pfau
6097890251
Print proper register
2013-04-12 02:04:51 -07:00
Jeffrey Pfau
688af6cdee
Add some basic input to the debugger
2013-04-12 02:03:11 -07:00
Jeffrey Pfau
1db7f5b179
Initial debugger
2013-04-12 01:32:43 -07:00
Jeffrey Pfau
b07e052698
Move CMakeList
2013-04-11 23:58:13 -07:00
Jeffrey Pfau
d90d7d1899
Implement BL
2013-04-11 03:14:09 -07:00
Jeffrey Pfau
133d574667
Implement LDMIA/STMIA/PUSH/POP
2013-04-11 03:01:07 -07:00
Jeffrey Pfau
1616ec83a2
Stub out incomplete addressing mode 1 opcodes
2013-04-11 02:13:35 -07:00
Jeffrey Pfau
4fbed66bdb
Start fleshing out addressing mode 1
2013-04-11 01:32:30 -07:00
Jeffrey Pfau
d278429b43
Implement BX
2013-04-11 00:14:12 -07:00
Jeffrey Pfau
a511df7920
Put stub definitions in all of Thumb
2013-04-10 23:38:18 -07:00
Jeffrey Pfau
7e5de27f43
Add ability to run Thumb code
2013-04-10 23:34:50 -07:00
Jeffrey Pfau
9a0d14645b
Log stubs
2013-04-10 22:52:46 -07:00
Jeffrey Pfau
9a7f0f4a74
Stub out BL, finishing Thumb table
2013-04-10 21:11:05 -07:00
Jeffrey Pfau
87863ad97a
Stub out B
2013-04-10 21:09:22 -07:00
Jeffrey Pfau
cbc17ad77e
Stub out SWI
2013-04-10 21:05:19 -07:00
Jeffrey Pfau
e89f49459a
Stub out conditional branches
2013-04-10 21:04:41 -07:00
Jeffrey Pfau
d5adcac319
Stub out LDMIA/STMIA
2013-04-10 20:58:05 -07:00
Jeffrey Pfau
0db11ec6bb
Stub out BKPT (not in ARMv4T, but still useful)
2013-04-10 20:50:56 -07:00
Jeffrey Pfau
5e78400a25
Stub out POP/PUSH
2013-04-10 00:00:24 -07:00
Jeffrey Pfau
99d0b76f3b
Stub out ADD7 and SUB4
2013-04-09 23:47:37 -07:00
Jeffrey Pfau
08065d865d
Stub out ADD from PC and SP
2013-04-09 23:45:08 -07:00
Jeffrey Pfau
28ecc97671
Stub out LDR/STR from SP
2013-04-09 23:37:28 -07:00
Jeffrey Pfau
e3818cf7b6
Stub out more load/stores with immediates
2013-04-09 23:34:25 -07:00
Jeffrey Pfau
39c776eb37
Stub out more load/store format 2
2013-04-09 23:27:37 -07:00
Jeffrey Pfau
5165e0131e
Put in missing BX
2013-04-09 23:16:30 -07:00
Jeffrey Pfau
f42c8d111e
Stub out STR2
2013-04-09 23:00:31 -07:00
Jeffrey Pfau
11de611fd2
Stub out LDR3
2013-04-09 22:57:24 -07:00
Jeffrey Pfau
5e18eabd04
Stub out format 8
2013-04-09 22:51:21 -07:00
Jeffrey Pfau
be021605bc
Define data format 5
2013-04-09 22:35:51 -07:00
Jeffrey Pfau
e577df2142
Fix data format 3
2013-04-09 22:35:38 -07:00
Jeffrey Pfau
d3abd2dc63
Minor ROM access optimization
2013-04-09 22:20:35 -07:00
Jeffrey Pfau
027e27caa4
Add data form 3
2013-04-09 04:20:14 -07:00
Jeffrey Pfau
56c3685ba6
ADD/SUB 1 stubs
2013-04-09 03:20:32 -07:00
Jeffrey Pfau
2618c39a5d
Macro-insanity for Thumb
2013-04-09 03:15:50 -07:00
Jeffrey Pfau
76dbfce3c3
Start filling in THUMB table with insane preprocessor tricks
2013-04-09 02:57:24 -07:00
Jeffrey Pfau
70eb3634a0
Fix warnings + LDR[B]T/STR[B]T
2013-04-08 03:14:18 -07:00
Jeffrey Pfau
9a1fb100c7
Load/store working RAM
2013-04-08 03:13:37 -07:00
Jeffrey Pfau
93a2f16066
Loading 8/16 bits from ROM
2013-04-08 02:13:40 -07:00
Jeffrey Pfau
67c00f378a
Ensure CPSR privilege gets updated in MSR
2013-04-08 00:21:28 -07:00
Jeffrey Pfau
37ad6218da
Don't double-execute AL instructions
2013-04-08 00:17:54 -07:00
Jeffrey Pfau
4f3e77c87e
Implement MSR
2013-04-08 00:15:16 -07:00
Jeffrey Pfau
4bba75dd0a
Separate out ISA files
2013-04-07 21:15:32 -07:00
Jeffrey Pfau
b02fdd3dda
Remove inline conditions and add ARM specialization
2013-04-07 20:37:48 -07:00
Jeffrey Pfau
186068adfe
Start filling in ARMBoard
2013-04-07 13:25:45 -07:00
Jeffrey Pfau
120b85713d
Mode switching
2013-04-07 02:36:41 -07:00
Jeffrey Pfau
bda71cafc2
ALU instructions can write to PC
2013-04-07 02:01:14 -07:00
Jeffrey Pfau
6e3a9a9508
Fix writing to PC
2013-04-07 01:57:04 -07:00
Jeffrey Pfau
68f2eed84d
Mini-test
2013-04-07 01:39:49 -07:00
Jeffrey Pfau
9575e7f0d2
Fix B
2013-04-07 01:39:08 -07:00
Jeffrey Pfau
0e2394e7d5
De-inline ARMStep
2013-04-07 01:46:48 -07:00
Jeffrey Pfau
b23f1ee3e3
GBA ROM loading
2013-04-07 01:46:28 -07:00
Jeffrey Pfau
340d3ce6a7
Implement B
2013-04-06 20:16:14 -07:00
Jeffrey Pfau
5c7b4a98c6
Load from ARM table now that we have one
2013-04-06 20:06:51 -07:00
Jeffrey Pfau
6bd7a5ee53
Fill remainder of table
2013-04-06 20:01:32 -07:00
Jeffrey Pfau
7a0fb72e7e
Stub out SWI
2013-04-06 19:58:01 -07:00
Jeffrey Pfau
d620357ac8
Stub out coprocessor
2013-04-06 19:52:45 -07:00
Jeffrey Pfau
5dd2379dd5
Cleanup
2013-04-06 19:38:14 -07:00
Jeffrey Pfau
f2a1257fbb
Stub out branch instructions
2013-04-06 19:22:14 -07:00
Jeffrey Pfau
1858dfeb1c
Stub out LDM/STM
2013-04-06 18:44:52 -07:00
Jeffrey Pfau
7b82cc0040
Fill in LDR/STR block
2013-04-06 13:05:53 -07:00
Jeffrey Pfau
befba57fe6
Simple error checking
2013-04-06 04:34:19 -07:00
Jeffrey Pfau
9efc945f1b
Add store callbacks
2013-04-06 04:20:44 -07:00
Jeffrey Pfau
96da9c7ef1
Partially implement LDR/STR and friends
2013-04-06 04:16:34 -07:00
Jeffrey Pfau
92e74a78e1
Apparently I can't count to 8
2013-04-06 02:49:54 -07:00
Jeffrey Pfau
cb2469c4f4
Filler for more instructions
2013-04-06 00:32:01 -07:00
Jeffrey Pfau
a01fc986a3
Begin GBA structure
2013-04-05 02:17:22 -07:00
Jeffrey Pfau
cd07dee7b1
Implement immediate shifter
2013-04-05 00:44:53 -07:00
Jeffrey Pfau
c07df4a337
Fill in immediates
2013-04-04 03:12:22 -07:00
Jeffrey Pfau
63f6f53a80
Implement BIC, MOV, MVN, ORR
2013-04-04 02:42:17 -07:00
Jeffrey Pfau
dbee1e871e
Add stubs, including for illegal instructions
2013-04-04 02:36:53 -07:00
Jeffrey Pfau
e093960316
Fill in more opcodes, implement CMN, CMP, TEQ, TST
2013-04-04 02:31:32 -07:00
Jeffrey Pfau
fd4ee12eb5
Implement ADD, ADC, RSB, RSC, SUB
2013-04-04 02:04:51 -07:00
Jeffrey Pfau
c1a8042db4
Fill in more opcodes, implement EOR
2013-04-04 01:27:51 -07:00
Jeffrey Pfau
4025bf89f2
Add boilerplate for instructions
2013-04-04 00:46:50 -07:00
Jeffrey Pfau
bf72532715
Add more framework for loading instructions
2013-04-03 22:34:49 -07:00
Jeffrey Pfau
009bef870c
Initial commit
2013-04-03 22:12:15 -07:00