Cemu is a Nintendo Wii U emulator that runs commercial games. Highly experimental software to emulate Wii U applications on PC.
Cemu v1.8.2b Changelog:
# New in 1.8.2b:
CPU/JIT: Fixed crash that could occur during instruction analysis
misc: Added some exports for Cemuhook
# New in 1.8.2:
general: Any .rpl files placed in cafeLibs/ directory will be loaded instead of the internal HLE modules (experimental feature, no real use yet)
general: Cemu window can now be resized
CPU/JIT: Fixed a bug in recompiler SRWI instruction
CPU/JIT: Fixed a bug that could cause the recompiled code to skip an instruction if the thread was switched between the beginning of a loop and an inlined function
CPU/JIT: Added STBUX instruction to recompiler
CPU/JIT: Several other optimizations for the recompiler:
Use AVX non-destructive 3-operand instructions to optimize some copy operations away
Delay/Avoid endian-swapping between LWZ/STW if the data is not used for any other operation
Generate shorter code for BCTRL, BL, BLR and other far branches (2 instructions, only 1 for far branches with no LR update)
Replace branches with conditional moves (CMOVcc) if possible
Avoid redundant FPR loads and stores
Better detection for situations where x64 flags can be used instead of testing CR bits
Avoid extra work of thread scheduling checks in tight non-infinite loops
coreinit: New API OSTryAcquireSpinLockWithTimeout(), OSSwitchFiberEx(), MCP_Open(), MCP_Close()
coreinit: More accurate emulation of foreground bucket memory and it's subregions
coreinit: FSOpenDir() no longer ignores the current working directory
coreinit: Fixed integer overflow in OSTicksToCalendarTime()
AX: Added AX voice debugger
AX: Fixed biquad filter
AX: New API AXSetVoiceSamplesAddr(), AXSetVoiceLoopOffset()
GX2: Improved detection of changed data for typical screen-size textures in texture cache (fixes softdec videos)
GX2: Fixed invalid GLSL code being generated for 3D texture access with offset
GX2: Fixed bug in indices generation for PRIMITIVE_RECTS
GX2: Fixed a bug where adding entries to a shader cache .bin archive would sometimes have no effect (causing Cemu to recompile the affected shaders everytime)
GX2: Various smaller optimizations throughout the graphic backend (performance gain 1-3%)
GX2: Added support for tileMode filter in graphic packs texture rules (Useful to exclude video frames or other CPU-accessed textures)
GX2: Aspect ratio calculation now uses effective size of texture (after graphic pack rescaling) rather than original size
MAME stands for Multiple Arcade Machine Emulator. When used in conjunction with images of the original arcade game's ROM and disk data, MAME attempts to reproduce that game as faithfully as possible on a more modern general-purpose computer. MAME can currently emulate several thousand different classic arcade video games from the late 1970s through the modern era.
What's news in MAME:
MAMETesters Bugs Fixed
- 05900: [Sound] (ddenlovr.cpp) funkyfig, funkyfiga: Missing music and partial sound FX (Ivan Vangelista)
- 06261: [Sound] (polepos.cpp) polepos2: Crowd Cheering sounds are messed up at the chequered flag (goal). (Robbbert)
- 06370: [Save/Restore] (vegas.cpp) sf2049se, sf2049te: Crashes on reload (-str 8) in a staggered -str 20 run (Ted Green)
- 06562: [Crash/Freeze] All sets in octopus.cpp, zorba.cpp: Fatal Error when using various terminal/printers in slots
- 06564: [Crash/Freeze] (ti99_4x.cpp) All sets in ti99_4x.cpp, ti99_4p.cpp: SuperAMS memory expansion card (samsmem) Fatal Error
when mounted (Ivan Vangelista)
- 06581: [Interface] Various problems with software loading/unloading: Various problems with software loading (Nathan Woods)
- 06588: [Interface] Regression loading softlist items from the command line with changed slot options (Nathan Woods)
- 06592: [DIP/Input] (nbmj8891.cpp) chinmoku: DSW B should not exist. (Robbbert)
- 06613: [Crash/Freeze] (rohga.cpp) schmeisr: Exception on exit (David Haywood)
- 06620: [Crash/Freeze] (itech8.cpp) ninclown: During final boss Twisto the game can potentially crash (Phil Bennett)
- 06624: [Misc.] (mc10.cpp) Emulation of the right-shift and rotate instructions (ASR, LSR, ROR) do not correctly modify the
overflow flag (V) (AJR)
- 06627: [Sound] (segas32.cpp) kokoroj2: Missing voice in game (Arzeno Fabrice)
- 06631: [Sound] (vgmplay.cpp) vgmplay: Attempting to play a .vgm/.vgz file containing 2 X POKEY does not play back correctly. (AJR)
New working machines
A-One Arrange Ball/Tandy Zingo/LJN Computer Impulse [hap, Sean Riddle]
Blades of Steel (Konami handheld) [hap, Sean Riddle]
Bucky O'Hare (Konami handheld) [hap, Sean Riddle]
Double Dragon (Tiger handheld) [hap, Sean Riddle, Kaede]
Gauntlet (Tiger handheld) [hap, Sean Riddle]
Go Go Cowboy (English, prize) [Brian Troha, Ryan Holtz, Smitdogg, The Dumping Union, Luca Elia]
INTELLEC 4/MOD 4 [Vas Crabb]
INTELLEC 4/MOD 40 [Vas Crabb]
Legend (SNES bootleg) [ShouTime, MetalliC]
Milton Bradley Arcade Mania [hap, Sean Riddle]
Sonic The Hedgehog (Tiger handheld) [hap, Sean Riddle]
Space Jam (Tiger handheld) [hap, Sean Riddle]
New working clones
Act-Fancer Cybernetick Hyper Weapon (World revision 3) [Corrado Tomaselli, The Dumping Union]
Bubble Bobble (prototype on Tokio hardware) [Arzeno Fabrice, brizzo, Phil Bennett, rtw, Alex Meijer, The Dumping Union]
Cobra-Command (World/US revision 4) [Bryan McPhail]
Deco Cassette System Multigame (ROM based) [David Haywood]
Explorers of Space [hap, Igor]
Fidelity Excel 68000 Mach III [CB-Emu]
Fidelity Excel 68000 Mach II (rev. C+) [CB-Emu]
Game & Watch: Egg [hap]
Golden Poker Double Up (bootleg) [Arcade Vintage, Roberto Fresca]
HP 85 [F.Ulivi]
Kageki (World) [frsj8112, The Dumping Union]
Logger (Rev.2) [Andrew Welburn, Craig Anstett, The Dumping Union]
Nu, pogodi! [hap, Igor]
Operation Wolf (Japan, SC) [ShouTime]
Player's Edge Plus (PP0006) Standard Draw Poker [Brian Troha]
Return of the Invaders (bootleg no MCU set 3) [f205v]
Silk Worm (prototype?) [frsj8112]
Solar Assault (ver JAA)
[ShouTime, pablopelos, Dullaron, Paul Vining, Jason Wible, Surgeville, Sean Sutton, David Mercer, John Cunningham, Smitdogg,
The Dumping Union]
Solar Assault Revised (ver JAA)
[ShouTime, pablopelos, Dulleron, Paul Vining, Jason Wible, Surgeville, Sean Sutton, David Mercer, John Cunningham, Smitdogg,
The Dumping Union]
Space Invaders (Nas Corp bootleg) [Guru]
Street Fighter II: The World Warrior (Japan 911210, CPS-B-17) [ShouTime, Bonky, MetalliC]
Super Triv (English questions) [Smitdogg, The Dumping Union]
Taisen Idol-Mahjong Final Romance 2 (Japan, newer) [system11, The Dumping Union]
Tetris (v341R) [Arzeno Fabrice, MetalliC]
The Ninja Warriors (World, earlier version) [Irongiant, The Dumping Union]
Xevious 3D/G (World, XV32/VER.A) [rtw, invzim, The Dumping Union]
Machines promoted to working
Alphatronic PC [R. Belmont, Carl, rfka01]
Black Touch '96 [Angelo Salese]
Explorer (DECO Cassette) (US) [Brian Troha, David Haywood]
Game & Watch: Mickey Mouse [hap]
Mega Double Poker (conversion kit, version 2.3 MD) [Caps0ff, AJR]
Ron II Mah-Jongg [Angelo Salese]
The Roulette (Visco) [Team Europe, Luca Elia]
Touch & Go (World) [Morten Shearman Kirkegaard, Peter Wilhelmsen, David Haywood]
World Rally 2: Twin Racing [Morten Shearman Kirkegaard, Peter Wilhelmsen, David Haywood]
Clones promoted to working
Frogger (bootleg on Amigo? hardware) [Ivan Vangelista]
Mega Double Poker (conversion kit, version 2.1 MD) [Caps0ff, AJR]
Sega Ninja (315-5113) [David Haywood]
Touch & Go (Non North America) [Morten Shearman Kirkegaard, Peter Wilhelmsen, David Haywood]
Touch & Go (earlier revision) [Morten Shearman Kirkegaard, Peter Wilhelmsen, David Haywood]
New machines marked as NOT_WORKING
Abnormal Check [R. Belmont, Guru]
Ai-mode - Pet Shiiku [system11, The Dumping Union]
Block Pong-Pong [Arzeno Fabrice, brizzo]
Casino Strip [any]
Casino Strip IX [any]
Casino Strip VIII [any]
Dam Dam Boy [R. Belmont, ShouTime, Sean Sutton, Surgeville, Ryan Holtz, Phil Bennett, Smitdogg, The Dumping Union]
MAC Jungle [PinMAME]
Mahjong Gal-pri - World Gal-con Grandprix (Japan) [system11, The Dumping Union]
Mahjong Hanafuda Cosplay Tengoku 6 - Junai-hen (Japan) [sytem11, The Dumping Union]
Mahjong Mogitate [system11, The Dumping Union]
Need for Speed - 4 Cab Link (2 Discs) (v1.0.1 Rev B) [ShouTime]
Need for Speed GT (Hard Drive+2 Discs) (v1.1.0 Rev C) [ShouTime]
Nichibutsu DVD Select (Japan) [system11, The Dumping Union]
Percussion Freaks 4th Mix (G*A25 VER. AAA) [smf]
PokoaPoka Onsen de CHU - Bijin 3 Shimai ni Kiotsukete! (Japan) [system11, The Dumping Union]
Renai Mahjong Idol Gakuen (Japan) [system11, The Dumping Union]
Sharp FontWriter FW-700 (German) [R. Belmont, rfka01]
Super Derby II [Phil Bennett, Hammy]
Tsuugakuro no Yuuwaku (Japan) [system11, The Dumping Union]
VG Pocket Mini (VG-1500) [BeckieRGB]
VG Pocket (VG-2000) [BeckieRGB]
Virtua Striker 4 (Export) (GDT-0014) [rtw]
Virtua Striker 4 Ver.2006 (Japan) (Rev B) (GDT-0020B) [rtw]
WaiWai Drive [Arzeno Fabrice, brizzo]
War: The Final Assault (EPROM 1.91 Apr 13 1999, GUTS 1.3 Apr 7 1999, GAME Apr 7 1999) [rtw, Smitdogg, The Dumping Union]
World Kicks PCB (World, WKC2 Ver.A) [rtw, Smitdogg, The Dumping Union]
Yamaha TG100 [vampirefrog, superctr, bmos, Valley Bell]
New clones marked as NOT_WORKING
Beat the Clock (with flasher support) [noahpdavis]
Commodore PC 10 [rfka01]
Dirty Harry (LF-2) [PinMAME]
Fighting Vipers (Revision B) [Phil Bennett, MooglyGuy, Tourniquet, Smitdogg, The Dumping Union]
Motocross Go! (MG2 Ver. A, set 2) [ShouTime, Bill D, The Dumping Union]
New Super Triv III [Smitdogg, The Dumping Union]
Tazz-Mania (Rodmar bootleg) [Arcade Hacker, The Dumping Union]
Triv Five Special Edition [Smitdogg, The Dumping Union]
New working software list additions
abc80_flop: ABCDatastorm [Genesis Project]
coco_flop: Pacman (z80 to 6809 Transcoded - v1.01) (512kb) [Glen Hewlett]
gameboy: Sachen 4 in 1 (Euro, 4B-003) [Tauwasser]
Le Manoir de Mortevielle [breiztiger]
Battle Chess, Blades of Steel, Castlevania, Double Dribble, Earl Weaver Baseball, Future Wars - Adventures in Time,
Gamer's Edge Sampler - Catacomb and Dangerous Dave, Hardball 2, Heroes of the Lance, John Madden Football, King's Bounty,
Lakers vs Celtics and the NBA Playoffs, Links - Championship Course - Bountiful Golf Course, Links - The Challenge of Golf,
Mean Streets, Monopoly v2.00 (Shareware), Monty Python's Flying Circus, Ninja Gaiden II, Nova 9, Over the Net, Pharaoh's Pursuit,
Secret of the Silver Blades, Speedball II, Street Fighting Man, Super C, Superstar Ice Hockey, Superstar Indoor Soccer,
Superstar Indoor Sports, Superstar Outdoor Soccer, The Cycles, Top 10 Solid Gold Volume II, Wings of Fury, Zool [Justin Kerk]
B-17 Flying Fortress, Body Blows, Corncob Deluxe, DOS/V (multiple versions), Dune, Global Conquest, King's Quest V, Lightspeed,
MS-DOS (Version 6.22, Brazilian Portuguese), Star Trek - 25th Anniversary [Justin Kerk]
pce_tourvision: Doraemon - Nobita no Dorabian Night, Majin Eiyuu Den Wataru [system11, The Dumping Union]
x68k_flop: Chourensha 68k (v1.00) [Justin Kerk]
New NOT_WORKING software list additions
ibm5150: Boulder Dash Construction Kit [Justin Kerk]
ibm5170: IBM Personal Computer DOS (Version J5.00/V) (Japanese), PC-DOS (multiple sets using XDF disk format) [Justin Kerk]
-z8: Fixed disassembly of DECW RR opcode, added more control registers to state for debugger. [AJR]
-Added support for experimental overclocking of sound devices through UI sliders with -cheat enabled. [AJR]
-ym2151, ymf271, namco: Added support for dynamic changes to clock frequency. [AJR]
-Fixed scheduler overflow when a device executes for more cycles than there are in a second. [AJR]
-nibbler, levers: Changed joysticks to 4-way as documented in manuals. [AJR]
-megadpkr: Hooked up 68705P5 MCU, figured out banking, and added timekeeper RAM and inputs. [AJR]
-colt: Fixed colors. [AJR]
-vgmplay enhancements: [AJR]
* Added support for YMZ280B and YMF271.
* Fixed clock speed for dual POKEY.
* Produce error message when nonexistent file is specified.
-froggeram: Fixed PPI accesses allowing sound emulation to work. [AJR]
-listxml enhancements: [AJR]
* Match arguments against device names as well as driver names.
* Allowed DTD output for -listxml, -listsoftware and -getsoftlist to be suppressed with -nodtd option.
-gunfront: Corrected "Upright Controls" DIP switch - OFF is Single, and should not be the default. [AJR]
-mrdo: Load protection PAL data (not used at the moment). [AJR]
-mastboy: Changed parallel EEPROM type to "EAROM" (rather than generic NVRAM). [AJR]
-MC6800: Fixed LSR/ROR/ASR overflow flag generation (N XOR C). [AJR]
-funystrp: Added serial EEPROM for high score entries. [AJR]
-blackt96.cpp improvements: [Angelo Salese]
* Added flip screen and coin counter support.
* Reimplemented text layer as tilemap.
* Added notes, promoted game to MACHINE_IS_INCOMPLETE - bugs like the timer not decrementing are actually caused by sloppy coding.
-cvs.cpp: Kludged a protection check in Superbike that was resetting the machine under certain conditions. [Angelo Salese]
* Also demoted to MACHINE_UNEMULATED_PROTECTION since game can lock indefinitely under a particular condition.
-Wrote a new device container for Nichibutsu sound hardware, used by csplayh5.cpp and niyanpai.cpp. [Angelo Salese]
-Standardized button layout for PCE bootlegs. [Angelo Salese]
-Fixed screen misalignment regression in Bionic Commando. [Angelo Salese]
-socrates: Reimplemented keyboard MCU simulation as a separate timer-driven function. [Lord Nightmare]
* Fixes issues with super painter and a few other games not recognizing keyboard input.
* Also eliminated anonymous timers and keyboard tagmap lookups, and added savestate support.
-arkanoid.cpp: Added machine definition for Akranoid bootleg with 68705P3 and AY-3-8910, matching real hardware. [Lord Nightmare]
* Also added notes about which sets bootlegs are derived from.
-dectalk.cpp: Removed unnecessary driver init and replaced with machine_start, eliminated anonymous timers, and added savestate
support. [Lord Nightmare]
-taitocchip.cpp: Hooked up the four 'ASIC RAM' shared bytes/semaphores/command registers between external CPU and the C-chip, got
rid of hack for megablast. [Lord Nightmare]
-Implemented DIP switches and tweaked inputs for Bubble Bobble prototype so that the stage editor works. [Lord Nightmare]
-missb2 updates: [Lord Nightmare]
* Fixed OKI read/write bitswap so what seem to be the correct sound effects are played.
* Replaced the corrupt OKI ROM dump with the bublpong OKI ROM - all non-corrupted areas are identical.
* Added watchdog.
-retofinv.cpp: Added original Taito 68705 MCU dump. [Corrado Tomaselli, Lord Nightmare, brizzo]
* Moved bootleg 68705 MCU to its own set, renamed sets to make it more obvious which are bootlegs.
* Verified XTAL, dividers, and SN76489A type from PCB pictures.
* Added missing original color PROMs and allowed video/retofinv.cpp to use either those or the single bootleg color PROM.
-Added correct palette weighting for all dec8 games. [Bryan McPhail]
-Made DECO RM-C3 into a device used by dec8 and karnov.cpp games. [Bryan McPhail]
-Fixed colours in Crude Buster (verified against real hardware); added documentation to cbuster.cpp. [Bryan McPhail]
-pc9801: Moved cbus to bus and added WIP mpu401 support. [Carl]
-plugins/cheat updates: [Carl]
* Poll for setting hotkeys.
* Link simple cheats.
-Added Motorola MC14411 Bit Rate Generator device. [Joakim Larsson Edstrom]
-fccpu1 updates: [Joakim Larsson Edstrom]
* Updated LOG system and replaced CLOCK_SIGNAL_HANDLER with real MC14411 BRG device.
* Added machine configuration for baud rates for all three serial ports using MC14411 device.
* Added newer version of firmware Force Debugger v1.1.
-68340: Added configuration macros and callbacks for 8-bit ports A and B, updated LOG system. [Joakim Larsson Edstrom]
-sda5708: Added layout support and state saving. [Joakim Larsson Edstrom]
-sda5708: Added layout with generated bezels and program snippet to redo it as a comment. [Joakim Larsson Edstrom]
-dbox: Added sda5708 matrix display layout (displays version number on start but hangs shortly thereafter). [Joakim Larsson Edstrom]
-ti99: Changed Hexbus chaining; moved Hexbus up one level (from bus/ti99 to bus). [Michael Zapf]
-Overhauled MAME options handling. [Nathan Woods]
* The new options system is more dynamic and should detect errors earlier.
* The slot menu now shows updated options in response to selections made by the user.
-Added a menu listing existing state files displayed when choosing a position to save/load. [Nathan Woods]
* Any position may be selected with keyboard 0-9/A-Z or joystick buttons.
* Existing positions may be selected using UI navigation controls.
-Made the length parameter for debugger 'load' command optional (defaults to length of file), converted code from stdio to iostream.
-MC6847: Fixed "Semigraphics 6" mode on CoCo/MC-10 (issue reported by Jim Gerrie). [Nathan Woods]
* Displays "stripes" for video bytes $00-$7F because INT/EXT is asserted but A/S is not, and there is no external ROM.
-Cleaned up the MC-10 driver. [Nathan Woods]
-Fixed regression in ROM loading that resulted in not all actual hashes being printed on mismatch. [Nathan Woods]
-sdl: Added SDL_WINDOW_BORDERLESS for fullscreen, required by some Linux window managers. [O. Galibert]
-dvdisasm: Simplified by decoupling information creation and display rendering. [O. Galibert]
-debugcpu: Eliminated direct() from read_opcode. [O. Galibert]
-options: Set the value when setting the default as before. [O. Galibert]
-mameopts: Don't lose the system inipath when looking for hashpath. [O. Galibert]
-dimemory: Lifted cap on number of address spaces per device, renamed AS_DECRYPTED_OPCODES to AS_OPCODES. [O. Galibert]
-Fixed media option numbering with custom instance names (github issue 2468). [O. Galibert]
-cbuster.cpp: Added a x3 hack to the YM2203 clock frequency to fix incorrect pitch. [Phil Bennett]
-Improved -romident performance by dynamically allocating large arrays at device_start time. [Phil Bennett]
-alphatro improvements: [R. Belmont]
* Added correct banking and partial floppy support.
* Corrected motor on and FDC reset.
* Corrected number of driver (real machine only has two), and fixed B: drive.
-output: Fleshed out network output provider to have the same capabilities as legacy Win32 provider: [R. Belmont]
* Messages are of form "verb = value1"; "hello = 1" on successful connection, "mamerun = 0" on shutdown.
* Send "send_id = n" to query IDs where n=0 means machine shortname, and n=1-? are output node names.
-Rewrote MCS-40 (4004/4040) emulation/disassembly: [Vas Crabb]
* Added support for all 4040 features besides interrupts.
* Split address/status, RAM/ROM ports, and program memory into separate address spaces.
* Emulated 8-clock instruction cycle, interruptible at any point, bus signals exposed.
* Converted inputs to input lines, added callbacks for chip select outputs and 4008/4009/4289 signals.
* Made disassembly output closer to what ASL accepts as input.
* Allowed 4-bit registers to be set independently through the debugger.
-Added INTELLEC 4 driver with support for MOD 4 and MOD 40 variants: [Vas Crabb]
* Supports TTY, PROM programmer, and all front-panel debugging features using clickable artwork.
* Supports PROM, program/data storage and high-speed paper tape reader cards.
-Updated flicker to use new MCS-40 core and improved emulation: [Vas Crabb]
* Re-implemented I/O based on how hardware actually works (wasn't possible with previous 4004 core).
* Corrected flicker RAM size, removed NVRAM, and connected playfield lamps and operator adjustments.
* Added save state support.
-Layout system improvements: [Vas Crabb]
* Made scripts do substantial validation of layouts at build time.
* Drop views that don't validate at runtime rather than entire layouts to help machines with terminals connected by default.
-Cleaned up serial, matrix keyboard and TI-8x link protocol interfaces: [Vas Crabb]
* Switched to delegate timers and moved state registration to post-start, making implementations a bit less error-prone.
-Made device_memory_interface own its address space objects. [Vas Crabb]
-Made parent/clone loops raise a fatal error rather than hanging in a loop appending to a string. [Vas Crabb]
-Made internal UI list missing/incorrect files when audit fails. [Vas Crabb]
-Cocoa debugger improvements: [Vas Crabb]
* Save/restore window positions/sizes/splits/scrolling/expressions/focus (excluding device info viewer).
* Fixed scroll jump on clicking a memory/disassembly view that's been scrolled while unfocused.
-Made XML file a specialisation of data node that can be easily managed with smart pointers, and added a method for copying a data
node/subtree into a different tree. [Vas Crabb]
-Fixed fatal error on selecting a software part with internal UI, and made software parts menu sort by name. [Vas Crabb]
-Cleaned up Gaelco protection MCU interface device. [Vas Crabb]
-segas16b.cpp: Replaced goldnaxe2 317-0122 i8751 bad dump with working redump from undamaged chip and removed simulation code.
-segas32.cpp: Redumped kokoroj2 sound data ROM. [Arzeno Fabrice]
-Improved WD2010 emulation: [Bavarese]
* Better feedback on cylinder positions, almost all checks pass except low level tests expecting manufacturer or diagnostic tracks.
-Added Commodore D9060 82S137 PROM dumps. [Bo Zimmerman, Andrew Welburn]
-r9751: Added preliminary SMIOC device with 8237 DMA controllers and RS-232 ports. [Brandon Munger]
that can be served over HTTP. [Christian Brunschen]
-Fixed QT 5.5.1 for Ubuntu 14.04 "Trusty Tahr" (allows Travis CI build to complete). [dankan1890]
-naomi.cpp: Dumped earlier Sega Gun Board firmware. [Darksoft]
-opwolf, opwolfa, opwolfj, opwolfjsc, opwolfu: Added C-chip dumps (game-specific EPROM still bad). [Caps0ff, David Haywood]
-Touch & Go, World Rally 2, TH Strikes Back: Dumped DS5002FP security modules, replaced simulation.
[Morten Shearman Kirkegaard, Peter Wilhelmsen, David Haywood]
-Created Taito C-chip device and used in asuka.cpp, opwolf.cpp, rbisland.cpp, taito_f2.cpp, taito_x.cpp and volfied.cpp.
-srdarwin: Replace MCU simulation with internal ROM dump: [Caps0ff, David Haywood]
* Using real dump for srdarwin, and hand-modified version to satisfy srdarwinj.
* Fixes incorrect behaviour for 6th boss (no longer skips first form).
-Split decocass state class up so that the dongle types aren't polluting base class. [David Haywood]
* Also added support for bootleg multigame and fixed regression caused by change in draw order.
-tehkanwc.cpp: Fixed DIP switches for tehkanwcd (different setup to other sets); added DIP switch locations for all sets in driver.
-Identified DIP switches for a number of DECO Cassette sets. [David Haywood]
-Irem M62 cleanups: [David Haywood]
* Split PROM regions up by function (legacy from when MAME only allowed a single PROM region per system).
* Made use of multiple palettes and gfxdecode structures.
-gaelco/ds5002fp updates: [David Haywood]
* Made ds5002fp store battery-backed internal RAM and SFR registers as NVRAM.
* Made SFR defaults configurable in ROM loading like NVRAM defaults.
* Made external SRAM persistent as well (some games store scores etc. in it).
* Cleaned up Touch & Go dump and added preconfigured internal RAM.
* Created device for Gaelco protection module and removed remaining simulation code.
-Decrypted SEGA_315_5133 used by 'seganinja' set. [David Haywood]
* Shares identical code with other sets, just encryped with a different key.
-Add DIP switches to Tsukande Toru Chicchi. [einstein95]
-Initial HP series 80 emulation: [F.Ulivi]
* Working HP-85A with 16kB RAM, including Capricorn CPU, keyboard, CRT text/graphics modes, timers, and beeper.
* DC100 cassette, extension ROMs, I/O modules, and integrated printer are not supported.
-ITT3030: Corrected 70-track drive type, and added 35-track drive type and format definition. [helwie44, rfka01]
-Added Commodore PC10-III ROM dumps collected by German vintage computer forum users. [rfka01]
-Added original Commodore PC 10/PC 20/ PC 30 in two BIOS variants. [rfka01]
-Fixed default DIP switch settings for Parodius. [Jack Li]
-Enhanced Emscripten support: [James Baicoianu]
* Fixed save/load support and scheduled exit.
-Fixed #include path with USE_LIBSDL on macOS. [Joshua Root]
-Hooked up ibm5150 softlist to compc and europc drivers; changed europc to use single built-in 3.5" drive. [Justin Kerk]
-snk.cpp: Added PAL dumps to victroad. [Kevin Eshbach, The Dumping Union]
-wolfpack: Fixed missing Torpedo trail. [MASH]
-z80scc: Added basic wait/DMA request support, renamed WRDY to WREQ to match datasheet. [Patrick Mackinlay]
-ncr5390 improvements: [Patrick Mackinlay]
* Improved initiator transfer information logic.
* Split transfer count/counter.
* Added rudimentary 53C90A/53C94 support.
* Reworked initiator transfer information state machine, should now support all SCSI phases
* Improved handling of DMA/non-DMA commands.
* Added an undocumented hack to make InterPro work.
* Implemented interrupt status flag in status register for 53C90A (critical for InterPro).
* Improved tcounter and DMA/DRQ handling.
* Corrected tcounter and transfer count zero handling (based on transfers to/from SCSI bus, not DMA).
* Prevent fifo over/underrun, requires restarting state machine from dma_r()/dma_w().
* Corrected bus/function complete with FIFO (interrupt only when it empties, but state detected based on SCSI bus).
* Clear status, istatus and sequence when reading istatus (not status) with active interrupt.
* Tweaked DRQ behaviour - only assert if there is insufficient data in FIFO.
-nscsi_hd: Corrected INQUIRY command handling when a non-zero LUN is requested. [Patrick Mackinlay]
-interpro: Got SCSI working and other improvements: [Patrick Mackinlay]
* Reworked DMA, added eth registers.
* Improved 5390 device, removed legacy 539x SCSI stuff.
* Passes all iogadiag tests if bus error hack is enabled.
* Implemented basic serial DMA.
* Switched to ncr53c94.
* Initial preparation for Ethernet implementation.
* Implemented timer-based DMA.
-Improved wheel board on Midway Seattle and Vegas, and added layout for sf2049. [Risugami]
-sun1: Replaced console hack with upd7201 device. [shattered]
-chihiro.cpp: Added Quest of D Firmware Update DVD dump. [ShouTime]
-freekick.cpp: Dumped color PROMs for Omega (Nihon System), correcting the colors. [ShouTime]
-Redumped Time Limit color PROMs. [ShouTime, TServo2049, pablopelos, The Dumping Union]
-shootaw2: Added dumped EEPROM image. [Smitdogg, The Dumping Union]
-Added skeleton driver for Yamaha TG100 MIDI module. [superctr]
* H8/520 CPU is not implemented, sound chip is Yamaha YMW258-F (likely to be identical to Sega MultiPCM).
-Game Boy/Super Game Boy improvements: [Tauwasser]
* Added Super Chinese Land 1.2.3' to MBC1 Collection check code.
* Fixed MMM01 zero-adjust logic for ROM bank.
* Fixed Super Game Boy VRAM transfers and removed border hack.
* Fixed various code style and comment issues.
-sms.xml updates: [Enik Land]
* Fix The Terminator by adding their on-cart RAM.
* Added notes for games with SK-1100 keyboard support.
* Corrected Great Baseball (Euro, USA, Bra) release year.
* Corrected Teddy Boy Blues (Jpn, Ep-MyCard, Prototype) and Ghost House (Sega Card, Prototype) interface types.
-kinst.cpp: Updated hardware info. [Guru]
-abcheck: Added default EEPROM so the game boots without going into service mode first. [Guru, R. Belmont]
-Updated compiling instructions for Fedora Linux. [inflatador]
-Updated hiscore.dat. [Leezer]
-Added -output option to documentation with description of available choices. [OzFalcon]
-megasys1.cpp: Added information regarding R&T (Rod-Land Prototype). [Ryou]
-SDL sound: Fill buffer with silence on underrun. [057a3dd61f99517a3afea0051a49cb27994f94d]
NO$GBA pronounced as No Cash GBA is a Nintendo DS / DS Lite and GameBoy Advance emulator for Windows XP, Vindows VISTA and MS-DOS. NO$GBA options include emulating all known save types as well as and multiple cartridges reading. NoGBA supports multiplayer and is able to load multiple NDS ROM files for linking games. Multiplayer for GBA Games is also supported.
It's just a bunch of small details/bugfixes.
The sd/mmc/i2c related ones might be useful for developing & testing new DSi exploits.
23 Jul 2017 - version 2.8f
- nds/3d/help: note on MTX_PUSH/POP/STORE/RESTORE in Mode1 (thanks staplebutter)
- nds/3d/emu: matrix stack in mode1 behaves like mode2 (fixes light directions)
- dsi/mmc: supports MMC commands CMD1 and CMD6 (somewhat needed for libnds)
- dsi/sd: added warning on trying to use SD card in 4bit mode with pull-up on
- dsi/i2c: support softreset via bptwl (keeping main ram and bptwl regs intact)
- dsi/help: added notes on warmboot info at 2003000h (for autostarting a title)
- dsi/help: more details on 2FFD7BCh (scr,type,hcd,csr,clk_ctl,card_opt,device)
- bios clone: reproduces div-zero, fixed crash on div-overflow (thanks endrift)
- gba/io: emulates some more unused bits as non-writeable (thanks endrift)
- gba/help: note on BLDALPHA being R/W (unlike official specs, thanks endrift)
- debug/help: note on nds9 debug message ports 4FFFAxxh working on gba/nds7 too
- setup: renamed "Emu Identification" to "Debug I/O" and enabled it by default
- gui: fixed window positions/fullscr when taskbar at upper/left (thanks joseph)
emulation of the GameBoy, GameBoy Color, and Super Gameboy
accurate emulation of the hardware, based on research with lots of test roms, useful for debugging/rom development. some highlights:
clock exact timing of LCD behavior/state changes
realistic initial ram values - random but with specific bit patterns, and simulated values left by bootroms (for example "nibbler (pd)" depends on this)
accurate emulation of LCD register writes during scanline (prehistorik man, demotronic demo)
emulation of inaccessible VRAM and OAM as on real hardware
10 sprites per line limit
clock exact emulation of sprites causing mode 3 to take longer
correct memory access timing (access happening at the last/second to last clock of an opcode)
accurate emulation of the differences between DMG and GBC, including timing differences, differences in hardware behavior, initial state, etc.
can run a GBC rom as on a DMG, and a DMG rom as on a GBC
assembler (change code and ability to save modified rom)
break on access
singlestepping/tracing/animating/step out/step over
vram viewer: BG map, tiles, OAM, palette.
IO registers viewer
break on exceptions (accessing inaccessible VRAM, read unitialized RAM, echo ram access, access locked external ram, disable lcd outside vblank)
ability to modify all registers and state at any time
joypad window allows simulating button presses at any time while debugging
SGB multiplayer with up to 4 gamepads
graphics output: GDI (DIB), DirectDraw, Direct3D, OpenGL, null output
sound output: waveout, directsound and disk writer supported. support for writing the 4 channels to separate wav files
runs almost all roms perfectly, compatibility comparable with the best GB/C emulators
Accurate/high quality sound emulation, bandlimited rectangular wave synthesis for perfectly smooth sound
accurate video emulation including "high color" graphics, correct sprite/background priorities, 10 sprites/line limit, and mid-scanline register changes.
This emulator is fast.
Joystick/Gamepad support, everything mappable to every button
some user interface keys are configurable and can be mapped to joystick/gamepad buttons
MBC3 Real Time Clock emulation. RTC is saved/loaded in the .sav file, compatible with VBA
Auto delay/frameskip, emulation runs at 100% real speed and full 60 fps
GameGenie and GameShark cheat, load/save cheats (auto and manual), "cheat searcher", easy creation of new cheat codes
save/load state with quick (zsnes style) keys.
Load from ZIP and GZIP files
This program does not require DirectX or runtime libraries.
support for optional border bitmap and pseudo and real fullscreen modes.
limited TCP/IP game link support
BGB v1.5.4 Changelog:
- Fixed regression: pokemon yellow broken in SGB mode. Fixed a number of bugs.
mGBA is a new emulator for running Game Boy Advance games. It aims to be faster and more accurate than many existing Game Boy Advance emulators, as well as adding features that other emulators lack.
- Near full Game Boy Advance hardware support.
- Fast emulation. Known to run at full speed even on low end hardware, such as netbooks.
- Qt and SDL ports for a heavy-weight and a light-weight frontend.
- Save type detection, even for flash memory size.
- Real-time clock support, even without configuration.
- A built-in BIOS implementation, and ability to load external BIOS files.
- Turbo/fast-forward support by holding Tab.
- Frameskip, configurable up to 9.
- Screenshot support.
- 9 savestate slots. Savestates are also viewable as screenshots.
- Video and GIF recording.
- Remappable controls for both keyboards and gamepads.
- Loading from ZIP files.
- IPS and UPS patch support.
- Game debugging via a command-line interface (not available with Qt port) and GDB remote support.
mGBA v0.6.0 Changelog:
– Qt: Italian translation (by theheroGAC)
– Qt: Updated German translation
– Core: Fix rewinding getting out of sync (fixes #791)
– GB Audio: Fix incorrect channel 4 iteration
– GB Audio: Fix zombie mode bit masking
– GB Serialize: Fix timer serialization
– GB Video: Fix LYC regression
– GBA SIO: Improve SIO Normal dummy driver (fixes #520)
– GBA Timer: Fix count-up timing overflowing timer 3
– PSP2: Use custom localtime_r since newlib version is broken (fixes #560)
– Qt: Fix memory search close button (fixes #769)
– Qt: Fix window icon being stretched
– Qt: Fix initial window size (fixes #766)
– Qt: Fix data directory path
– Qt: Fix controls not saving on non-SDL builds
– Qt: Fix translation initialization (fixes #776)
– Qt: Fix patch loading while a game is running
– Qt: Fix shader selector on Ubuntu (fixes #767)
– Qt: Fix GL-less build
– Qt: Fix Software renderer not handling alpha bits properly
– Qt: Fix screen background improperly stretching
– SDL: Fix cheats not loading
– GB Serialize: Add MBC state serialization
– GBA Memory: Call crash callbacks regardless of if hard crash is enabled
– GBA Timer: Improve accuracy of timers
– PSP2: Update toolchain to use vita.cmake
– Qt: Add language selector
– Qt: Minor text fixes
– Qt: Move shader settings into main settings window
– Qt: Dismiss game crashing/failing dialogs when a new game loads
– Qt: Properly ship Qt translations
– SDL: Remove writing back obtained samples (fixes #768)
melonDS is an open source Nintendo DS(NDS) emulator. melonDS is part of a second wave of DS emulators.
• implement access modes for certain IO registers that were unhandled
• actually implement RCNT instead of hardcoding it
• wifi: emulation of multiplayer cmd/reply/ack transfers
• wifi: more accurate RFSTATUS/RFPINS
• wifi: some games can go into multiplayer now (Pictochat, NSMB, Pokémon known working)
• improved savemem detect heuristic
• implement firmware write, fix SPI bugs
• accurate emulation of 'main memory display FIFO'
• 2D: fix render/capture order
• 2D: implement mode6 large BG
• 2D: fix bitmap BG sizes
• 2D: fix rotscaled bitmap sprites
• 3D: fix missing term in MatrixTranslate
• 3D: fix toon highlight mode
• 3D: fix boxtest bug
• 3D: accurate viewport transform
• 3D: polygon Y-sorting
• 3D: more accurate interpolation, still not perfect
• 3D: more accurate Z and W transforms, fix some cases of Z-fighting
• 3D: separate polygonID attributes for opaque and translucent pixels
• 3D: start documenting and implementing depth test edge cases
• emulate delays for SPI transfers and div/sqrt
• misc bugfixes/additions as usual
RockNES is a Nintendo (NES) emulator that supports total PPU emulation, total intelligent emulation (including VRCVI intelligent, used by some Japanese games), battery backed RAM, Famicom DiskSystem, VS Unisystem, and some 70 different mappers. In gain, RockNES includes lots of different video modes, as substantially as the ability to loading and economise your back at any stage. You can flush record movies of gameplay.
RockNES v5.52 Changelog:
- Fixed mapper 19 (Rolling Thunder (J) works).
- Internal cleanups and minor tweaks.
- Documentation updated.
fMSX is a program that emulates MSX, MSX2, and MSX2+ 8bit home computers. It runs MSX/MSX2/MSX2+ software on many different platforms including Windows, Android, Symbian, MacOS, Unix, MSDOS, AmigaOS, etc. I started developing fMSX in 1993 when there were only two other MSX emulators available, both exclusively for MSDOS. From the very beginning, I developed fMSX as a portable program able to run on many different computers. The initial development, for example, was done on DEC Alpha workstations running Unix. Since then, fMSX has seen quite a lot of updates and been ported to many systems. It is still being developed, although not as actively as before because most features are pretty much complete now.
fMSX v5.0 Changelog:
* Switched to microseconds in the AY8910 PSG emulation.
* Now updating, rendering, and playing sound every 8 scanlines.
* The PLAY "S8M90O6G" MML test works now.
* Added support for DirectInput joysticks to fMSX-Windows.
* Fixed crash when changing audio sampling rate in fMSX-Windows.
SameBoy is a user friendly GameBoy and GameBoy Color emulator for macOS. SameBoy is extremely accurate and includes a wide range of powerful debugging features, making it ideal for both casual players and developers. In addition to accuracy and developer capabilities, SameBoy has all the features one would expect from an emulator – from save states to scaling filters. An experimental SDL version is available to Windows and Unix-like systems.
SameBoy v0.91 Changelog:
This version is a minor bug-fixing version
Fixed a bug where SameBoy froze for various amounts of time after using turbo mode.
Xebra is a progressing Japanese Playstation(PS) emulator for Win32.
Xebra (2017/07/11) Changelog:
① Slightly reduce data volume
In GTE, division is performed by reciprocal integration, and its inverse value is inferior in accuracy
It was obvious that the common value for each group was refined.
However, the calculation formula for refinement was unknown.
(There is only the Newton's law or the Gold Schmidt method as the theoretical formula
When dealing with integers, how to round numbers is arbitrary by the designer,
It can not be theoretically derived)
Although it was unknown, it is not a large amount of data for software on PC
I wish I could prepare the whole number as an immediate value table.
(This is effective also in terms of reducing the amount of computation at the time of execution)
When checking the calculation formula of the refinement indicated by nocash this time, since we saw an agreement in total,
I decided to adopt the calculation formula.
As an actual utility, compressed data which was 4000 bytes in old algorithm,
It is reduced to 257 bytes with the new algorithm.
Although the normal distribution data used by the SPU was held for all the sections,
Because it is bilaterally symmetrical, we deleted the half section.