General
- New support for double sided 1571 g64 and p64 images.
- SID filter improvements.
C64(SC)/SCPU64/C64DTV/C128 changes
- New joyport script64 dongle emulation.
- New joyport vizawrite64 dongle emulation.
- Fixed joyport paperclip64 dongle emulation.
- Fixed StarDOS emulation.
XVIC
- Fixed VIA emulation.
C1541
- Fixed commands and added new commands.
BeOS/Haiku changes
- New drag & drop support: dragging a file from Tracker into the window
now autostarts it, and dragging text into the window pastes it.
* Emulation core improvements:
* Add workaround for Multiface One and 128 clash
* Limit RZX sentinel warning to once per playback
* Disable Melodik interface on 128K machines
* Correct the list of machines for Multiface One
* Miscellaneous improvements:
* Update compile instructions for win32 UI
* Check required version of libspectrum is available
* Document --mdr-len and --mdr-random-len options
* Document support for the Recreated ZX Spectrum
* Fix transposed description of AY-3-8912
* GTK UI: Destroy tape browser dialog on close
* Fix Z80 snapshot writing when +D is enabled
* Export pkgconfig file to publish library version
* Fix offset of keyboard mappings in Z80 v3 snaphots
* Various minor bug fixes/improvements:
* Replace '*' in boolean context with '&&' in libspectrum_malloc0_n()
* Fix warning about missing atomic_lock()/atomic_unlock() declarations
in gslock.c
* rzxdump
* Allow extracting snapshot files
* scl2trd
* Print error messages to stderr
* Various minor bug fixes/improvements:
* Ignore .DS_Store files too
* Check close()/fclose() return value on write operations
* Move write_file() into utils.c and share between utilities
* Also ignore *~ files
* Switch to using autoreconf
* Use silent builds by default
* New features:
* Add Multiface One/128/3 interface emulation
* Machine specific improvements:
* Restore +2A/+3 ALL_RAM mode from snapshots
* Miscellaneous improvements:
* SDL: Hide cursor when UI runs on a console (Raspberry Pi)
* Switch to using autoreconf
* Use silent builds by default when available
* Use explicit AM_SILENT_RULES macro as libspectrum does
* AC_PROG_RANLIB is rendered obsolete by LT_INIT
* Remove unnecessary include glib.h
* Add Multiface One/128/3 support
* Add self-inflating buffer for writing binary files
* Add class recognition for SCR files
* Fix crash when saving CSW tapes
* Various minor bug fixes/improvements:
* Add unit test for CSW writing
* Swich to using autoreconf
* Use silent builds by default
* Remove more const qualifiers from libspectrum_buffer API
* Fix GCC warnings about unexpected values in switch statements
* Remove unsused variables from libspectrum_buffer refactoring
* Fix error messages when reading Opus/+D chunks from SZX files
* Distribute standard-tap.tap
* Set logical '1' when reading SZX flags
* Document Multiface snap accessors
Emulation core improvements:
* Add Covox interface emulation
* Disable accelerate loader while recording RZX files
Miscellaneous improvements:
* Fix typo in Opus Discovery option
* WidgetUI: Disable RollbackTo menu option for widget UIs
* Update description of speed option
* List Melodik as supported interface and rearrange audio interfaces
as a separate item
* Document --volume-covox option and update bash completion
* Work around invalid "used bits in last byte" field in TZX tapes
* Save SpecDrum level as unsigned in SZX snapshots
* Add support for storing Covox interface state
* Replace old ticket numbers from Trac to Allura
Emulation core improvements:
* Disable tape traps when playing/recording RZX files
Miscellaneous improvements:
* Fix typo in LOG disk format
* Replace old ticket numbers from Trac to Allura
* WidgetUI: Fix memory leak in file selector
* Fix allocator sizeof operand mismatch and remove dead assignment
* Remove prototypes of old plus3 disk functions
* Increase allocated memory to keep GCC7 happy
* Silently skip PLTT blocks in SZX snapshots
* Document missing disk identifiers
* Validate "used bits in last byte" field in TZX tapes
* Fix the load of PZX tapes with malformed strings
TODO: see cpu_arm_instr_dpi; non-zero steps but still under 256 is not implemented yet
to_be_translated(): TODO: unimplemented instruction:
ebf61a60: e28fc600 add ip,pc,#0
== Warning of unsupported host systems ==
This release includes changes to the configure script so that it will now report some host operating systems and
platforms as "unsupported". These are host setups which we do not have access to and are thus unable to test. They will continue to work in this 2.9 release (though configure will warn you about the unsupported status), but in a future QEMU release we may drop support for those hosts unless somebody volunteers to help us with maintaining them (and can provide build/CI machines).
This affects the CPU architectures:
* ia64
and the OSes:
* GNU/kFreeBSD
* DragonFly BSD
* NetBSD
* OpenBSD
* Solaris
* AIX
* Haiku
== System emulation ==
=== Incompatible changes ===
* Improvements to "-drive":
** "-drive"'s <tt>if</tt> option defaults to "none" on machines that do not have an onboard IDE or SCSI controller.
** "-drive if=scsi" does not work anymore with PC machine types, as it created an obsolete SCSI controller model. QEMU supports better controllers (megasas, mptsas, virtio-scsi) but which to use depends on the guest you are using.
** "Orphan" -drive options, where an <tt>if</tt> option is not supported by the emulated machine (e.g. "if=mtd" on x86) is now a fatal error. It had been triggering a warning since version 2.2.
=== Future incompatible changes ===
* Three options are using different names on the command line and in configuration file. In particular:
** The "acpi" configuration file section matches command-line option "acpitable";
** The "boot-opts" configuration file section matches command-line option "boot";
** The "smp-opts" configuration file section matches command-line option "smp".
:-readconfig will standardize on the name for the command line option.
* Behavior of automatic calculation of SMP topology when some SMP topology options for -smp are omitted (sockets, cores, threads) will change in the future. If guest ABI needs to be preserved on upgrades while using the SMP topology options, users should either set set all options explicitly (sockets, cores, threads), or omit all of them.
* Devices "allwinner-a10", "pc87312", "ssi-sd" will be configured with explicit properties instead of implicitly. This is unlikely to affect users.
* For x86, specifying a CPUID feature with both "+feature/-feature" and "feature=on/off" will cause a warning. The current behavior for this combination ("+feature/-feature" wins over "feature=on/off") will be changed so that "+feature" and "-feature" will be synonyms for "feature=on" and "feature=off" respectively).
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.
MAME 0.183
22 Feb 2017
Hi everyone! It’s been a busy month for MAME development, and we’ve
got a whole lot of surprises to unwrap today as we continue to
celebrate twenty years of MAME. First up, we’ve added some incredibly
rare systems to MAME. Omega is an Arkanoid-inspired arcade game
with a production run of about ten boards. Dodge Man is a rare Omori
title from 1983. The vertical version of Flash Boy, a DECO Cassette
title that borrows more than a little from a well known anime is
another very rare game that was at risk of becoming nothing but a
memory. Westinghouse Test Console #5 is possibly a one-of-a-kind
wire-wrapped prototype machine for field-programming some kind of
interlocking equipment (it has a rude easter egg – press X|TRAN in
calculator mode to see it). Less rare, but still awesome, are arcade
titles Galaxy Games StarPak 3, Sega Sonic Cosmo Fighter, and a U.S.
release of Puzznic with the digitised photos intact.
This release adds support for a number of electronic toys/handheld
games, including Atari’s Touch Me (a clone of Simon, which is itself
a clone of an Atari arcade game), GAF Melody Madness, Lakeside Le
Boom, and with possibly the most awesome title if not gameplay,
LJN’s I Took a Lickin’ From a Chicken. Many of these games have
colourful, clickable artwork. MAME is dedicated to preserving more
than just video games, and these systems are great examples of some
of the other experiences you can relive through emulation.
If you use MAME’s computer emulation and have been frustrated by
modifiers not working properly in natural keyboard mode, you’ll be
pleased to know that this release addresses that. Natural keyboard
mode now works properly with many more systems, including Amiga,
Sun and RM Nimbus. Speaking of Amiga, we’ve emulated a 3rd-party
variant of the Amiga 1200 keyboard and added support for many
different language variants, so chances are you’ll be able to use
keyboard that matches your Workbench language. And speaking of
keyboards, the Zorba keyboard now works properly, so you can try
out one of the last luggable CP/M machines.
Other improvements include fixing the crash on encountering invalid
cheats, allowing multi-part software list entries to load each part
on the correct interface, emulation of the Poly-Play light organ,
a brand new preliminary Interpro 2800 driver and Clipper CPU core,
support for VIC-20 and C64 speech synthesiser cartridges, support
for the Osborne-1 Nuevo Video 80-column modification, protection
MCU emulation in Bad Dudes vs. Dragonninja and Bouncing Balls, audio
improvements to a number of supported games, and optimisation of
the netlist emulation.
Some of these improvements might seem inconsequential, or apply to
systems you don’t use, but they often lie in common components used
by many other systems. For example, the Amiga 1200 and Zorba keyboards
use the same MCU family used in a lot of arcade games published by
Taito. The same change that fixes the Zorba keyboard also fixes
enemy spawning and timing in Xain'd Sleena. The Nuevo Video board
uses a common Motorola CRT controller, so improvements made to
support it stand to benefit a lot of other systems.
Of course there are plenty of other improvements not listed here,
and you can read all about them in the whatsnew.txt file, or grab
the source or Windows binaries from the download page and join in
our 20th anniversary celebration.
* Fixed building with C++.
* Fixed building on Darwin (PR 51899).
* Added GTK3 as an option.
* Switched from SDL-1 to SDL-2.
* Depend and enable support for: lzo, jemalloc, snappy, png, curl, jpeg.