Commit Graph

7321 Commits

Author SHA1 Message Date
NeoBrainX 9adc119e3c PixelShaderGen: For custom textures and scaled EFB copies, use correct texel to pixel mapping when sampling textures
(D3D9 only)

This is basically the same as revision e58692653a, just for scaled textures and with a LOT more work...
2012-02-20 20:32:08 +01:00
NeoBrainX d068686a7f Revert revision f7d757b46e. 2012-02-20 11:51:40 +01:00
NeoBrainX e58692653a PixelShaderGen: Use correct texel to pixel mapping when sampling textures
(D3D9 only)

Fixes issue 2068.
Fixes issue 5158.
2012-02-17 17:09:17 +01:00
parlane bea635d1d5 Fixes issue 5214 for real! 2012-02-15 20:56:50 +00:00
LPFaint99 643770bff9 more work towards correct file importing
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:40:53 -08:00
LPFaint99 e68b892cc6 more changes from u8[] to u16/u32
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:40:45 -08:00
LPFaint99 ebdab914cb Change UpdateCounter to u16
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:40:34 -08:00
LPFaint99 0aeb94d3be disable changing a dentry to "broken file" before removing it, the ipl does not always do this
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:40:18 -08:00
LPFaint99 3d20c57458 Update directorys and BlockAllocs correctly, use the most uptodate directory/bat instead of always the first
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:40:03 -08:00
LPFaint99 1fe67e19ab use BAT for block locations instead of assuming nonfragmented blocks *untested*
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:39:45 -08:00
LPFaint99 8355363dcd change the data section from a plain array to a vector of blocks (arrays of 0x2000)
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:39:23 -08:00
LPFaint99 dfe890e8f1 pass by reference instead of pointer in several places,
return std::strings instead of filling a buffer,
move gci filename generation to a function inside gcmemcard instead of the gui code
 change all functions that do not modify the object to const

Conflicts:

	Source/Core/Core/Src/HW/GCMemcard.cpp
	Source/Core/DolphinWX/Src/MemcardManager.cpp

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:39:10 -08:00
LPFaint99 d5c393fe96 initial work on displaying, exporting, and deleting from
memory cards that have gaps in the fst

Conflicts:

	.gitignore
	Source/Core/DolphinWX/Src/MemcardManager.cpp

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:38:55 -08:00
LPFaint99 98993bfbd3 fix the twocardsloaded settings, correctly disables the copy functions when only one card is loaded
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:38:44 -08:00
Andrew de los Reyes c9dfcf8cf7 Add Support for Wii Motion Plus INSIDE Wii Remotes on Mac OS X.
This patch makes a few changes necessary for support for the new Wii
Remotes:

- For all OSes:
  - Adds a new bool member variable m_motion_plus_inside to identify
    the new Wii Remotes.
  - If we have a new Wii Remote, use a head byte of 0xa2. We could
    just change this behavior for all Wii Remotes, but an existing
    comment suggests that would break 3rd party Wii Remotes.

- On Mac OS X:
  - Expand the search criteria for the bluetooth scan. This is
    necessary because the new Wii Remote identifies with minor class
    kBluetoothDeviceClassMinorPeripheral2Gamepad, but the old Wii
    Remotes use minor class
    kBluetoothDeviceClassMinorPeripheral2Joystick (1).
  - Send commands on the interrupt channel, not the control
    channel. The new Wii Remotes require this; old ones are compatible
    with this. Note: 3rd party Wii Remots are untested with this
    change; the hope is they are still functional.
  - Get the name of the bluetooth device and see if it ends in
    "-TR". If so, set a member variable so we know it's the new kind
    of Wii Remote.

This should fix issue 5011 for Mac OS X:
http://code.google.com/p/dolphin-emu/issues/detail?id=5011
2012-02-09 11:42:42 -08:00
Matthew Parlane fc3eb7c6a7 Fixed a few warnings. 2012-02-09 17:18:46 +13:00
skidau 25eae39b7c Rearranged the SSE detection. Patch by lordlyhobo.
Fixes issue 5172.
2012-02-06 20:51:24 +11:00
skidau 8f83a89416 Removed the busy-wait from DSP LLE on thread. Reduces the CPU usage in this scenario by around a third. 2012-02-05 17:18:11 +11:00
skidau c53283185d Added an error check for invalid contents in ES_OPENCONTENT. Fixes Jungle Speed and Doc's Punch Out.
Fixes issue 3035.
2012-02-05 16:16:33 +11:00
NeoBrainX 0bbb112298 Merge branch 'texcache-preload'
For further info, see revision 56ccfc5d9d4defb308e02a71d201aee9eef0a76e.
2012-02-04 13:19:48 +01:00
NeoBrainX 439613b833 TextureCacheBase: Remove a superfluous TODO (texture hashing takes care of that stuff) 2012-02-04 13:01:52 +01:00
skidau ea2e0e9063 Added the HID2.WPE condition to dcbz. Fixes issue 5114. 2012-02-04 13:25:04 +11:00
NeoBrainX eb01a110c9 Implement texture preloading 2012-02-03 21:21:13 +01:00
NeoBrainX dabb35afce Prepare texture preloading support 2012-02-03 21:20:34 +01:00
NeoBrainX 20a4735b4d Update some license headers. 2012-02-02 14:02:39 +01:00
LPFaint99 5cfb03da26 Merge branch 'variousSmallFixes' 2012-02-01 16:50:09 -08:00
LPFaint99 d6de53f235 convert name, notes and creator to wxstring using *wxConvCurrent instead of FromAscii. fix issue 5069 2012-02-01 00:09:24 -08:00
LPFaint99 a78c5f984f download codes for virtualconsole titles 2012-02-01 00:09:23 -08:00
LPFaint99 a0d6d68243 sysconf SetArayData use the minimum of the buffersize or the dataLength 2012-02-01 00:04:18 -08:00
LPFaint99 8e332948bf less log noise from CNandContentLoader 2012-02-01 00:04:06 -08:00
LPFaint99 c3e46d5b45 partial fix for issue 4742 2012-02-01 00:03:57 -08:00
LPFaint99 60594c079d allow just ejecting the disc by canceling the file dialog 2012-02-01 00:03:49 -08:00
LPFaint99 303d1b83eb minor cleanup to /dev/es, fix for grabbing titleid from the disc, and es_gettitledir 2012-02-01 00:03:41 -08:00
LPFaint99 3fb42f6bb6 split adding the ticket to its own function (installing a wad) 2012-02-01 00:03:16 -08:00
NeoBrainX d1605abfa9 Add license header for TextureCacheBase files 2012-01-31 19:52:02 +01:00
NeoBrainX 1446fb33d5 TextureCacheBase: Replace the efbcopy_state member variable of texture cache entries with a more general "texture type" 2012-01-31 19:52:02 +01:00
NeoBrainX cf899781f9 TextureCacheBase: Update and improve documentation for EFB copies 2012-01-31 19:52:02 +01:00
NeoBrainX b34b6e47f2 TextureCacheBase: Remove a redundant variable 2012-01-31 19:52:02 +01:00
NeoBrainX 9fed10fc75 Remove SaveTexture declaration in VideoCommon since it's only actually defined in OpenGL 2012-01-31 19:52:02 +01:00
NeoBrainX cc54ee7d94 TextureCache: Move EFB copy cache code from TextureConverter to TextureCache 2012-01-31 19:51:32 +01:00
NeoBrainX a02df43e6d TextureConverter (OGL/D3D9): Kill EncodeToRam because it wasn't used anywhere and it basically does the same as EncodeToRamFromTexture anyway 2012-01-31 18:09:35 +01:00
NeoBrainX 3b38295cbd TextureCacheBase: De-uglify hybrid EFB copies (documentation needs updating though)
TextureCacheBase: Fixed dynamic EFB copies being set to normal textures.
2012-01-31 18:09:35 +01:00
NeoBrainX 67129404dd TextureCacheBase: Small bugfix
Added documentation for hybrid EFB copy stuff
2012-01-31 18:09:35 +01:00
NeoBrainX 5239ba88c9 TextureCache: Remove unsafe texture cache 2012-01-31 18:09:35 +01:00
NeoBrainX 8c2d87f668 TextureCacheBase: Move around stuff, add some TODOs 2012-01-31 18:09:35 +01:00
NeoBrainX 93dbd93a8d TextureCacheBase: More cleanup... 2012-01-31 18:09:35 +01:00
NeoBrainX 0c1e015ec3 TextureCacheBase: Small change 2012-01-31 18:09:35 +01:00
NeoBrainX f68ee87e0e TextureCacheBase: De-uglify texcache entry lookup even more + documentation 2012-01-31 18:09:35 +01:00
NeoBrainX dcf18fbaaf TextureCacheBase: Force autogenerating mipmaps if custom textures are used 2012-01-31 18:09:35 +01:00
NeoBrainX 8bc9e443fd TextureCacheBase: De-uglify entry lookup a bit 2012-01-31 18:09:35 +01:00
NeoBrainX 9c39952c34 TextureCacheBase: Kill deprecated entry member isNonPow2
TextureCacheBase: Add a TODO about a potential bug
2012-01-31 18:09:35 +01:00
NeoBrainX 94a8536b8c TextureCacheBase: Simplify texture cache entry initialization 2012-01-31 18:09:34 +01:00
NeoBrainX c5008fe9de TextureCache: Renaming some variables
OGL: Fix a possible bug at texture dumping
OGL: Add a TODO about a possible bug
2012-01-31 18:09:34 +01:00
LPFaint99 04a7e33f0b proper unicode literal and wstring to wxstring conversions.
Fixes issue 5156.
2012-01-27 00:30:52 -08:00
calc84maniac fd616ccb0c [Jit64] Register-based shift instructions optimized on 64-bit processors 2012-01-22 21:54:39 -05:00
calc84maniac a7f3f61598 [Jit64] Constant unsigned division and constant multiplication optimizations. Also, signed division can now be recompiled. 2012-01-22 19:58:59 -05:00
NeoBrainX 2d6d73df95 [maintenance] Add a note explaining why we aren't emulating CP clear register writes.
For further reference, see also r700f5eabc752.
2012-01-21 14:58:29 +01:00
NeoBrainX ad1a4d7ce3 FifoPlayer: Add a search function for the analyzer tab.
Also some tiny fixes.
2012-01-21 13:49:24 +01:00
NeoBrainX ecb616f7ff FifoPlayer: Make sure that we actually display "Yes" if some variable is true...
FifoPlayer: More consistency of output (display "0x" in front of hex numbers, write hex numbers in capital letters)
2012-01-21 13:49:24 +01:00
NeoBrainX 5eb24a51cf FifoPlayer: Add a description label for the currently selected object command.
Requires adding such descriptions for all BP/CP/XF registers. For now, I added descriptions for EFB copy related BP registers.
2012-01-21 13:49:24 +01:00
NeoBrainX 8c62a56c71 FifoPlayer: Show full data of XF register loads (Did I do this correctly?) 2012-01-21 13:49:24 +01:00
NeoBrainX 700123c55b FifoPlayer: Add an "Analyzer" tab which allows browsing through all rendered objects per frame and through all register setting commands per object 2012-01-21 13:49:24 +01:00
LPFaint99 96d56cd8ef fix for memcard manager using sjis for ascii encoded string
thanks to gerbilsoft for finding my mistake, fixes issue 5148
2012-01-18 22:41:35 -08:00
Shawn Hoffman bef3d7229e Ensure comment strings in CBannerLoaderWii::SWiiBanner are null-terminated. Fixes issue 5012.
Signed-off-by: Shawn Hoffman <godisgovernment@gmail.com>
2012-01-17 23:59:48 -08:00
calc84maniac 79ca43226c Added SHRD/SHLD x86 emitters, further optimized srawx 2012-01-09 00:10:13 -05:00
nitsuja 31ff1907a4 added an option to log to the attached Windows debugger (so e.g. NOTICE_LOG messages can show up in Visual Studio's output window) 2012-01-07 23:04:18 -08:00
nitsuja 1603bbb5f4 fixed and reenabled and slightly optimized the JIT version of fcmpo/fcmpu. 2012-01-07 22:23:59 -08:00
nitsuja 9ab69febe5 fix for stack corruption caused by certain DSP LLE JIT ABI calls.
if you were getting crashes or freezes as a result of using the "DSP LLE on Thread" option, this might fix that.
2012-01-07 20:46:41 -08:00
nitsuja 2368d88c65 slightly more precise speed percent display (this is really minor) 2012-01-07 20:24:11 -08:00
nitsuja daefb3b550 a small thread synchronization speedup for dual core mode.
it's most noticeable in games where the CPU is running behind compared to the GPU.
2012-01-07 20:22:48 -08:00
NeoBrainX b33be736cd D3D9/11: Degrade a PanicAlert related to EFB format changes to an ERROR_LOG 2012-01-06 13:45:51 +01:00
calc84maniac 8fb1a02f6b Fixed small error for instructions with overflow enabled 2012-01-05 22:39:17 -05:00
calc84maniac 5a15d58964 Added emitters for BT/BTR/BTS/BTC x86 instructions, optimized extended arithmetic PowerPC instructions 2012-01-05 22:36:27 -05:00
calc84maniac a7a6a1859e subfex optimization when RD==RA 2012-01-05 19:07:31 -05:00
calc84maniac 60cddf0823 Fixed some BindToRegister calls (removing unnecessary MOV instructions for speedup) 2012-01-05 18:27:04 -05:00
calc84maniac ecc63651c7 srawx/srawix optimizations 2012-01-04 14:06:19 -05:00
nitsuja 57d1c87a2d Merge branch 'determinism-fixes' 2012-01-04 01:49:31 -08:00
nitsuja 39613a95a8 initialize the uninitialized 2012-01-04 01:36:09 -08:00
nitsuja 81a1efab8e fixed an issue where the CPU sometimes single-steps an extra time after pausing 2012-01-04 01:33:38 -08:00
nitsuja ced8ca7219 better support for RTC when recording 2012-01-04 01:33:35 -08:00
nitsuja c6ce58ab64 fixed a wii recording desync
(some remote init code was running in playback but not recording)
2012-01-04 01:17:11 -08:00
nitsuja fe5a82357a fix potential wiimote playback desync 2012-01-04 01:16:45 -08:00
nitsuja 88df9d25a1 fixed potential crash in wii fileio 2012-01-04 01:13:46 -08:00
calc84maniac 363cf39ca9 Got rid of no-longer-valid assert 'W T F !!!' 2012-01-04 02:27:04 -05:00
calc84maniac 415aad3b03 Fixed some GCC compiler warnings 2012-01-03 10:57:58 -05:00
calc84maniac f9f9bb9870 Merge branch 'master' of https://code.google.com/p/dolphin-emu 2012-01-03 10:05:08 -05:00
calc84maniac b23a3df5e8 More x86 shift fixing 2012-01-03 10:03:12 -05:00
skidau ebca41e78b Merge branch 'Wiimote' 2012-01-03 22:23:45 +11:00
calc84maniac b88d0aa53f x86 shift of 0 doesn't update flags, check the value manually 2012-01-03 01:24:21 -05:00
skidau a812e3bd3d Removed the "Reload MemCard on load state" hack as it is no longer needed with the new save states system.
Fixes issue 4898.
2012-01-03 01:24:20 -05:00
skidau 32755aa48c Reordered the safe write path of the stfd instruction. 2012-01-03 01:24:19 -05:00
skidau daf7e96521 Fixed the safe write path of the stfd instruction in the JIT. Fixes issue 4001. 2012-01-03 01:24:18 -05:00
skidau b9547a07f5 Updated the Gecko code handler to the latest version from Gecko OS 1.9.3.1.
Added a check to ensure that the number of codes fits in memory (maximum 231 codes).
Store a copy of codehandler.bin in the Sys directory.
2012-01-03 01:24:17 -05:00
skidau 318d3cff02 Added a note to try the native code handler in the error message window.
Added copyright notices.
2012-01-03 01:24:16 -05:00
skidau 69b2d4ddc1 Changed the Gecko code handling to the native code handler. This provides full compatibility with all Gecko codes.
To use the native code handler, place the kenobiwii.bin file into the Sys directory.  Dolphin will silently fall-back to the emulated code handler if the file is not there.

Fixes issue 4561.
2012-01-03 01:24:14 -05:00
calc84maniac 2c3a714e49 Merge branch 'master' of https://code.google.com/p/dolphin-emu 2012-01-03 00:44:41 -05:00
calc84maniac aa47a8c690 x86 shift of 0 doesn't update flags, check the value manually 2012-01-03 00:37:43 -05:00
skidau ca287e7957 Removed the "Reload MemCard on load state" hack as it is no longer needed with the new save states system.
Fixes issue 4898.
2012-01-03 15:36:32 +11:00
calc84maniac 6ecae3e556 srwx and slwx optimizations 2012-01-02 19:45:28 -05:00
calc84maniac 9c4106027c Erp, some changes were not committed 2012-01-02 19:45:27 -05:00
calc84maniac ff6d0d056a rolwinmix and rlwnmx optimizations, another Rc/RC typo fixed 2012-01-02 19:45:26 -05:00
calc84maniac 9530bd0292 rlwimix optimizations 2012-01-02 19:45:25 -05:00
calc84maniac a6d041bfa9 Removed an extraneous FlushLockX, further optimized simultaneous handling of carry/overflow. 2012-01-02 19:45:24 -05:00
calc84maniac 4cb1af0f13 Fixed a bad typo. Why are there different inst.Rc and inst.RC variables? >_> 2012-01-02 19:45:23 -05:00
unknown ab54000d73 Fixed and streamlined overflow detection, improved subtraction methods, general flag-based optimizations including GenerateRC() which uses the sign/zero flag of the last operation 2012-01-02 19:45:21 -05:00
skidau d399e6b26d Reordered the safe write path of the stfd instruction. 2012-01-03 10:20:20 +11:00
calc84maniac f575c2c3be srwx and slwx optimizations 2012-01-02 18:00:28 -05:00
calc84maniac 42cdda42c9 Erp, some changes were not committed 2012-01-02 17:34:07 -05:00
calc84maniac ce80772007 rolwinmix and rlwnmx optimizations, another Rc/RC typo fixed 2012-01-02 17:30:54 -05:00
calc84maniac 7d262ff1f4 rlwimix optimizations 2012-01-02 15:07:36 -05:00
calc84maniac a2bd91b726 Removed an extraneous FlushLockX, further optimized simultaneous handling of carry/overflow. 2012-01-02 11:50:01 -05:00
skidau 67e38fb6c6 Fixed the safe write path of the stfd instruction in the JIT. Fixes issue 4001. 2012-01-03 01:17:52 +11:00
calc84maniac 8d67354179 Fixed a bad typo. Why are there different inst.Rc and inst.RC variables? >_> 2012-01-02 04:00:47 -05:00
unknown d6bf166694 Fixed and streamlined overflow detection, improved subtraction methods, general flag-based optimizations including GenerateRC() which uses the sign/zero flag of the last operation 2012-01-02 03:42:00 -05:00
skidau 6b0d21efa7 Merge branch 'Gecko' 2012-01-02 15:21:58 +11:00
skidau f4d8e527b5 Updated the Gecko code handler to the latest version from Gecko OS 1.9.3.1.
Added a check to ensure that the number of codes fits in memory (maximum 231 codes).
Store a copy of codehandler.bin in the Sys directory.
2012-01-02 15:14:30 +11:00
skidau 96600ef48d Added a note to try the native code handler in the error message window.
Added copyright notices.
2012-01-02 13:53:39 +11:00
Pierre Bourdon 008fd446f5 Replace some printfs from the PPC Interpreter code by Dolphin logger calls 2012-01-02 00:59:37 +01:00
Pierre Bourdon 59e93bff78 Fix a crash at startup with Dolphin on Linux compiled in debug mode
Use the clobber list instead of the stack to save rbx when executing the cpuid
instruction with inline assembly. This avoids breaking GCC assumptions about
the stack pointer location.
2012-01-02 00:59:37 +01:00
nitsuja 0d9e87da18 prevent CLogWindow::UpdateLog from constantly burning through timer objects, because it was allocating memory a lot and making it hard to debug some things. I think this should be faster even in release builds, but any speedup is probably too tiny to measure. 2012-01-01 14:28:21 -08:00
nitsuja f0d7b8122f increased fault tolerance of shader cache files.
more specifically: if the emulator stops unexpectedly, it is quite possible that one of the shader cache files will have some bytes near the end that never got their values filled in. this change adds an index number at the end of each entry as extra verification that the entry is valid, so that invalid entries can be ignored (and eventually overwritten) instead of causing crashes.
2012-01-01 14:28:20 -08:00
nitsuja 6f1b2d7748 name all audio threads (that I know how to) for debugging, as suggested in response to revision d00b719966. 2012-01-01 14:28:19 -08:00
skidau ba545ec1e9 Build fix 2012-01-01 18:09:39 +11:00
skidau e4b4a65346 Merge branch 'PowerPC' 2012-01-01 16:17:52 +11:00
skidau 5a914744a2 Added some support for the OE flag. Thanks to j4ck.fr0st for the tip. 2012-01-01 16:12:53 +11:00
skidau c53593a40a Moved the Audio Throttle option to the Framelimit drop-down. The Audio Throttle should never be used alongside the frame limiter as that can cause audio sync issues. 2012-01-01 14:32:54 +11:00
skidau 80504efcdf Changed the Gecko code handling to the native code handler. This provides full compatibility with all Gecko codes.
To use the native code handler, place the kenobiwii.bin file into the Sys directory.  Dolphin will silently fall-back to the emulated code handler if the file is not there.

Fixes issue 4561.
2011-12-31 15:18:48 +11:00
skidau cfee6d8473 Stubbed the /dev/usb/oh1 path. Fixes issue 4936. 2011-12-31 09:51:41 +11:00
skidau f7ef58ff9a Removed the VID/PID validation for Wiimotes allowing Dolphin to detect third party wiimotes with a VID/PID that is different to Nintendo's.
Checked for timeouts reported by the bluetooth stack.
Added RVL-CNT-01-TR detection.
2011-12-29 21:18:35 +11:00
skidau 1df7af35e9 Reset errno to zero before testing it after the strtoul call. Fixes issue 5078. 2011-12-29 12:05:36 +11:00
Pierre Bourdon af8a866afc Implement what was done by r9a627e89 using a stub device
This is arguably better then using the slot0 device for slot1, because it maps
the real hardware better (nothing can be mounted on slot1 on a Wii AFAICT).
This also makes Kirby: Return to Dreamland work properly and fixes some of the
SD card problems (libs do not expect to have the same SD card mounted two times
in RW...).
2011-12-25 01:55:25 +01:00
Pierre Bourdon 070c933088 Revert "Add unimplemented device map for sdio/slot1 and slot2. Fixes #4932."
This reverts commit 9a627e89fb.

The attempted Kirby: Return to Dreamland fix does not work properly and while
it fixes this particular game, it completely breaks SD card support on Dolphin.
BTW, I've never head of /dev/sdio/slot2 before...
2011-12-25 00:03:45 +01:00
LPFaint99 d389f7139b restore wii sorting order by using the ascii string from the banner instead of the iso file 2011-12-22 15:53:41 -08:00
LPFaint99 ca8af741b8 Merge branch 'unicode_gamelist' 2011-12-22 14:29:47 -08:00
LPFaint99 825e2ea4df fix an ascii/wxstring in gamelistctrl, replace fromascii("") with wxemptystring, don't push_back 0 at the end of wstrings 2011-12-22 14:28:12 -08:00
LPFaint99 8f6c25a5aa cleanup: merge handling of ntsc/pal games in gamelist/isoproperties 2011-12-20 02:19:46 -08:00
LPFaint99 e4c4602d9e use windows-1252 for gamename/description, fixes copyright/tm symbol in the gamelist & isoproperties 2011-12-20 02:10:40 -08:00
LPFaint99 9ddb67d4a9 fix shift-jis conversion on linux, and check for the codepage on windows in the memorycard manager like everywhere else 2011-12-20 01:35:12 -08:00
nitsuja 33f0f9fd9f fix ZWW intro music crackling with DSPHLE 2011-12-19 21:52:47 -08:00
nitsuja 3006d0696c fix the read-only menu item being disabled when emulation is paused (the hotkey was fine but I guess some people still use the menu) 2011-12-19 16:38:07 -08:00
nitsuja 3e773f093d fixed a freeze on emu shutdown in windows build 2011-12-19 15:13:26 -08:00
LPFaint99 de4e3e7462 add wstring name(s)/description to the cachefile, use when available in gamelist and properties window 2011-12-18 22:01:46 -08:00
LPFaint99 7f4efa094e add the function to read the game name and description from the banner as unicode 2011-12-18 21:56:13 -08:00
LPFaint99 a73ad3554c add the function to read all unicode gamenames from a wad file 2011-12-18 21:42:20 -08:00
nitsuja 567e90bbd5 fix for an un-threadsafe call to UpdateGUI (oops) 2011-12-18 20:38:54 -08:00
nitsuja 4a88d5ae93 fix for wiimote dying if you use savesetates too fast
(by dying I mean all wiimote slots permanently disconnecting until emulation reset)
2011-12-18 19:47:11 -08:00
Glenn Rice 4ecb48eaf8 Update a few more translations and add Farsi. 2011-12-18 14:03:57 -06:00
Pierre Bourdon b20c26f0b7 Adding more drama to the git history. 2011-12-18 13:58:44 +01:00
kostamarino@hotmail.com 9829beab42 Gameini database update, mainly changes to the emulation issues lines (make them shorter, with more substance and less bla bla, update outdated stuff). The emulation issues lines can be further improved(this is a start).
Also re - implement the emulation issues column that was reverted, make it a bit bigger since sentences need more words and delete the issues portion of the emustate tooltip since it is unnecessary now.
2011-12-18 14:52:40 +02:00
nitsuja d00b719966 give the audio thread a name (this doesn't really matter, but it was bugging me) 2011-12-18 02:25:50 -08:00
nitsuja d44fc0c820 small fixes for some recording-related menu items 2011-12-18 02:23:59 -08:00
nitsuja c88e4a097e update ui after savestate load (because loading a savestate can affect whether certain items should be grayed out in the menu) 2011-12-18 01:15:59 -08:00
nitsuja cfad00d6e0 added missing ExpansionInterface data to savestates, and related fixes (for savestate robustness) 2011-12-18 00:23:12 -08:00
nitsuja e5286e0406 improve the movie savestate load verification a bit more 2011-12-18 00:22:57 -08:00
nitsuja c6ea5f31f5 remove some suspect code in PowerPC::DoState which I think has already been supplanted by more correct code in CoreTiming::DoState 2011-12-18 00:22:31 -08:00
nitsuja 1e4e05fdc3 made ucode saving more reliable (especially for the case of loading across boundaries where the ucode changes). I think this is related to the occasional memory corruption I was seeing upon loading a savestate. 2011-12-18 00:22:21 -08:00
nitsuja c68c8c388c made savestate loads less fragile by adding some markers and rolling back on a mismatch.
This should make it so if you try to load an incompatible save, it simply doesn't load, instead of crashing dolphin. (I can't guarantee no crash but it's much less likely now)
2011-12-18 00:22:06 -08:00
Jordan Woyak 98d22d0e03 Revert the latest GUI change (Emulation Notes column). We don't care for it. 2011-12-17 23:44:09 -06:00
Maarten ter Huurne ed1bfdf293 Merge branch 'cmake-osx2' 2011-12-17 16:30:02 +01:00
Maarten ter Huurne 83bf5790a6 Copy translation files into OS X bundle. 2011-12-17 16:26:52 +01:00
kostamarino@hotmail.com a58c46be81 Gui change and an update to the gameini database.
The "Notes" column is gone and in it's place an "Emulation Notes" column is placed (it contains the emulationissues lines from the game inis). Notes that contain useful info about the game can be seen with just a glance this way.

Fixes issue 5043.
2011-12-16 21:01:10 +02:00
nitsuja d2f61fa155 some movie playback fixes 2011-12-15 09:22:16 -08:00
nitsuja 1ad05f7440 Merge branch 'master' of https://code.google.com/p/dolphin-emu 2011-12-14 21:34:55 -08:00
nitsuja 9470f9545f many movie fixes (mainly for readonly mode), and some wii input display support 2011-12-14 21:26:42 -08:00
Maarten ter Huurne 4c7c29b8b6 Let "make install" on OS X copy the bundle to /Applications.
The "dsptool" executable is not included in the bundle.
The "tester" executable is not included in the bundle and it no longer
installed on other platforms, since it is neither expected nor useful
to install unit tests.
2011-12-14 02:50:36 +01:00
Jordan Woyak b44918d1ed Merge branch 'fix-real-gcpad-sticks' 2011-12-12 23:25:32 -06:00
Jordan Woyak 09d2301fed detect input at 55% to catch silly c-stick range 2011-12-12 23:24:10 -06:00
Maarten ter Huurne 27bda2c054 Fixed range check on TryParse() for u32, again.
The code from 748be364e5 incorrectly accepted -0x100000000 on x86_64.

Also if ERANGE is returned by strtoul(), reject the parsed value regardless
of what that value is. This fixes invalid values being returned when compiling
with Visual C++. Thanks to "cotton" for testing this.
2011-12-13 02:08:34 +01:00
nitsuja f3325036be fixed hotkeys getting ignored after tab is pressed 2011-12-11 21:54:50 -08:00
nitsuja 2c2ef9a961 made frame advance act normal (so it advances 1 frame each time instead of waiting for further unpause commands), and did some minor improvements to the read-only command (making the UI behavior a little nicer, no actual changes to what read-only does at this point) 2011-12-11 21:08:26 -08:00
Maarten ter Huurne ee5a29e6f2 For CPUID, save EBX on the stack instead of in a register.
This fixes GCC running out of registers when compiling for x86
in release mode.

Thanks to kiesel.
2011-12-12 02:14:56 +01:00
Maarten ter Huurne d75f45979b Copy data files into OS X application bundle. 2011-12-12 01:30:42 +01:00
Maarten ter Huurne 7423c74deb Force the "ebx" argument to be mapped to a register (not necessarily EBX).
Fixes crash on x86 under OS X.
Thanks to kiesel for the fix and to shuffle2 for remembering the problem.
2011-12-12 00:43:23 +01:00
Maarten ter Huurne 344ca5d360 Applied compile and link flags from SCons build for OS X to CMake build.
The following changes were made:
Restricted the "-march=core2" option to i386 because the first Intel Macs
had Intel Core CPUs, not Core2.
Removed the "-mdynamic-no-pic" flag as GCC lists it as a PPC specific flag.
Removed "-Wl,-read_only_relocs,suppress" because it seems to be related
to "-mdynamic-no-pic" and I see no need for it.
Removed "-Wextra-tokens -Wnewline-eof" because they are GCC specific and
not OS X specific.
2011-12-11 21:27:06 +01:00
Maarten ter Huurne 780e5e7244 Use a custom template to generate the Info.plist for the OS X bundle.
This allows us to add keys that don't exist in the CMake template.
I added the keys from the Info.plist that was generated by our SCons build
to the new template.
2011-12-11 16:54:37 +01:00
Maarten ter Huurne c1cf4f80cf Added bundle version and copyright string to OS X bundle info. 2011-12-11 16:21:17 +01:00
Maarten ter Huurne 9d2f589f01 Create application bundle on OS X. 2011-12-11 16:07:59 +01:00
Shawn Hoffman b0ffa72e37 Merge branch 'large-mram' 2011-12-10 18:48:35 -08:00
Shawn Hoffman 62858c8c14 Small logging changes. Pause core if Jit64 tries to compile at 0. 2011-12-10 18:42:49 -08:00
NeoBrainX 3d9c35f58e VideoCommon: Fix upper and lower depth bytes being switched when performing Z16L EFB copies (EFB to texture only).
Fixes issue 4989.
Fixes issue 5056.
2011-12-10 16:08:26 +01:00
Maarten ter Huurne f9133a7376 Link to the required OS X frameworks.
Previously, there was just one list of frameworks regardless of which part
of the code depended on which frameworks. Now we keep separate lists for
the Dolphin core, the Dolphin GUI and internal use by wxWidgets.
2011-12-07 08:26:44 +01:00
Maarten ter Huurne c04c3bd9d3 Use "unsigned int" instead of "unsigned".
By request of hrydgard.
See commit 045eb924d9.
2011-12-07 07:10:31 +01:00
Maarten ter Huurne 8a75351674 Link against OpenGL using the info gathered by the FindOpenGL module. 2011-12-05 06:18:04 +01:00
Maarten ter Huurne 958891b4eb Compile with OpenAL support on OS X. 2011-12-05 05:49:08 +01:00
Maarten ter Huurne d440dfe9b2 Link against systemwide LZO using the info gathered by check_lib(). 2011-12-05 05:33:35 +01:00
Maarten ter Huurne bb182d88b7 Link against systemwide OpenCL on OS X. 2011-12-05 05:26:28 +01:00
Maarten ter Huurne 8c3775ee6f Under OS X, link GL plugin against Cg framework instead of Cg library. 2011-12-05 01:12:09 +01:00
Pierre Bourdon 252093295b Do not fail with strict drivers when compiling a not SM2.0 shader
To enforce SM2.0 compatibility, the OpenGL plugin was made to crash when
compiling a shader which does not fit in the SM2.0a limits. However, on some
combinations of OS/drivers/GPU, our shaders already do not fit in these limits,
causing artificial failures only to try to keep a non existant SM2.0a compat.
Basically, this sucks.

This commit increases the artificial limit to SM3.0. If you're using a GPU
which does not support SM3.0 and Dolphin works properly, this should not cause
any problem at all.
2011-12-03 23:24:10 +01:00
Jordan Woyak 575814895c Merge branch 'clearscreen-kill-immediate-mode' 2011-12-01 20:16:23 -06:00
Maarten ter Huurne 748be364e5 Fixed range check on TryParse() for u32.
On x86-64, "unsigned long" is 64 bits wide, so it is possible for a number
to not trigger a range error on strtoul() but still not fit inside an u32.
An extra check is added to ensure that 32-bit and 64-bit builds will accept
the same numbers.
2011-12-02 02:24:43 +01:00
Maarten ter Huurne 045eb924d9 Changed type of GetTicksPer(Line|Frame) to unsigned.
Avoids a GCC warning about comparing signed and unsigned values
in Source/Core/Core/Src/State.cpp.
2011-12-02 00:33:45 +01:00
Maarten ter Huurne f50ea590ce Don't use the same name for two different local variables.
This avoids a warning when compiling with GCC.
2011-12-02 00:06:49 +01:00
Maarten ter Huurne 51127c1243 Added newlines at end of file.
This avoids warnings when compiling with GCC.
2011-12-01 23:30:28 +01:00
Maarten ter Huurne 98981cc724 Fixed EFB cache index computations in OpenGL renderer.
The previous computation was very likely to go out of array bounds,
which could result in crashes on EFB access.

Also, the cache size was rounded down instead of up. This is a problem
since EFB_HEIGHT (528) is not a multiple of EFB_CACHE_RECT_SIZE (64).
2011-12-01 02:46:59 +01:00
Jordan Woyak 4fcd6994c6 fix wireframe setting toggling 2011-11-29 22:21:43 -06:00
Jordan Woyak 0dfca1cf2b remove now unnecessary glPolygonMode from ResetAPIState 2011-11-29 22:02:18 -06:00
Jordan Woyak 88700e817a make OpenGL ClearScreen use glClear 2011-11-29 21:50:31 -06:00
Maarten ter Huurne 29865e6366 Avoid virtual memory range collision between JIT and emulated RAM.
Passing MAP_FIXED to mmap causes already mapped pages in the requested
region to be replaced. On Mac OS X this caused pages for JIT-generatd
code to appear in the memory range previously auto-allocated for the RAM
of the emulated machine. This led to a hang at boot time. The same problem
can probably occur on FreeBSD, but not on Linux since MAP_32BIT is used
there instead of MAP_FIXED.

The solution is to not use MAP_FIXED, but instead rely on the OS honoring
the hinted address which is below 4 GB: we don't need an exact match,
just a low address.
2011-11-30 00:37:57 +01:00
Shawn Hoffman b62cac2ca9 Allow modifying main ram size at compile time by changing Memory::REALRAM_SIZE. 2011-11-27 19:52:05 -08:00
Glenn Rice e5d051a4e9 Update linux libav frame dump code for recent api changes. 2011-11-22 19:24:05 -06:00
skidau cc6f90c7d5 Enabled memory breakpoints under JIT in the debugger. 2011-11-05 19:42:06 +11:00
skidau 9eaf20cc44 Fixed the slowdown that occurred under JIT32. Fixes issue 4969. 2011-11-05 13:04:46 +11:00
skidau 2ee79e7057 Added the missing "table31" instructions into the JITIL tables. 2011-11-04 23:11:43 +11:00
skidau 38a97fb9d7 Added some missing "table31" instructions to the table. The instructions themselves are not properly implemented as they do not handle the OE case.
Allows ANIMA Ark of Sinners to go in-game.
2011-11-04 21:26:56 +11:00
skidau 4c3a799f08 Added a check for HID0.DCFA before proceeding to dcbz. Allows Rubik's Puzzle Galaxy: RUSH to go in-game. 2011-11-04 19:07:09 +11:00
skidau 3d2a2abb49 Made the JIT bypass the icache when it is executing the external interrupt
exception handler.

Fixed by comwiz.k
2011-11-03 20:55:47 +11:00
Pierre Bourdon 7f055d6b56 UI: refactor the game list sorting code 2011-11-02 02:45:51 +01:00
skidau 1387da7900 Merge branch 'JitCache' of https://skidau@code.google.com/p/dolphin-emu/ 2011-11-01 20:45:50 +11:00
Pierre Bourdon 8f31968466 Revert "Merge branch 'zcomploc-support'"
This reverts commit 9dad9ebe89, reversing
changes made to e76bc71efe.
2011-11-01 01:37:54 +01:00
skidau 78b74101b0 Added code to invalidate the JIT cache on dcbf. This fixes Monster House and Scooby Doo: Mystery Mayhem. 2011-10-29 17:21:20 +11:00
crudelios dd551814c9 Bounding Box bugfixes.
- Fixes all (I hope) BBox-related unknown pointer crashes.
- Fixes wrong BBox values with Frame Skip on (and the resulting unknown pointer crashes).
- Fixes a small oversight on the change I made to the ISO Properties dialog.

This should also be a (very very little) bit faster than the previous version.
2011-10-28 21:12:12 +01:00
skidau e03fd9a942 Added code to invalidate the JIT cache on dcbi and writes to memory. 2011-10-27 21:08:35 +11:00
Brad Gearon 9a627e89fb Add unimplemented device map for sdio/slot1 and slot2. Fixes #4932. 2011-10-26 14:28:57 -05:00
crudelios 852fe9c4be Added proper Bounding Box support.
Should fix most graphical issues with Paper Mario: TTYD and Super Paper Mario. Fixes issue 360.

Since only those two games seem to require BBox support, and as per ector's suggestion, BBox is only enabled for those two games.

BBoxes and Display List Caches don't get along too well, causing Paper Mario: TTYD to hang during certain effects where BBoxes are used. For now, I disabled DList Cache for the Paper Mario games, hopefully both will be compatible in the future.
2011-10-26 01:19:10 +01:00
Shawn Hoffman 105e7e4eb4 Added TaruKonga (DK Bongos) support.
Separated SI Device IDs from the enums used for config/gui since quite a few device types all have the gc controller SI ID.
2011-10-23 07:01:17 -07:00
Shawn Hoffman ba119e8c05 Set the correct bit for "trap" program exception. Fixes http://wiibrew.org/wiki/Descent 2011-10-23 02:53:31 -07:00
skidau 3cdcdba25f Merge branch 'SaveStates' 2011-10-22 16:18:02 +11:00
skidau 599c3ccd7b Fixed save states for games which use the MMU Speed Hack 2011-10-22 16:14:34 +11:00
kostamarino@hotmail.com 8d9061ac39 Possible fix for random crashes with plenty of games(like Mario Galaxy) and issue 4568 (please test).
Gameini database changes that affects Black & Bruised, BLOODY ROAR(R): PRIMAL FURY, CASPER, Karaoke Revolution Party, Wii Music, TMNT.
2011-10-19 21:03:08 +03:00
skidau 5b2c5c9ce3 Removed the icache invalidation code as it is causing frequent code clearing. 2011-10-19 02:36:30 +11:00
Pierre Bourdon 1e558aedeb Added an EFB peek cache to the GL video plugin
Most of the games using EFB peeks are suffering from major performance problems
when these peeks are not disabled in the graphics settings. This is an attempt
to fix this in the GL renderer by doing the glReadPixels in bulk: instead of
doing a lot of 1x1 pixel reads, read for 64x64 pixels at once and keep that in
a cache.

Deck menu in Baten Kaitos: 3FPS -> 54FPS
Character creation in Monster Hunter Tri: 7FPS -> 60FPS
2011-10-17 18:30:13 +02:00
Shawn Hoffman 3fc5d8d7cf Merge branch 'gc-mic'
Added GameCube Microphone support.  Uses your default audio recording device.  The Microphone is selectable from the Slot A/Slot B pulldowns under the GameCube tab.  The Microphone button can be set under GCPad configuration for pad 1 and 2. Thanks to MooglyGuy and skidau.
2011-10-17 03:21:11 -07:00
Shawn Hoffman 45eb9f0e7a fix some logic errors in the mic code and decrease latency a bit. emulate the buffer_overflow bit. 2011-10-17 03:14:20 -07:00
Shawn Hoffman c528978608 use callback model instead of blocking read/write.
fixes delay on linux.
currently not implementing the overflow bit, not sure it's needed since we manage our own buffer now.
2011-10-16 23:20:37 -07:00
Shawn Hoffman 1d6bd3248c It is safe to call Pa_Initialize and Pa_Terminate more than once. 2011-10-16 13:29:10 -07:00
skidau 18d9a275e7 Invalidated a wider range in the JIT cache to force recompile updated code in the ICache. This fixes the crashes in Mario Power Tennis and the remaining games in Mario & Sonic at the Olympic Winter Games.
Fixes issue 2102.
Fixes issue 2751.
2011-10-16 23:23:17 +11:00
Shawn Hoffman 46afefb14f Merge branch 'master' into gc-mic 2011-10-16 02:22:21 -07:00
Shawn Hoffman 676822891d ups, exi slots are on whole different channels... 2011-10-16 02:08:51 -07:00
skidau f6b9ae534e Merge branch 'master' of https://skidau@code.google.com/p/dolphin-emu/ into SaveStates 2011-10-16 17:51:41 +11:00
skidau c0498ca831 Synchronised the JIT cache with the ICache by invalidating the JIT block when the ICache is updated. This fixes Mario & Sonic at the Olympic Winter Games. Thanks to DimitriPilot3 for the tip.
Fixes issue 1610.
2011-10-16 16:43:32 +11:00
skidau 5d14bb5e70 Changed the save state system to load/save only after the screen has been drawn. This should help stabilise the save states. 2011-10-15 22:19:42 +11:00
skidau da9bd95a68 Renamed the "Disable Wiimote Speaker" option to "Alternate Wiimote Timing". 2011-10-09 22:10:47 +11:00
skidau 0ceb3cba36 Adjusted the system timing as DKCR was still getting disconnects with DSP HLE. 2011-10-09 22:10:46 +11:00
skidau 58cbe9cbd9 Adjusted the System Timing of the IPC HLE period for Wiimotes when used with DSP HLE. 2011-10-09 22:10:45 +11:00
skidau a09e859b3a Adjusted IPC HLE period to allow for four emulated wiimotes. 2011-10-09 22:10:45 +11:00
Shawn Hoffman 3556069f9f Also allow JitIL to update EXI exceptions much more frequently.
At this point, the mic branch is ready for testing by windows people at least. cmake/scons may work already, not sure.
2011-10-09 03:41:31 -07:00
Shawn Hoffman 41424d98e8 Make the mic button respect which slot it's plugged into.
*You need to open the Gamecube config page and reselect the devices in slot A and B after this commit*

Just jitil left...
2011-10-09 03:18:15 -07:00
Jordan Woyak ceef98b882 Added mic button to gcpad 1 and 2 diags. Both mic slots use gcpad 1 currently. Totally untested. 2011-10-09 04:27:43 -05:00
Shawn Hoffman 3790a16ece billliarrddd...here is how to set the button bit 2011-10-09 01:11:49 -07:00
Shawn Hoffman ade9485aac ok...just need to update the button... 2011-10-09 01:11:48 -07:00
Shawn Hoffman a751b627fd remove a now-unneeded comment 2011-10-09 01:11:44 -07:00
Shawn Hoffman ad508ab8fb Let's go ahead and throw this in here, should bring support of Intel IGP back in with DX9.... I can't actually test this for an obvious reason, but I figure while Windows is broken anyway, go ahead with it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7707 8ced0084-cf51-0410-be5f-012b33b47a6e

That should fix the seg faults on IGP chipsets.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7715 8ced0084-cf51-0410-be5f-012b33b47a6e

Compile fix.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7716 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-10-08 15:29:04 -07:00
Pierre Bourdon 59072adc32 Align stack variables on a 16-bytes boundary in SSSE3 functions
Fixes issue 4450. Thanks to pholklore1 for his patch.
2011-10-08 17:36:01 +02:00
LPFaint99 03b65f3d89 Merge branch 'GCMemcardUpdates' 2011-10-04 13:18:22 -07:00
LPFaint99 5316c6d97b Move GCMemcard from DolphinWX/Memorycards to Core/HW 2011-10-04 13:14:18 -07:00
LPFaint99 8d91f1e0c1 EXI_Memcard: HLE memcard Formatting, GCMemcard: Add static format function, cleanup checksums code 2011-10-04 13:14:17 -07:00
LPFaint99 86950e7cce fix gcmemcard format broken by 5f9591cf9d
small cleanup to format, now works for slot a and b and any memcard size
2011-10-04 13:14:17 -07:00
Shawn Hoffman 5dc866bfc9 Fix gamecube microphone (button not implemented, yet :p).
Calls ExpansionInterface::UpdateInterrupts just before checking exceptions now.
2011-10-03 23:46:00 -07:00
Shawn Hoffman 856972f808 remove hacky old MicButton stuff 2011-10-03 23:46:00 -07:00
Shawn Hoffman d8def74dd1 add portaudio headers and windows static libs to Externals, enable by default in windows build. 2011-10-03 23:45:59 -07:00
Shawn Hoffman b4d751e43c Merge branch 'fix-icc-unsafe-string' 2011-10-03 23:44:35 -07:00
Jordan Woyak a65385d995 Merge branch 'fix-3rd-party-wiimote' 2011-10-04 01:36:10 -05:00
Pierre Bourdon 9dad9ebe89 Merge branch 'zcomploc-support'
zcomploc is a feature of the BP which switch depth test from before the alpha
test to after the alpha test. This way, transparent fragments are written to
the depth buffer too.

The current implementation is quite hacky and does not cover all cases but is
enough to fix problems in a lot of game. A complete implementation would
require a multipass rendering method and is attempted in the
zcomploc-experimental branch.

According to testers feedback, fixes bugs in the following games:
- Baten Kaitos
- Baten Kaitos Origins
- 007: Everything or Nothing
- Ty the Tasmanian Tiger
- Tony Hawk's Pro Skater 3

And probably other games too.

Conflicts (because of new-shadercache-uids):
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
2011-10-04 07:56:13 +02:00
Jordan Woyak 15d6c6e9fc fix 3rd party wiimotes, patch by pholklore 2011-10-01 21:36:16 -05:00
Jordan Woyak d3e639a397 fix build issue with intel compiler and fix some unsafe string usages, patch by FilthyMonkey 2011-10-01 21:31:43 -05:00
skidau e76bc71efe Fixed the controller config so that it lists DInput controllers with special characters (like the Registered (R) sign) in their name. UTF8 is used to match the encoding used by the Wx GUI. 2011-10-01 21:50:15 +10:00
Pierre Bourdon 266cafb82d Add a call to VertexManager::Flush() when changing TC gen settings
In previous revisions of Dolphin, changing texture generation settings (via
GX_SetTexCoordGen for example) did not regenerate the vertex shader and flush
the vertices. Adding this flush should fix texture problems in a few game, for
example in Superman: Shadow of Apokolips:

Before: http://i.imgur.com/mHmfb.jpg
After: http://i.imgur.com/2ThES.png
2011-10-01 02:36:03 +02:00
NeoBrainX 7eb06430ed Only sync shader caches to disk on stop. 2011-09-29 23:16:42 +02:00
NeoBrainX 0e1383b788 Bump disk cache version. 2011-09-29 22:55:28 +02:00
NeoBrainX 2b3b32872d Fix Windows build. 2011-09-29 22:54:52 +02:00
NeoBrainX 81c614fa07 Clean up various things. 2011-09-29 23:32:39 +02:00
NeoBrainX ddfe219293 Fixup line endings. 2011-09-29 23:32:39 +02:00
NeoBrainX ca7e8a9e88 Fix pixel lighting. 2011-09-29 23:32:39 +02:00
NeoBrainX cfba35f7e5 Only link against libav if it's available. 2011-09-29 23:32:38 +02:00
NeoBrainX 08af37509e More buildfixes.. 2011-09-29 23:32:38 +02:00
NeoBrainX f041eee23b Compile fix. 2011-09-29 23:32:38 +02:00
Glenn Rice 6ccfd85f42 Build fix for the linux libav build. 2011-09-29 23:32:38 +02:00
NeoBrainX 913bc6d15f D3D11: Disable some redundant shader compilation errors. 2011-09-29 23:32:38 +02:00
NeoBrainX 6d8f641cc9 Fix D3D11 frame dumping. 2011-09-29 23:32:38 +02:00
NeoBrainX c710ea33f9 Merge some frame dumping code to VideoCommon, fixes a memory leak in D3D9 and OpenGL if emulation is stopped while dumping frames.
Breaks D3D11 frame dumping for some weird reason (memory corruption or whatever?).
2011-09-29 23:32:38 +02:00
NeoBrainX bd4a5b5ef6 Implement frame dumping in D3D11.
Fixes issue 4831.
2011-09-29 23:32:38 +02:00
NeoBrainX 5dcb212fc7 Fix Windows build. 2011-09-29 23:32:38 +02:00
NeoBrainX 8c691767da Various changes which improve FreeBSD support.
Patches by martymac, all credits go to him ;)
2011-09-29 23:32:38 +02:00
NeoBrainX 5d075ce507 - D3D9: pass the correct API type to ValidatePixelShaderIDs
- don't load shader cache from disk in d3d9/11 if shader debugging is enabled (we won't have any info about the source shader code otherwise, etc)
- dump shader source codes on safe UIDs mismatch

Thanks to LordMark and [SS] for reporting those to me ;)
2011-09-10 03:10:28 +02:00
NeoBrainX a021dd7b79 Small fix to the previous commit. 2011-09-09 21:45:11 +02:00
NeoBrainX 5c14a24ce1 Make shader ID validation optional by adding a gfx setting called "EnableShaderDebugging".
Setting this to True will enable additional checks if the shader cache misses any relevant register changes.
2011-09-09 21:34:46 +02:00
NeoBrainX b28348066e Improve the shader UID debugging stuff and merge it to VideoCommon, effectively enabling it in D3D9 and D3D11 as well. 2011-09-09 00:32:04 +02:00
NeoBrainX 349a3ae91d Merge remote-tracking branch 'remotes/origin/master' into new-shadercache-uids 2011-09-08 02:14:18 +02:00
NeoBrainX 6c7bda6851 Various fixes and cleanups. 2011-09-08 02:09:44 +02:00
NeoBrainX 98b62d8362 Track alpha blending paramaters in the pixel shader UID. 2011-09-07 21:15:14 +02:00
NeoBrainX 3939f9595a Add runtime checks to make sure we aren't overoptimizing the pixel shader cache. 2011-09-07 21:15:09 +02:00
NeoBrainX 4702de591e Added safe pixel shader UIDs for debugging purposes. 2011-09-07 21:10:06 +02:00
NeoBrainX 231c13d6ce Added safe vertex shader UIDs for debugging purposes. 2011-09-07 21:03:10 +02:00
NeoBrainX df4e337ac9 Fix various pixel shader compilation errors caused by the Direct3D shader compiler going nuts due to uninitialized (and unused) shader variables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7693 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-09-06 18:37:01 +02:00
NeoBrainX 17fcd406fc Merge some scissor rect related code to VideoCommon. 2011-09-05 22:04:28 +02:00
Shawn Hoffman b867c21fea apply to dx9 and dx11 backends as well 2011-09-05 12:19:11 -07:00
NeoBrainX 6845a1596c Fix various cases in scissor rect emulation.
Patch by delroth.
2011-09-05 11:10:23 -07:00
Shawn Hoffman 95517a9741 vs2010: Disable LTCG for realz 2011-09-05 09:43:23 -07:00
Pierre Bourdon d3ecf98213 Include the zcomploc bit in the shader UID
Fixes issues with switching zcomploc on/off during execution.
2011-09-04 05:38:32 +02:00
Pierre Bourdon 0bdf8646f0 Proof of concept zcomploc implementation
Fixes a few depth related graphics bugs. Example in Baten Kaitos (GKBEAF):

Before: http://i.imgur.com/EDdVA.png
After: http://i.imgur.com/h6GuY.png

Still a few bugs in this implementation: zcomploc switching is not yet
implemented, and the color is wrong with this test: http://codepad.org/7GpxklOi
(red on Dolphin, gray on Wii).
2011-09-04 05:08:09 +02:00
Pierre Bourdon d710eda0c5 Clean up a bit the shader code generation for alpha test fails 2011-09-04 04:44:50 +02:00
Jordan Woyak 931a31deca Untested attempt to fix real gcpad sticks not being detected by the input configuration dialogs. 2011-08-31 20:46:04 -05:00
NeoBrainX bcb8d11c1b Reduced the number of redundant vertex shader compilations (possibly to zero).
That one was almost too easy ;P
2011-08-31 20:46:03 +02:00
NeoBrainX 4137f287fd Fix a critical bug which caused shaders to be redundantly recompiled when disabling per-pixel depth.
As a nice side effect, the number of redundant shader compilations is now next to zero ;)
2011-08-31 19:45:28 +02:00
NeoBrainX 7f01139d13 Replace the pixel shader UID generation algorithm with a better one which reduces the number of redundant shader compilations by around 30% (can be optimized even further though).
This should help some games which suffer from heavy stuttering like e.g. F-Zero GX or Red Steel 2.
2011-08-31 18:03:33 +02:00
NeoBrainX 08e06b2293 Partially revert revision d511b50612.
Slightly slows down emulation, but deobfuscates the pixel shader gen greatly...
2011-08-31 16:09:54 +02:00
NeoBrainX 8a17e15943 Various cleanups and TODOs. 2011-08-31 16:09:46 +02:00
Jordan Woyak 7812346c89 disable ltcg for release build 2011-08-30 19:30:04 -05:00
Shawn Hoffman c0dd84cf7d buildfix ON MASTER!! :<
(I am sonic's babysitter)
2011-08-26 21:19:40 -07:00
Ryan Houdek 62e790f109 Have the ability to disable screensaver due to Nvidia + Displayport can cause annoying flickering
Bring up to standards guidelines and also support Windows

Switch this around...
2011-08-26 13:29:01 -07:00
LPFaint99 7737b2cef1 create the User/* dirs on windows
configuration/savestates/etc will now save
Fixes issue 4815.
2011-08-25 21:49:20 -07:00
Ryan a5a2562e59 Put this hotfix in since some combination of hardware and drivers returns zero here. 2011-08-25 02:58:37 -05:00
Shawn 7f56842a79 fixup scons (osx) to generate scmrev.h and build.
hopefully this will be the last code change committed directly to master for a while... :/
next is cmake to replace scons on osx hopefully. pointers anyone? (soren?)
2011-08-23 03:50:06 -07:00
LPFaint99 5c15292fd8 BS2: check the hash of the loaded ipl.bin file
remove some extra + chars from a few ini files (copypasta from a patch?)
2011-08-22 20:49:21 -07:00
Jordan Woyak 1528c95fe9 Remove hash from revision description for cmake and windows. 2011-08-22 20:06:17 -05:00
Jordan Woyak 6a80b9989a remove hash from rev description 2011-08-22 13:11:45 -05:00
Jordan Woyak a910f97c39 minor cleanup of make_scmrev.h.js 2011-08-22 13:11:42 -05:00
Shawn Hoffman cdaa5ea5d2 make sure the jscript is actually executed at build time 2011-08-21 20:00:30 -07:00
Shawn Hoffman 82dfee1642 make_scmrev.h.js needs to compare the full file instead of just the HEAD hash.
remove refs to deleted files from Common project
2011-08-21 19:53:09 -07:00
Shawn Hoffman fc12633055 Make the jscript for writing out scmrev.h work on windows.
Add scmrev.h to .gitignore
Remove some SubWCRev.exe and it's template
2011-08-21 19:15:50 -07:00
Jordan Woyak e8fe15c3f7 Make titlebar and about dialog fancy for cmake build.
Windows needs fixing.
2011-08-21 17:43:05 -05:00
Shawn Hoffman 6bc81f5ac4 git compat:
add git support to cmake and make_svnrev.h.js
add .gitignore
2011-08-14 13:17:57 -07:00
Glenn Rice 5ea787b087 Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7695 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-08-07 15:34:53 +00:00
LPFaint99 5f9591cf9d make it significantly harder to choose an invalid memory card file in the main dolphin config
should fix most errors of "Can not use memory card in slot A"
also fix display of a (rarely seen) panicalertT when the same file is chosen for both memorycards
recent examples ... http://forums.dolphin-emulator.com/showthread.php?tid=18408 http://forums.dolphin-emulator.com/showthread.php?tid=18354

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7694 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-08-07 07:17:49 +00:00
NeoBrainX 2a829fe36c New Wiimote configuration dialog design.
Uses a single page for configuring ALL wiimotes now.

Due to the use of wxWindow::NewControlId, this might increase our wx version requirements (irrelevant for windows users). Works fine with wx 2.8.10 at least, but the docs aren't more specific about when wxWindow::NewControlId was introduced. If anyone doesn't like this, I'll change it.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7692 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-08-06 14:38:23 +00:00
NeoBrainX c351743986 Some cleanups to the internal Wiimote configuration handling. No functional change.
Patch by lpfaint99.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7691 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-08-06 14:31:40 +00:00
Marko Pusljar 986825124e added hash for free dsp roms (+there is a warning, if panic alert-s are enabled)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7690 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-08-03 17:08:21 +00:00
NeoBrainX 0655ee571d Shader compilation error message modified to contain some helpful information for noobs (includes a reference to the full bad shader dump).
Removed the "Hide Shader Errors" option; hide shader errors if panic handlers are disabled now.
Removed superfluous error messages about shader compilations; display only one error message instead.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7688 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-29 22:18:11 +00:00
Marko Pusljar 81807e3f2c dsphle - fix for 7686
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7687 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-27 23:17:45 +00:00
Marko Pusljar b12631f94c dsphle - Added ucode used by MP1/MP2 (Metroid Prime Trilogy). Audio is not perfect + you need to
replace DOLs to start those games.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7686 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-27 19:10:49 +00:00
Shawn Hoffman fc261b32bf add definitions of some bp mem bits relating to interlacing (no behavior change)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7683 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-18 08:27:30 +00:00
Glenn Rice 7135dba54e Add the DSPTool and UnitTests to the cmake build. They are optional, and to enable them add -DDSTPTOOL and -DUNITTESTS to the cmake command line.
Also, don't check to see if a directory is a wad file.  They aren't.  This removes an annoying and invalid debug assertion with the debug build.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7682 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-18 01:47:55 +00:00
Shawn Hoffman 82b635b799 vs2010: build dsptool again
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7681 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-17 08:38:08 +00:00
Glenn Rice b853d7de3d Oops. Forgot to add the CriticalAlert definitions for windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7679 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-15 16:50:54 +00:00
Glenn Rice a5a45992ad Add a new type of message box (CRITICAL style) which can not be disabled. Then use that message box to display shader compilation errors in the OpenGL backend to maintain consistency with the behaviour of the DirectX backends.
Also fix the wxMessageAlert called from non-gui threads in the WXGTK build to use the passed caption.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7678 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-15 14:49:34 +00:00
Glenn Rice a154df1e7c On linux use the current desktop resolution for the default fullscreen resolution, instead of the hard coded 640x480 resolution.
Also if the OpenGL backend throw a panic alert if the RGB to/from YUYV shaders fail to compile instead of an error log.  If these shaders fail to compile it should be reported.  I am not sure that a panic alert should be thrown in general when any shader fails to compile (as was discussed on IRC).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7677 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-15 02:17:14 +00:00
baby.lueshi 2eb1565aaa Fixed hotkeys not working with the TAS Input dialog open.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7676 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-13 05:53:56 +00:00
DimitriPilot3 bb827eb837 Apply (a variation of) the first patch attached to issue 4608. This should limit the amount of ACL packet loss due to the 200Hz timing (which is now 150Hz if you disable Wiimote Speaker) and the handling of the ACL pool when it's occasionally full (which this improves by dropping one packet instead of letting the "pointers" overlap which would make packets unreachable).
See comment #6 for more details on the changes to WII_IPC_HLE_Device_usb.

In addition to that, rework some comments a bit (such as those from the
original patch; plus Ayuanx's one about maintaining Wiimote timing, which lost
relevance since r7272 which made Wiimote::Update timing independent from IPC
timing), and remove an unused global variable (event for watchdog hack)...

In short, this should address *some* of the Wiimote disconnection and/or "forgotten extension" problems that appeared with r7272 and/or r7394.  To prevent the "ACL queue is full" warnings from appearing (View->Show Log), pay attention to the amount of enabled Wiimotes (use as few as possible, connect the extra Wiimotes only when needed), and make sure to disable the "Disable Wiimote Speaker" option (if unneeded or causing problems) in the game properties.  If possible, make sure to use real Wiimotes instead of emulated ones, as well.
If Wiimotes disconnect forever (and cannot be reconnected using the Alt+Fx hotkeys), open the Wiimote config window, set the faulty Wiimote's type to "None", close/reopen the window, and set the previous Wiimote type back.

Note that it's not a *complete* fix for issue 4608!  This only fixes about half (or maybe third) of the possible causes of this issue...  But at least this should make the accurate Wiimote emulation (I mean, with the limitation of the ACL queue included) more usable in some cases (such as multi-player).
Nope, I didn't (and can't yet) perform in-depth tests on the real hardware myself (unlike some developers), I just rely on the given "accurate" code and numbers (such as the 10-packet limit implemented by godisgovernment)...
Maybe I'll get to fixing other problem "causes" (if I feel like doing it), maybe not in a while...  After all, I have other hobbies, and it's the summer holidays for me...

Anyway, feel free to test and comment.

Update issue 4667
Update issue 4608
Update issue 4604
Update issue 4583
Update issue 4436
Update issue 4353
Update issue 4013

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7675 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-12 15:49:08 +00:00
baby.lueshi ebce13fba7 The read-only movie flag now taken into account for save states. Fixes Issue 4463.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7674 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-11 20:15:05 +00:00
Shawn Hoffman 2b9b4a3306 Make PatchAddEdit complain and not modify entry if fields are invalid instead of just filling in zeros. Fixes issue 4291.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7672 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-09 21:00:30 +00:00
Marko Pusljar d9ad549349 anti-minimize workaround (MainWindowPosX/Y = -32000 prob)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7670 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-07 19:54:47 +00:00
Marko Pusljar cac36b8161 added 1.5x, 2.5x, 4x internal resolution
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7669 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-05 01:11:03 +00:00
pierre 1f2adf0563 VideoCommon: Always update pixel shader constants when tevregs change
This time, it doesn't break the games i tested, and still fixes
Metroid Prime 3 texts/colors.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7668 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-04 13:49:40 +00:00
pierre 951e20ae73 Revert r7665. Breaks about all other games.
Sorry, MP3 users will have to wait a bit longer.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7666 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-03 21:57:49 +00:00
pierre e090a92c7e VideoCommon: Always update pixel shader constants when tevregs change
Fixes texts staying visible and strange colors in Metroid Prime 3.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7665 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-03 20:48:22 +00:00
pierre f7a1fabade Adjust the character counts in the debug views to more closely resemble the original pixel counts
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7664 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-03 20:47:18 +00:00
NeoBrainX 3c10f9f3e9 Various UI and documentation improvements to the GFX debugger.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7661 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-01 20:59:57 +00:00
pierre cedda90477 Improve text positioning in debug views by adding a static pixel offset
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7660 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-01 18:32:18 +00:00
pierre ac62849351 Make the debug views use the actual rendered pixel size of the fonts.
Fixes debug view rendering on non-96dpi displays.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7659 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-01 14:20:33 +00:00
pierre 7b00c2a6f7 PPC-Jit: Fix cache invalidation when doing a memory exception on 64bit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7658 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-30 20:34:44 +00:00
pierre ea95e603b2 JIT: Get rid of SHLs with shifts of 1, 2, 3
Also contains a few other minor jit code optimizations.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7657 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-30 20:25:37 +00:00
pierre 383d12185f JIT: Use RAX instead of INVALID_REG for offsetOrBaseReg in MScaled
Fixes asserts triggering in WriteRex with 32bits.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7656 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-30 19:17:53 +00:00
Marko Pusljar 78529e2eb6 dsp/jit - super super tiny speed up
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7655 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-30 17:31:48 +00:00
LPFaint99 913ca56e03 use same region memcards as the nand title that is being launched
... this patch has been sitting in my working copy for ages :O
fixes issue 4657.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7653 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-30 01:12:45 +00:00
pierre 6cdb40a194 JIT: Add support for memory accesses with scaled index register but without base register
This is mostly useful for removing SHLs by constant 1, 2, 3, which this
commit implements in one place.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7652 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-29 22:40:01 +00:00
pierre 1f170130e8 DSP/Jit: Combine clrp memory writes back to two 32bit writes
This time without the (char*)/(u64*) confusion.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7651 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-29 22:11:39 +00:00
LPFaint99 e5140085ba Wii Save Export no longer requires anything additional to create saves that can be copied to the wii
thanks to shuffle2 for the NG_id, NG_key_id, NG_priv, NG_sig from his wii

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7644 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-27 20:48:15 +00:00
baby.lueshi 4e6d9f930b More features/fixes for the TAS Input plugin. Buttons added to window and input is restricted to the 1st controller only (until multicontroller support is added). Fixed bug with sliders not appearing correctly on Linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7643 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-27 19:44:27 +00:00
LPFaint99 f95bcfc1c2 Wii Save Export can now successfully create data.bin files that the wii will accept as long as the user has their wii's private keys.
requires NG-id, NG-key-id, NG-priv, NG-sig
sorry for not fixing this sooner, I forgot that I cleared my wiis private keys before the initial commit

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7642 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-27 06:19:23 +00:00
Glenn Rice 46b95db6c7 Remove the Danish translation from the build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7636 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-26 16:56:10 +00:00