Emulation:
- IDE improvements:
- Support for second drive (IDE slave)
- WIN_FORMAT command (allows HD Driver to format IDE drives)
- GEMDOS HDD emulation:
- Minor fixes to Fseek(), Fopen(), Fdatime() (e.g. Pure debugger works)
- On TOS v4 Fread() size arg is unsigned, on earlier TOS its signed
(bad code can use -1L to read whole file instead getting fail on TOS4)
- Prevent DTA and read/write functions accessing invalid memory areas
- Programs can now change read-only files to be writable
- Falcon sound emulation:
- Microphone (jack) emulation in Falcon mode (requires portaudio library)
- SSI direct sound entrance ("Audio Fun Machine" and winrec are working)
- DMA sound recording
- Crossbar handshake mode transfers
- Max VDI rez increased to TT-hi size (1280x960)
- 68020+FPU changed to 68EC030+FPU (no MMU 030) for Falcon and TT modes
(Some Falcon programs didn't work with 020)
- Video emulation on STF/STE:
- correctly shift the screen 4 pixels to the left when left border is removed
- add support for STE's 224 bytes overscan line without stabilizer
- when reading $ff8205/07/09 on STE, take into account the value
of horizontal scrolling/prefetch and linewidth
- when writing to $ff8205/07/09 on STE, correctly handle the case
where the write is made while display in ON
- LMC1992 emulation / STE sound filtering
0.8.D.2:
NES: Fixed a crash on certain x86_64 platforms(Mac OS X),
due to the sound filtering code dereferencing 32-bit
registers instead of 64-bit registers as it should have.
0.8.D.1:
Fixed a compilation error on gcc 4.5(thanks to hanno for
pointing it out).
0.8.D:
SMS: Some state that wasn't being saved in save states
now is, which should fix netplay desynch problems with
SMS/GG games.
Fixed a couple of remotely-exploitable(if connected to a
malicious server) stack manipulation bugs in the network
play code.
Fixed an incorrect object creation bug in pce/adpcm.cpp.
NES: Added a missing CPU emulator variable to save states.
PCE: Added a missing CPU emulator variable to save states.
0.8.D-rc1:
Lynx: Fixed a bug in the cart loader code that would cause
a crash if the ROM bank size was larger than the actual
data available in the file(as is the case with some homebrew
programs). Thanks to "Wookie" for the patch.
Build files were regenerated using autoconf 2.64 and aclocal
1.11(previously, they were generated with autoconf 2.61
and aclocal 1.10.1).
Fixed a crashing problem when entering an invalid menu
choice("0") in the cheat interface. Thanks to tsenart for
reporting the bug.
GB: The GameBoy module now respects the "filesys.disablesavegz"
setting in respect to saved battery-backed RAM.
Added support for "lurkers" on the network play server.
Previous versions of Mednafen don't lack support for this
per se, but there would be cosmetic issues with status
messages printed to the internal console.
SexyAL: Fixed a bug affecting the return value from
RawCanWrite() in the ALSA driver. The returned value was
typically too small by a factor of 4. The effects of this
bug included potential long periods of garbled sound during
netplay.
Fixed the return value from RawCanWrite() in the JACK
driver. It was being clamped to a value that was too small
by a factor of 4; however, the clamp value was already
excessively large in a way that this bug would should have
only been triggered if the "soundbufsize" setting was
excessively large. The effects of this bug would be similar
to the ALSA RawCanWrite() bug.
The ALSA and OSS drivers will now try to set audio output
to 2 channels if the source data only has 1 channel, and
16-bit signed if the source data is 8-bit(automatic conversion
is done). This is done to allow for lower period/fragment
sizes, as, in ALSA's internals at least, the minimum period
sizes are expressed in bytes, not sound frames.
The ALSA and OSS drivers will now try to set lower
period/fragment sizes than previous versions of Mednafen
did. With default settings, for ALSA, the new period/fragment
size is 50% of what it was before, and for OSS, 25%. Also,
there's a new setting to override the SexyAL's driver's
preferred period/fragment sizes, named "sound.period_time"(default
value of 0: no override). The period/fragment size is
expressed in microseconds. If the new, lower fragment
sizes cause problems, the setting can be changed to "2666"
to approximate the fragment size selection in previous
versions of Mednafen when using ALSA output, and "5333"
when using OSS output.
Added a workaround to the OSS driver for a bug in ALSA(and
hence, ALSA's in-kernel OSS emulation) that could cause
the emulator to run far too fast for a short period of time
if a buffer underflow occurred.
The ALSA's driver's RawCanWrite() method now(finally) uses
snd_pcm_avail_update() instead of snd_pcm_delay(). This
should improve performance and frameskipping behavior when
the ALSA output is not routed directly to a physical device,
such as the case with PulseAudio(though PulseAudio is still
not recommended :b). CVS:
----------------------------------------------------------------------
fixes to get png, jpeg, and ffmpeg support.
* Changes in VICE 2.2
======================
** General
----------
- On autostart, do not change true drive emulation (TDE) anymore by
default. The old behaviour can be switched on again by specifiying
-autostart-handle-tde on the command line.
There is one drawback of this behaviour: If TDE is switched on, an
image attached must fit to the drive type set. For example, when you
attach a .D81, you must have the drive type set to 1581, or the
autostart will fail.
- Added automatic Warp mode during autostart. If this resource is enabled then
VICE automatically enables the warp mode and then loads a file. After
loading the warp mode is disabled again and then the program is started.
- Autostarting a PRG file can now be done in three different ways:
* "Virtual FS": This mode mounts the directory where the file resides as a
virtual filesystem on drive #8 and then loads the PRG via virtual drive
traps. This was the only way of autostarting in previous VICE versions
and is still the default.
* "Inject to RAM": The PRG file is loaded from VICE directly into the RAM of
the emulated machine. Then the memory setup of a Basic LOAD is simulated
and the program is run. This is the fastest mode available but may lack
compatibility as no actual load operation was performed in the emulator.
However, no drive setup is altered during the operation.
* "Diskimage": VICE creates a temporary new disk image and copies the
contents of the PRG file onto it. Then this image is mounted in drive #8
and the program is loaded from there. If TDE is enabled then the load
operation is most compatible. The disk image stays attached until a new
image is mounted.
- Improved PAL emulation is now available for Unix/Xaw XVideo mode, and
AmigaOS. Only the YUV packed modes work, the planar modes still use the
old code paths, though.
- Sound core has been reworked to enable lower latency of operation.
Approximately 50 ms latency values are now routinely reached, and some
people have reported that as low as 30 ms still works for them.
- New SDL port. See ReadmeSDL.txt for details.
- New win64 ports, both amd64/x64 and ia64 are supported (msvc compile only).
- New SDL based armle, mipsle, ppcbe and shle QNX 6.x ports.
- New SDL based M68k and sparc SunOS ports.
- New SDL based Syllable port.
- New SDL based Dingoo port.
- Remote monitor (in other words: TCP/IP interface to VICE monitor) added.
- Fixed non-6502/6510 CPU handling in monitor.
** C64/C128 changes
-------------------
- ReSID's resampler has been optimized with MMX assembly. Some long-standing
bugs in resample-interpolate mode were also fixed.
- ReSID-FP has been optimized, too. It clocks the analog parts at half the
rate now, which saves CPU during filter emulation especially for 6581 modes.
- Added SFX Sound Sampler and SFX Sound Expander emulation.
- Added EasyFlash cartridge emulation.
- Added paddle emulation.
- Added lightpen/lightgun emulation, currently only available for the following
ports: SDL, GTK+, cocoa, win32/win64 and msdos.
- Added support for the following userport joystick adapters: CGA/Protovision,
DXS/HIT, PET (normally only used on the PET/CBM2), Hummer (normally only
used on the C64DTV) and OEM (normally only used on the VIC20).
** C128 changes
---------------
- Added RAM banks 2 and 3 support.
- Improved the VDC emulation.
- Stereo SID $D7xx range support.
** VIC20 changes
----------------
- New cycle exact emulation core. Handles accesses to unconnected
address space and in-line graphics data changes correctly.
(fixes "Impossiblator 3" and others)
- Improved VIC emulation (in-line color/reverse mode changes on half-chars).
- Cartridge handling rewritten.
- Added Mega-Cart cartridge emulation.
- Added Final Expansion cartridge emulation.
- Default memory configuration changed from full to unexpanded.
- Added paddle emulation.
- Added lightpen/lightgun emulation, currently only available for the following
ports: SDL, GTK+, cocoa, win32/win64 and msdos.
- Corrected the joystick support, since the VIC20 can only have one joystick
attached on the joystick port.
- Added support for the following userport joystick adapters: CGA/Protovision
(normally only used on the C64/C128), PET (normally only used on the
PET/CBM2), Hummer (normally only used on the C64DTV) and OEM.
** PLUS4 changes
----------------
- Added Digibooster SID Cart add-on emulation.
- Added SID Cart joystick port emulation.
- Fixed bug in tape recording.
- Improved graphics handling.
** C64DTV changes
-----------------
- Replaced old DTVSID emulation with ReSID-DTV.
- Minor bug fixes and emulation improvements.
- Added support for the following userport joystick adapters: CGA/Protovision
(normally only used on the C64/C128), PET (normally only used for the PET),
Hummer and OEM (normally only used on the VIC20).
** PET changes
--------------
- Corrected the joystick support, since the only way a PET can use a joystick
is by a userport joystick adapter, the following userport joystick adapters
are currently supported: CGA/Protovision (normally only used on the
C64/C128), PET, Hummer (normally only used on the C64DTV) and OEM (normally
only used on the VIC20).
** CBM2 changes
---------------
- Corrected the joystick support, since the only way a CBM2 can use a joystick
is by a userport joystick adapter, the following userport joystick adapters
are currently supported: CGA/Protovision (normally only used on the
C64/C128), PET, Hummer (normally only used on the C64DTV) and OEM (normally
only used on the VIC20).
** Unix changes
---------------
- Rudimentary PulseAudio sound driver has been added.
- Added support for dynamic loading of FFMPEG libraries.
- Added support for dynamic loading of OpenCBM and Lame library
* Changes in VICE 2.1
======================
** General
----------
- The VICEplus project has been joined with VICE. Thus, x64dtv is now
part of VICE.
- We can be contacted via IRC: #vice-dev on freenode
- Added a more accurate ReSID engine using floating point math (ReSID-FP).
- Added support for the USB HardSID.
- PAL emulation has been rewritten and optimized.
- Fixed the ACIA 6551 emulation. (x64/x128/xcbm2/xpet/xplus4)
- Monitor commands help text is now translated too
(in ports where translation is available at all)
- Monitor IO command now displays IO area even if it is currently
banked out.
- GCR file handling (.G64) issues an error message if the .G64 does not
have the expected outline. Before, VICE just silently ignored such
files.
- IRQ handling fix
** C64/C128 changes
-------------------
- Fixed the digimax sound generation.
- Added the RR clockport disable functionality at $DF00.0. Allows
to disable the RRnet.
- Improved REU compatibility and timing.
** C64 changes
--------------
- Added isepic cartridge emulation.
- Added Double Quick Brown Box cartridge emulation.
** VIC20 changes
----------------
- Improved the sound emulation.
- Fixed the lowest note bug.
- Improved VIC emulation (exact in-line color/reverse mode changes).
** C64DTV changes
-----------------
- New emulator.
** Unix changes
---------------
- XRandR fullscreen implemented
- Command line option `-fullscreen' is supposed to do something
useful.
- Vsync code imported from win32 (based on openGL extension).
see also doc/openGLsync-howto.txt.
- Vidmode (fullscreen support) is broken and therefore marked as
deprecated. It will be removed in the next release if no-one takes
responsibility to fix the broken code and is willing to maintain the
code.
- PAL Emulation (new implementation, improved speed) should be usable
again (it was broken on certain display depths).
- Log messages are always english.
- Only x11 keymaps will be installed when doing a 'make install'.
- MIDI cartridge emulation for x128, x64 and xvic.
* Changes in VICE 2.0
======================
** General
----------
- VICE development has moved to public services:
http://sf.net/projects/vice-emu
You can read the latest development in the Subversion
repository, file bug reports, and similar things.
Check it out!
- New Openserver 5.x, Openserver 6.x and Unixware ports.
- New AROS64 port.
- New QNX 4.x port.
- New HPUX (HPPA and IA64) ports.
- New SkyOS port.
- New Atari Mint port.
- New Solaris Express aka OpenSolaris aka Solaris 11 port.
** C64/C128 changes
-------------------
- Improved $01 behaviour with regards to unused bit fall-off.
- New experimental NEOS and Amiga mouse support.
- Added a working RTC to the emulation of the IDE64 cartridge.
- New more precise PAL emulation, works only with double size
and double scan.
- Added support for the Action Replay 4 and StarDos cartridges.
- Improved REU compatibility
- Fixed CPU timing bug introduced in 1.22 (demo "Borderless").
- Fixed bugs in the CIA emulation (demo "So-phisticated",
W. Lorenz testsuite).
- Fixed various bugs in VIC-II emulation: Sprite x-positioning,
Latch X/Y, video mode changes, DEN bit handling, raster IRQ,
NTSC sprites and sprites in full/debugging border mode (list
of fixed demos/games too long to mention here).
- RESTORE key is handled differently now, fixing an NMI bug
because the NMI was asserted too long before.
** VIC20 changes
----------------
- Added unconnected c-bus floating byte support.
- New more precise PAL emulation, works only with double size
and double scan.
** PET changes
--------------
- Added support for toggling CB2 sound output line.
** PLUS4 changes
----------------
- New more precise PAL emulation, works only with double size
and double scan.
** Drive changes
----------------
- Fixed block allocation and interleave.
** Unix changes
---------------
- Broken DGA1/DGA2 code removed
- XRandR fullscreen implemented for all (but CRTC/VDC) videochips.
- XRandR/Fullscreen can now toggle the Statusbar/Menu
- Fixed unix mouse for single sized display.
- Fixed mouse grab and xaw menu popup.
- After a CPU jam user can select to resume emulation without
reset.
** Miscellaneous changes
------------------------
- Added support for more 3rd party basic extenders to petcat.
- Extended BMP saving to support 24bit.
- Fixed the joystick code of all emulators to handle state changes
on both joysticks at the same time.
- New monitor commands and features.
- New memmap feature which allows tracking of memory accesses,
activated by the configure option --enable-memmap.
- Fixed bug in ffmpeg/FFV1 driver. Should be really lossless now.
Based on PR#43567 by Ryo ONODERA.
2010/05/27 - version 0.9.10 released
New feature: GEM clipboard support that allows you to pass data between
GEM clipboard and the host one (MS Windows, Mac OS X and X Window System).
It's currently implemented in FreeMiNT only and uses its aranym.xfs
virtual filesystem (U:\host\clipbrd). Please see setup instructions
in http://wiki.aranym.org/gem_clipbrd
Also couple of important bugfixes:
o fixed two nasty crashes in HostFS (related to recent symlink fixes)
o fixed Xcode building universal binaries on PPC
o VIDEL autozoom feature with correct aspect ratio for non-square pixels
2009/09/05 - version 0.9.9 released
This time mostly bugfixes:
o fixed possible crash in HostFS when quitting ARAnyM (not serious)
o fixed possible crash due to bug in libSDL up to v1.2.13 (very serious)
o fixed some redrawing problems in 8 and 16 color depths with soft NfVDI
o fixed all compile time warnings and Categories entry in aranym.desktop
o fixed weirdness when mouse pointer was leaving the window on Win and OSX
o fixed problem with invalid HostFS symlink breaking directory list
o improvement: HostFS symlinks are now shown as relative if possible
o fixed indirect descriptors handling in MMU
o fixed HostFS symlinks for certain path configurations
o added Mode key in the set of ARAnyM hotkey modifiers
o fixed Alt+mouse click problem on Mac OSX
o fixed Right Shift detection upon startup
If you found ARAnyM crashing previously when moving windows around
or doing any other activity where VDI had to blit screen areas then
please upgrade to this version ASAP. We've added a workaround for
a serious bug in the libSDL that was causing these weird ARAnyM crashes.
2009/04/25 - version 0.9.8beta released
o CPU: fixed TRAPcc and FTRAPcc instructions (for Guillaume's mplayer :-)
o VIDEL: pixel precise horizontal scrolling implemented
o fixed BUSY signal handling on the parallel port
o fixed mouse grab/ungrab/autograb (see below)
o added new ARAnyM mouse cursor (white arrow)
o added middle mouse button handling (in Eiffel mode)
o added suport for reversing mouse Y-axis in IKBD (used in Linux-m68k)
o fixed many DSP56001 instructions
o fixed NFJPEG on 64bit hosts
o fixed several NF drivers to work under FreeMiNT (not rely on __NF cookie)
o buggy JIT-FPU was disabled. Now FPU is precise though slower in JIT mode
Mouse grab/ungrab/autograb has changed: first, ungrabbing when leaving
ARAnyM window was fixed (issue with autograb on the window border).
Then, ARAnyM got a new mouse cursor (white one) so you can recognize
now when the mouse is grabbed (the cursor pointer is black in TOS)
and when it's not (the cursor pointer is white now).
At last, mouse autograb upon entering ARAnyM window was disabled until
we can ensure the Atari mouse cursor is positioned in sync with host
mouse cursor (will require Atari OS support, probably in a form
of aranym.acc and AES implementing appl_tplay).
Also the "AutoGrabMouse" config option has been removed.
2008/11/08 - version 0.9.7beta released
Mostly small fixes at various places plus a lot of work went into
improving the DSP56001 emulation. Also the sound DMA emulation is improved
to a point where GSXB driver should be unnecessary.
o improved automatic network setup on Mac
o reworked audio DMA emulation. Also added configurable host sound frequency
o one MMU bug fixed (regarding TTR)
o special support for halting ARAnyM on linux-m68k reboot (--halt)
o SDL GUI fixed (missing events after alerts)
o EMULOP is now privileged so if some old ARAnyM TSR starts crashing this is why
o joypads are now emulated
o joysticks and joypads can be configured in the config file
o '<>' and 'End' keys' scancodes made Atari compatible
Check the doc/config example file for the new [JOYSTICKS] and [AUDIO] sections.
0.74
- Several small game specific fixes/hacks/support. (Offensive,
Roadhog, GTA installer, Kingdom O' Magic soundcard detection,
Pirate booter, Armored Fist installer)
- Add the S3-specific 640x480 256 color mode. (fixes regression in "Wooden
Ships and Iron Men" and "I Have No Mouth And I Must Scream")
- Fix a stack overflow that could crash DOSBox.
- Add fake microphone input. (fixes Talking Parrot)
- Modify adlib turn off code, so that it doesn't turn off in
cases where the same sound is repeated over and over again.
- Several small fixes to the CDROM audio code. (HOMM2, Redneck
Rampage and others)
- Several improvements to the CDROM emulation code. (fixes Alpha
Storm and GT Racing 97)
- Some small CPU fixes that might fix something.
- Handle opcode 0xff subcode 7 as invalid instruction. (fixes dif-2 & others)
- Some hercules fixes. (Testdrive)
- Improve support for blanked parts that wrap around to the start of
the screen. (fixes Magic Circle demo and Sid&Al)
- Remove old OPL cores as the new ones seem to work very nicely.
- Modify movie recording code so that the movies aren't corrupt when
you exit dosbox without stopping the movie.
- Change RGB3x scaler to look more pretty.
- Improve initial register values compatility of the GUS.
- Added autodetection for Gameblaster. (games can find it now)
- Change render preferences a bit to be more compatible with Windows 7.
- Add DOS fixes to terminate program. (fixes Fortune Teller)
- Add FFREEP. (fixes Trucks)
- Improve FPU ST80 in C mode when writing zero. (fixes Antigok)
- Add special int10 scanline function. (fixes mz700 and probably lots
of games that mess with them)
- Fix scrolling in rarely used video modes. (fixes Orphee)
- Modify game specific hacks a bit so that Kick off 3 works again.
- Lots of fixes to the INT10 video parameter table. (Seven spirits
of ra and others)
- Add VGA blanking in machine=vgaonly. (used by Alien Carnage)
- CGA, PCJr, Tandy: Add video blanking, change display start latch
timing, sync pulse width correction.
- PCJr, Tandy: implement vertical retrace interrupt.
- PCJr, CGA: line-by-line video emulation.
- PCJr: support on-screen change of color modes 4medium to 16low. (used
by Ghostbusters booter)
- Hercules: Add green and amber monochrome support.
- All machines: only update the video timing when needed. (Jungle Hunt,
others that synchronize to the video screen might profit)
- Several small DOS fixes.
- Some UMB related fixes. (The Legacy without UMB)
- Fix version number of DSP for SB 1.5. (fixes a few games)
- Several VGA emulation improvements. (Allertone football manager)
- Some Tandy fixes. (Mech Warrior)
- Small improvements and fixes to the OPL emulation.
- Add low level Tandy DAC emulation.
- Some EMS fixes. (fixes Mortal Kombat and others)
- Change SoundBlaster DSP reset mechanism, add sb irq acknowledge logic.
(fixes stmik-based applications)
- Some interrupt pointer location modifications. (fixes Tinker Tales)
- Some fixes to the BOOT code. (fixes Last Mission)
- Respect write-only file information. (fixes Champions of Zulala)
- Some RTC fix. (fixes Tully Bodine and others)
- Improve mouse emulation to work better with Water World.
- Hopefully fix the translation of the configuration file.
- Speed up and fixes for the recompiler core. (pitfall2 pcjr)
- Change memory start location. (fixes 7th Guest installer)
- Several fixes to the batch file handling. (Shift and
use the typed first %0 instead of the parsed %0)
- Improve file redirection and redirected line ends. (fixes
Phantasmagoria 2 DOS installer)
- Fix compilation with new MAC os X version.
- Add 16C550A FIFO support to the serial port emulation.
- Improve modem emulation to get higher speeds.
- Change default samplerates to 44100, blocksize to 1024 and prebuffer to 20,
so that hopefully certain soundcards produce more fluent sound playback.
- Add some rarely used, but for some games critical flags to
the internal commands.
- Add -userconf flag, so that the userspecific configuration can
easily be used together with -conf configfile.
- Improve internal timing with repeating timers (especially with
the dynamic core).
(missed those and *emacs* the first time round because they pull
in their png dependencies via default-on options; they were included
in the test bulk build though)
The new version of tme, 0.8, can also emulate an Ultra 1, and
on x86 hosts with a supported host OS, the SPARCstation 2 and Ultra 1
emulations will now do dynamic binary translation. NetBSD 5.x seems
to run pretty well on the different emulations.
GNS3 is a graphical network simulator that allows you to design complex
network topologies. You may run simulations or configure devices ranging from
simple workstations to powerful Cisco routers. It is based on Dynamips, an IOS
emulator which allows users to run IOS binary images from Cisco Systems and
Pemu, an PIX firewall emulator based on Qemu.
---
Change Log For V3.8-1
SCP and libraries:
* Fixed bug in DETACH ALL if called at simulator exit (from Dave Bryan)
* Fixed bug in DO command handling of null arguments (from Dave Bryan)
* Fixed bug in DO handling of \\ (literal backslash) (from Dave Bryan)
* Fixed warnings in help printouts
HP2100 (all changes from Dave Bryan)
* Corrected DMS violation register set conditions
* JSB to 0/1 with W5 out and fence = 0 erroneously causes MP abort
* Fixed DJP, SJP, and UJP jump target validation
* BACI: Fixed STC,C losing interrupt request on BREAK
* MPX: Implemented 12792C eight-channel terminal multiplexer
* MT: Fixed missing flag after CLR command
* PIF: Implemented 12620A/12936A Privileged Interrupt Fences
IBM 1401:
* Fixed bug in ZA and ZS (from Bob Abeles)
* Fixed tape indicator implementation (from Bob Abeles)
* Added missing magtape modifier A (from Van Snyder)
* Added -n (no rewind) option to BOOT (from Van Snyder)
* Fixed bug to mask input to 6b on read (from Bob Abeles)
PDP11:
* Moved all Unibus/Qbus support routines to common I/O library
* Fxed bug in ASHP left overflow calc
* Fixed bug in DIVx
VAX:
* Fxed bug in ASHP left overflow calc
* Fixed bug in DIVx
* Resync time of day clock on any clock reset
---
Also some pkgsrc fixes, including Linux build:
* add MAKE_FLAGS in pkgsrc Makefile to define USE_NETWORK in dist makefile
* reorganize patch-aa for makefile to reduce diffs:
* use gmake (USE_TOOLS+=gmake in Makefile)
* check OSTYPE properly (so that it also builds on Linux)
* use "else <conditional-directive>" for OSTYPE checks
* revert previous gcc -> ${CC} change since -std=c99 seems mandatory
* update patch-ac for upstream cosmetics (for "set telnet" using raw mode)
* remove patch-ad for inline definitions since upstream has disabled it
* remove INSTALL_DATA_DIR as suggested by pkglint
Tested on NetBSD/i386 -current and CentOS 5.4 i386.
* Fixed HD boot drive when drive C: does not exist. TOS 2.06 was
crashing during the boot process when drive C: did not exist, but
* Fixed drive enumeration of GEMDOS HD emulation. Single partition
GEMDOS HD emulation did not work anymore when an ACSI HD image was
also used, due to some problems with the automatic drive letter detection.
* Fix ConnectedDriveMask with multiple, non-contiguous GEMDOS partitions.
* Fix to incorrect use of DESTDIR in python-ui installation
* more compact debugger output (return to emulation msg)
* update copyright, fix trace settings names
* fix: debugger memdump/disasm show/save/load need now to use '$' for hex
* Improved the CSS of the manual and compatibility list. The "font-
family:Fixed" did not work at all on Windows. Also cleaned up the
CSS in general.
* The hatari icons for the Windows executable must not be put into an
archive for linking.
---
version 0.12.4:
- Workaround for broken OSS_GETVERSION on FreeBSD, part two (Juergen Lock)
- oss: fix fragment setting (malc)
- oss: issue OSS_GETVERSION ioctl only when needed (malc)
- oss: refactor code around policy setting (malc)
- oss: workaround for cases when OSS_GETVERSION is not defined (malc)
- block: Free iovec arrays allocated by multiwrite_merge() (Stefan Hajnoczi)
- lsi: fix segfault in lsi_command_complete (Gerd Hoffmann)
- lsi: pass lsi_request to lsi_reselect (Gerd Hoffmann)
- lsi: move dma_len+dma_buf into lsi_request (Gerd Hoffmann)
- lsi: move current_dev into lsi_request (Gerd Hoffmann)
- lsi: have lsi_request for the whole life time of the request. (Gerd Hoffmann)
- lsi: use QTAILQ for lsi_queue (Gerd Hoffmann)
- tcp/mips: Change TCG_AREG0 (fp -> s0) (Stefan Weil)
- sh_pci: fix memory and I/O access (Aurelien Jarno)
- Fix incoming migration with iothread (Marcelo Tosatti)
- Fix SIGFPE for vnc display of width/height = 1 (Chris Webb)
- net: remove broken net_set_boot_mask() boot device validation (Eduardo Habkost)
- qcow2: Remove request from in-flight list after error (Kevin Wolf)
- qcow2: Don't ignore immediate read/write failures (Kevin Wolf)
- block: Fix multiwrite memory leak in error case (Kevin Wolf)
- block: Fix error code in multiwrite for immediate failures (Kevin Wolf)
- block: Fix multiwrite error handling (Kevin Wolf)
- scsi-disk: fix buffer overflow (Gerd Hoffmann)
- qcow2: Rewrite alloc_refcount_block/grow_refcount_table (Kevin Wolf)
- qcow2: Factor next_refcount_table_size out (Kevin Wolf)
- block: avoid creating too large iovecs in multiwrite_merge (Christoph Hellwig)
- json-parser: Fix segfault on malformed input (Kevin Wolf)
- linux-user: switch default ppc64 CPU to 970fx from 970 (Aurelien Jarno)
- target-sh4: MMU: fix store queue addresses (Aurelien Jarno)
- target-sh4: MMU: fix ITLB priviledge check (Aurelien Jarno)
- target-sh4: MMU: fix mem_idx computation (Aurelien Jarno)
- sh7750: handle MMUCR TI bit (Aurelien Jarno)
- UHCI spurious interrut fix (Paul Brook)
- tcg/mips: fix branch offset during retranslation (Aurelien Jarno)
- tcg/arm: correctly save/restore registers in prologue/epilogue (Aurelien Jarno)
- workaround for cmd646 bmdma register access while no dma is active (Igor V. Kovalenko)
- Fix corner case in chardev udp: parameter (Jan Kiszka)
- Don't set default monitor when there is a mux'ed one (Jan Kiszka)
- spelling typo (compatibilty) in hw/fw_cfg.c (Vagrant Cascadian)
- fdc: fix drive property handling. (Gerd Hoffmann)
- target-i386: fix commit c22549204a6edc431e8e4358e61bd56386ff6957 (TeLeMan)
- target-i386: fix SIB decoding with index = 4 (Aurelien Jarno)
- Fix segfault with ram_size > 4095M without kvm (Ryan Harper)
- target-i386: Fix long jumps/calls in long mode with REX.W set (malc)
- target-i386: fix lddqu SSE instruction (Aurelien Jarno)
- qemu-char.c: drop debug printfs from qemu_chr_parse_compat (Jan Kiszka)
- fix undefined shifts by >32 (Paolo Bonzini)
- Fix qemu -net user,hostfwd= example (Aurelien Jarno)
---
Also add a patch for e1000.c NIC to make wm(4) work on NetBSD guest:
---
* Reset EEPROM internal state on CS rise edge,
not SK rise edge during CS is low, per CS pin description in
the FM93C06 EEPROM manual:
"... a rising edge on this signal is required to reset the
internal state-machine to accept a new cycle ..."
Intel's em driver seems to explicitly raise and lower SK output
after CS is negated in em_standby_eeprom() so many other OSes
that use Intel's driver don't have this problem, but I can't find
articles that say the MICROWIRE or EEPROM spec requires such sequence.
* It isn't a good idea to use memset(,0,) to clear EEPROM state values,
so explicitly clear status members and preserve the previous EECD values
---
This patch is also filed as upstream QEMU bugs #581737.
While here, several tweaks in Makefile to appease pkglint.
---
The main change between release 0.4.7.2 and 0.6.0 is:
* Since late 2007, a complete rewrite of the emulator's base framework
has been going on. GXemul 0.6.0 is a very early release of the new
framework. So far, only the testm88k machine mode has been rewritten
to use the new framework, all other machine modes run in legacy mode
using the old framework (which is still included).
In other words: For most emulation modes, 0.6.0 will be exactly
like 0.4.7.2.
In addition to the new framework, a couple of other changes are
worth mentioning:
* Many unused, rarely used, and bogus emulation modes and features
were removed, to reduce the maintenance burden.
* Some operating systems listed on the guest OS page have had
new releases; the documentation has been updated to reflect this.
* New source code (but not the legacy part) is documented using
Doxygen comments, and there is a unit testing framework in place.
* There is now finally an install Makefile target, and the -j make
option can be used to parallelize builds.
Please read the HISTORY file for more details.
---
Also update pkgsrc files:
* update COMMENT and DESCR per the latest release note
* remove MAKE_JOBS_SAFE=no as mentioned in the above changes list.