Commit Graph

4910 Commits

Author SHA1 Message Date
rogerman 0ac489ade1 Cocoa Port:
- Fall back to using a legacy OpenGL context if the GPU driver rejects initializing a 3.2 Core Profile context.
2015-03-15 06:46:49 +00:00
rogerman d59ead2b51 Cocoa Port:
- Update UI tooltips to reflect current knowledge of DeSmuME’s behavior.
- Move the 3D Rendering Settings tab in DeSmuME Preferences from Display to Emulation.
2015-03-14 21:11:40 +00:00
rogerman 60d0726a2a Cocoa Port:
- Fix bug where the mic level value wasn’t being displayed correctly on OS X v10.5 Leopard.
- Remember the sound output volume setting between app launches.
2015-03-12 23:01:00 +00:00
rogerman e3fdd8f7f2 Cocoa Port:
- Update copyright year.
2015-03-11 07:28:15 +00:00
rogerman 2cee9a1eb9 Cocoa Port:
- Fix bug where the frame wouldn’t update itself when starting/stopping GDB stub, frame advance, or frame jump under certain conditions.
2015-03-11 06:36:33 +00:00
rogerman af1c434727 Cocoa Port:
- Fix bug where the mic level thresholds were based on the peak value instead of the average value.
2015-03-11 04:55:24 +00:00
rogerman 76b9689bf2 Cocoa Port:
- All display window settings panels now show the window number of the corresponding display window.
2015-03-11 03:45:51 +00:00
rogerman e893c4eab5 Cocoa Port:
- Include SoftRasterizer’s Fragment Sampling Hack setting in the troubleshooting report.
- Misc. UI changes/fixes.
2015-03-10 19:41:04 +00:00
rogerman fa4d2cb58f Cocoa Port:
- Add the Microphone Settings panel for easier control and more verbose info. The new panel also allows the user to change and monitor mic settings without needing a display window's status bar.
- Implement a more proper mic level UI that reports the level per frame instead of per sample. This should improve UI performance.
- Make all methods in the CocoaDSControllerDelegate protocol optional and remove all related protocol methods from the OpenEmu plug-in.
- Try attaching a new hardware input device on startup.
- Remove debug printf stuff when attaching a new hardware input device. The new Microphone Settings panel makes the extra printf stuff unnecessary.
- Remember the hardware mic mute setting between app launches.
2015-03-10 08:53:59 +00:00
rogerman d0ec648952 Cocoa Port:
- Fix some UI bugs with mic level checks where the mic status icon wasn't showing the correct color under certain conditions.
- Fix UI bug where the mic mute control wasn't being respected under certain conditions.
- The mic status icon now includes a tooltip that reports the name and sample rate of the current input device.
- Handle mic hardware state changes more gracefully when the input device is changed externally.
2015-03-09 21:49:22 +00:00
rogerman 381324ca09 Cocoa Port:
- Add full support for using hardware microphones on the host machine for emulating the NDS microphone. Finally, mic driven games, such as Nintendogs, are fully playable on the Mac!
- Display windows no longer include an output volume slider directly in the status bar. Instead, the slider has been moved inside a popup button, which now behaves just like OS X's volume menu. This was done for better space efficiency.
- Display windows now include a microphone icon alongside the output volume icon. Like the output volume, there is a slider control to adjust microphone gain and also a mute control.
- The microphone icon changes color depending the microphone's state (as seen by the NDS, not the host).
- Replace the existing microphone icon with one that looks better and is more modern.
- Adjust the size of the output volume icon from 20x20 pixels to 16x16 pixels.
- Fix yet another font rendering bug in the Input Profile viewer on OS X Yosemite.
2015-03-08 09:41:19 +00:00
rogerman 64ea7591ab Cocoa OpenEmu Plug-in:
- Update to SDK v1.0.4.
- Change the SPU sync method to N-method.
- Fix bug where the enable state of cheats could not be toggled.
2015-02-25 05:50:15 +00:00
rogerman 7d87434a21 Cocoa Port:
- Max out the core emulation thread's priority. This improves the overall timing accuracy of the emulator.
2015-02-24 21:33:11 +00:00
rogerman df96846915 Cocoa OpenEmu Plug-in:
- Fix compiling issue.
2015-02-21 20:37:55 +00:00
rogerman 83578add74 Cocoa Port:
- Completely revamp the ROM Info panel to have a more modern and mainstream look and feel.
- The ROM Info panel can now be resized and scrolled through.
- Each individual info section in the ROM Info panel can now be expanded or collapsed.
- Fix bugs where the ROM capacity and ROM used capacity info weren't being calculated correctly.
- Do a bunch of random UI text clipping fixes when running on OS X Yosemite.
2015-02-20 22:18:08 +00:00
rogerman 06ece0cb07 Cocoa Port:
- Do a major revamp of the File Migration Assistant. It has been renamed "Game Data Migration Assistant". All following notes will pertain to the new Game Data Migration Assistant.
- Files no longer appear in a single list. They are now organized by app version and file type.
- Users can now select multiple files at once by clicking the checkbox of their corresponding app version or file type.
- File selection is much smarter. If the same file exists in multiple versions, then if the user selects one version of a file, all other versions of that same file are automatically deselected. This also works in multiple selection cases.
- Remove the Select All and Select None buttons. With the smarter selection UI, these buttons are no longer necessary.
- Provide better user feedback when no files need to be migrated.
- Rework the outline view to be more space efficient.
2015-02-18 05:48:25 +00:00
rogerman 634d1ba89b Cocoa Port:
- Fix font rendering weight of the Input Preferences view when running on OS X Yosemite.
2015-02-17 19:52:44 +00:00
rogerman 697c91d99a Cocoa Port:
- Fix bug where changing a display window's pixel scaler while in Touch mode would sometimes cause a crash.
- Do some minor code cleanup.
2015-02-15 09:00:45 +00:00
rogerman cfb408d63b Cocoa Port:
- Fix bug where switching between CPU-based and GPU-based filters in the DeSmuME Preferences display preview would sometimes fail.
- Fix bug where the DeSmuME Preferences display preview would show incorrect colors when using a CPU-based filter on PowerPC Macs.

Video Filters:
- Fix bug where the Scanline filter would show incorrect colors on big-endian systems.
2015-02-15 02:14:29 +00:00
rogerman 5254d7143a Cocoa Port:
- Fix some compiling issues if the C++ standard library is set to libc++ w/ C++11 support instead of libstdc++.
- Fix some compiling issues if compiling on OS X Leopard w/ Xcode 3.1.4.
2015-02-14 02:26:02 +00:00
rogerman d83b1a260c Cocoa Port:
- Fix another freeze on app exit when running on OS X v10.5 Leopard.
2015-02-12 09:02:04 +00:00
rogerman 782447e115 Cocoa Port:
- Fix the behavior of the Display Preferences filter preview.
- Fix an intermittent crash that sometimes occurs when creating a new display window.
- Fix a rare and mysterious crashing bug that sometimes occurs when initializing the HQ4x LUT.
2015-02-11 12:03:47 +00:00
rogerman afa4d57545 Cocoa Port:
- Fix a longstanding bug where audio frames were accidentally getting dropped when using N-sync and Z-sync methods. Greatly improves the audio quality of the N-sync method.
- Now that N-sync actually works as intended, it is now the default sync method. (N-sync has much better latency compared to the other sync methods, especially compared to P-sync, which was the previous default.)
- Update sync method tooltips to better reflect their actual behavior.
- Fix UI bug where the Advanced SPU Logic control text would get truncated on OS X Yosemite.
2015-02-11 01:47:31 +00:00
rogerman 2ff7821e85 Cocoa Port:
- Update the SLOT-1 Manager UI to be more consistent with the SLOT-2 Manager.
- Add some more options to the SLOT-1 Manager's ROM action menu.
2015-02-08 05:44:47 +00:00
rogerman a8ef76f07b Cocoa Port:
- Store the HQnx LUTs on the heap instead of on the stack. Fixes app builds from the Xcode 3 project, where the default stack size is smaller than when using the latest Xcode. (Regression for r5087.)
- Update Xcode 3 project so that builds actually work. (Regression from r5070.)
2015-02-06 19:40:41 +00:00
rogerman 453baff89c Cocoa Port:
- Refactor the OpenGL blitter to work with 3.2 Core Profile contexts.
- Simplify some of the init code.
2015-02-05 21:36:13 +00:00
rogerman baeb5313d2 Cocoa Port:
- Add shader-based equivalents to the following pixel scalers: 2xBRZ, 3xBRZ, 4xBRZ, 5xBRZ. (And yes, these are exact GLSL ports of Zenju's xBRZ scalers, not Hyllian's xBR scalers. These shaders are very demanding on your GPU, so users with older GPUs may want to continue using the CPU-based versions instead.)
- Add a preliminary GPU tiering system to help detect GPU capabilities and allow for better optimizations to be used on newer GPUs.
- Do some optimizations to the following shaders: Bicubic B-Spline, Bicubic Mitchell-Netravali, Lanczos3, EPX.
- Change the shader-based EPX+ color comparisons to be more true to the original CPU-based algorithm.
- Improve color blending on the Deposterize shader.
2015-02-04 01:22:13 +00:00
zeromus f0bef635c2 try to fix some winport joystick hotkey bullcrap for >1 attached joysticks 2015-02-02 19:16:34 +00:00
rogerman 928004e13e GFX3D:
- Fix possible invalid memory access crashes when Y-sorting, most notably, in Super Mario 64 adventure mode. Using std::stable_sort() instead of std::sort() should have little to no performance impact since we're not sorting a lot of elements here. (Regression from r2436.)
2015-01-26 19:46:34 +00:00
rogerman 3abfa637b4 Cocoa Port:
- Initialize the HQnx LUTs only once, instead of doing it per display window.
- Fix issue where the HQnx LUT init code was causing extremely long compile times. (Regression from r5087.)
2015-01-26 05:22:43 +00:00
rogerman c233b1c14f Cocoa Port:
- Add shader-based equivalents to the following pixel scalers: LQ2x, LQ2xS, HQ2x, HQ2xS, HQ4x, HQ4xS
2015-01-25 01:43:37 +00:00
rogerman 1041fe8e3a Video Filters:
- Fix bug where the LQ2xS pixel scaler was using the same code as LQ2x.
- Change LQ2xS brightness thresholds so that LQ2xS actually works as intended.
2015-01-23 18:34:51 +00:00
rogerman 9849a88269 Cocoa Port:
- Fix bug where using Deposterize with a CPU-based pixel scaler would make the video fail to update. (Regression from r5083.)
2015-01-21 02:53:45 +00:00
rogerman 81772f1906 Cocoa Port:
- Oops! Missed some files that should've been committed in r5083. (Regression from r5083.)
2015-01-21 02:15:38 +00:00
rogerman d880c58f75 Cocoa Port:
- Read the GPU_screen buffer directly and avoid making multiple copies of it. Improves performance when many display windows are used.
2015-01-21 02:09:59 +00:00
yki 245586a978 gtk-glade port: Added gdbstub_mutex_init() and destroy() to src/gtk-glade/main.cpp. Now it should be in all ports. 2015-01-17 21:38:06 +00:00
rogerman 6724ce53e3 Cocoa Port:
- Fix crashes from illegal memory accesses when a display window is set to Touch mode. (Regression from r5079.)
2015-01-17 19:51:04 +00:00
yki e714ce9e20 GDB stub:
- Added CPU mutex functions gdbstub_mutex_init/destroy/lock/unlock, which govern access to NDS_ARM9 and NDS_ARM7 structs.
- Added locking and unlocking of the mutex to gdbstub.cpp/processPacket_gdb() and NDSSystem.cpp/NDS_exec()
Cocoa, CLI, GTK, Windows ports:
- Added mutex initialization and destruction to main() functions (cocoa/cocoa_core.mm, cli/main.cpp, gtk/main.cpp, windows/main.cpp)
2015-01-17 15:37:33 +00:00
rogerman 0754569c17 Cocoa Port:
- Have video from CPU-based pixel scalers transfer to GPU via DMA. Should improve performance on pixel scalers with large scaling sizes, such as HQ4xS and 5xBRZ.
2015-01-17 00:53:25 +00:00
rogerman 9329a961f2 Video Filters:
- Add method VideoFilter::SetDstBufferPtr() - allows users to use their own destination buffer instead of having to use the VideoFilter object's internal buffer.
2015-01-17 00:16:29 +00:00
rogerman 433d263b4e Qt Port:
- Fix compiling issues. (Regression from r5068.)
2015-01-16 22:06:11 +00:00
zeromus 37ee317415 clean up sleep hack 2015-01-15 21:48:27 +00:00
rogerman d0aeee71dd Cocoa Port:
- Fix GDB stub functionality in the optimized dev+ build.
2015-01-15 01:18:33 +00:00
rogerman 7b096b400f Glade Port:
- Fix compiling issues. Updates to latest code structure changes. (Regressions from r1031, r5061, r5068.)
2015-01-14 21:02:00 +00:00
rogerman aef36c1949 Cocoa Port:
- Silence some compiler warnings.
- Do some tiny code cleanup.
2015-01-13 05:17:39 +00:00
rogerman acc22b29cb Cocoa Port:
- Fix Latest build. (Regression from r5070.)
2015-01-13 05:10:29 +00:00
rogerman 402434fe19 Cocoa Port:
- Delete the Legacy Cocoa port. (Not only was the Tiger build broken in several ways, but all features from the Legacy port have been subsumed into the main Cocoa port now. Therefore, the Legacy port is no longer necessary.)
- Remove the "Xcode 4" and "Xcode 5" project files. These files have been superseded by the one project file "Xcode (Latest)".
2015-01-13 04:15:07 +00:00
rogerman 3e96459aea Cocoa Port:
- Fix building for the OpenEmu Plug-in build target.
- Enable PGO. (Xcode 6 and later only.)
- Do some misc. build tweaks.
2015-01-13 03:52:49 +00:00
rogerman 8fefb4fb7a Core:
- Do a massive cleanup of the #include and header structure.
- Remove a lot of unnecessary dependencies in the headers.
- Make headers responsible for including what they need for themselves. This makes the headers more independent of where they are in the #include order.
- Relocate some structs/classes to more logical locations.
- Clean up some platform-specific #ifdef stuff.
2015-01-10 02:04:18 +00:00
rogerman d5ab656090 GTK Port:
- Fix compiling issue. (Regression from r5061.)
2015-01-04 21:18:48 +00:00