0.11 (2011-02-20)
- MESS Software Lists support
- retire mkmamedb-xmame.sh, use "mame -listxml | mkmamedb" instead
- link/copy disks from extra if -j (--delete-found) isn't specified
- ckmame: display current game on SIGINFO (Ctrl-T)
- removed ROMPATH support since mame uses a path in the config file nowadays
fix PR pkg/44465
Changelog:
2010-01-08 <Jim@LS-RED>
* Version 8.0 released
2010-01-05 <Jim@LS-RED>
* xspim/Imakefile, spim/Makefile Jaymie Strecker [JStrecker@wooster.edu]:
Change install path from /usr to /usr/local.
Removed -D option, which doesn't exists on MacOS.
* pervasive:
Change license to a BSD license, update copyright notices, and
eliminated references to my old email address.
2009-12-05 <Jim@LS1>
* CPU/spim-utils.c (initialize_run_stack) [÷ý´ö´ÊîÜ® bupjae@hotmail.com]:
Simplify alignment of data on stack to ensure enough room is left
for environment and args at top of stack.
* PCSpim/PCSpimView.cpp:
Initialize stack with arguments when running program from run dialog.
* spim/spim.c (read_input) [Adam Wolfe Gordon
adam.wolfegordon@gmail.com}:
read_input filled buffer with last character of file not terminated by
newline.
* Documentation/spim.html [Dave Comer dmcomer@dmcmicro.com]:
Links to MIPS documentation were broken.
2009-09-22 <Jim@LS1>
* spim/spim.c (main) [Ohad Kammar ohad.kammar@ed.ac.uk]:
Did not return value from exit syscall.
2009-03-01 James larus <larus@ubuntu-laptop>
* xspim/buttons.c [Karl Ljungkvist k.ljungkvist@gmail.com]:
Step command reinitialized the stack, which changed registers (argc, argv).
2009-03-01 <Jim@LS1>
* Documentation/spim.html:
Updated web page to remove reference to spim source in PCSpim source distribution.
* PCSpim/PCSpimView.{cpp, h}, SettingsDlg.cpp, BreakpointDlg.cpp, MainFrm.{cpp, h}:
Force redisplay of data segment in situations in which register
values may have changed, such as $sp. Some cleanup as well.
* PCSpim/PCSpimView.cpp:
Properly initialize the PC at the first invocation of the step operation.
* PCSpim/PCSpimView.cpp, spim/spim.c [Pierce, Bill [pierce@hood.edu]:
Initialize the stack when initializing the world, so the stack is
initialized when single stepping as well as running.
2009-02-13 <Jim@LS1>
* CPU/mem.c (bad_mem_write) [phong le phongle@nlsim.com]:
Major memory leak: instructions overwritten by self-modifying code
were not freed!
* spim/Configure, xspim/Configure [Carlos Pantelides carlos_pantelides@yahoo.com]:
Added test for 64 bit Linux systems.
2009-01-22 <Jim@LS1>
* spim/Makefile:
Fix install commands so exceptions.s is installed at /usr/lib/spim.
Rerelease of spim.tar.*
2009-01-14 <Jim@LS1>
* pcspim.zip:
Rerelease of pcspim to correct installer problem. Visual Studio
9.0 required new crt and mfc libraries.
2009-01-01 <Jim@LS1>
* Released version 7.4
2009-01-01 James larus <larus@ubuntu-laptop>
* xspim/Imakefile, spim/Makefile:
Fix install directories for Linux.
2008-11-29 <Jim@LS1>
* xspim/buttons.c [karl.marklund@gmail.com]:
Command line arguments for assembly code not properly set.
2008-11-28 <Jim@LS1>
* PCSpim/PCSpimView.{cpp,h}:
Command line arguments not set properly on second and subsequent runs.
2008-11-01 <Jim@LS1>
* Version 7.4
* Tests/tt.core.s (madd_) Miguel Barão [mjsb@di.uevora.pt]:
Added test for madd(2, -1) with (hi, lo) = (0, -1).
2008-05-18 <Jim@LS1>
* CPU/scanner.l [liblit@cs.wisc.edu]:
Fix for flex 2.5.33 was too specific for that version and failed
on later versions, which propagated the change recoganized by fix
of2005-02-05.
2007-05-20 <Jim@LS1>
* CPU/run.c (run_spim):
Fixed handling of borrow from subtract of low-order word in MSUB
and MSUBU
2007-05-03 <Jim@LS1>
* CPU/run.c Tim ODonnell [timodonnell@gmail.com]:
Fixed handling of overflow from add of low-order word in MADD and
MADDU.
2007-04-15 <Jim@LS1>
* Documentation/spim.html:
Updated MIPS documenation links to reflect new file
versions. Included link to Nokia 660 port.
2007-01-14 <Jim@LS1>
* CPU/inst.c (inst_decode) Cai Hongxu [caihongxu@gmail.com]:
Did not correctly decode SPECIAL2 instructions (e.g., madd).
2006-08-28 <Jim@LS1>
* spim/Makefile:
Explicitly include exception handler path for "make test" to
eliminate need to install it before running test.
MESS is a source-available project which documents the hardware
for a wide variety of (mostly vintage) computers, video game
consoles, and calculators through software emulation, as MAME does
for arcade games. As a nice side effect to this documentation, MESS
allows software and games for these hardware platforms to be run
on modern PCs.
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.
ROMs are needed to play the games. Some are freely available on the
MAME homepage.
alternative from mk/jpeg.buildlink3.mk
This allows selection of an alternative jpeg library (namely the x86 MMX,
SSE, SSE2 accelerated libjpeg-turbo) via JPEG_DEFAULT=libjpeg-turbo, and
follows the current standard model for alternatives (fam, motif, fuse etc).
The mechanical edits were applied via the following script:
#!/bin/sh
for d in */*; do
[ -d "$d" ] || continue
for i in "$d/"Makefile* "$d/"*.mk; do
case "$i" in *.orig|*"*"*) continue;; esac
out="$d/x"
sed -e 's;graphics/jpeg/buildlink3\.mk;mk/jpeg.buildlink3.mk;g' \
-e 's;BUILDLINK_PREFIX\.jpeg;JPEGBASE;g' \
< "$i" > "$out"
if cmp -s "$i" "$out"; then
rm -f "$out"
else
echo "Edited $i"
mv -f "$i" "$i.orig" && mv "$out" "$i"
fi
done
done
* audio2tape
* work with stereo sound files
* don't crash on an empty ROM block
* tzxlist
* print data from ROM header blocks
* Assume non-ASCII characters are in Windows-1252
* snapconv: add -f flag to fix .szx files written with old
versions of libspectrum
* raw2hdf: ensure version data is always written
* Add Opus Discovery disk interface support
* Wii support
* Many improvements to Win32 UI, including an installer
* Support weak data in +3 disk images
* NTSC Spectrum support
* Add support for flipping disk images in single sided drives
* Add support for automatically merging both both disk images where
they are in separate files named with the text [Ss]ide[ _][abAB12]
* Switch to using Blip_Buffer (by Shay Green) for improved beeper and
AY output
* Allow beeper and AY volumes to be set
* Enable Beta 128 interface in 48K and TC2048 machines
* Add emulation of the Fuller Audio Box
* Allow sound to run from 2% speed up
* Add emulation of the Melodik and similar 48K-compatible AY interfaces
that use the 128K sound ports
* Add support for Pentagon 1024SL v2.2 16 colour modek
* Implement GTK+ drag and drop support
* Better support for international keyboards
* Allow svgalib UI to use full range of bit depths and scalers
* Allow GTK+ scalers to set window size in GTK+ UI
* Allow selection of "TV speaker" or "beeper"-style sound output
* Allow hot-key switching between full-screen and windowed mode in SDL UI
* New end of tape flag
* AF and AF' were swapped when reading and writing SZX files
* Support for Fuller Box and Melodik (and similar AY interfaces) in snapshots
* Support for Opus Discovery in snapshots
* Support for the NTSC 48K Spectrum
* Support for stereo sound files
* Add proper support for +2A/+3, Pentagon and Scorpion in .z80 files
* Various fixes for compiling with Visual Studio 6
* Various minor bug fixes/improvements:
* Looser signature checks for .dsk files
* --without-(bzip2|zlib) options to configure for Gentoo and similar
distributions
* Handle querying the block length for turbo and pure data blocks
with 0 length
* Fix loading of Warajevo TAPs with raw samples
* Fail sensibly if file decompression fails
* Remove various unused variables, initialisations etc
"Looks good" from wiz@ and obache@.
ChangeLog for 0.13.0 is not updated but there is a list in announcement:
This release consists of over 2,500 commits from 145 contributors.
Some major features were added in this release including:
- vhost-net: kernel-accelerating network backend for virtio devices (using KVM)
- qmp: significant improvements covering most monitor commands
- vnc: introduction of new encodings that dramatically improve bandwidth
(part of GSoC project)
- ivshmem: new shared memory device allowing multiple guests to share
a memory region
- mips: introduction of fulong mini-pc
- virtio-9p: introduction of a paravirtual file system passthrough mechanism
- hpet: many enhancements
- target-s390: support for s390 usermode emulation
- many more features and bug fixes
A special note about QMP support in 0.13.0. QMP is still considered
experimental in 0.13.0. There are no plans to change the protocol
in an incompatible way but there are likely to be missing features.
ChangeLog for version 0.12.5:
- audio/alsa: Handle SND_PCM_STATE_SETUP in alsa_poll_handler
- block: Handle multiwrite errors only when all requests have completed
- block: Fix early failure in multiwrite
- vpc: Use bdrv_(p)write_sync for metadata writes
- vmdk: Use bdrv_(p)write_sync for metadata writes
- qcow2: Use bdrv_(p)write_sync for metadata writes
- qcow: Use bdrv_(p)write_sync for metadata writes
- block: Add bdrv_(p)write_sync
- qcow2: Restore L1 entry on l2_allocate failure
- block/vdi: Fix image opening and creation for odd disk sizes
- block/vpc: Fix conversion from size to disk geometry
- qcow2: Remove abort on free_clusters failure
- vmdk: Fix COW
- qcow2: Fix creation of large images
- vmdk: fix double free
- qemu-options: add documentation for stdio signal=on|off
- target-arm : fix parallel saturated subtraction implementation
- target-arm : fix thumb2 parallel add/sub opcode decoding
- target-arm: fix addsub/subadd implementation
- target-i386: fix xchg rax,r8
- block/vvfat.c: fix warnings with _FORTIFY_SOURCE
- audio/alsa: Spelling typo (paramters)
- target-mips: fix DINSU instruction
- Correct definitions for FD_CMD_SAVE and FD_CMD_RESTORE
- qcow2: Fix corruption after error in update_refcount
- qcow2: Fix corruption after refblock allocation
- block: Fix multiwrite with overlapping requests
- qcow2: Fix error handling in l2_allocate
- qcow2: Clear L2 table cache after write error
- ide: Fix ide_dma_cancel
- usb-bus: fix no params
- Avoid crash on '-usbdevice <device>' without parameters
- Fix -usbdevice crash
- Fix multiboot compilation
- Fix missing symbols in .rel/.rela.plt sections
- target-ppc: fix RFI by clearing some bits of MSR
- Fix typo in balloon help
- arm_timer: fix oneshot mode
- arm_timer: reload timer when enabled
- qemu-sockets: avoid strlen of NULL pointer
- block: fix aio_flush segfaults for read-only protocols (e.g. curl)
- virtio-blk: fix barrier support
- block: fix sector comparism in multiwrite_req_compare
- pci: irq_state vmstate breakage
- qemu-img: use the heap instead of the huge stack array for win32
Pkgsrc changes:
patch-aa
patch-ao
patch-ba
patch-de
patch-ed
- lifted from previous (some adjustments per upstream changes)
patch-ab
- removed (looks similar fix applied in upstream)
patch-dd
- adjust configure for location of man page dir (as previous)
- fix detection for arm hosts
patch-dk
- removed (looks no longer applicable due to reorganized upstream)
patch-ee
- remove old e1000.c fix (pulled up to upstream)
- pull block/sheepdog.c build fix on *BSD hosts from upstream
patch-ef
patch-eg
patch-eh
patch-ei
- workaround for conflicts with SSP read() macro in NetBSD's <ssp/unistd.h>
(PR lib/43832: ssp causes common names to be defines)
patch-ej
- pull build/warning fixes in ui/vnc-enc-tight.c from upstream
patch-ek
- pull ATA PIO fix (by jakllsch@) from upstream
- pull warning fix from upstream
patch-el
- workaround for missing C99 FP macro on netbsd-4
(PR pkg/42899, but od(1) fixes for netbsd-4 not included)
patch-em
patch-en
- build fix on NetBSD/arm host using gcc-4.1.3
(built qemu binary on NetBSD/hpcarm host fails though)
patch-eo
patch-ep
patch-er
patch-es
- pull ESP SCSI DMA fixes (that might affect sparc) from upstream
patch-eq
- pull ESP SCSI DMA fixes from upstream
- disable broken ARC JAZZ floppy that causes hang on MIPS NT 4.0 guest
Makefile
- bump DISTNAME
- add makeinfo to USE_TOOLS
XXX: gets "qemu-doc.texi:7: warning: unrecognized encoding name `UTF-8'."
- adjust SUBST_FILES.qaudio per upstream changes
- enable nbd support *BSD per upstream update
PLIST
distinfo
- update per each file
pkgsrc changes: none.
upstream changelog:
3.2.1 to 3.2.2: (September 17, 2010)
* Fixed bug with window centering; if enabled and the the window was
larger than the desktop, the window would be moved offscreen.
-Have fun!
3.2 to 3.2.1: (August 25, 2010)
* Improved behaviour of joystick 'hat' movement. This should fix bugs
most visible in Yars' Revenge.
* Fixed bug in debugger rewind states; bankswitching wasn't being
performed during the rewind. Related to this, fixed a similar issue
with the debugger 'loadstate' and 'savestate' commands.
* Added game properties info and snapshot for the newly released
'Halo 2600' ROM.
3.1.2 to 3.2: (August 20, 2010)
* NOTE: because of the many event-related changes in this release, all
event mapping should be reset to defaults after starting Stella for
the first time. As well, because of other internal changes, older
save-state files are no longer valid.
* Many improvements to joystick handling code, particularly for analog
axes. Navigating the UI should be much smoother now, and remapping
events to analog axes should be less 'twitchy'.
* Added ability to assign and remap 'combo' events in emulation mode.
Combo events are basically a sequence of normal events (up to 8)
that are generated from a single event (ie, one button on a joystick
could generate up to 8 events). Updated Input Settings UI to
access and modify these events.
* Default mappings are now available in UI and emulation mode for the
first 'hat' detected on a joystick/gamepad. Related to this, a hat
now works exactly like an axis in UI mode (holding down a direction
continues that direction until the hat is released/centered).
* Several major improvements to the debugger:
- the disassembler can now process multiple entry points, and
caches entry points as they're encountered (ie, the disassembly
isn't 'reset' each time a bank change occurs or you exit and
re-enter the debugger)
- preliminary support for disassembling from zero-page RAM
- re-added ability to change banks with the 'bank' debugger
prompt command and within the ROM disassembly UI
- user labels in disassembly are now supported again
- 'runto' command is now case-insensitive, and shows a progressbar
while searching through the disassembly
- the debugger window can be resized between ROM loads (previously,
the app had to be restarted)
- fixed bug in Distella disassembler output, where it sometimes
generated addresses above $FFFF
- a vertical line separates the disassembly from the raw bytes
* Fixed behaviour of SWCHB and SWBCNT; pins set to output now remember
the values previously written. Some ROMs use this functionality for
extra storage. Special thanks to Omegamatrix of AtariAge for advice
and test ROMs in this area.
* Fixed bug when reading from illegal TIA addresses; a Space Invaders
hack was showing pink enemies instead of white ones. Again, special
thanks to to Omegamatrix of AtariAge for advice and test ROMs in this
area.
* Fixed bug in handling INPT4/INPT5 latches from VBLANK; a least one
ROM was working in Stella when it didn't on real hardware.
* Added 'ramrandom' commandline argument, which is used to randomize
all RAM in the system; otherwise, the RAM is zeroed.
* Added 'finishing touches' to some of the UI descriptions, giving a
better explanation of the functions. Related to this, certain
options now show a message box explaining the option in further
detail (particularly the ROM Audit mode). As well, when starting
Stella for the first time, a prompt appears to select a ROM
directory.
* Fixed bugs in the ROM launcher when viewing certain PNG images not
created by Stella. Related to this, the official PNG library is now
included in the Stella codebase (version 1.4.3). Also added composite
snapshots for those ROMs which consist of several games. Thanks go
to Buzbard of AtariAge for these images.
* Added several fixes for crashes on 'small' systems (those systems
where the maximum resolution is less than 640x480).
* Tweaked bankswitch autodetection for 0840, DPC+, E7 and UA schemes.
* Improved F8 bankswitch autodetection for Yars Revenge in 8in1 ROM.
* Updated DPC+ bankswitch scheme to latest specifications.
* Snapshots taken in continuous snapshot mode are now timestamped, so
older files are never overwritten.
* Fixed a TIA segfault that could occur with certain ROMs.
* The 'center' application window functionality can now be changed
without having to restart the application. Related to this, mouse
positioning bugs when using the Linux version in OpenGL mode with
SDL 1.2.14 have been fixed.
* Reworked the manual, dividing it into 'Getting Started' and
'Advanced Configuration' sections. It still contains the same info
as before, but hopefully in a better organized way.
* Updated Help dialog; it was showing incorrect info for some OSX
shortcuts.
* Updated OSX build script to not crash when a previous build is
detected, and to properly handle filenames with spaces.
* Updated included ZLib to latest release version (1.2.5).
3.1.1 to 3.1.2: (May 3, 2010)
* Modified 'showinfo' command to accept levels of output, where
increasingly larger numbers provide more debug output. Related to
this, added UI item to modify 'showinfo'.
* Updated DPC+ bankswitch scheme to latest specifications, including
support for 32K ROMs with ARM code (the ARM code is ignored for now).
* Fixed bug in saving patched ROMs using DPC and DPC+ bankswitch
schemes; the saved image didn't actually include any changes made by
the user.
* Removed 'uselauncher' from the UI, since disabling it will remove
the ROM launcher on all future runs, and not allow one to enable it
again. It's still available from the commandline, for those that
have a need for it.
3.1 to 3.1.1: (April 26, 2010)
* Fixed program crash when using RIOT addresses and labels in the
debugger console prompt.
* Updated DPC+ bankswitch scheme to latest specifications.
3.0 to 3.1: (April 22, 2010)
* Fixed a major bug with text drawing in software rendering mode.
Switching between windowed and fullscreen mode while text was being
shown could result in garbled text or even a program crash.
* Fixed issues when using 'sleep' timing, whereby a lockup could occur
when changing video modes, and/or Stella would consume more CPU time
than was necessary.
* Integrated Distella disassembler, completely replacing the previous
disassembler. The entire infrastructure has not been completely
ported yet. As a result, labels defined by the user or from a
DASM symbol file aren't actually used in the disassembly, and almost
all distella config options are disabled. These will be addressed in
a future release.
* Completely reworked the debugger cartridge interface, so that
the disassembly is dynamic (ie, the debugger tracks when cart address
space has changed, and automatically performs a re-disassembly).
* All carts with extended RAM that differentiate between read and write
ports now behave correctly when a read from the write port occurs.
* Added more complete support for the more esoteric bankswitch
schemes in the debugger. These schemes now support accurate
disassembly and ROM patch functionality. Related to this, fixed a
bug in disassembler view when a failure to patch a ROM still showed
the (incorrect) patched results.
* Added ability to disable TIA object collisions, independent of
enabling/disabling the objects. Previously, one had to completely
disable an object to avoid collisions, but now an object can be
enabled (and seen) but still have its collisions disabled. These
actions are tied to the same keys as the enable ones, except the
'Shift' key is also used.
* Added preliminary support for 'DPC+' bankswitching scheme, thanks to
Darrell Spice Jr and Fred Quimby.
* Added '16in1' bankswitching scheme, which works with various
ROMs labeled '128-in-1 ...' (the database has been updated for
these). Related to this, switching between multicart ROMs for 2in1,
4in1, 8in1, 16in1 and 32in1 now shows a UI message indicating which
ROM is active.
* Reverted some of the TIA improvements with respect to 'starfield
effect' as seen in "Cosmic Ark" and "Stay Frosty". The emulation is
now more accurate as compared to the majority of consoles in use.
* Added debugger pseudo-register '_rwport', which traps on a read from
the write port. This differentiates from reads that are normally
part of a write cycle (ie, it traps only on inadvertent reads).
* Added 'resolvedata' commandline argument and associated UI item, used
to set the "resolve data sections" config option in Distella
(vs. treating all address space as code).
* Added 'runtopc' debugger command, used to step until encountering the
given program counter. This is also available in the ROM disassembly
UI from the right-click context menu.
* Added 'listfunctions' and 'delfunction' debugger commands to
access/remove user-defined functions. Related to this, fixed a bug
in 'function' command that could cause a program crash.
* Added 'cls' debugger command, used to erase the text and history
from the debugger prompt.
* Removed the 'listwatches' and 'poke' debugger commands, as they
were redundant.
* Removed the 'loadlst' debugger command and the ability to use a
DASM .lst file. This code was incomplete, and no longer fits with
the recent disassembler improvements. Support for this may return
in a future release.
* Modified 'disasm' debugger command to accept a second argument
indicating the number of lines to disassemble.
* Improved tab-completion in the debugger prompt; it now completes
on functions and pseudo-registers.
* Added emulation of the "Sega Genesis" controller, with two buttons
that are directly supported on a real system.
* The ZLib library is now included in the core code, so Windows
developers no longer have to track down the ZLIBWAPI archive.
* Many changes to the MacOS X port, bringing it more in line with
other systems:
The application is now known as 'Stella' (instead of StellaOSX).
Two versions are available: the first is a 32-bit Universal Binary
for OSX 10.4 - 10.6, and the second is 32/64-bit Intel-only for
OSX 10.6 (aka Snow Leopard). The Intel version is compiled with the
very latest compiler (LLVM/Clang), resulting in better performance.
The keyboard handling is changed to match other systems in terms of
where the keys actually are on the keyboard (ie, the OSX Command key
corresponds to Alt, and the OSX Control key corresponds to Control).
The application menu has been cleaned up and simplified, and it
now shows the correct shortcuts for menu items.
The settings file is now (according to Apple standards)
'~/Library/Preferences/net.sourceforge.Stella.plist'.
The base directory (where all other Stella stuff is located) is now
'~/Library/Application Support/Stella'.
Because of these changes, all your settings will have to be entered
again.
* Added 'ctrlcombo' commandline argument, which toggles the use of the
control key as a modifier key. This is useful if you want to press
'Control' and 'R' in a two player game, and not have the combination
treated as 'Control-R' (which will issue a ROM reload).
* Added 'usemouse' commandline argument and associated UI item. This
toggles the use of the mouse as a controller of any type.
* Added 'uimessages' commandline argument and associated UI item.
This toggles showing of UI messages overlaid on the screen.
Critical messages are still shown, though.
* Added ability to take multiple snapshots in a given interval every
x seconds. This is currently tied to the 'Alt-s' key and is not
remappable (for now). The interval can be set with the 'ssinterval'
commandline argument and within the UI, and defaults to 2.
* Many changes to the FrameBuffer and UI code for 'smaller' systems.
Stella will now scale correctly to small screens, down to 320x240
(which is the absolute lower limit supported). Related to this,
added 'maxres' commandline argument, which is useful for developers
testing on such systems.
* The About dialog now shows the version of SDL in use, and the type
of CPU the application is running on (i386, x86_64, etc).
* Improved 'listrominfo' commandline argument to list all information
from Stella's internal ROM database, including a heading. This
output can be imported into a spreadsheet or database program.
* Renamed 'tiafloat' commandline argument to 'tiadriven'. The
emulation of the behaviour of floating TIA pins is also much more
accurate.
* Reworked state files so that they're associated with the cartridge
type used, not the MD5sum of the ROM. This is useful for developers,
since the same state file can now be loaded from different ROMs,
as long as the cart type stays the same. This also fixes a bug
where loading from a non-existent state file could cause Stella
to crash. Because of these changes, old state files will no longer
work.
* Fixed bug in certain editable text fields, where pressing Return/Enter
would disable any further input.
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.
intended, the format string parser that generates the va_list does not support
all formatting characters.
Make this code portable by failing to parse any format string at all, not just
the ones that aren't fully supported.
Bump PKGREVISION for the functional change, though this code is probably
generally unused anyway. Unmark as BROKEN and NOT_FOR_PLATFORM - I think all
uses of va_list casts are inhibited.
Dynagen is a front-end for use with the Dynamips Cisco router emulator.
It uses an INI-like configuration file to provision Dynamips emulator
networks. It takes care of specifying the right port adapters, generating
and matching up those pesky NIO descriptors, specifying bridges,
frame-relay, ATM switches, etc. It also provides a management CLI for
listing devices, suspending and reloading instances, determining and
managing idle-pc values, performing packet captures, etc.
0.2.8-RC2
* mainly a bug fix release
0.2.8-RC1
* hypervisor control protocol has been modified
* Support of the Cisco 1700 platforms, with WIC-1T, WIC-2T and
WIC-1ENET cards
* Support of WIC-1T and WIC-2T for the 2600, 2691, 3725 and 3745.
* Support of NM-NAM and NM-CIDS interfaces.
* Plugin system
* Bug fixes.
snes9x version.
Snes9x 1.52
- IMPORTANT NOTICE: The structure of savestates (also known
as snapshots / freeze files) is incompatible with older
versions! Snes9x 1.52 cannot read the savestates created
by 1.51 or older. (zones)
- Highly acculate SPC700 and S-DSP emulation. (Blargg)
- Replaced APU emulation cores (SPC700 and S-DSP) with
ones provided by Blargg's SNES_SPC library. This renders
savestates incompatible with older versions. (BearOso, zones)
- SPC7110 emulation. (byuu, neviksti)
- Merged bsnes' SPC7110 emulation code. Note that the .rtc
file of Far East of Eden Zero is incompatible with older
versions. (zones)
- Removed graphics pack support. It's no more necessary. (zones)
- Replaced S-RTC emulation code with bsnes' one to keep the
good compatibility of .rtc files between the two
emulators. As a result, Daikaijuu Monogatari 2 now
outputs the .rtc file, and its .srm file is incompatible
with older versions. (zones)
- Added savestate supports for DSP-2, DSP-4, ST-010 and
OBC1. (zones)
- Added UPS support. (byuu)
- Fixed DSP-4 AI problem. (Jonas Quinn)
- Fixed invalid memory accesses in C4 and OBC1 codes. (zones)
- Fixed invalid memory accesses in BSX codes. My mistake. (zones)
- Fixed the read value of $213e, $4210 and $4211. (zones)
- Fixed the writing of word values at the memory boundary. (zones)
- Fixed the bug that the unnecessary SA-1 emulation
continues once any SA-1 games are launched. (zones)
- Removed old color blending codes. (zones)
- Removed too-old Snes96 and ZSNES snapshot support. (zones)
- Updated command-line options. (zones)
- Code cleaning. (zones)
- GTK+ : Added a port of Snes9x to the GTK+ toolkit. (BearOso)
- Unix : Reconstructed and simplified all the contents.
Some features have been removed to be simple, and many
options have changed. GTK+ port is recommended for most
of Linux users. (zones)
New System Drivers Supported:
-----------------------------
- Consul 2717 with PMD-32 [Miodrag Milanovic]
- Elektor SC/MP [Miodrag Milanovic]
- Epoch Super Cassette Vision [Wilbert Pol]
- Hawthorne Technologies TinyGiant HT68k [Miodrag Milanovic]
- Hector MX40c [JJ Stacino]
- Hector MX80c [JJ Stacino]
- Microsystems International Limited MOD-8 [Miodrag Milanovic]
- MITS Altair 8800bt [Miodrag Milanovic]
- Robotron K1003 [Miodrag Milanovic]
- Science of Cambridge MK-14 [Miodrag Milanovic]
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
- Ausbaufähiger Mikrocomputer mit dem U 880 (Huebler/Everts) [Curt Coder]
- Hector 2HR+ [JJ Stacino]
- Hector 2HR [JJ Stacino]
- Hector HRX [JJ Stacino]
- Kaypro 4 [Robbbert]
- Kaypro 10 [Robbbert]
- Omni II [Robbbert]
- Victor [JJ Stacino]
- XOR S-100-12 [Curt Coder]
System Driver Changes:
----------------------
- [APEXC] Fixed image loading [Robbbert]
- [BETA] Fixed display flickering. [Curt Coder]
- [C64] Emulated the Commodore 1541 disk drive at hardware level.
G64 images are now supported (D64 support coming) [Curt Coder]
- [EXL100] Added 7041 rom dump. [Wilbert Pol]
- [EXIDY] Improved sound compatibility. [Robbbert]
- [FMTOWNS] Various updates: [Barry Rodewald]
* Added FDC IRQ and disk density select
* Fixed ANK CG ROM enable
* Re-worked VRAM access, allowing startup logos to display on the Marty and Car Marty
* Added basic keyboard support
* Added standard 2 button joystick support
* Corrected text mode colours
* Implemented CD-ROM controller, and CD-DA support
* Hooked up YM3438 interrupts
* Re-worked video code to support a basic CRTC implementation
* Fixed VBlank IRQ
* Added sprite implementation
* Mapped RF5C68 wave RAM
- [GBA] Remapped Select button to MESS default. [Justin Kerk]
- [GLASGOW] Upgraded artwork to be clickable. Fixed various driver
problems. Chess can be played by using the mouse. [Robbbert]
- [HUEBLER] Added keyboard. [Curt Coder]
- [INTV] Fixed intvkbd. Fixed disassembler. [Robbbert]
- [MPF1] Converted to use driver state, added speech and printer
ROMs, implemented MONI/INTR keys, monitor BREAK logic, added
artwork for mpf1b, added layout for mpf1p. [Curt Coder]
- [ORIC] Telstrat regression has been fixed. [Robbbert]
- [SMS] Added SegaScope (3D-Glasses) support to Sega Master System I
drivers (i.e. sms1, sms1pal, smsj & sg1000m3). To enable this, enter
Driver Configuration menu and turn on SegaScope, then go in the Video
Options menu and choose one of the SegaScope views. [Fabio Priuli]
- [SMS] Added Terebi Oekaki graphic board support to Japanese drivers
(i.e. smsj & sg1000m3). To enable this, start emulation of "Terebi
Oekaki", then enter Driver Configuration menu and turn on the Tablet.
Once enabled, remappable controls will also appear in the Input (this
System) menu. [Fabio Priuli]
- [SMS] Added Reset button to SMS1 and improved Lightgun behavior based
on "Color & Switch Test". [Enik Land]
- [TI81] Added v1.6K BIOS dump. [critor]
- [TI85/TI86] Converted the serial interface to a device. [Wilbert Pol]
- [TI99] Fixed a crash when the user mounts cartridge dump files in legacy
mode. [Michael Zapf]
- [XOR100] Added terminal support. [Curt Coder]
Source Changes:
----------------
- The core is based on MAME 0.136. This incorporates all features of the
update to this core. [MAME team]
- Cleanups (static qualifiers, headers, renames, reduced global symbols, dead
code cleanups, brace cleanups, and more multisession friendly init code).
[Atari Ace]
- WD17xx write track supported in proper way instead of using more
sector writes [Michael Zapf]
- Added F4 character-set viewer to many computers [Robbbert]
- The -listdevices option has been temporarily renamed to -listmedia,
until it is merged with MAME's -listdevices command [Robbbert]
- Fixed bug 1770. Listmedia will indicate if a driver has no devices,
or if the driver doesn't exist. [Robbbert]
Changes from 0.136
==================
1) Up to date with baseline 0.136 (RB)
2) More typecasting so compiling as C++ can succeed (couriersud)
3) Cleaned up #ifdefs, added more -verbose output, improved SDL
1.3 support (couriersud)
4) Cleaned up Windows support (couriersud)
5) Fixed possible weirdness enumerating controller buttons (Skito)
tap backend work on NetBSD (NetBSD uses an ioctl to get the tap name).
patch-ab: add support for the "select without ATN" to the emulated
esp device. NetBSD's esp(4) uses this command and aborts after a timeout.
While there fix the homepage URL.
Now NetBSD/sparc 5.0.1 boots and runs fine in qemu-system-sparc on a
NetBSD/amd64 host.
Bump pkgrevision.
approved by agc@.
New in This Version
* After a long pause, finally updated fMSX-Unix port. fMSX-Unix source code
is once again available as part of the core source code distribution. It
has been debugged on the Ubuntu Linux. Let me know of any incompatibilities
with other Unix flavors.
* Extended fMSX-Symbian port to support UIQ3 phones from Sony Ericsson and
Motorola. As I only have key-operated Motorola Z8, testers with pen-based
SE phones are badly needed.
* Added run-time compatibility with 8bpp, 16bpp, 24bpp (32bit pixels) and
32bpp screen depths to fMSX-Unix. IMPORTANT: At this moment, built-in
config menu, debugger, and NetPlay dialog will only work at X11 screen
depth that matches your compile-time setting (i.e. -DBPPxx) in Makefile.
Make sure you always compile fMSX-Unix for your default screen depth.
* Disabled secondary slots for primary slot #0 in MSX1 mode. DiskROM boots in
MSX1 mode again.
* Now syncing all sound channels after loading state, sound does not get
"stuck" any more.
* Renamed command line option -zoom/-nozoom into -soft/-nosoft.
* Moved a few key definitions, so that "!@#$%^..." characters can now be used
as indices into Keys[]. This is done for compatibility with GDK key events.
* Renamed KeyMap[] to KeyState[] to avoid name clash with MacOSX system API.
* ALT swaps joysticks 1/2 on all platforms where applicable.
* CONTROL/SHIFT keys now act as FIRE-A/FIRE-B joystick buttons on all
platforms.
* Improved fMSX-Symbian sound code, although sound problems still persist on
some UIQ3 phones.
* Split fMSX-Symbian/S60 configuration menu into four tabs, making "Video"
and "Audio" settings separate.
* Added "Audio Latency", "Skip Frames", and "Sync Updates" settings to
fMSX-Symbian.
* Added to fMSX-Symbian ability to use Nokia E61/E62 [FUNC] key in the
built-in menu.
* Fixed an fMSX-Symbian bug where pieces of virtual keyboard remained on
screen after closing it.
* Pressing [8] key on fMSX-Symbian now invokes virtual keyboard, if enabled,
for the phones which do not have the [EDIT] key.
New in fMSX 3.4
* Added network play option to fMSX-Windows and fMSX-Symbian!
* Now not opening printer file until the first character is printed.
* Fixed OUTD/OUTDR opcodes to modify B register before the OUT operation.
* No longer trying to load state files from LoadFile().
* Defined "INLINE" properly, depending on the C standard supported by the
compiler.
* Finally retired #ifdef SOUND as sound is always compiled in anyway.
* Added new, much better, scanline simulation and video softening effects to
fMSX-Windows.
* fMSX-Windows full-screen mode now runs in 640x480 resolution.
* Fixed problem with full-screen SCREEN 6/7 in fMSX-Windows.
* fMSX-MSDOS has got complete (non-truncated) emulation for SCREEN 6/7 and
TEXT80 screen modes.
* fMSX-MSDOS now always runs in 640x480x15bpp VESA screen mode.
* Added options to simulate TV scanlines (-tv/-notv) and zoom display (-zoom/
-nozoom) to fMSX-MSDOS.
* Options -sync/-nosync/-vsync work properly again in fMSX-MSDOS.
* Added new "Fill & Soften" zoom mode to fMSX-Symbian. It is rather slow
though.
* Added ability to use virtual keyboard in fMSX-Symbian to enter filename
when saving files from the built-in menu.
* Fixed problem with gameplay being too fast in fMSX-Symbian.
* Fixed possible source of instabilities in the S60 open file dialog in
fMSX-Symbian.
* Fixed exit via Symbian-specific menu.
* Fixed premature termination of the emulation thread when exiting
fMSX-Symbian, soundtrack recording and config saving work again.
* The [C] ("Clear") key is no longer used to toggle sound in fMSX-Symbian. It
acts as [BACKSPACE] instead.
New in fMSX 3.3
* Save state format has changed due to serious changes to the emulator
architecture!
* Added OpZ80() function and the FAST_RDOP macro to the Z80 emulation to
optimize code access in architectures with memory-mapped I/O.
* Added subslot support to all slots.
* Moved PAINTER.ROM to slot 0:1, FMPAC to slot 0:2, MSXDOS2.ROM to slot 3:0.
* Reduced the number of user cartridges back to two (A/B). All the other
slots are taken by system cartridges (MSXDOS2, FMPAC, etc.).
* Locked user cartridges in slots 1/2 to subslot 0, as external cartridges
often do not use subslots.
* If Konami's GMASTER2.ROM or GMASTER.ROM is present in the program
directory, fMSX will now load it as a system cartridge.
* Fixed state file name autogeneration.
* Fixed -rom option behaviour.
* Fixed hangup when switching from MSX1 to MSX2 mode.
* Fixed MSXDOS2.ROM and FMPAC.ROM support.
* Fixed StateID() function to take all cartridges and system ROMs into
account.
* Fixed non-working joystick autofire.
* Now checking joysticks and mice once per frame.
* Now accelerating horizontal mouse movement in 512-wide screen modes.
* Mouse buttons are now merged with joystick buttons.
* Fixed mouse-as-joystick option.
* Improved file type detection, now automatically detecting saved states,
disk images, cartridge ROMs, fixed font files.
* Readded proper support for fixed text mode fonts with LoadFNT().
* Added proper emulation for the WD1793 FDC (WD1793.c).
* Added unified .FDI disk image support (FDIDisk.c).
* Added support for standard, SV738, Arabic, and Brazilian WD1793-based disk
interfaces.
* Added support for GZIPped disk images.
* Made disk geometry discovery smarter (CP/M-80 v2.2 now boots).
* Moved 720kB floppy utilities (Floppy.c) and SCC sound chip emulation
(SCC.c) into EMULib.
* Added command line option to patch DiskROM calls (-simbdos). With this
option on, fMSX takes over DiskROM disk access routines. When -wd1793 is
used, fMSX will simulate real WD1793 FDC instead.
* Rehashed built-in menu to make screen space for more options.
* Added menu options to select RAM and VRAM sizes, create new disk images,
save disk images, patch DiskROM calls, load and use fixed text mode fonts.
* Added virtual keyboard to fMSX-Symbian, invoked by pressing [EDIT] or left
[SHIFT] key. The keyboard can work in three modes: "Off", "Single Key
Entry", and "Multiple Keys Entry".
* Added display orientation settings to fMSX-Symbian ("Landscape",
"Portrait", and "Auto").
* Finally fixed opendir() problem in EMULib-Symbian. All built-in menu file
dialogs work now!
* Further extended and optimized Symbian screen rendering routines.
* Fixed and optimized TV scanline simulation in fMSX-Symbian, made scanline
effect stronger.
* Now saving RAM and VRAM size settings in fMSX-Symbian.
* fMSX-Symbian now uses true 512-wide display drivers for SCREEN6, SCREEN7,
and TEXT80.
* fMSX-Symbian will now save printer output to E:\Others\fMSX\PRINTER.OUT.
* Fixed system warnings in when flipping Nokia E70 open/closed.
* Fixed possible crash when selecting an initial file in fMSX-Symbian.
* Improved "About" box in fMSX-Symbian.
* Moved fMSX-Symbian file selection root to E:\.
* When initial file selection cancelled, fMSX-Symbian will now boot into
plain BASIC (i.e. no cartridges and no disks).
* Renamed fMSX-Symbian binary and resource files to avoid name clash with
fMSX/S60 port by Juha Riihimaki.
* Fixed mouse support in fMSX-MSDOS.
New in fMSX 3.2
* Added ChangePrinter() function to set printer redirection file.
* Moved disk operations to a separate submenu of the built-in menu and added
"Eject Disk" options.
* Added an easy "Load File" option to the built-in menu and the fMSX-Windows.
* Added options to redirect printer and sound logging output to the built-in
menu and the fMSX-Windows.
* Added error messages to fMSX-Windows and fMSX-Symbian.
* Added frame rate display option to fMSX-Symbian.
* Added "fill screen" zoom option to fMSX-Symbian.
* Added MIDI soundtrack logging to fMSX-Symbian (saved into E:\Sounds and can
be used as ringtones).
* Added configurable button and key mappings to fMSX-Symbian.
* fMSX-Symbian application menu is now split into three pages.
New in fMSX 3.1
* fMSX-Windows and fMSX-DOS are now compiled with OpenWatcom C++ and use the
new EMULib framework. Note that keyboard assignments have changed!
* Added hardware reset key ([F11]) to reboot MSX.
* Added universal screen buffer based Z80 debugger ([F10]) that works on all
platforms.
* Added universal configuration menu ([F8]) that works on all platforms.
* Added ResetMSX() function to restart MSX, possibly in a new operating mode.
* Extended LoadCart() function to load or eject cartridges at runtime.
* Added Mode variable to store all configuration options.
* Replaced -vperiod/-hperiod settings with easier to understand -pal/-ntsc
settings.
* Replaced -uperiod setting with a finer -skip setting that controls the
percentage of skipped frames.
* Fixed Z80 NMI handling to comply with the standard.
* Fixed SRAM file saving.
* Fixed state file name generation.
* Added autofire options for joystick buttons.
* fMSX-Windows has got a new menu-based GUI, improved sound, and faster
graphics updates.
* Fixed USB joypad support in fMSX-Windows.
* fMSX-MSDOS now uses 16BPP screen mode.
* Updated the documentation.
New in fMSX 3.0
* Added transparent support for GZIPped disk images as disks. You can now
pass .GZ file names in -diska/-diskb command line options.
* Added transparent support for directories as disks (thanks to Miguel
Colom). You can now pass directory names in -diska/-diskb command line
options. Changes to such disks will not be saved for safety reasons.
* Added DirectDraw-based full screen mode to fMSX-Windows. Press [ALT]+
[ENTER] to switch in and out of the full screen mode. Use it with caution,
as DirectDraw is notoriously unstable.
* Added a full-fledged debugger to fMSX-Windows. Press [F11] to invoke the
debugger.
* Fixed several bugs in MIDI implementations that made some games silent when
logging soundtrack or using MIDI output in fMSX-Windows.
* Better adapted fMSX-MSDOS to 320x200 VGA screen.
* "Sync to VBlanks" option is now default in fMSX-MSDOS.
New in fMSX 2.8
* Fixed initial envelope volume in AY8910.c, thanks to Koichi Nishida.
* Fixed a problem with 8kB/16kB cartridges failing to execute in the MSX1
mode.
* When guessing a MegaROM mapper type, fMSX now tries to look at a data file
CARTS.CRC containing pairs of cartridge CRCs and mapper types.
* Added support for the third cartridge slot. You can now give up to three
cartridge names on the command line and three -rom options.
* Cartridges are now inserted into slots 1:X (A), 2:X (B), and 3:0 (C). The
RS232.ROM has been moved to slot 3:3.
* Added support for the 64kB Panasonic FM-PAC cartridge with 8kB SRAM (-rom
7).
* fMSX loads files FMPAC.ROM, MSXDOS2.ROM, and PAINTER.ROM automatically, as
long as they are in the program directory and there is an empty cartridge
slot available.
* Added support for ASCII/8kB cartridges with 8kB SRAM (Xanadu, Royal Blood).
Please, inform me if this has broken support for any "normal" ASCII/8kB
cartridges.
* Added support for ASCII/16kB cartridges with 2kB SRAM (Hydlide 2). Please,
inform me if this has broken support for any "normal" ASCII/16kB
cartridges.
* All battery-backed SRAM save files have now got .SAV extension. For
example, GameMaster2.rom will produce a SRAM file named GameMaster2.sav.
* Added reporting of bad memory writes with -verbose 8.
* The R-Type cartridge and its variants are supported by the ASCII/16kB
MegaROM mapper (-rom 5).
* HAL's Hole In One Special cartridge is supported by the GENERIC/16kB
MegaROM mapper (-rom 1).
* Konami's Majutsushi (aka Mah Jong 2 or RC765) cartridge is supported by the
GENERIC/8kB MegaROM mapper (-rom 0), although the D/A audio circuit
emulation is not implemented.
* Added fast-forwarding option ([F9]) and moved fixed font switch to a
different key ([CONTROL]-[F9]).
* Changed [F6],[F9],[F10] assignments in fMSX-Windows to comply with other
fMSX ports.
* Added Options menu to fMSX-Windows.
* fMSX-FreeBSD now compiles without changes on FreeBSD 5.x (FreeBSD 4.x users
may have to change the location of the soundcart.h).
* Fixed sound in fMSX-FreeBSD by increasing the number of sound fragments
from 8 to 64. If any of FreeBSD developers are reading this, could you
explain why this is needed?
New in fMSX 2.7
* Switched to the latest version of the OpenWatcom C/C++ compiler.
* The infamous Windows problem with spaces in directory names seems to be
fixed by using a newer compiler.
* Made some arrays "const" to facilitate porting to run-from-ROM platforms
(cellphones, PDAs, etc.).
* Joystick problems in fMSX-Windows are fixed.
* Descreased the default sound volume in fMSX-Unix.
* Increased the default wave synthesis frequency to 44.1kHz.
* Minor fixes to the Unix sound drivers.
* Removed MIDI volume control from Windows sound drivers.
* Added TV raster effect to fMSX-Windows.
New in fMSX 2.6
* Added separate (and correct) emulation for the i8255 PPI chip.
* Added masking to lower bits of video table addresses.
* Added timing and other fixes to the Z80 core (courtesy of Omar Cornut).
* Fixed line coincidence and VBlank handling (thanks to Vincent van Dam).
* Save state (.STA) file format has changed.
* Fixed a bug that messed up screen table addresses when restoring state.
* Fixed a bug that left dummy memory page dirty when loading GZIPped ROMs.
* Fixed a -home option bug on Solaris (thanks to Eric Boon).
* Fixed fMSX-Unix to allow it to have an application icon under WindowMaker.
New in fMSX 2.5
* Added emulation state saving and loading.
* Added support for GZIPped ROM files and state file.
* Changed keyboard handler in fMSX-Unix. Hopefully, the key assignments
should now be more natural.
* Added sound on/off switch to fMSX-Unix and fMSX-MSDOS.
* Keyboard assignments changed everywhere.
* added Axlon and Mosaic RAM expansions for Atari 400/800
* added emulation of 1400XL, 1450XLD, MIO and Black Box
* added support of .PRO copy-protected disk images
* implemented tape loading with variable bitrates
* implemented cassette writing via hardware registers
* added switching between NTSC and PAL color palettes
* added emulation of XEP80 and a prototype 80 column card
for the Atari 1090 (SDL only currently)
* added emulation of CX85 numeric keyboard (Java and SDL only)
* event recording added (-record, -playback): save your game walkthrough
using the "-record mygame.dat" and later impress your friends by
your game skills or highest score using the "-playback mygame.dat"
* NTSC Filter option added to UI
* -directmouse added to SDL and X11 (used for -mouse pad or koala)
* monitor supports arrow keys - e.g. up-arrow for history
* SDL: interpolated scanlines (use -scanlinesnoint to disable)
* SDL: added -mouse, -mousespeed, -grabmouse (also Alt+M)
* SDL: visual configuration of keyboard joysticks layout in the UI
(F1 -> Controller Configuration -> Define layout)
default mapping changed to 4,8,6,5 (joy0) and A,W,D,S (joy1)
* R: device can be serial-only, network-only or both (selectable)
* R: device now supported on MS Windows and Dreamcast as well
* a completely new port to Java using NestedVM, running also as an applet
* Falcon/TT: removed Devpac dependency in asm files (now gcc friendly)
0.8.C:
SMS: Fixed the input and reset emulation when the territory was
set to "domestic"(Japan) and FM emulation was enabled; the emulated system was erroneously
being treated as a Game Gear in a few places when those conditions were met.
GB: Fixed initialization of "HRAM" on virtual power toggle/reset.
GB: Fixed a bug(still many left) in the external RAM handling code, fixing an
emulator crash with "Wizards & Warriors - Chapter X".
0.8.C-rc1:
NGP: Fixed an unaligned memory access bug in the memory r/w handlers, causing crashes on platforms
that do not support unaligned memory accesses.
NES: Fixed an intialization bug in mapper 193.
Added define "ALWAYS_INLINE" to force the compiler to always inline speed-critical functions, and added it to
many emulation functions in that category. gcc can be a pain in the butt.
GBA: Fixed a bug that would cause data corruption and the loaded game to crash whenever a state was
saved(but the state itself, and loading it, was fine) on a big-endian platform.
Fixed several instances of mismatches between format strings and passed argument types, which could cause
nonsensical information to be printed on big-endian platforms, and perhaps some little-endian platforms as well.
Fixed the minimum field-width specifier on the statements that print the loaded game's CRC32 in several
places.
Added the "format(...)" function attribute to the MDFN_DispMessage(), MDFN_PrintError(), and MDFN_printf()
function prototypes to catch format string errors.
Fixed the order of the sound drivers in the documentation(it was erroneously implying that OSS had a higher
priority than ALSA for the default sound driver), and added various notes to explain the sound drivers.
If an invalid "sounddriver" is selected, Mednafen will now print an error message and not initialize sound
instead of silently selecting the default sound driver.
SexyAL: Altered the argument order of SexiALI_Convert() to make more sense.
Fixed the broken conversion code used when the frame count passed to Write() is greater than 2048.
Fixed a bug/design flaw in the SexyAL SDL sound driver that can cause a crash during program
deinitialization.
Added support for "float" output format to the ALSA driver.
The ALSA driver will now try all formats that SexyAL's conversion code supports if the desired
format is not supported by the output device, rather that simply erroring out as before.
Added support for converting to 24-bit and 32-bit PCM output formats from the source format(which
is still fixed to signed 16-bit).
The driver function RawCanWrite() is now passed a pointer to a uint32_t, which it sets to the number
of bytes that can be written without blocking, rather than returning the value directly, so that
the return value can be used as a success/failure indicator.
The driver function RawWrite(), and the "user" function Write(), will now return 1 on success, 0 on
(fatal) error, rather than returning the amount of data written.
The OSS driver was testing the return value of open() incorrectly. Fixed.
SexyAL is now compiled as C++(but doesn't use many C++ features yet), which necessitated
adding several explicit casts in various code, and fixing some inconsistent function prototypes and
declarations.
JACK: Fixed a stereo playback crashing problem(a loop count was being calculated incorrectly).
JACK: Switched to using jack_client_open() instead of the deprecated jack_client_new().
JACK: The "sounddevice" setting is now used, to specify the JACK server to connect to.
JACK: Fixed a possible race condition in RawCanWrite().
JACK, SDL: Changed the inter-thread ringbuffer setup to be less likely to underrun, while not hurting
latency.
JACK, SDL: Additional playback position precision is now obtained by using
jack_get_time()/SDL_GetTicks(). This will improve Mednafen's performance with larger fragment sizes
with these drivers, but smaller fragment sizes are still preferred for latency-to-underrun-occurrence-ratio
reasons.
Renamed the "byteorder" field of SexyAL_format to "revbyteorder", and changed it to a boolean type,
to avoid confusion over what it actually represents.
Removed erroneous dependency on CD-ROM emulation when WonderSwan emulation is enabled in the configure script.
Added sanity checks to the first track number and total track count returned from libcdio, to prevent
a crash in Mednafen if the libcdio driver fails and returns nonsensical values.
Removed unused file sms/state.h
Fixed a very-old bug that caused joystick unique ID collisions if more than 2 of the same "type" of physical
joystick were available.
Fixed a string constant-to-(char *) problem in sms/romdb.h.
Mednafen is now compiled with -fsigned-char, to prevent any potential problems on systems with an "unsigned" char
type as default.
The included Tremor is now compiled with "-fvisibility=hidden" to work around a dynamic symbol collision
problem with libsndfile(BUT, -fvisibility is only available in gcc 4.0 and newer).
This solution may not be correct...
Updated Tremor to the latest SVN version.
PC-FX: Added a semi-hack to fix a missing background layer problem in parts of "Angelique Special". The
underlying problem(no emulation of the programmable BG0 subscreen) will be corrected in 0.9.0.
PC-FX: Removed the unused V810 cache structures(Mednafen 0.9.0 will feature cache emulation, however).
PC-FX: Added a few CPU variables to save states whose absence could have caused netplay/movie desynch.
PCE: Fixed virtual power-toggle initialization of VCE and gamepad input variables.
PCE, PC-FX: Fixed the emulation of SCSI command 0xDE, mode 0x1. The value returned was too small by
2 seconds.
PCE, PC-FX: Fixed the sector count for the last track(which influences the leadout track start position/total
sector count) in multi-track CUE/BIN CDROM images.
PC-FX: Fixed the handler address called when a TRAP instruction is executed.
PC-FX: Fixed the exception code set when an FPU divide-by-zero occurs(previously, it was being set to the
integer divide-by-zero exception code).
Fixed several problems in file.cpp, including buggy and overly-complicated MDFN_read*le() functions,
and a problem with the const-ness of the return value of strrchr() with gcc 4.4.
Changes for version 78
* Fixed an issue where, after failing to load a ROM, the
emulator would be paused forever.
* Added a toggle to joypad configuration to allow or disallow
direct use of modifier keys.
* Changed the option to disable screensaver so that it uses
XResetScreenSaver and xdg-screensaver due to XTestFakeKeyEvent
being removed in the latest X.org release.
Changes for version 77
* Added pt_BR translation. [Tiberio Vitor]
* Fixed a bug where the sound driver would switch from SDL
in the Preferences dialog if one of OSS or PortAudio was not
installed.
Upstream changes:
2.8.4 to 3.0: (September 11, 2009)
* Huge updates to the TIA emulation system. Illegal HMOVEs are now
handled correctly, resulting in improvements to many ROMs (thanks
to Wilbert Pol for many ideas and code for these improvements). All
HMOVE emulation 'cheats' were removed; the emulation is now cycle-exact
in this area.
* Improved emulation of the Cosmic Ark 'starfield effect', also used in
Stay Frosty; the emulation now looks very accurate.
* Many improvements to the normal TIA rendering code, fixing problems
when disabling certain graphical objects (certain objects were
being misdrawn when others were enabled/disabled).
* Improved TIA collision handling in the non-displayable area of the
screen; this fixes problems in RAMRacer ROM.
* Improved TIA redraw problems/graphical garbage when ROMs generate
many more scanlines than a real TV would allow; this fixes problems
in Q-Bert and the recent Playaround demo.
* Added 'Fixed Debug Colors' option similar to the no$26k emulator.
This allows each graphical object to be drawn in a fixed color,
more clearly showing how the objects interact. HMOVE blanks are
also shown in a different color. The TIA now emulates a 7-color
register model, allowing even shared objects to show different
colors. This is toggled with the 'Alt Comma' key.
* Related to 'Fixed Debug Colors', HMOVE blanks can now toggled during
TIA display with the 'Alt-m' key.
* Added rewind functionality to the debugger, where states are saved
after each step/trace/scanline/frame advance. Pressing 'Alt-r' or
clicking the new rewind button will undo up to 100 previous
operations.
* Added 'electron beam indicator' to the debugger TIA output. Basically,
this is a visual pointer indicating the position of the electron gun
when scanning the display.
* Added ability to completely disable fullscreen mode, which fixes
problems for some people where fullscreen mode was being entered
even if it wasn't enabled.
* Added '-joyallow4' commandline argument and associated UI item to
allow all 4 directions to be pressed simultaneously on a joystick.
* Improvements made to the ROM launcher: the backspace key now goes
to the parent directory (this key can be remapped), and previously
selected directories are now automatically selected.
* Added support for 2IN1 bankswitching scheme, where two ROMs are
present in one binary. Currently supported are 2, 4, 8, and 16K
ROMs.
* Added bankswitch support for the 6K version of Starpath/Supercharger
ROMS. This allows the 6K version of Cubis to run.
* Updated bankswitching schemes FASC and MB; they are now known as
FA and F0, respectively. This naming brings Stella in line with
other emulators and programming utilities.
* Fixed editing of cheats in the Cheat Dialog; the old cheat wasn't
being removed.
Relevant changes:
0.9.9 -> 0.9.10
scsp/68k:
- Added code to make SCSP emulation frame-accurate (optional,
enabled with --enable-scsp-frame-accurate configure switch).
- Added a new 68000 emulation core.
software video core:
- Added line scroll emulation.
- Improved user clipping.
- Added some basic vertical scroll emulation, enough to get
Sonic Jam working.
gtk port
- Gtk port is now compiling on Mac OS X.
- Fixed full software screenshots.
- Fixed store function in transfer dialog.
general:
- Added Lithuanian translation.
- New sound core using OpenAL.
- Added joystick core for Mac OS X.
- Added a joystick core for Linux.
- Added a PSP port.
- Added support for loading ELF binaries.
- Now using gettimeofday when available for better resolution.
- Fixed save states.
0.9.8 -> 0.9.9
opengl video core:
- Fixed a bug that was causing some games to
crash (albert odyssey, dragon ball, etc.)
gtk port:
- Automatic detection of current locale.
qt port:
- Added support of DESTDIR and --program-prefix
- Automatic detection of current locale.
- Added support for multiple players.
general:
- Hooks for renaming .desktop on installation.
- .yts file are now installed.
- Fixed parallel builds.
- SDL peripheral core now handles all connected
joysticks.
0.9.7 -> 0.9.8
vdp2:
- Fixed a bug in software renderer with rotating
backgrounds.
opengl video core:
- Added gouraud shading and mesh processing.
This is not enabled by default.
software video core:
- Fixed user clipping.
gtk port:
- Added mouse support.
- Configuration dialog now displays key names instead
of values. Also made it so each different configuration
is saved. This broke compatibility with old .ini files.
general:
- Added mouse emulation.
- Added de, es, it, pt-br and sv translations
- Support for "out of src" build.
- Fixed compilation for non supported platforms.
For instance this should fix compilation on dragonfly bsd.
Fixed compilation on GNU/Hurd too.
0.9.6 -> 0.9.7
vdp1:
- Added clipping for line-based drawing to software renderer.
vdp2:
- Toggling a screen is now core independent.
- Added per-character priority to software renderer.
gtk port:
- Fixed fullscreen setting and added a keep ratio one.
- Fixed a bug in the vdp2 debugger that was causing the emu to crash.
- Full software mode can be compiled again.
- Fixed segfault when taking screenshots in full software mode.
- Fixed default value for region.
- Window position is now saved and restored when re-opening the emu.
- Fixed a problem when changing input cores.
qt port:
- Improved compilation process: make (un)install now works.
- Fix crash when configuring input while using translated version.
general:
- Fixed a bug that was causing older save states to fail.
0.9.5 -> 0.9.6
sdl joystick core:
- Fixed it...
software video core:
- Improvements and bug fixes.
gtk port:
- Tagged more strings to be translatable.
- Fixed bugs when setting a resolution in settings.
- Fixed controller settings so keys can now be configured even if
emulation is not started.
qt port:
- Removed libsjw core.
general:
- Updated copyright for some files where it was missing or
inaccurate.
- Fixes and improvements to the build process: fixed cross compilation
of Qt port, added Wii port support, found a better way to "trigger"
compilation of gen68k, fixed a bug when calling the sub-configure,
.inc files are now cleaned, added MINI18N variable support, forwarded
distclean rule to qt makefiles, configure now make sure the compiler
is a cross compiler when cross compiling
- Added a workaround for the "limits.h" problem... now distros should
fix their headers...
- Fixed the .desktop files for linux (gtk + qt ports)
- Added translation files for fr and pt in the repository.
Changes for version 76
* Fixed a bug where the fullscreen window would lose focus.
* Updated fr_FR translation [Tukuyomi]
* Added es_VE translation [inukaze]
Linux compatibility package based on the SuSE Linux distribution.
Please visit http://www.suse.com/ for more information about SuSE
Linux.
This package supports running ELF binaries linked with glibc2 that
require QT3 shared libraries.
Linux compatibility package based on the SuSE Linux distribution.
Please visit http://www.suse.com/ for more information about SuSE
Linux.
This package supports running ELF binaries linked with glibc2 that
require QT3 shared libraries.
to be adressed but example programs i had installed before worked fine.
The errors i currently get are:
1 Could not load Mozilla. HTML rendering will be disabled.
2 err:seh:raise_exception Exception frame is not in stack limits => unable to
dispatch exception.
Where 1) is annoying but 2) is more revealing.
It would bomb out on:
freetype.c:166: error: 'FT_MulFix' undeclared here (not in a function)
freetype.c:166: warning: type defaults to 'int' in declaration of 'pFT_MulFix'
This is due to a newer version of freetype. Patch by Shunichi Fuji. Still
fails to compile on other errors, but one more down.
Changes for version 75
* Fixed screensaver disable option so it doesn't send a fake keypress
when Snes9x isn't focused.
* Changed resolution setting to store width and height instead of
a screen's mode index.
* Fixed a bug where the PortAudio driver wouldn't output sound at
44100hz.
* Allowed changing the behavior of the ESC key so it exits Snes9x.
Changes for version 74
* Fixed a couple thread deadlocking problems in the audio mixer
that could result in no sound.
* Removed the powerof2 function to fix compile problems on OpenBSD.
* Changed fullscreen mode to issue a raise signal to the window
manager after remapping.
Changes for version 73
* Fixed a compile error when XRandR support isn't being built.
* Included Tukuyomi's updated French localization.
Changes for version 72
* Added a new regular-interval audio mixer to significantly improve
sound quality.
* Added a new SDL audio output driver.
Changes for version 71
* Refactored video driver initialization code.
* Removed dependency on gtkglext for OpenGL output.
* Allowed theme icon to be used for window mini-icon.