Commit Graph

5117 Commits

Author SHA1 Message Date
rogerman 3771d2a76d GPU:
- Begin the process of applying SSE2 optimizations to BG layer compositing.
- In this revision, only Text mode layers use the new SSE2 optimizations. Other BG layer modes have yet to be implemented.
2016-01-30 03:07:11 +00:00
rogerman f1172fe5c8 Render3D:
- Further optimize SSE2 versions of FlushFramebuffer().
2016-01-21 02:47:56 +00:00
rogerman 90e9947da9 GPU:
- When compositing the BG layers, provide a hint for when blending is disabled.
2016-01-18 19:21:06 +00:00
rogerman 0ff9773eaf GPU:
- Replace _mm_set1_epi64x() with _mm_set1_epi32() where appropriate.
- Complete GPUEngineBase::_RenderPixel_SSE2() method.
- Fix potential bug with window checks in GPUEngineBase::_RenderPixel3D_SSE2().
- Do some minor code cleanup.
2016-01-09 23:12:41 +00:00
rogerman a1280789db GPU:
- Avoid doing scalar lookups in the SSE2 portion of GPUEngineBase::ApplyMasterBrightness().
2016-01-05 22:06:55 +00:00
rogerman 76ba4e164d GPU:
- Do SSE2 optimization when compositing the 3D layer.
- Add SSE2 optimized version of GPUEngineBase::_RenderPixel() for future use (currently inactive).
2016-01-05 04:12:36 +00:00
rogerman a4972abe61 Linux Port:
- Fix compiling for GTK and Glade ports.
2016-01-04 23:12:40 +00:00
rogerman abd4704711 GPU:
- Do some code cleanup.
2016-01-04 21:54:00 +00:00
zeromus 69ee626639 winport - fix crash on startup with clean ini file 2015-12-11 01:22:00 +00:00
zeromus bc84d6930b fix DD display method bombing when using high prescale and magnification filter levels 2015-12-09 06:25:11 +00:00
rogerman a738364416 Cocoa Port:
- Fix crash when loading invalid ROM header data.
2015-11-15 06:08:32 +00:00
rogerman 4d32f051ab Render3D:
- Explicitly make the Render3D class allocate itself with a cache-aligned base pointer. Fixes SSE2-related alignment crashes with OS/compiler combinations that don’t 16-byte align the base pointer for you.
2015-11-09 03:46:14 +00:00
zeromus af00e3b3f3 clarify how a jit function table is declared, which has implications on whether a giant 256MB static buffer is allocated, which is causing problems when desmume is loaded as a DLL in 32bit systems. shouldnt affect the main windows or cocoa ports, but will cause other ports to take a different (safer and speed indeterminate) codepath. Build scripts must now make a choice to opt into the riskier behaviour. 2015-11-08 08:09:54 +00:00
zeromus dc3d1945af win32 - fix crash in some display methods when emulator boots up 2015-11-06 01:57:46 +00:00
zeromus 40fd9c2385 winport - fix bug in AR during fullscreen, and fix long-standing bug with white rectangle in bottom right of DD display method when letterbox area is shown 2015-11-01 14:29:42 +00:00
rogerman c40374df16 Cocoa Port:
- When clicking one of the Save Settings as Default buttons in one of the settings panels, force the user defaults file to synchronize immediately. This fixes updating the user defaults file on OS X v10.11 El Capitan.
- Fix bug where video settings wouldn’t update immediately while the emulation is paused. (Regression from r5310).
- Fix bug where if a ROM is unloaded, the previous video frame would remain instead of blacking out as intended. (Regression from r5310).
2015-10-29 06:40:54 +00:00
rogerman 2fbd0685d1 Cocoa Port:
- Add support for displaying the CPU load average in the HUD.
2015-10-28 05:29:17 +00:00
rogerman bb6fe7d06b Cocoa Port:
- Fix bug where using Frame Jump or executing the emulation faster than 1.00x would cause the execution speed to be limited by Vertical Sync.
- Do some code cleanup on CocoaDSOutput.
- Expand the text box further when the RTC is shown.
2015-10-25 02:11:09 +00:00
rogerman 11403180db Windows Port:
- Fix crashing bug with the OAM Viewer tool.
- Improve the sprite drawing performance of the OAM Viewer tool.
2015-10-21 06:09:52 +00:00
zeromus 3c85700c5c fix error in arm7 memorymap mask for IO regs (permitted errant register accesses from clobbering outside the regs buffer) 2015-10-21 04:34:30 +00:00
rogerman 3eb0585129 Cocoa Port (OpenEmu Plug-in):
- Fix crashing bug when initializing the plug-in.
- Update to the latest version of the OpenEmu SDK.
2015-10-20 07:01:07 +00:00
rogerman dd305b36d9 Cocoa Port:
- Add support for displaying the Real-Time Clock in the HUD.
2015-10-16 21:26:52 +00:00
rogerman a6a1875e05 Cocoa Port:
- New feature: Add OpenGL-based Heads-Up Display.
2015-10-16 07:28:42 +00:00
rogerman 57929ed232 Cocoa Port:
- Fix compiling by removing some future code that accidentally snuck into r5306.
2015-10-14 18:08:36 +00:00
zeromus 5b1a6e2cd9 fix vc2015 build flag on x64 dev+ 2015-10-14 07:52:07 +00:00
rogerman 9988ed1293 Cocoa Port:
- Fix bug where using one of the View > Display Size menu options would fail to work if the window’s resize grip was used previously.
2015-10-13 19:43:40 +00:00
rogerman 793f19d47e Cocoa Port:
- Fix some compiler warnings.
- Delete some legacy strings which are no longer used.
2015-10-12 20:06:33 +00:00
rogerman 4eedbca3d9 GPU:
- Fix display capture copy mode colors on big-endian systems.
2015-10-10 22:56:28 +00:00
rogerman 21d9294697 Cocoa Port:
- Fix some compatibility issues with OS X v10.5 Leopard.
2015-10-10 20:16:46 +00:00
rogerman d9cc320c4e GPU:
- Fix bug with horizontal offsets. (Regression from r5295.)
- Fix display capture blend mode colors on big-endian systems.
2015-10-10 19:53:29 +00:00
zeromus 1fc6cbdec2 split processing of internal cheats from AR cheats, and process AR cheats more correctly when an ARM7 IRQ happens 2015-10-10 09:55:06 +00:00
rogerman 18caac989b MMU:
- Fix writing to the sub engine’s MASTER_BRIGHT register. Fixes the touch screen display output for “Pirates of the Caribbean: At World’s End”. (Regression from r5261.)
2015-10-10 02:19:51 +00:00
rogerman f05eb523c1 GPU:
- Loosen the restriction on what constitutes “set mosaic values”, just to be safe. (Related to r5299.)
2015-10-09 21:00:01 +00:00
rogerman d885c383b2 GPU:
- Also skip mosaic rendering if the mosaic values themselves aren’t set.
2015-10-09 20:45:49 +00:00
zeromus f69a3738ae move AR cheats to arm7 bus 2015-10-09 10:01:16 +00:00
rogerman 9cd43cc115 GPU:
- Use restrict pointers where appropriate.
2015-10-08 01:15:12 +00:00
rogerman 61e8cfb063 GPU:
- Account for the fact that extended palette mappings can change independently of the BGnCNT register. Fixes the BG3 layer in Phoenix Wright: Ace Attorney. (Regression from r5286.)
2015-10-06 17:13:24 +00:00
rogerman ec539cba02 GPU:
- Fix a bunch of graphical corruption regressions on big-endian systems.
- Also fix rotation/scale sprite colors and the 3D clear color on big-endian systems.
2015-10-06 01:14:44 +00:00
zeromus 3308d5b28e winport - fix bugs in fullscreen viewport sizing 2015-10-04 18:12:14 +00:00
rogerman 60ea6fe7d5 GPU:
- Fix compiling issue with non-SSE2 builds.
2015-10-03 17:59:20 +00:00
zeromus 216d36d292 winport - dump avis with selected prescaleHD 2015-09-30 23:30:44 +00:00
zeromus b0131342d4 winport - fix a bunch of sloppy broken stuff related to runtime changing of prescale and filtering 2015-09-28 08:34:21 +00:00
zeromus 15b6e7dbea fix crashing of some magnification filters by allocation way too much memory. why wasn't this done long ago? 2015-09-27 22:15:25 +00:00
rogerman 6536230867 Cocoa Port:
- In the Support Request Form and Bug Report Form, update the reported configuration to reflect the current 3D rendering features.
- Do some minor code cleanup.
2015-09-24 21:45:53 +00:00
rogerman 9f04d9076a GPU:
- Auto-resolving the native framebuffer is now only performed if the frame isn’t skipped.
- Add some callback routines for the beginning and ending of rendering a frame, and for the beginning and ending of rendering the 3D layer.
2015-09-24 05:05:06 +00:00
rogerman f3fd4e2ebc GPU:
- Autoresolving the native framebuffer is now performed at the end of line 191 instead of at the end of V-Blank.
- Do misc. code cleanup.
2015-09-23 21:22:25 +00:00
rogerman 9c5f355d00 GPU:
- Better organize BG layer states.
- Do a bunch of other code cleanup.
2015-09-22 22:45:20 +00:00
rogerman d5cf747ce4 GPU:
- Begin unifying pixel rendering. Rendering the BG and OBJ layers now use the same method.
- Pass the destination buffer pointer and line index by means of function parameters, instead of using object variables.
- Rendering a BG layer (for debugging purposes) is now completely handled in the core code.
- Do some other code cleanup.
2015-09-22 01:00:37 +00:00
zeromus e4195c9277 try to fix some gfx3d savestate bugs, but its all kind of a mess. 2015-09-21 21:51:36 +00:00
zeromus 0535b9f874 winport - fix layout/scaling of HD windows in some cases 2015-09-21 21:13:13 +00:00