* almost-complete 2D graphics
* 3D graphics (software renderer) with texturing, alphablending, lighting
* input: keyboard and joystick, touchscreen
* backup memory
* booting from the BIOS
* resizable video output window, preserving aspect ratio of individual screens
How to use
melonDS requires BIOS/firmware dumps from a DS. You can dump them with the following dumper.
The files must be placed in the same directory as the melonDS executable, as follows:
Note: the DS-mode firmware in the 3DS isn't bootable. It only contains the bare minimum required to run DS games. Be sure to enable direct game boot when using a firmware dump from a 3DS.
Emulation: settings related to emulation. For now it lets you enable direct game boot (directly runs the game instead of going through the firmware).
Input: allows you to configure keyboard and joystick input. You can change a mapping by clicking the corresponding entry, then pressing a keyboard key or joystick button. For now, joystick input uses the first joystick available if multiple joysticks are plugged.
Prepare for ultra-wide screens like S8 and G6. See https://android-developers.googleblog.com/2017/03/update-your-app-to-take-advantage-of.html?m=1 Merge: e0fb6c9 d3bfb5c Merge pull request #9511 from LunaMoo/minorUI Refresh bloomHackEnable_ also on resolution change.
InnoSetup: That worked, getting rid of fallback. Now all versions are computed from the git version. (Well, except the Android version when not using gradle)
InnoSetup: Allow specifying the app version externally.
Merge: 12c8e2e c9a5c00 Merge pull request #9501 from unknownbrackets/ui-background UI: Add simple support for a custom background
Allow the output circuit saturation to take place at cases where one of the output circuit is enabled with frame mode rendering, I'm not sure it would be safe to allow saturations when both of the output circuits are enabled with frame mode rendering. Unlike field mode rendering, frame mode doesn't use identical rectangles at same co-ordinates for output in two alternating fields and potentially they could use a much bigger output size when both of the output circuits are enabled and are separated without any intersection. So let's limit the saturation to only the cases where we detect a single output circuit for frame mode rendering.
Fixes a regression in Devil May Cry 3 and Sky Gunner.
mamedev has released its new mame as its the last wednesday of the month, and as usual its what's new is a long list of changes and additions.
Here's what they have to say:
Well, it’s the last Wednesday of the month, and I hope you know what that means: it’s time for your regularly scheduled MAME release. There aren’t a huge number of new working machines in this release, but there are some significant improvements. Thanks to kazblox, MAME now emulates some of the peculiarities of Famicom clone hardware, and thanks to shattered, emulation of the Agat-7 Apple II clone is improved. Peter Ferrie provided a superior Apple II language card implementation. We’ve got lots of additions to the BBC and PC software lists from Nigel Barnes and darkstar.
We’ve made substantial improvements to some of MAME’s non-emulation features. The -romident verb is now much faster when used on a folder or archive containing multiple files, and will identify ROMs for emulated slot devices that aren’t inserted by default. The -listxml output now includes all linked devices, and is produced at least 30% faster. We’ve also improved -verifyroms so it covers more devices and is faster when verifying ROMs for a subset of drivers/devices.
MAME 0.184 includes support for plenty of newly dumped versions of supported arcade games, including a rare US prototype of Shanghai III, the world release of Super Crowns Golf, a version of Flashgirl that shows the Kyugo logo, a German version of Raiden II, the Japanese release of Radical Radial, and bootlegs of Bomber Man and Phoenix. There are also several new chess computers, and even more Aristocrat Mark V gambler sets. If you’re interested in the TI-8x graphing calculators, it’s now possible to get an emulated TI-82 or TI-85 to communicate with another emulated instance or with a program running on the host computer over a socket.
You can get the release and source from the usual download page.
Fifo: Remove unnecessary integral casts
MEGASignatureDB: Minor changes
SignatureDB: Support for WiiTools MEGA files added
IOS/ES: Handle imports more accurately
Fix issues introduced by cpp-optparse on Windows
BitField: Minor cleanup
Initial support for Haiku.
VideoInterface: Minor changes
VertexLoader: Return debug strings by value
Fifo: const correctness
Generate Symbols From menu added
libusb fixes (mostly for IOS)
gsdx: Add an automatic CRC hack level
If a user switches renderer they also have to remember to change the CRC
hack level for the best user experience with the selected renderer.
This commit adds a new automatic CRC level that autoselects the
recommended CRC level for the selected renderer, so that a user doesn't
have to make the change manually.
gsdx: Add template version of GetConfig
It allows static_casts to be avoided for enum classes
gsdx: Improve OpenGL HW renderer checks
If OpenGL software is the saved ini renderer and F9 is pressed to toggle
to the hardware renderer, depth emulation will be disabled. This fixes
gsdx: Store the current renderer in GSdxApp
gsdx: Move renderer config loading from GSOpen2 to _GSOpen
Some duplicate logic is avoided this way.
GSdx ogl: SSO Workaround for AMD buggy drivers (#1858)
GSdx ogl: SSO Workaround for AMD buggy drivers
All 2017 drivers are now blacklisted.
The BSOD/crash issue is still there so don't set Blending Accuracy to None!
Shortened the message in the console making it more appealing.
LukeUsher has started a patron page for the emulator cxbx-reloaded, and has this to say:
Cxbx-Reloaded is a work-in-progress Xbox Emulator for Microsoft Windows. Thanks to recent developments, it now boots more titles than ever before and is finally making progress at a steady rate. This is very exciting, but there is still a lot of work to be done.
Money received will go towards funding myself to spend more hours working on Cxbx-Reloaded, purchasing games to test, and purchasing equipment required to further develop the emulator.
So if you want to back this emulator of the original xbox, then its worth checking out, plus there are several videos of work in progress games, if that doesn't encourage you to donate :)
Implement support for real Xbox keys
Merge pull request #264 from LukeUsher/memory-manager
Restore DefaultLaunchDataPage check
Merge pull request #281 from jarupxx/xdk3925
Revert the D3DDevice_GetTexture (3925). This function is not implemented.
Modified the EmuD3DDeferredRenderState patchOffset (3925)
Merge branch 'master' into master
For textures with at least one small dimension, the block can be larger than the actual width/height.
Fix mounting bdvd when elf in subdirectory
rsx: Fix depth clears on z16 surfaces without stencil
convert string to wxString
minor fixes to gameViewer
Merge: 67fb745 32a07b9 Merge pull request #9509 from hrydgard/secondary-replace-fix If an entry already exists in the secondary texture cache, delete it properly
Texcache: Sprinkle comments on the secondary cache.
If an entry already exists in the secondary texture cache, delete it properly. Fixes #9503
Merge: 576c1b7 10f144e Merge pull request #9505 from hrydgard/remove-gl-bgra-path Remove BGRA path from GLES.
Merge: be7c98c 04e1e1a Merge pull request #9506 from xebra/fix_hwtess_gles GLES:Fix compatibility checks for instanced rendering.
Merge: 13c7241 562288b Merge pull request #9504 from unknownbrackets/gameinfo-race UI: Refactor game icon/bg loading
Merge: 43d0a2b bc31415 Merge pull request #9502 from unknownbrackets/texcache-secondary Texcache: Fix "reuse changed textures"
Texcache: Fix "reuse changed textures". Broken by 9876365, which stopped generating new texture names/ptrs.
UI: Refactor game icon/bg loading. This also default-initializes the atomic flags, which seems to fix a race condition I was sometimes experiencing with missing icons.
GLES:Fix compatibility checks for instanced rendering.
IOS/ES: Move shared content map, uid.sys code
Fix incomplete Core.vcxproj.filters end-tag
Jit64: Fix crash at startup
Fix wrong address in zz_ symbol name
WiimoteEmu: refer to settings by name, not index
InputConfigDiagBitmaps: add switch empty cases (fixes warning)
UnitTests: use EXPECT_TRUE/EXPECT_FALSE (fixes warnings)
EGL: Fix missing-braces warning
TextureCacheBase: Convert bound_textures from a C array to a std::array
SDL Multi Window - Window for Screen and DRC
kernel: Take .thrbss into account when calculating TLS size.
Merge pull request #399 from takhlaq/meme
Merge pull request #402 from CarlKenner/natvis
Add be_val and VS magic numbers to natvis.
Add Visual Studio debugger natvis for BigEndian types.
Add simple divide to get kbytes
vk: Minor fixes to vertex counting and lower exception to notice if var does not exist
Move module in correct path
Append the PlatformToolset parameter for VS2015
fix a typo of copy_setup_h.vcxproj
Merge branch master into master
Register HLE libmedi, cellCrossController, cellSysutilNpEula
gl/vk: Fix stencil ops
Merge branch master into misc-fixes
Check for invalid arguments
implement getSizeKB functions
Check for invalid arguments in recvfrom
Merge branch master into master
implement getSizeKB functions
Add check for invalid arguments in recvfrom
Merge: 6a88d6c bb39c2e Merge pull request #9500 from unknownbrackets/texcache Texcache: Rehash textures after mem invalidation
Texcache: Rehash textures after mem invalidation. Before, we were doing this when we enqueued. We need to at least do this when an invalidation is triggered.
Texcache: Cleanup last bound tex invalidation. When we are deleting, we are always about to bind a new tex.
gradle: Avoid catch-22 where you cant change the config when it starts out at release (sync needs to pass)
Merge: b76389c cf37da4 Merge pull request #9496 from unknownbrackets/idle-timing Core: Reduce frame idle delay
Merge: 33db883 1fdf7c5 Merge pull request #9497 from unknownbrackets/ui-minor UI: Skip game bg lookup without game
Core: Reduce frame idle delay. Otherwise we only have a single vblank of time left. Sometimes thats not enough. Effectively, this makes us only sleep one vblank at a time.
UI: Skip game bg lookup without game. This avoids trying to identify a file without a name.
MMU: rewrite loop to avoid warning
JitAsm: Use stored_stack_pointer instead of s_saved_rsp
EmuCodeBlock: Place ConvertDoubleToSingle temporaries on the stack
Automatic translation resources sync with Transifex
IniFile: Minor changes
Clarify the log message for unknown Wii Menu regions
DVDInterface: Update comment about buffer speed
BitUtilsTest: compare ints of the same signedness (fixes warnings)