* patch-aa is for tap detection bug.
* patch-bb is for build on NetBSD 4.
The patch-aa requires bump of PKGREVISION.
Pointed out by Sergey Svishchev in private e-mail.
Changes:
0.143
New System Drivers Supported:
-----------------------------
(none)
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
- PMI80 (except for cassette) [Robbbert]
- SDK85 [Robbbert]
- SDK86 [Robbbert]
- SELZ80 [Robbbert]
- ACRNSYS1 (except for cassette) [Robbbert]
Skeleton drivers:
-----------------
- Intel MDS [Robbbert]
System Driver Changes:
----------------------
- prof80: Refactored the ECB bus to use slot interface, and
separated GRIP into a slot device. [Curt Coder]
- intv: Implemented scrolling [Huygens]
Implemented reading from stic registers other than collision
Bug 167 - Diagnostic cartridge fixed
- nakajies: Added dump for the DreamWriter 450.
[Roberto Carlos Fernandez Gerhardt, Wilbert Pol]
- prose2000: update a lot of comments, bare beginnings of
upd7720 px line and int support. [Lord Nightmare]
- [intv] Proper rendering of overscan borders and native resolution, [H@P]
along with various updates and cleanups
* Converted intv driver to use native Intellivision resolution of 159x192.
Scaled intvkbd driver so carts look correct.
* Added overscan borders. Approximate, but at least measured on an actual Intellivision.
* Added a STIC header file, defining various object sizes, and register and bit names.
* Cleaned up render_color_stack_mode() and render_fg_bg_mode() loops,
eliminating the ugly fix-ups at the end of each row.
* Updated the code found in UNUSED_FUNCTION, but neither compiled nor tested it.
Software Lists:
----------------
- snes.xml: softlist wip documentation and redump [MESSfan]
- a800.xml: added some extension and support disks (+ comments) to the list. [K1W1]
- a5200.xml: replaced ballblazer dump [K1W1]
- snes.xml: Added a new snes dump [badinsults, d4s, MESSfan] (nw)
- intv.hsi: Some corrections to the Intellivision hash file [John Rieman]
Source Changes:
----------------
- Added device types for all known WD17XX variants, and enforced inverted DAL lines
with e.g. FD1771/FD1791. Used correct variants in drivers, except TRS-80. [Curt Coder]
0.142u6
New System Drivers Supported:
-----------------------------
- Pioner (Specialist clone) [Miodrag Milanovic]
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
(none)
Skeleton drivers:
-----------------
- Morrow MPZ80 [Curt Coder]
- Sharp PC-G850V [Sandro Ronco]
System Driver Changes:
----------------------
-bullet: Fixed terminal input. [Curt Coder]
-abc800m: Added Slutprov factory test card ROM dump. [FatArnold, robcfg]
-pce220: Added keyboard input and fixed the LCD emulation. [Sandro Ronco]
-x1: Implemented preliminary video partial updates effect in Sharp X1 HW [Angelo Salese]
-pcg850v: Fixed bankswitch and added LCD emulation. [Sandro Ronco]
-pc1512: Added Amstrad PC1512 v3.2 BIOS. [DRomero]
-pc: Added keyboard controller ROMs to Amstrad XT clones. [John Elliot]
-pc: Added non-working drivers for Amstrad PC2086, PC3086, PC2386. [John Elliott]
-mpz80: Connected S-100 bus memory and I/O read/write lines. [Curt Coder]
-abc80: Refactored the Luxor ABC bus to use slot interface.
ABC800 has an ABC832 disk drive for now until default device
inputs can be passed onto slot devices. [Curt Coder]
-sordm5 : Added proper FD rom image and fixed floppy type [Marcel Vasak]
-pcjr - Fixed floppy issues [Carl]
-intv: Added support for both hand controllers: [H@P]
* Updated player 1 to use the left hand controller by default.
* Prefixed all left hand controller inputs with "Left/", right hand controller inputs with "Right/".
* Added all 16 digital disc inputs, and added full position names ("Up", "Up-Up-Left", "Up-Left", "Left-Up-Left", "Left" ...)
* Added optional alternate disc control using analog inputs. Use "Driver Configuration" menu to enable analog support per hand controller.
* Renamed "DEL" to "Clear", "ENTER" to "Enter", "But1" to "Upper", "But2" to "Lower-Left" and "But3" to "Lower-Right".
* Removed frogger hack -- must use left hand controller to play.
* Fixes mess bug ID's:
- 164 Second hand controller not emulated
- 165 Auto Racing hangs (user must map left hand controller keypad to continue in AUTO RACING).
-atvga: New AMI bios based on Headland GC102 chipset [kaylee]
-pce220: Added serial I/O. [Sandro Ronco]
Software Lists:
----------------
-snes.xml: softlist wip documentation and redump [MESSfan]
-ngp.c: split ngp and and ngpc softlists and updated the driver accordingly [Fabio Priuli]
-ngpc.xml: added a few new dumps [xxxddd, Kaylee]
-mpz80: Added floppy softlist. [Curt Coder]
-Added preliminary S-100 bus emulation with SLOT interface.
Refactored MPZ80 and its Wunderbus I/O card to implement the S-100 bus. [Curt Coder]
Source Changes:
----------------
-upd765: Fix issue accessing floppies when initially drive is empty [Carl]
-pc_mouse: Fixed mouse issues, making it work in OS/2 [Carl]
-upd765: Fixed cylinder number increment on EOT, helps minix2 to boot [Carl]
0.142u5
New System Drivers Supported:
-----------------------------
- Fujitsu FM-8 [Barry Rodewald]
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
(none)
Skeleton drivers:
-----------------
- Sharp MZ-6500 [Angelo Salese]
- Casio FP-1100 [Angelo Salese]
- Casio FP-6000 [Angelo Salese]
- Hitachi B16 [Angelo Salese]
- NEC PC-100 [Angelo Salese]
- Fujitsu FM-11 EX, Fujitsu FM-16 Beta. [Barry Rodewald]
- IBM5550 [Angelo Salese]
- OKI if800 model 60 [Angelo Salese]
- Mitsubishi Multi 16 [Angelo Salese]
- Toshiba Pasopia [Angelo Salese]
- ADC Super Six SBC. [Curt Coder, Al Kossow]
- Pasopia 1600 [Angelo Salese]
- Matsushita MyBrain 3000 [Angelo Salese]
System Driver Changes:
----------------------
- bbc : Convert the BBC drivers to use mames mc6845,
graphics modes are working good, still missing the cursor,
missing split screen support, and MODE 7 is shifted a
couple of characters to the right. Removed the old
src/mess/video/m6845.c [GordonJ]
- saturn: verified saturn bios 1.01 labels [ElBarto]
- neocd: added front loading neogeo cd dump [furrtek]
- PlayStation GPU splits 4 point polygons into triangles. [smf]
- saturn : Moved intback command inside a timer and hooked up SMPC
direct mode inputs in Sega Saturn, allows it to load the CD
menu and makes the diagnostic cart to be operational [Angelo Salese]
- coco : Fixed floppy index pulse. [Curt Coder]
- prof80g52: Added ROM banking and HD6345 CRTC. [Curt Coder]
- Added PAL timing support for Sega Saturn [Angelo Salese]
- sega sms : Add proper rom name/location
for japanese v2.1 bios. [Lord Nightmare, ElBarto, SMSPower]
- Implemented CART DRAM emulation in Sega Saturn [Angelo Salese]
- sms : More SMS rom name corrections and comment updates.
[Lord Nightmare, SMSPower]
- sms Added a few more rom labels for SMS bioses. [Lord Nightmare, SMSPower]
- Unknown alt romset for IBM PC JX [Angelo Salese]
- pc9801 : Added 2hdif.rom dump [Angelo Salese]
- at: added Award 3.03 bios [Darkstar]
- pc: added zenith 2.9e bios [Darkstar]
Software Lists:
----------------
- apple2.xml: TOSEC mis-labeled a couple of DOS 3.3 versions,
fixed that, also set display names properly. [R. Belmont]
- apple2: Enabled usage of softlist for Apple II series [R. Belmont]
- coco: added cart softlist [K1W1]
- super6 : Added software list. [Curt Coder]
- snes.xml: softlist wip [Lord Nightmare]
- snes.xml: softlist wip documentation and redump [MESSfan]
Source Changes:
----------------
- MESSUI - finished adding HLSL sliders per game. The settings
will be saved if your system is set up correctly. Note the
page will be greyed out if D3D version 9 is not selected.
Another note: The Defaults and Reset buttons don't do anything yet. [Robbbert]
- MESSUI - fixed the 5 sliders on the Display sheet. [Robbbert]
- MESSUI - advanced sheet - fixed frameskip. [Robbbert]
- MESSUI - Sound property sheet - fixed Audio Latency slider. [Robbbert]
- MESSUI - Screen property sheet - fixed Number of Screens slider. [Robbbert]
- MESSUI - Advanced property sheet - fixed 3 full-screen sliders. [Robbbert]
Fixed typo in FULLLSCREENCONTRAST. Fixed my mistake with Gamma
and Contrast controls on Display property sheet. [Robbbert]
- MESSUI - Debug property sheet - used a better icon. [Robbbert]
- MESSUI - Removed option to load a cheat file. [Robbbert]
- pc_fdc - Data rate detection added [Carl]
- at - Implemented RTC IRQ callback for AT machines making OS/2 to boot [Carl]
- pc_fdc - Fix booting from double density media with at bios set 0 [Carl]
0.142u4
New System Drivers Supported:
-----------------------------
(none)
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
(none)
Skeleton drivers:
-----------------
(none)
System Driver Changes:
----------------------
- c64 : Enabled writing to cartridge RAM @ 0x8000-0x9fff. [Curt Coder]
- apple2e : Add location for the two code roms of the Apple IIe enhanced.[Lord Nightmare]
- apple2e : Restored the rom IC type information inadvertently removed by
the addition of the locations for the Apple IIe enhanced roms. [Lord Nightmare]
- c64 : Added mapper for the "Simons' BASIC" cartridge. [Curt Coder]
- fidelz80 : Added Sensory Chess Challenger (model VSC). [Lord Nightmare, Kevtris, Sandro Ronco]
- bbc : removed all the old video speed hacks, getting ready to
switch over to using the MC6845 in the MAME core. (GordonJ)
- c64 : Added mapper for the "Super Explode! v5.0" cartridge. [Curt Coder]
- bbc : Cleaning up the BBC driver in an effort to switch to MAMEs MC6845, also
removed large amounts of unused code from the m6845 code in MESS [GordonJ]
- x1 : Implemented proper Sharp X1 pixel clock divider [Angelo Salese]
- mk90 : Fixed reset vector. [Curt Coder]
- tec1 : added JMON (not working) [Robbbert]
- chessmst : Added layout and input ports. [Sandro Ronco]
Software Lists:
----------------
- c64 : Added 8/16K cartridges to the softlist. [k1w1]
- snes.xml : verified dumps and added alt dumps [MESSfan]
- Added floppy softlists for C64, C128, VIC-20, and Plus/4. [Curt Coder]
- c16 : Added cartridge softlist and connected it to the driver. [Curt Coder]
- snes.xml : Added proper dump for Super Gussun Oyoyo (Jpn, Prototype) [MESSFan]
- c64 : Added some cartridges to the softlist. [k1w1]
- c64 : Cart softlist fixes. [k1w1]
Source Changes:
----------------
- pc_fdc - added disk change signal [Carl]
- note that with new tools there are no unicode issue with tools (wimgtool)
0.142u3
New System Drivers Supported:
-----------------------------
(none)
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
(none)
Skeleton drivers:
-----------------
(none)
System Driver Changes:
----------------------
- amico2k: Implemented keyboard and display. [Curt Coder]
- amico2k: Fixed LED flickering. [Curt Coder]
- bbc: Started cleaning up the code as it has been neglected
for a long time. [GordonJ]
- psx: Most FMVs now have fluent video, again [R. Belmont]
- psx: Fix register readback of DMA completion, FMVs work
way better, SOTN gets into game [Fabio Priuli]
- prof80: Fixed display corruption. [Curt Coder]
- prof80: Added GripS 1.15 ROM. [Curt Coder]
- apple2e, apple2ee: Added keyboard ROMs. [Curt Coder]
- next: Added softlist and floppy device. [Curt Coder]
- atom: Fixed 2400Hz timer, CPU type, and added a comment
about the ERROR bug. [Curt Coder]
- abc802, abc806: Added ROM dump for ABC55/77 keyboard. [robcfg, Curt Coder]
- psx: fix FMV colors [Angelo Salese]
- next: Modernized driver and connected MCCS1850 RTC. [Curt Coder]
- c64: Connected to cartridge software list and implemented
loading of simple 8K/16K cartridges. [Curt Coder]
- ti99: Locked HSGPL mode to on for ti99_4p; HSGPL does not
lock up anymore when cartridge is plugged in; SAMS
address decoding fixed [Michael Zapf]
- at: Pentium drivers boots from HDD [Miodrag Milanovic]
- c64: Added mapper for the "VizaWrite 64" cartridge. [Curt Coder]
- next: Added default EEPROM, system boots to ROM monitor now. [Curt Coder]
- c64: Added mapper for the "Skaermtrolden Hugo" cartridge. [Curt Coder]
- c64: Added mapper for the "Easy Calc Result" cartridge. [Curt Coder]
- c64: Added mapper for the "Pagefox" cartridge. The 32KB RAM
expansion is not fully supported. [Curt Coder]
- pc: Fixed issues with XT HDC [Carl]
Software Lists:
----------------
- snes.xml: verified a lot of dumps and added a few more alt dumps [MESSfan]
- a800.xml/xegs.xml: updated to take advantage of <info> and confirmed some dumps [k1w1]
- external contributions to lists from k1w1 (and mvrh)
Source Changes:
----------------
- sonydriv: fix crashes when accessing drive after a
software-initiated disk eject (e.g. zzcopy on apple2gs) [R. Belmont]
0.142u2
New System Drivers Supported:
-----------------------------
(none)
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
(none)
Skeleton drivers:
-----------------
(none)
System Driver Changes:
----------------------
- lcmate2: Hooked up the lcd controller and added keyboard input.[Sandro Ronco]
- lcmate2: Made some adjustments found by team investigation.
[Robbbert, Cowering, Lord Nightmare, DMEnduro]
- lcmate2: Added what we assume is the spellcheck library ROM. Reverted
keyscan routine back, to handle port 5000 case. [Robbbert]
- ipc: Modernised. Added terminal connection. After pressing Space,
it will start up and respond to your inputs. [Robbbert]
- rex6000: Convert the driver to use the intelfsh device. [Sandro Ronco]
- apple2gs: removed cassette (real h/w doesn't have one) [R. Belmont]
- apple2gs: Handle ADB command 0xa, fixes Qix [R. Belmont]
- apple2gs: handle another ADB command, Pirates! works now [R. Belmont]
- a7800: fixed bug #2039 [Fabio Priuli]
- apple2: don't crash on $C060 access on IIgs, fixes Rastan [R. Belmont]
Software Lists:
----------------
- apple2gs : added & hooked up softlist [R. Belmont]
- added verification of many dumps to a800.xml and xegs.xml [k1w1]
Source Changes:
----------------
- Added skeleton for Interpod IEC to IEEE-488 converter device. [Curt Coder]
- Created device_rtc_interface which can be used to initialize RTC's to a
certain date/time at driver startup, useful for regression testing.
Implemented the interface in most of the modern RTC devices.
Note: this is not yet plumbed down to the command line. [Curt Coder]
- es5503: Properly mask oscillator enable bits.
Fixes crashes in e.g. ACS Demo Disk 2. [R.Belmont]
0.142u1
New System Drivers Supported:
-----------------------------
(none)
Systems Promoted from GAME_NOT_WORKING:
---------------------------------------
(none)
Skeleton drivers:
-----------------
- Ensoniq Mirage Sampler [R. Belmont]
- Laser Compumate2 [thanks to DMEnduro , Robbbert]
System Driver Changes:
----------------------
- tec1: Fixed a bug that has been there since the driver was
first written [reported by maguman21]
- ob68k1a: Fixed keyboard [Robbbert]
- apple2gs: fix ram sizes to reflect reality, fixed ram mapping to match real
system, added readback of bank number from unpopulated RAM areas. [R Belmont]
- sun: Added terminal keyboard. [Robbbert]
- x1: Implemented stereophonic sound output [Angelo Salese]
- ti85: moved T6A04 emulation into a device. [Sandro Ronco]
- tec1: Enabled tec1b bios at user request. Added some ram for
the expansion socket. [Robbbert]
- next: Allow NeXT machine to display the initial splash screen [Angelo Salese]
- apple2gs: Fixed AppleWorks GS hang on launch. [R. Belmont]
- at: Added cascade mode support in DMA code and enabled AT floppy to
boot again [Wilbert Pol, Miodrag Milanovic]
- tms5220.c: updates to comments and nonstandard feature
defines. [Lord Nightmare]
- argo: Improved video, added makeshift cursor. [Robbbert]
- at: Implemented AT IDE support [Miodrag Milanovic]
hdd boot's now on all except 586 machines
- next: add 3 more dumped NeXT bioses (one 68030,
two 68040-non-turbo) [Lord Nightmare, Balrog]
- upd7725 and upd96050: Implementation of the p0 and p1 output bits as device lines;
preliminary implementation of INT input line. This is attempt 2 at this code,
and actually links properly. [Lord Nightmare]
- at: add pals and proms from IBM 5170 AT [Lord Nightmare, Kevtris]
- at: add pals and proms from IBM 5170 AT to 5170 8mhz,
and add common ones to 5162 [Lord Nightmare, Kevtris]
- megadriv: added proper megacd dumps to the mess driver. [ElBarto]
- Added a newer revision of the Xebec S1410 Winchester
controller ROM. [Ola Andersson]
- Converted Atari Jaguar driver to properly use a stock 68k instead of
a 68ec020 [David Haywood]
- hector,interact, pce and pc8801 - driver_device conversions [Atari Ace]
- Fixed pixel clock in Atari Jaguar (it was previously running
at half speed) [Angelo Salese]
- a5200: fixed crash when loading carts (bug #2047) [Fabio Priuli]
- sgi - moving variables into structs rather than having
dozens of individual variables, and makes all drivers call
sgi_mc_init [Atari Ace]
- sonydriv, apf_apt, oric_tap, td0_dsk, timex_dck, amigacrt,
amigakbd, and i82720 - reorganize of variables and calls to be
more device-like, to simplify future device conversions. [Atari Ace]
- 8530scc: Don't crash on 0 baud divisor (fixes original
Apple IIgs Tour) [R.Belmont]
- Fixed RP5C01 alarm output. [Curt Coder]
- Removed the old incomplete TC8521 emulation, and refactored all drivers
to use RP5C01 instead, as it is the same chip. [Curt Coder]
- nc100: Removed deprecated serial device and fixed screen size. [Curt Coder]
- nc200: Demoted to GNW as it does not boot due to a bug
in MC146818 UIP bit. [Curt Coder]
- abc802 - Added an earlier revision of the BIOS and a correct dump of the
character generator ROM. [robcfg]
- apple2gs Implement monochrome double hi-res bit in $C029 -
fixes original Your Apple Tour of the Apple IIgs and Apple II DeskTop
on early IIgs system disks. [R.Belmont]
- lisa - Added correct COP421 ROM dump. [Visual6502 team,
Lord Nightmare, Segher]
- swtpc - hooked up terminal keyboard, system responds to commands. [Robbbert]
- a2600: hooked up softlist [Fabio Priuli]
Software Lists:
----------------
- nes.xml: added the long awaited Bio Force Ape dump [thanks to Frank Cifaldi
and the Lost Levels guys which made this possible]
- 32x.xml: confirmed some dumps and replaced a few sets
with proper dumps [ElBarto]
- a2600 added softlist containing games whose names start with #-A [Kaylee]
Source Changes:
----------------
- The core is based on MAME 0.142u1. This incorporates all features of the
update to this core. [MAME team]
- Update compiling.htm and howto.htm to latest wiki versions [Justin Kerk]
- Fix wimgtool compile with OSD=winui [Justin Kerk]
- uiimage.c: added reset of the char input buffer when selecting an entry in
the file manager [Fabio Priuli]
- softlist.c: rewritten part of the Internal UI handling for softlists to
match the code used by the file selector
(this will allow more improvements soon). [Fabio Priuli]
- softlist.c: softlists entries are now ordered by shortname in the
File Manager, so that it's easier to find the set you want to load
(first of the promised improvements ;) ). [Fabio Priuli]
- softlist.c: simplified softlist navigation (from the internal UI) by
catching char inputs and searching for matching names among list
shortnames, like in the file selector. [Fabio Priuli]
- softlist: moved software list handling (in the Internal UI) to a
separate source. [Fabio Priuli]
- uiswlist.c: properly made non-clickable the "[compatible lists]"
separator entry between main lists and compatible ones. [Fabio Priuli]
- uiswlist.c: added a switch to choose between shortname order or
description order for softlist entries (in the Internal UI),
and adapted the char input code to match shortnames or descriptions
accordingly [Fabio Priuli]
- cartslot.c/chd_cd.c: added support for a callback function to test softlist
sharedfeat (e.g. 'compatibility') and display a warning message
accordingly. updated cdi.c as an example [Fabio Priuli]
- clifront.c: fixed -listmedia output (extensions were messed up) [Fabio Priuli]
- uiimage.c: File Manager now displays the brief name of the image device to
make easier to decide where to mount images (see e.g. smssdisp or atom)
[Fabio Priuli]
by a SUBST) to make this build without patching problems.
Changes:
0.143
-------
Source Changes
--------------
Added preliminary circle drawing for Warp Speed [Mariusz Wojcieszek]
Added analog controls to Warp Speed [Mariusz Wojcieszek]
Added index and ready line read functions to floppy drive. [Curt
Coder]
Added device-relative functions for memory banking. [Curt Coder]
Added DE, CURSOR, HSYNC, and VSYNC line read members to MC6845.
[Curt Coder]
SH4: Misc cleanups, added support for VERSION register. Naomi rev H
BIOS now boots games. [O. Galibert, Deunan Knute, R. Belmont]
eeprom: Add tag name in eeprom's verbosity [O. Galibert]
Readme replacement for Crusin' USA to include Off Road Challenge.
[Guru]
cdrom: convert Mode 1 Form 1 sectors to Mode 1 raw if requested
[R. Belmont]
Added byuu's cothread library, along with a wrapper class. Switched to
using one cothread for each executable device. This functionality is
strictly internal and should result in no changes in scheduling
behavior. However, it now becomes possible to exit out of a device's
execution in the midst of an instruction by calling
machine().scheduler().make_active(). Note that this is somewhat
dangerous for cores that have logic at the start of their execute loop
to check for interrupts or other conditions, as those checks will be
skipped upon resume, so consider this sort of early exiting to be
highly experimental for now. [Aaron Giles, Miodrag Milanovic, byuu]
(Please Note: cothread usage is behind a compile-time define as per now,
they will be reenabled in the next dev cycle)
Convert Namco C352 to modern C++ device [R. Belmont]
Added BUSRQ and WAIT input lines to the Z80 CPU core. [Curt Coder]
Added support for multi level slot devices [Miodrag Milanovic]
Fixed a bad ROM dump in pss62 (Super Famicom Box) [Y~K, MESSfan]
Slightly improved the preliminary emulation of sfcbox [Y~K, MESSfan]
This is a temporary fix for Mating Game which disables the 'Line Zero'
interrupt condition. [J. Wallace]
Fixed state saving for OKIM6376 (hopefully) [J. Wallace]
Used a Dolbeck Systems flyer to correct the colours of the Connect 4
built-in layout. [J. Wallace]
Fixed line zero irq condition and provided a sync update for MPU4 HW
games [J. Wallace]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Warp Speed (prototype) [Mariusz Wojcieszek]
New clones added
----------------
Terra Force (Japan) [ShouTime]
Off Road Challenge (v1.50) (not working) [Guru]
Street Fighter II: The World Warrior (USA 910306)
[Brian Troha, The Dumping Union]
Final Fight (USA, set 2) [Brian Troha, The Dumping Union]
Leader Board (Arcadia, set 3) [Team Europe & Alexander F.]
OnePlay Version 2.20 bios [Team Europe & Alexander F.]
New games marked as GAME_NOT_WORKING
------------------------------------
Super Mario Kart / Super Mario Collection / Star Fox (Super Famicom Box)
[Y~K, MESSfan]
New Super 3D Golf Simulation - Waialae No Kiseki / Super Mahjong 2 (Super Famicom Box)
[Y~K, MESSfan]
Super Donkey Kong / Super Tetris 2 + Bombliss (Super Famicom Box)
[Y~K, MESSfan]
Super Donkey Kong / Super Bomberman 2 (Super Famicom Box)
[Y~K, MESSfan]
0.142u6
-------
Source Changes
--------------
chdman: fix GCC 4.6 build [R. Belmont]
HLSL Updates: [Ryan Holtz, Bat Country Entertainment, austere]
* Reworked default shadow mask settings, eliminating rainbow banding
and matching reference shots more closely
* Moved color power to occur after shadow mask, as it is intended to
simulate nonlinear phosphor response
- Added a variable-width notch filter to the Y channel in NTSC
post-processing, eliminating luma banding on e.g. CoCo 2 and Apple II
i286 - Fix for Phar Lap and Borland 16-bit DPMI servers. [Carl]
Many Sega ST-V / Saturn HW changes [Angelo Salese]
286 - fixes the DOS/16M dos extender that comes with Lotus 123r3
[Carl]
Added image devices support to debugger [Miodrag Milanovic]
Added image devices menu to debugger (windows only for now)
[Miodrag Milanovic]
sdlsocket: workaround for a problem in the detection of tcp/ip socket
address [Michael Zapf]
goldstar: fixed romanization from Korean for Kkot No Li [30yr]
info.c: added basic display of slot info in -lx [Fabio Priuli]
inptport: Disable the default sequence recognition for now.
[O. Galibert]
memory: Stop being stupid and call the extremely well written
populate_range_mirrored code through map_range when appropriate, which
is most of the time. [O. Galibert]
polepos.c: Convert to MCFG_SCREEN_RAW_PARAMS and scanline-based IRQ
timing [Alex Jackson, O. Galibert]
ins8250 - Fix enabling better mouse support in pc driver [Carl]
i286 - limit check of SS in push and pop instructions [Carl]
TMS5220: Force OLDP and OLDE to be updated only on the A subcycle of
IP=0 PC=0; this has no effect whatsoever on the output, it is merely
to better document how the chip works. [Lord Nightmare] TMS5220:
Emulate circuit 412 from the patent, which should prevent spurious
clicks on interpolation-inhibited frame transitions; This may improve
the tie fighter sounds in starwars, and some clicking in eprom/eproma.
[Lord Nightmare]
naomi/jvs: add coin add/sub commands (sub is used by crazy taxi)
[O. Galibert]
Warp Speed update [Mariusz Wojcieszek]
* fixed vblank interrupt and removed rom patches
* added coin input
- added preliminary starfield emulation
HLSL Updates: [Ryan Holtz, Bat Country Entertainment]
* MAME will now save an HLSL INI file on the first run of a game that
doesn't already have an INI file.
* HLSL INI files must have their parameters left in the order in
which they are saved out.
* Fixed a diagonal 'crease' visible on the screen in HLSL mode.
Some improvements to the compressed texture protection for Decathlete.
[David Haywood]
Refactored the INS8250 interrupt line to use devcb. [Curt Coder]
memory.c: Fixed display of physical addresses in the debug memory
viewer. [Wilbert Pol]
Added support for starting softlist item directly without marking
image device to be mounted on. If soft item is found it will be loaded
on first image device that have needed interface defined
[Miodrag Milanovic]
Fixed Aristocrat MK5 screen offset. [Palindrome]
Added SRAM support for dmdtouch and geishanz. [Palindrome]
Various aristmk4.c changes [Heihachi_73]
* Added button panel artwork and renamed/remapped inputs for all
games.
* Changed cgold2's PROM to a more compatible version.
Various aristmk5.c changes [Heihachi_73]
* Changed parent/clone relationship for Dolphin Treasure (later
version is now parent).
* Added a US clear chip to the set chip ROMs.
* Removed the set chip loading from all games which don't use them.
* Cleaned up ROM name descriptions to match the aristmk4.c format.
Added proper channel 2 support, and logging capabilities to OKIM6376.
[J.Wallace]
Corrected divider behaviour of OKIM6376 - needs ROM analysis to be
complete, but all supported programs only use the default mode.
[J.Wallace]
Changed clock frequencies in High Video games to match what should be
the correct OKI chip frequencies - those familiar with the boards may
wish to confirm this is correct, as I couldn't find the clock signal
for the chip on the PCB scans I've seen. [J.Wallace]
Added MPU4 sampled sound hardware, an MSM6376, PIA and PTM combined to
give dynamic pitch shifting for looping ADPCM samples. [J.Wallace]
Removed duplicated includes from INCPATH. [Oliver Stoneberg]
Fixed some potential memory leaks and NULL pointer deferences as well
as removing some redundant checks. [Oliver Stoneberg]
i286 - Fix bunch of fault restarts [Carl]
A fix for -listclones displaying parents as clones when it uses a
BIOS. [Tafoid]
i386: Implemented task gates, call gates, and task state segments
(both 286 and 386). Also inplmented triple fault CPU resets (used by
OS/2). x87: Basic implementation of FSTENV (used by OS/2).
[Barry Rodewald]
Added code to manage NAOMI's M4 decryption. [Andreas Naive]
Midway Zeus improvements [Phil Bennett]:
* Added some alternate FIFO commands used by mk4b.
* Hooked up the short-format draw command (used to draw life bars and
shadows in mk4).
* Added support for alternate 4/8 bit texture formats (used by mk4).
dec8.c: Corrected the rom names for the Ghost Busters sets and added
PCB locations [The Dumping Union]
Fixed NAR timing in OKIM6376 to match datasheet figures. [J. Wallace]
Fixed behaviour for OKIM6376 samples latched while their respective
channel is playing (fixes missing audio in New Magic Card 'Skill Game'
when won on first loop), and MPU4 sound test [J. Wallace]
Audio interface fix for MPU4. [J. Wallace]
Lamping fixes for MPU4 small extender. [J. Wallace]
Added support for access of separate LED segments in MPU4. (indexed as
'mpu4ledXXX', where the first display unit takes 0-7, the second 8-15
and so on). [J. Wallace]
Various updates on the AWP drivers for JPM IMPACT and Maygay M1
[J. Wallace]
Various changes for letting Mating Game boot and run, but there are
still issues with timing. [J. Wallace]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Mortal Kombat 4 (version 1.0) [Phil Bennett]
New clones added
----------------
Heated Barrel (Electronic Devices license)
[Hurray Banana, Tormod, hotaru, Dna Disturber, F. Marsaud,
N. Francfort, Smitdogg, The Dumping Union]
Albatross (US clone of Super Crowns Golf)
[Antonio Gonzalez Jr., Smitdogg, The Dumping Union] (not working)
Tekken 3 (Japan, TET1/VER.A) [Yohji, Smitdogg, The Dumping Union]
Tekken 3 (Asia, TET2/VER.E1) [Tormod, Smitdogg, The Dumping Union]
The Real Ghostbusters (US 2 Players, revision 2)
[JF, The Dumping Union]
New games marked as GAME_NOT_WORKING
------------------------------------
Special Forces Elite Training [Guru, R. Belmont]
Donggul Donggul Haerong [Guru]
Warp Speed (prototype) [TrevEB, Siftware, Mariusz Wojcieszek]
0.142u5
-------
Source Changes
--------------
Fixed Final Arch failing the IC13 test [Angelo Salese]
Fixed Final Arch and Sando-R multi cart support [Angelo Salese]
Internal HLSL cleanup - removed aux texcoords, restored software
vertex processing due to low-end cards not doing hardware vertex
processing, removed unnecessary tristrip->trilist splitting. Restores
D3D functionality on integrated chipsets and marginal cards.
[Ryan Holtz, Ashura-X]
Dumped GFX / sound roms to Gigaman 2 [f205v, Smitdogg, The Dumping
Union]
Converted PlayStation GPU to a device [smf]
Added PORT_NAME to buttons to better illustrate actual use in Atari
System 1 and Atari G1 drivers. [Tafoid]
inptport.c - Keyboard chars initialization fix [Tom Clayton]
konicdev et al.: Turn the 053250 into a modern device. [O. Galibert]
More accurate pixel clocks for Sega Saturn / ST-V [Angelo Salese]
Moved SCSP to main irq function into an external write line function,
fixes sound regression in Groove on Fight and Intro Don Don
[Angelo Salese]
Fixed an ST-V window effect bug when it's in double interlace mode,
fixes a graphic bug with Virtua Mahjong [Angelo Salese]
Fixed Sega Saturn / ST-V start-up crash that was happening on some
ends [Oliver Stoneberg]
Fixed a use-after-free bug in build/verinfo.c [Oliver Stoneberg]
megatech.c: added some verified labels [ElBarto]
PlayStation GPU splits 4 point polygons into triangles. [smf]
Documentation update for Naomi [f205v]
Fixed MC6845 related crash on 4roses and 4rosesa [Roberto Fresca]
TMS52xx: Minor updates to the comments and the disabled-by-default
pulse excitation code to better match how hardware would probably
work. [Lord Nightmare, Neill Corlett]
HLSL Updates: [Ryan Holtz, Bat Country Entertainment]
* Switched to point-sampling through most of the shader chain to
avoid non-intentional pixel smearing
- Corrected alignment and scaling on the shadow mask and scanlines;
dramatically reduces rainbow banding at non-oversampled resolutions.
Fixed a rather silly bug with SCU DSP execute flag [Angelo Salese]
Moved SMPC intback command inside a timer, removes a kludge for SMPC
mask irq [Angelo Salese]
Changed name of sn76489 variant used in Sega Master System and
Megadrive/Genesis from SMSIII to the more technically accurate
SEGAPSG, as the PSG in question was not only used on the mark 3 units.
[Lord Nightmare]
Added accurate hblank durations to Sega Saturn / ST-V HW
[Angelo Salese, Corrado Tomaselli, Charles MacDonald]
ertictac/poizone: Greatly improved (not perfect) audio
[R. Belmont, Heihachi_73]
Switch SEGA System E to use the SEGAPSG sn764xx variant, as it uses
two SEGA 315-5124 VDPs which have the SEGAPSG integrated. Should
slightly improve sound. [Lord Nightmare]
Fixed Sega System E to use xtal.h, fixed mc8123 comment, clarified PCB
diagram, verified xtal for z80b. [Lord Nightmare, Charles MacDonald]
i286 - enabling 287 emulation by trapping when needed [Carl]
idectrl - Clears error status on driver initialization [Carl]
Added HD6345 CRTC-II variant to mc6845.c. [Curt Coder]
idectrl - implemented verify no retry command [Carl]
i86 - Fixed imul instruction [Carl]
Low-level input upgrade. Classes now exist for input_codes,
input_items, input_devices, and input_seqs. Also created an
input_manager class to hold machine-global state and made it
accessible via machine.input(). Expanded the device index range
(0-255, up from 0-16), and the OSD can now specify the device index
explicitly if they can better keep the indexes from varying
run-to-run. [Aaron Giles]
HLSL Updates:
[Ryan Holtz, Bat Country Entertainment, austere, SoltanGris42]
* Added the ability to render screenshots at arbitrary resolutions.
* Added the ability to record AVI videos (albeit with no audio) at
arbitrary resolutions.
* Added a 43-tap-wide FIR-based NTSC filter with tunable Y, I and Q
frequency response.
* Updated scanlines to have a user-tunable pixel-height ratio in
addition to the current screen-height ratio.
- Fixed a VRAM leak that was causing many dynamic-resolution drivers
to run out of memory mid-run.
Implemented IRQ callbacks for the mc146818 RTC [Carl]
Fixed UNSP CPU core reset [Robbbert]
Fixed POP, POPF, PUSHF, and flags for V20 core [Carl, Alex Jackson]
memory: Store legacy object and handler together in the same
structure. [O. Galibert]
memory: Pass the legacy object/handler as a set_delegate parameter.
[O. Galibert]
memory: Merge width-conversion functions together from the same source
width. [O. Galibert]
memory: Build a structure with all possible delegate sizes
[O. Galibert]
memory: Separate delegates for the main access and the subaccesses.
[O. Galibert]
memory: Split the subaccesses delegation information per-slot.
[O. Galibert]
memory: Make the memdump file include a description of every subunit.
[O. Galibert]
memory: Add utility methods to clean up colliding subunit masks and
testing if any are remaining. [O. Galibert]
memory: Combine the map_range and handler_read/write() operations into
one. [O. Galibert]
memory: Proxy the handler entry access when adding handlers.
[O. Galibert]
memory: Tuck the unitmask into the proxy. [O. Galibert]
memory: Split the map_range function into a fixed entry mapping one
and a dynamically allocating entry one. [O. Galibert]
memory: Make the proxy manage a list of handlers instead of a unique
one. [O. Galibert]
memory: Add a handler copy function which works on subunits-only
handlers. [O. Galibert]
memory: Finally allow different handlers on different subunits of the
same address. [O. Galibert]
memory: Implement depopulate_unused(). [O. Galibert]
pic8259 - Fixed edge triggering and non-specific EOI
[Carl, Miodrag Milanovic]
Added SKIT_F0 opcode to the uPD7801/uPD7810 CPU core [Angelo Salese]
Split HLSL code into a separate file, d3dhlsl.c/.h. Also split
drawd3d.c into a couple of headers.
[Ryan Holtz, Bat Country Entertainment]
nec disassembler - Only display "byte/word ptr" when it's actually
needed to resolve ambiguity (same as the i386 disassembler)
[Alex Jackson]
Add ROM dump from motor drive board for Sega Touring Car Championship
[RetroRepair]
Hooked up the 2 PPI8255 for Super Crowns Golf [Angelo Salese]
emuopts: added confirm_quit option (defaults to off). when on,
pressing ESC you are prompted with a 'confirm quit' screen rather than
directly quit emulation. [MamePlus Team, Mamesick, Fabio Priuli]
i86: fix initial CS on reset [Alex Jackson]
memory: Change the gc into a refcounter, for speed reasons.
[O. Galibert]
Fix inverted check on anonymous timers prior to saving state. Also fix
bug where we fail to ignore the permanent non-expiring anonymous
timer. Added code to log timers, and we now log them at each save
attempt as well as at restore time. Should fix most recent save state
releated regressions. [Aaron Giles]
Started to work on Neogeo ROM naming, mostly removal of .bin extension
in favour of chiplabel.socketlabel convention [Johnboy]
Added echo emulation to the OkiM6376 sound chip [J. Wallace]
Added Guru-readme for Konami Viper hardware. [Guru]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Baryon Future Assault [Corrado Tomaselli, f205v, The Dumping Union,
David Haywood]
Reality Tennis [Tomasz Slanina, Antonio 'Peluko' Carrillo, Smitdogg,
The Dumping Union]
Fruit Bonus '06 - 10th anniversary [Brian Troha, Smitdogg, The Dumping
Union]
Super Ball (Version 1.3) [David Haywood, Brian Troha, The Dumping
Union]
New clones added
----------------
Dream Crown (Set 2) [Yohji, Smitdogg, The Dumping Union]
Harley Davidson (Rev.B) [Gerald (COY), Smitdogg, The Dumping Union]
Motocross Go (MG2 Ver.A) [Gerald (COY), Smitdogg, The Dumping Union]
Nouryoku Koujou Iinkai (prototype) [Yohji, Smitdogg, The Dumping
Union]
Pit Boss Superstar (9221-10-00A) [Siftware]
Arctic Thunder v1.002 [J. Wilke, ranger_lennier, gamerfan, Smitdogg,
The Dumping Union] (NOT WORKING)
New games marked as GAME_NOT_WORKING
------------------------------------
Panikuru Panekuru [dopefishjustin, Smitdogg, The Dumping Union]
New Hi-Lo Poker [Smitdogg, The Dumping Union]
0.142u4
-------
Source Changes
--------------
Removed deprecat.h usage for the following drivers: [Angelo Salese]
- galpanic.c, gradius3.c, halleys.c, hexion.c
Inputs from the scratch for Champion Poker (v100) [Roberto Fresca]
Cleaned-up protection simulation in Yam Yam!? [Angelo Salese]
Implemented an almost complete Konami k053252 device emulation, adds
accurate refresh rate timings and irq acks to many mid-90-era Konami
games [Angelo Salese, O.Galibert]
Various changes for PSX HW [smf]
- Modernised internal memory map;
- MDEC is now an internal device of the PlayStation CPU;
- Root counter & Serial I/O converted to internal CPU devices;
- Moved PlayStation IRQ code to sub device of the CPU;
Switch input ports to use function-based constructors instead of
tokens. Remove the old tokenizing helpers. Add basic classes for
ports, fields, settings, and dip locations as a first step. These will
be fully cleaned up later. Added machine() method to field to hide all
the necessary indirection. Changed custom/changed handlers into
generic read/write handlers, and added wrappers to convert them to
device read/write lines. [Aaron Giles]
Changed input read/write and crosshair callbacks into delegates.
Changed signature for callbacks to take an input_field_config
reference instead of pointer. [Aaron Giles]
Removed legacy trampolines from eeprom_device, taking advantage of new
input port support for delegates. [Aaron Giles]
mc6845.c: Converted to C++. [Wilbert Pol]
Fixed the disassembly of the "mov ax, mem" instructions (opcodes A0-
A3) in the i386 and NEC disassemblers. The argument (the memory
address) was being displayed as a signed number, which doesn't make
any sense. [Alex Jackson]
Fixed a tiny bug with the debugger hex dump command: the printable
characters in ASCII range from 32 to 12*6*, not 127. [Alex Jackson]
Fixed input regression with Racin' Force, allowing it to boot again
[Angelo Salese]
Gave labels to many inputs in Midway's T, Wolf and Y Unit games as
well as CPS1 and CPS3. [Joe Caporale]
Implemented experimental HLSL post-processing support on Direct3D 9
targets. [Ryan Holtz, Bat Country Entertainment]
* 5-pass post-processing: Upscale, Post-Process, Store Last Frame,
Defocus 1, Defocus 2
* Many tunable effects including: Scanlines, defocus, linear
deconvergence, radial deconvergence, pincushion, RGB colorspace
convolution, YIQ colorspace convolution, saturation, simulated dot
crawl, simulated chroma subsampling, aperture masking, and more.
* Requires a GPU that supports Shader Model 3.0 to be enabled and a
powerful GPU, the entire pipeline consists of approximately 30
texel fetches and approximately 230 arthimetic ops.
* Will supersample the framebuffer up to 9x in both X and Y, but this
requires an enormously powerful GPU that has not been invented;
users with Radeon 5000-class cards should limit themselves to 3x,
Radeon 4000 to 1.5x.
* The default configuration will NOT appear to do anything; it
requires tuning to the user's liking.
* Should nicely fall back in all cases except missing shaders, and it
might fall back correctly in that case as well. Report any
anomalies.
- For obvious reasons, the Direct3D8 renderer cannont support this.
Enable Visual Studio basic run-time checks in non-optimized builds
[Oliver Stoneberg]
Flush stderr, so the data is actually written when output is being
redirected [Oliver Stoneberg]
i286 - Added 286 LOADALL and triple fault resets. [Carl]
i286 - Added support for 16-bit protected mode far calls and segment
privilege checks. [Carl]
i86 - Fixed shift instructions, helps detecting proper CPU [Miodrag
Milanovic]
i86 - Fixed handling of invalid instructions in 0x60-0x6f section
[Miodrag Milanovic]
Major clean-up and state machine conversion for the Sega ST-V / Saturn
driver [Angelo Salese]
HLSL Updates [Ryan Holtz, Bat Country Entertainment]
* Split color convolution and deconvergence into separate shaders for
potential GPU savings down the line
* Added light and heavy variants of the color convolution shader, the
former with YIQ colorspace removed
* Re-worked defocus to occur prior to shadow mask application, as it
would be on a real monitor.
* Split "pincushion" into "Pincushion" and "Screen Curvature", the
former affecting the only the displayed image and the latter only
affecting the shadow mask.
* Made major fixes to CVBS simulation, significantly increasing color
saturation
* Added magnet deconvergence via a shader uniform
* Improved phosphorescence
* Improved YIQ codec
* Added adjustable color carrier in YIQ processing mode.
* Fixed resolution-change crash and likely D3D performance regression
with -nohlsl on low-spec cards
* Created a new OSD function, osd_get_slider_list, which allows
OS-specific slider controls.
HLSL Post-Processing Updates: [Ryan Holtz, Bat Country Entertainment, cgwg]
* The defocus pass is now switched off when defocus_x and defocus_y
are zero, allowing finer-grained performance tuning.
* Removed YIQ convolution from the main color-convolution shader and
replaced it with a full composite encode/decode pass. This is slower,
but looks amazing(ly like a terrible TV) and can be turned off.
* More authentic NTSC dot crawl and bandwidth limiting.
i86 - Implemented POP CS and MOV CS,reg instructions that are 8086
specific [Miodrag Milanovic]
Implemented multi-cart support to ST-V driver [Angelo Salese, Tafoid]
Managed to get the multiplexer/state machine emulated, amongst some
watchdog fixes for BFM games. [J. Wallace]
Added missing bipolar PROM dumps to Lucky Lady (Wing) [Team Europe]
pic8259 - updated to be more according to documentation [Carl]
Initial frameworking for upcoming artwork updates [Mr. Do]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Doraemon no Eawase Montage (prototype)
[dopefishjustin, Smitdogg, Luca Elia, The Dumping Union]
New clones added
----------------
Champion Poker (v100) [Roberto Fresca, Team Europe]
Gunbarl (Japan, GNB4/VER.A) [The Dumping Union]
Amidar (Konami/1982) [Patrik Styrnell]
New games marked as GAME_NOT_WORKING
------------------------------------
Baryon Future Assault [ Corrado Tomaselli, f205v, The Dumping Union]
Brixian [ Corrado Tomaselli, f205v, The Dumping Union]
Orbatak (prototype)
Popeye (20p/8 GBP Token) [J. Wallace]
0.142u3
-------
Source Changes
--------------
Removed deprecat.h dependancy and updated irqs accordingly from the
following drivers: [Angelo Salese]
8080bw.c airbustr.c albazg.c argus.c aristmk4.c armedf.c atarifb.c
avalnche.c battlex.c bigevglf.c bionicc.c bionicc.c bishi.c bladestl.c
blockout.c blueprnt.c bmcbowl.c bogeyman.c bottom9.c bsktball.c
bublbobl.c buggychl.c bwing.c changela.c chqflag.c circus.c cischeat.c
cloak.c commando.c cosmic.c cshooter.c darkmist.c dbz.c deadang.c
destroyr.c discoboy.c djmain.c docastle.c dogfgt.c dogfgt.c dooyong.c
dorachan.c dragrace.c enigma2.c equites.c esd16.c espial.c exedexes.c
exidy.c expro02.c fastfred.c finalizr.c firetrap.c flower.c flstory.c
gberet.c gng.c goindol.c gsword.c gunsmoke.c itech32.c jack.c jack.c
kyugo.c ladyfrog.c liberatr.c m72.c matmania.c megaplay.c meijinsn.c
metlclsh.c mirax.c mjsister.c mlanding.c mouser.c namcos2.c namcos21.c
naughtyb.c nbmj8688.c nbmj8891.c nova2001.c overdriv.c pacman.c
paradise.c photon2.c polepos.c popper.c retofinv.c rollrace.c
route16.c sbugger.c segag80r.c segas18.c seta.c shisen.c slapfght.c
snk6502.c solomon.c sonson.c speedbal.c srmp2.c srmp2.c srumbler.c
sstrangr.c strnskil.c suna8.c suprloco.c tagteam.c taito_l.c tomcat.c
tsamurai.c tunhunt.c vastar.c vigilant.c vulgus.c wecleman.c
wheelfir.c wiz.c xxmissio.c zn.c zodiack.c
Fixed sprite regression in expro02.c [Angelo Salese]
Converted Taito_L driver to use AM_SHARE macro [Angelo Salese]
Removed sound hacks in Evil Stone, fixing sound drop if you die at
level 1 boss [Angelo Salese]
intelfsh.c: Added support for Fujitsu 29DL16X. [Sandro Ronco]
Fixed i86/i386 POP SP and POP ESP thanks to bug report for Xenix boot
by bs666 [Miodrag Milanovic]
Collapsed device_config and device_t into one class. Updated all
existing modern devices and the legacy wrappers to work in this
environment. This in general greatly simplifies writing a modern
device. [Aaron Giles]
psx.c: adjusted MDEC timing to avoid lockups. Most FMVs now have
fluent video. [R. Belmont]
Fixed Z80STI interrupts. [Curt Coder]
Fixed I8255 interrupt enable. [Curt Coder]
Fixed reset register bit masks in RP5C01 and RP5C15. [Curt Coder]
Added 3.5" ED floppy drive type. [Curt Coder]
Naomi / Triforce / Chihiro documentation update [f205v]
Fixed protection read-back registers 0x07 and 0x0e / 0x0f in k051733
math chip, finally fixing gameplay issues in Chequered Flag.
[Angelo Salese]
konamigv: Documentation updates [Guru]
diimage.c: fix uninitialized variables found by Valgrind [R. Belmont]
mc146818: Fix uninitialized variable found by Valgrind [R. Belmont]
Fixed inputs and removed digital hacks in Cisco Heat driver
[Angelo Salese]
Added MCCS1850 RTC emulation. [Curt Coder]
Added shifter display to Cisco Heat driver [Angelo Salese]
Removed cheesy hack to F1 GP Star 2 irq communications [Angelo Salese]
Fix second adpcm player in games using SEIBU_ADPCM [R. Belmont]
Made k051733 RNG to behave like an adder, improves pseudo-random
events in Fast Lane [Angelo Salese]
Tentative experiment for Hot Chase gameplay speed ... still not
perfect though (especially noticeable with sound) [Angelo Salese]
Reimplemented devcb using delegates and classes. Unified the logic for
identifying targets and simplified the code. [Aaron Giles]
naomi: Abstract the maple and jvs interfaces into a set of devices
[O. Galibert, MetalliC, Tormod, D. Knute]
Started unifying sprite implementations for setax001/x002 chips
[David Haywood]
drcbex64: Fix op_debug implementation [O. Galibert]
Add Puzznic MCU dump and added a PAL as NO_DUMP. The MCU still needs
to be properly hooked up. [Smitdogg, The Dumping Union, Lord
Nightmare]
naomi: Add jvs command 0x32, fixes Crazy Taxi and Virtua Tennis 2
booting [O. Galibert]
Added input button labels for Midway T-Unit driver [Joe Caporale]
De-stateized the NB1414M4 routines, and converted the correlated Armed
F text tilemap to be 8-bits [Angelo Salese]
Hooked up NB1414M4 to Ninja Emaki, greatly improving gfxs in it
[Angelo Salese]
Implemented serial type scrolling for Youma Ninpou Chou bootlegs
[Angelo Salese]
Support for dynamic devices added to the core. [Miodrag Milanovic]
* Added slot and slot card interfaces
* Added SLOT_INTERFACE macros in order to simplify device adding
* Added new menu option "Slot Devices" and support to change device
in runtime
* Updated emuopts to support command setting of slot cards
Update clifront and added listslots option to display available
slots and device options for each one [Miodrag Milanovic]
mpu4.c: Started adding support for the Crystal Gaming program card,
and the link keys for setting parameters. [J Wallace]
6840ptm.c: Fixed mode check in set_gate() [J Wallace]
srcclean.c: srcclean should remove invalid chars only for source files
which are not xml (softlists have UTF-8 characters) [Fabio Priuli]
Hooked up proper sound program in Combat School bootleg [Angelo
Salese]
Moved format handling and all formats to separate library
[Miodrag Milanovic]
Converted PlayStation DMA to an internal device to the CPU core. DMA
to external devices can be set in the machine config, the old calls
are still there until the rest of the code is converted. [smf]
Added support for default NVRAM in MCCS1850. [Curt Coder]
Various Irem M92 / M107 fixes [Alex Jackson]
* Hooked up sound CPU interrupts properly, using the V35 builtin
interrupt controller, rather than generating the vectors in the
driver.
* Cleaned up ROM mirroring, using AM_REGION macros in the address
maps instead of memcpy()ing all over the place in the
DRIVER_INITs.
* Converted bankswitching to use configured banks. Only configure the
banks and install the bankswitch WRITE_HANDLER in the games that
actually use it (i.e. those with a full megabyte of program ROM).
This and the previous change make the drivers a lot less confusing
to look at... I hope.
* Converted both drivers to use a scanline timer device instead of a
hand-rolled one.
* Added save state support to m92.c. Everything necessary was already
saved, I just had to add the tag. However, presumably due to the
core emu_timer breakage (MT 4330, 4331) the save states don't
actually work at the moment. I've already reported this as MT
#4333
* Added GAME_MECHANICAL tag to wpksoc and clone
Converted Ginga Ninkyouden to use proper 6840 PTM device
[Angelo Salese]
Fixed missing sprite regression in the Wiz driver [Angelo Salese]
chdman: Handle track type 6 in .nrg files [R. Belmont]
Compile fix for kFreeBSD [Christian Marillat]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Chequered Flag [Angelo Salese]
Super Wing [Tomasz Slanina, Wulfman]
New clones added
----------------
Witch Card (German, WC3050, 27-4-94) [Roberto Fresca, Team Europe]
New games marked as GAME_NOT_WORKING
------------------------------------
Quizard Rainbow 4.0 [Team Europe]
Frank 'n' Stein (unencrypted) [J Wallace]
Mahjong Maina - Kairakukan he Youkoso [alien_mame, The Dumping Union]
The Nanpa [alien_mame, The Dumping Union]
Cospure Tengoku 7 - Super Co-gal Grandprix
[alien_mame, The Dumping Union]
Fudol [alien_mame, The Dumping Union]
0.142u2
-------
Source Changes
--------------
Implemented irq ack mechanism to Armed Formation HW games [Angelo
Salese]
Hand-fixed bit-rot bit in Terra Force bootleg, fixing the attract mode
crash [Angelo Salese]
Fixed emulation of the extra z80 in Terra Force bootleg set (used as a
replacement for the protection), promoting it to working [Angelo
Salese]
Implemented MCU simulation to terrafu / terrafa [Angelo Salese]
Hooked up text protection simulation to Kozure Ookami, allowing it to
display scoring during gameplay and copyright screens [Angelo Salese]
Implemented proper FG scroll latching in Kozure Ookami, fixing an
offsetted layer at the gameplay intro screen [Angelo Salese]
taito_b.c - Added PLD dumps for qzshowby. [Tafoid]
Hooked up 1414M4 emulation to Legion [Angelo Salese]
Hooked up the 1414M4 chip emulation for Crazy Climber 2 [Angelo
Salese]
Created device_rtc_interface which can be used to initialize RTC's to
a certain date/time at driver startup, useful for regression testing.
Implemented the interface in most of the modern RTC devices. Note:
this is not yet plumbed down to the command line. [Curt Coder]
renamed Namco System 11 clones based on country code & version. [smf]
SDL: fix backwards texture rectangle option [AWJ]
Hooked up NB1414M4 priority bit, fixing video text priority in all the
games in the Armed F driver [Angelo Salese]
Merged 86 Lions inside Aristocrat Mk-4 driver [Angelo Salese]
Various improvements to m90 driver [AWJ]:
* Fixed MT bug 4191 (dynablstb: No audio)
* Hooked up sample playback in bbmanw and clones and removed
GAME_IMPERFECT_SOUND flag (actually, bbmanwj had working samples
already and never should have been flagged in the first place)
* Use generic_pulse_irq_line() to generate interrupts on the V35,
instead of the completely silly and deprecat.h thing I was doing
before.
* Made the same fix to cb2001.c while I was at it.
* Fixed some spelling mistakes in the inputs.
* Converted quizf1 to modern bankswitching with configured banks.
* Made quizf1 and bomblord endian-safe, with assistance from
R.Belmont.
* Added save state support.
Removed deprecat.h usage in m90 driver [Angelo Salese]
Implemented RAM-based sprite clut in Armed F driver, used for color
cycling effects in all games of this HW [Angelo Salese]
Provided a compact flash dump for Alien - The Arcade Medal Edition
[Smitdogg, The Dumping Union]
Fixed various things in Buster, allowing it to boot into gameplay
[Angelo Salese]
Merged Tatakae Big Fighter into Armed F driver [Angelo Salese]
Redumped terrafb bitrotted rom [Bill D., The Dumping Union]
astring: Fix build on NetBSD and other systems where toupper() is a
macro [Thomas Klausner]
Implemented irq ack mechanism and fixed CPU clock speeds in Cop 01 and
Mighty Guy, this fixes last boss crashes in Mighty Guy [Angelo Salese]
es5503: Properly mask oscillator enable bits when setting.
[R.Belmont]
Hand-tuned sound frequencies in Cop 01 based off an audio reference
[Tafoid]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Mighty Guy [Angelo Salese]
New clones added
----------------
Tekken 2 (TES3 VER.D) [atchoo, Smitdogg, The Dumping Union, smf]
Soul Edge (SO2/VER.A) [f205v, Smitdogg, The Dumping Union, smf]
Soul Calibur (SOC13 VER.C) [f205v, Smitdogg, The Dumping Union, smf]
Tekken Tag (TEG2 VER.C1) [f205v, Smitdogg, The Dumping Union, smf]
Libero Grande (LG1 VER.A)
[B. Munger, S. Ruiz, Smitdogg, The Dumping Union] (not working)
Saint Dragon (set 2) [Tirino73] (not working)
0.142u1
-------
Source Changes
--------------
Added screen raw params and irq ack to the dec0 driver, fixing hole 1
hang in Birdie Try and improving fade in/out effects for Boulder Dash
[Angelo Salese]
Funworld driver updates: [Roberto Fresca]
* Complete support for Witch Royal, from Video Klein.
* Reworked the button-lamps layout to get the hold buttons more
centered.
Eliminates the extern variables from atarimo video core, in order to
remove a significant source of AM_BASE macros. [Atari Ace]
Converted astrocde/kaneko16/namcos23/suprnova to driver_device
[Atari Ace]
Converted Taito F3 video chip (TC0630FDP) to have a parallelism of
16-bit [Angelo Salese]
Converted 2 Minutes Drill driver to use Taito F3 video chip, this
hugely improves graphics in it [Angelo Salese]
Added irq ack and fixed sound chip type to be YM2610B for 2 Minutes
Drill [Angelo Salese]
Dumped the DVD image for bikiniko [alien_mame, The Dumping Union]
Added work-around for crowd gfxs in Taito F3 football games (Taito Cup
Finals, International Cup '94, Taito Power Goal and clones), until a
better information is found about it [David Haywood]
softlist: moved software list handling (in the Internal UI) to a
separate source, and made the code more similar to the File Manager
handling code. [Fabio Priuli]
CPS-3 update [Team CPS-1]:
* Added Street Fighter III: New Generation Hispanic BIOS rom CD
version
* Added a detailed table of all known releases until now with usefull
notes to identify new Cart Regions/CD Revisions
* Renamed some CHDs to use the new Catalog # standard
uiswlist.c: added a switch to choose between shortname order or
description order for softlist entries (in the Internal UI), and
adapted the char input code to match shortnames or descriptions
accordingly [Fabio Priuli]
sc61860 cpu - fix for crash and cleanup, replace for internal ram
accesses with function calls to help further debug the core in the
future [Atari Ace]
cartslot.c/chd_cd.c: added support for a callback function to test
softlist sharedfeat (e.g. 'compatibility') and display a warning
message accordingly. updated cdi.c as an example [Fabio Priuli]
Decrypted 3 Super 8 program ROM [Lord Nightmare, Kevtris]
cassette.c/flopdrv.c: added support for a display info callback
function [Miodrag Milanovic]
corona/galaxian/namcos21/namcos22/namcos23/psikyosh/quizo/sigmab98 to
driver_device. [Atari Ace]
Convert scramble/galaxold to driver_device [Atari Ace]
Audio device additions: [Atari Ace]
* exidy440/m72/segasnd are converted to legacy devices.
* cage/dcs/williams variables are restructured internally to resemble
a device, simplifying a future device conversion. Some AM_BASE
macros are eliminated as well.
* taito_en has minor changes to eliminate an AM_BASE macro.
Heavily improved 3 Super 8 emulation, and implemented NMI acknowledge
mechanism into the Super Poker driver [Angelo Salese]
i286 - Fixed protected mode boundary check [Miodrag Milanovic]
naomibd: Fix collision with system macro on NetBSD [Thomas Klausner]
Implemented PAL-like prom read-back in 4 En Raya [Angelo Salese]
Fixed Pururun's audio pitch/speed to match that of a reference video.
[Tafoid]
tms5220.c: updates to comments and nonstandard feature defines.
[Lord Nightmare]
8237dma - Added cascade mode support [Wilbert Pol]
pic8259 - Added support for cascade mode, updated interface in all
drivers [Miodrag Milanovic]
upd7725.c: Implementation of the p0 and p1 output bits as device
lines; preliminary implementation of INT input line. [Lord Nightmare]
Replaced mamedriv.c with a new driver list mechanism that is generated
by the build tools. The emulator core now expects the presence of a
file called src/$(TARGET)/$(SUBTARGET).lst which is just a raw list of
driver names, one per line. C and C++ comments are still permitted.
This file is parsed by a new build tool makelist which extracts the
driver names, sorts them, and generates a file called drivlist.c,
which is consumed by the core. [Aaron Giles]
Added new osdcore function osd_malloc_array() which is identical to
osd_malloc() but obviously hints that the underlying allocation is for
an array. Updated all callers to use the appropriate form. Modified
the Windows allocator to only use guard pages for array-style
allocations, allowing us to enable them once again in debug builds.
[Aaron Giles]
Created new static class driver_list to wrap accesses to the list of
available drivers. Improved speed of driver lookups by relying on the
presorting done by makelist. [Aaron Giles]
Created helper class driver_enumerator as a helper for iterating
through the list of drivers. This class supports basic filtering and
iteration, and also serves as a temporary cache of machine_configs.
[Aaron Giles]
Created cli_frontend object to wrap all the CLI handling code in
clifront.c. Updated/simplified all the code to take advantage of the
driver_enumerator. [Aaron Giles]
Created media_auditor object to wrap all the auditing functions in
audit.c. Updated all users to the new interface. Note that the new
auditing mechanism is slightly out of sync with the romload code in
terms of finding ROMs owned by devices, so it may mis-report some
issues until the new ROM loading code is in. [Aaron Giles]
Added concept of a per-device searchpath. For most devices, their
searchpath is just the short name of the device. For driver_devices,
the searchpath is driver[;parent[;bios]]. This searchpath will
eventually be used by the rom loader to find ROMs. For now it is used
by the media auditor only. [Aaron Giles]
Created info_xml_creator object to wrap all the info generation
functions in info.c. Converted the file to C++ and cleaned up the
input processing code. [Aaron Giles]
model2.c: Corrected the revision level for Top Skater (USA) set
[The Dumping Union]
Various improvements to the Konami Viper driver [Ville Linde]
midqslvr: Add some hardware information [O. Galibert]
Added reverse-spin support to the stepper motor simulator
[James Wallace]
mpu4.c: Documented MOD 4 OKI program card ROM banking and improved the
BwB characteriser emulation. [James Wallace]
Fixed the I/O address in Intel 8257 DMA operations. [Curt Coder]
Fixes for non-native SDL builds on OS X [Paulo Cabral]
Added "Mandatory artwork is missing" error [Oliver St
Implemented 16-bit device callbacks. [Curt Coder]
Fix loading fonts on MacOSX. [Couriersud]
Delegates 2.0 implementation. Resdesigned how delegates work to make
them more flexible and simpler to use. Got rid of the proto_delegates
altogether in favor of supporting delegates that are bound to NULL
objects. Added a front-end template that supports "natural" syntax
favored by libraries like boost. Added support for static functions
that take reference parameters instead of pointer parameters for the
object type. Updated all delegate users in the system to the new
syntax. [Aaron Giles]
Changed the DIRECT_UPDATE_HANDLER to take a machine reference like
everything else in the system. Updated all users. [Aaron Giles]
Changed the FUNC() macro to automatically put an & in front of the
item passed. In general this works transparently, however it does have
the nice side-effect of catching situations where a variable is passed
instead of a function name. Fixed those cases to push the naming
upstream so that the name is now provided properly. Also added a
FUNC_NULL macro since FUNC(NULL) no longer works. [Aaron Giles]
tms5220.c: partially fixed perfect interpolation hack, disabled by
default. [Lord Nightmare]
segas24: Start untangling the Vogon poetry Atari Ace left is his wake.
Apply the new timing implementation per cgfm's analysis. Gain ground
is going to be stuck in free play mode. [O. Galibert]
tms5220.c: fixed perfect interpolation hack the rest of the way, now
it works as it did before 0.140 or so. [Lord Nightmare]
tms5220.c: improve perfect interpolation hack slightly, should be less
noisy after inhibit frames. [Lord Nightmare]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Major Poker (v2.0) [Roberto Fresca, Tomasz Slanina, Rob Ragon]
Witch Royal (Export version 2.1) [Roberto Fresca, Team Europe]
Water-Nymph (Ver. 1.4) [Team Europe, Luca Elia]
New clones added
----------------
Silent Scope (ver xxC, Ver 1.30) (not working) [Alex Romero]
Street Fighter III: New Generation (Hispanic 970204)
[Bill D., The Dumping Union]
New games marked as GAME_NOT_WORKING
------------------------------------
Racing Jam: Chapter 2 (EAE) [RetroRepair]
Thrill Drive (EAA) [RetroRepair]
Alien: The Arcade Medal Edition
[Yohji, Tormod, Smitdogg, The Dumping Union]
Home Run Classic [Mariusz Wojcieszek]
Country Club Classic [Mariusz Wojcieszek]
Trap Shoot Classic [Mariusz Wojcieszek]
Nintendo FamicomBox [Kevin Horton]
MPU3 Unit Test (Program 5) [James Wallace]
Hyper Viper [James Wallace]
* Many bug fixes and improvements
* Add LatticeMico32 and unicore32 targets are added.
* And many changes. See http://wiki.qemu.org/ChangeLog/0.15
Tested on NetBSD/i386 current, NetBSD/i386 5.1, DragonFly/i386 2.10.1,
and Gentoo Linux/i386.
* Various improvements to the builtin Internet Explorer.
* Support for Get/SetDIBits in the DIB engine.
* Support for enhanced metafiles in the View tool.
* Many improvements in WinHTTP.
* A number of fixes to the COM stubless marshaller.
* Improved mechanism for DLL registrations.
* Various bug fixes.
* New features are not tested yet, for example SPICE protocol support.
* I have tested on NetBSD/i386 5.99.54 and DragonFly/i386 2.10.1 as host,
NetBSD/{amd64, i386, sparc} as guest.
Changelog:
0.14.1
virtio-blk: fail unaligned requests
qed: Fix consistency check on 32-bit hosts
exit if -drive specified is invalid instead of ignoring the "wrong" -drive
vhost: fix dirty page handling
Do not delete BlockDriverState when deleting the drive
vnc: tight: Fix crash after 2GB of output
lan9118: Ignore write to MAC_VLAN1 register
Don't allow multiwrites against a block device without lsi53c895a: add support for ABORT messages
virtio-pci: fix bus master work around on load
fix applesmc REV key
rbd: don't link with -lcrypto
net: Add the missing option declaration of "vhostforce"
lsi53c895a: Update dnad when skipping MSGOUT bytes
Revert "prep: Disable second IDE channel, as long as ISA IDE emulation doesn't support same irq for both channels"
isa-bus: Remove bogus IRQ sharing check
virtio-net: Fix lduw_p() pointer argument of wrong size
hw/sd.c: Add missing state change for SD_STATUS, SEND_NUM_WR_BLOCKS
vnc: Fix fatal crash with vnc reverse mode
qemu-char: Check for missing backend name
0.14.0
Targets
ARM
Most of the changes are related to bug fixes and improvements to match what the real hardware does. For now there is no new board or CPU.
MIPS
Host CPU consumption for idle guests
Timer fixes
FPU improvements
SH4
Various bug fixes and improvements including
SM501 2D engine copyrect support, needed to boot recent kernels
MMU mmaped TLB access, needed to boot recent kernels
Floating point exceptions and correct NaN support.
PPC
Fix running recent PPC64 kernels
New maintainer: Alexander Graf
Improve interrupt injection with KVM
Enable PV enabled guests for speedup with KVM
Floating point fixes
Add a ppc-440x5 Xilinx model
Add a virtex5 ml507 refdesign board for ppc-440x5
BookE MMU emulation improvements
s390x
No news, business as usual.
SPARC
Fix div(cc) and sdiv(cc) instruction emulation, fixes Xorg crash in the guest
Hosts
ARM
Fix random crashes
Fix 64-bit big-endian targets support
MIPS
Fix random crashes
IA64
Fix random crashes for 32-bit targets
Devices
IDE / AHCI
Added emulation layer for an ICH-9 AHCI controller (not yet stable). Tested with Linux, OpenBSD, Windows Vista and Windows 7. The AHCI emulation supports NCQ, so multiple read or write requests can be outstanding at the same time.
to use it, use the following command line snippet: -drive id=disk,file=<your image goes here>,if=none -device ahci,id=ahci -device ide-drive,drive=disk,bus=ahci.0
SCSI
Various bug fixes, no new features.
USB
Added USB support for remote wakeup, allowing the guest to suspend the USB bus when idle, which in turn reduces the CPU overhead of an idle machine.
The USB subsystem also got a bunch of patches to prepare it for USB 2.0 support.
virtio
virtio-pci can use ioeventfd for virtqueue notify. On systems that support KVM, the ioeventfd mechanism can be used to make virtqueue notify a lightweight exit by deferring hardware emulation to the iothread and allowing the VM to continue execution. This model is similar to how vhost receives virtqueue notifies. The result of this change is improved performance for userspace virtio devices. Virtio-blk throughput increases especially for multithreaded scenarios and virtio-net transmit throughput increases substantially. Read the commit message for more details.
Various fixes and stabilization for live-migration:
Various virtio-net improvements:
Make tx_timer timeout configurable
Limit number of packets sent per TX flush
Introduce a new bottom half packet TX
Fix cross-endianness support
PCI/PCI Express
Improved PCI Express support and functionalities with the implementation of:
flr (Function Level Reset)
aer (Advanced Error Reporting) and other improvements
A new monitor command to inject errors into the PCI bus: pcie_aer_inject_error
Implementation of Message Signaled Interrupts (MSI/MSI-X) support
Separation of the PCI bridge code from the main PCI code.
Sound
New Intel HD Audio support, adding three new devices:
intel-hda: Intel HD Audio Controller, the PCI device.
hda-duplex: HDA Codec. Attaches to the HDA bus. Supports 16bit stereo, rates 16k -> 96k, playback, recording and volume control (with CONFIG_MIXEMU=y).
hda-output: HDA Codec without recording support. Subset of the hda-duplex codec. Use this if you don't want your guests access your mic.
Usage: add '-device intel-hda -device hda-duplex' to your command line.
Tested guests:
Linux works.
Win7 works.
DOS (mpxplay) works.
WinXP doesn't work.
Real Time Clock
Fix binary/BCD mode switch
Video
Fix cirrus VGA crash with some guests
Fix curses big endian support
Block Drivers
qcow2
Added a writeback metadata cache. This improves performance of scenarios with lots of cluster allocations noticably (e.g. installation or after taking a snapshot), in some benchmarks by a factor of ten or more. Use cache=none or cache=writeback to take advantage from this change.
Copy snapshots out of QCOW2 disk, eg: qemu-img convert -f qcow2 -O qcow2 -s snapshot_name src_img bck_img
Zero-copy read and write operations
Other fixes and code cleanups:
qcow2: Invalidate cache after failed read
block: Allow bdrv_flush to return errors
qcow2: Simplify image creation
qcow2: Fixes unaligned access on IA64
qed
Introduction of the QEMU Enhanced Disk (qed) image format. It is a disk image format that forgoes features found in qcow2 in favor of better levels of performance and data integrity. Due to its simpler on-disk layout, it is possible to safely perform metadata updates more efficiently.
More information about qed: http://wiki.qemu.org/Features/QED
Initial thread discussion: http://lists.nongnu.org/archive/html/qemu-devel/2010-09/msg00310.html
ceph/rbd
Introduction of the new ceph/rbd block driver. RBD is an block driver for the distributed file system Ceph.
More information about ceph: http://ceph.newdream.net/
nbd
Improve qemu-nbd performance by 4400 %. This patch combines the reply header and payload send operation.
Introduce NBD named exports.
Spice
New support for the SPICE protocol. The project main focus is to provide high-quality remote access to QEMU virtual machines. More information about SPICE can be found at the project's web site: http://spice-space.org/
New qxl device. qxl is a paravirtual graphics card. The qxl device is the bridge between the guest and the spice server (aka libspice-server). The spice server will send the rendering commands to the spice client, which will actually render them. The spice server is also able to render locally, which is done in case the guest wants read something from video memory. Local rendering is also used to support display over vnc and sdl. qxl is activated using -vga qxl. qxl supports multihead, additional cards can be added via '-device qxl.
Relevant commits:
spice: core bits
spice: add keyboard
spice: add mouse
spice: simple display
spice: add tablet support
spice: tls support
spice: make compression configurable.
spice: add config options for channel security.
spice: add config options for the listening address
spice: add misc config options
spice: add audio
spice: add qxl device
spice: connection events.
QMP / monitor
TODO: QMP is now stable, except for error reporting?
The work to facilitate the management of QEMU instances has been improved. QMP has received various fixes. Now it is possible to call a traditional monitor command through QMP, in case your application depends on the output or the command is not yet ported to QMP.
New commands:
query-spice / info spice
human-monitor-command
set_password
drive_del
block_resize command, allowing resizing of block devices while qemu is running. For virtio-blk the size is updated automatically when this command is issued on the host. IDE is not supported. For SCSI devices the new size can be updated in Linux guests by doing the following shell command:
echo > /sys/class/scsi_device/0:0:0:0/device/rescan
Tracing
Introduction of platform-independent tracing, more information about it: http://wiki.qemu.org/Features/Tracing
Documentation and tutorial: http://git.qemu.org/qemu.git/plain/docs/tracing.txt
Some relevant commits:
Add trace-events file for declaring trace events
Add a DTrace tracing backend targetted for SystemTAP compatibility
Add LTTng Userspace Tracer backend
Add simple built-in tracing backend
Add stderr trace-event backend:
Support for dynamically enabling/disabling trace events
Specify trace file name
Add trace-file command to open/close/flush trace file
Other stuff
Extend -option-rom command to have additional parameter bootindex
Little endian / big endian MMIO framework. Until now, most devices had special hacks to allow them to work on big and little endian systems (ppc / x86). With that framework, they should mostly work with both and not require and device specific hacks anymore.
Changes in 1.3.24:
* Various DirectInput improvements.
* Support for line breaking in Uniscribe.
* More UI elements in builtin Shell Explorer.
* Some more D3DX9 functions.
* Improved support for shell known folders.
* Various bug fixes.
Changes in 1.3.23:
* Support for stubless COM proxies on x86-64.
* Builtin dxdiag now outputs real information.
* Monochrome bitmap format in the DIB engine.
* Beginnings of a true shell Explorer builtin.
* A number of new D3DX9 functions.
* More support for Indic text shaping.
* Various bug fixes.
3.4 to 3.4.1: (June 11, 2011)
* Re-enabled 'grabmouse' commandline argument and associated
functionality with the following changes:
- it is changed in the "Input Settings' UI, not in 'Video Settings'
- it only has meaning while in emulation mode
- it is enabled by default
* Fixed bug with emulation of paddles using the mouse most evident in
Warlords; movement was being filtered out if the mouse was moved too
fast. There's still more work required in this area, however.
* Fixed bug with analog axes on gamepad devices, whereby jittering in
these axes would override input from digital axis, hat or keyboard
input.
* Fixed bug when switching to the debugger and back again would
sometimes cause an extra mouse motion event (which would cause the
emulation to think the mouse was moved and move the player
accordingly).
* Tweaked bankswitch autodetection code for 4A50 bankswitching; several
more test ROMs are automatically detected.
* The 'saverom' debugger command now saves ROMs in your home
directory by default if you don't specify a valid path. This fixes
a bug whereby ROMs were saved in strange locations and couldn't later
be found.
* Fixed bug in automatically executing the debugger 'autoexec.stella'
file; any commands it contained weren't actually being executed.
* Zero-byte ROMs are no longer loaded and mis-detected as Supercharger
images.
3.3 to 3.4: (May. 29, 2011)
* Many improvements to input handling, particularly with the mouse and
paddles:
- The mouse can now be used to emulate a joystick, booster-grip or
driving controller.
- The mouse now controls only one device at a time (1 of 4 paddles,
1 of 2 joysticks, etc), instead of devices from both virtual ports.
- The sensitivity for digital and mouse input (for paddles) can now
be set separately with the 'dsense' and 'msense' commandline
arguments, and from within the Input Settings UI.
* Added support for the 2600-daptor device (2600-daptor.com), which is
similar to a Stelladaptor but improves handling of paddles. Thanks
go to Tom Hafner for a complimentary test sample of this device.
* Added new controller types 'Paddles_IAxis', 'Paddles_IDir', and
'Paddles_IAxDr', which invert the paddle axis, direction, and
axis+direction, respectively. These are used for certain ROMs
that have the axis or direction inverted from normal (for example,
using the paddles causes on onscreen object to move up and down vs.
left and right). All applicable ROMs in the internal database
have been updated.
* Added preliminary support for emulating ARM code to the DPC+
bankswitching scheme (thanks to Batari). Related to this, fatal
errors in the DPC+ ARM code are now caught and shown in the debugger.
* Updated internal ROM properties database to ROM-Hunter version 6
(thanks go to RomHunter for his tireless research in this area).
* The ROM audit dialog now automatically selects the current
directory in the ROM launcher, and reloads the directory after
the audit is complete.
* Removed the 'grabmouse' functionality; the mouse is now always
grabbed while playing a game, and released otherwise.
* Updated built-in version of the PNG library to the latest version.
* Support for Indic text shaping.
* Generation of stubless code in the IDL compiler.
* Support for X files in D3DX.
* 4- and 24-bit bitmap formats in the DIB engine.
* Listview performance improvements.
* Various bug fixes.
* Support for installation rollbacks in MSI.
* 8- and 16-bit bitmap formats in the DIB engine.
* Fixes in the XInput2 mouse support.
* Better support for text shaping in Uniscribe.
* Improvements to the Item common dialog.
* More MSVC runtime functions.
* Various bug fixes.
* Option to clip the mouse inside fullscreen windows.
* Support for persistent HTTP connections.
* Initial implementation of the XML writer.
* Support for drawing rectangles in the DIB engine.
* Volume control in MMDevAPI.
* More MSVC runtime functions.
* Various bug fixes.
* New sound driver architecture for MMDevAPI.
* Better support for relative mouse events in DInput.
* Debugger support for the ARM platform.
* Various improvements in D3DX9.
* More MSVC runtime functions.
* Various bug fixes.
Rebuilt IRQ handling. (zones)
Improved overall timings, now Snes9x can handle events in a opcode a little. (zones)
Improved screen interlace and sprite interlace supports. (OV2, zones)
Fixed Hi-Res pixel plotter. (BearOso, zones, OV2)
Fixed C4 for Mega Man X2's "weapon get" screen. (Jonas Quinn)
Fixed Super Buster Bros. graphics after reset. (Jonas Quinn)
Improved SA-1 support. (zones)
Added SA-1 CC2 support. (Jonas Quinn, byuu)
Fixed SA-1 NMI override mode. (zones)
Fixed Dual Orb 2 sound glitch. (byuu)
New APU timing hack, fixes various games that exhibit problems with Blargg's SNES_SPC library. (OV2)
Fixed the problem that echo buffer breaks IPL ROM. (zones, OV2)
Fixed movie snapshot unfreeze inconsistency. (gocha)
Faster config file saving. (OV2)
Fixed BlockInvalidVRAMAccess config file option. (windows port, unix port and gtk legacy config) (Jonas Quinn)
Remove POSIX dup and access calls, and rename qword to fix compilation with Cell SDK. (BearOso)
Fixed PS3 version save state crash by using heap allocation for soundsnapshot. (danieldematteis)
Fixed crash relating to double-closed descriptor. (BearOso)
Removed CPUShutdown speedhack, DisableHDMA and DisableIRQ options. (zones)
Removed remaining outdated asm code. (zones)
JMA 64 bit support. (kode54, Nach, friedrich.goepel)
GTK+, Win32, Mac: Added optional Hi-Res blending. (BearOso, OV2, zones)
GTK+, Win32: Support for bsnes-style XML shaders. (BearOso, OV2)
Unix : Fixed segfault and hang-up with -DNOSOUND. (zones)
GTK+ : Added ability to set specific folders for SRAM, patches, snapshots, etc. (BearOso)
GTK+ : Fixed many permissions issues with config folders. (BearOso)
GTK+ : Updated compatibility with latest GTK+ and GtkBuilder. Added experimental support for GTK+ 3.x. (BearOso)
GTK+ : Updated software output to use cairo and added the ability to use bilinear-filtering with it. (BearOso)
GTK+ : Fixed issues where cheats wouldn't stay enabled. (BearOso)
GTK+ : Fixed focus issue when there is no window manager. (BearOso)
GTK+ : Fixed X Visual incompatibilities and expose problems in the Xv and OpenGL outputs. (BearOso)
GTK+ : Fixed vsync with new X Server and NVIDIA drivers. (BearOso)
GTK+ : Added "Reduce input lag" option to OpenGL output. (BearOso)
GTK+ : Added a visual indication of the expected video refresh rate for the currently selected sound input rate. (BearOso)
slight fix.
* Changes in VICE 2.3
======================
** General
----------
- Added x64sc, the accurate C64 emulator:
* VIC-II emulation rewritten from scratch using results from extensive
testing with newly written test programs on real hardware.
* Emulation is done on a cycle by cycle basis combined with pixel exact
dot clock domain handling.
* Accurate handling of all possible in-line splits of VIC-II registers
and graphics data.
* C64 model and even individual chip revisions can be selected for very
detailed emulation of their differences.
* Equally accurate PAL, NTSC and PAL-N emulation.
We believe x64sc is one of the most accurate C64 emulators at the
moment.
- Drive improvements, including weak bit emulation.
- Major reSID overhaul:
* Emulation of all known pipeline delays for full cycle accuracy.
* New shift register model based on revectorized die photograps.
* Accurate DAC models based on revectorized die photograps.
* Emulation of floating waveform DAC input for waveform 0.
* Advanced 6581 transistor level filter model based on revectorized
die photograps, yielding unprecedented accuracy.
- CRT Emulation (former "PAL emulation") is now available regardless of
video mode or -chip and works in all emulators.
NOTE: Color gamma range changed. You may need to set to 2.200 manually.
(ColorGamma=2200)
- Added "True aspect ratio" option.
- Sound buffer overflows reduced and the error replaced with a warning.
- Various monitor improvements (io details, expansion port status ...)
- Removed little used Emulator ID feature.
- VIA wrap handling rewritten to fix problems with timer 2.
- Added autostart option to do LOAD ,8 instead of ,8,1.
- RESTORE key presses are now distributed randomly across a frame.
- Improved accuracy of CIA interrupts. (6526/6526A selectable)
** C64/C128 changes
-------------------
- Cartridge emulation improvements. Many broken cartridges fixed, and the
following ones added:
* Action Replay 2
* Action Replay 3
* Capture
* Diashow Maker
* EXOS
* Final Cartridge Plus
* Freeze Frame
* Freeze Machine
* Game Killer
* MACH 5
* Magic Voice
* MMC Replay
* Prophet 64
* Snapshot 64
* Super Explode V5
* Super Snapshot
- Added emulation of the passthrough port of MMC64, Magic Voice and IEEE488
cartridges.
- CIA TOD 50/60 Hz toggle emulation fixed.
- Improved 1351/paddles port MUX emulation.
** C64 changes
--------------
- Added Drean (PAL-N) emulation.
- Fixed bug with autostart mode Inject-to-RAM. It now writes to RAM under
I/O correctly.
** C128 changes
---------------
- Fixed a bug with autostarting t64 images.
** VIC20 changes
----------------
- Added Vic Flash Plugin cartridge emulation.
- Fixed video cache & reverse bug.
- Fixed bug in attaching 4kB cartridges.
- Fixed autostarting bug, mostly seen with tape images.
** PLUS4 changes
----------------
- Fixed crashes in NTSC mode.
- Added v364 speech emulation.
** PET changes
--------------
- Added DWW emulation.
- Added userport DAC emulation.
** CBM2 changes
---------------
- Split 5x0 and 6x0/7x0 settings in the configuration file.
** Unix changes
---------------
- (Xaw) The menus can now be operated without holding the
mouse button down. Keyboard control is also available
(Shift-Alt-Z for left menu, Shift-Alt-X for right menu).
- (Xaw) Lightpen/gun support added.
- (GTK+) Fixed aspect ratio option added.
** SDL UI changes
-----------------
- Added vsid UI, FFMPEG and printer menus. The UI is complete.
pkgsrc changes:
* Change CONFIGURE_ARGSs.
* Support GUI debugger.
* Set LICENSE.
Upstream Changelog:
Changes in 2.4.6 (February 22, 2011):
Brief summary :
- Support more host OS to run on:
- Include win64 native binary in the release.
- Fixed failures on big endian hosts.
- BIOS: Support for up to 2M ROM BIOS images.
- GUI: select mouse capture toggle method in .bochsrc.
- Ported most of Qemu's 'virtual VFAT' block driver
(except runtime write support, but plus FAT32 suppport)
- Added write protect option for floppy drives.
- Bugfixes / improved internal debugger + instrumentation.
Detailed change log :
- CPU and internal debugger
- Implemented Process Context ID (PCID) feature
- Implemented FS/GS BASE access instructions support
(according to document from http://software.intel.com/en-us/avx/)
- Rewritten from scratch SMC detection algorithm
- Implemented fine-grained SMC detection (on 128 byte granularity)
- Bugfixes for CPU emulation correctness and stability
- Fixed failures on Big Endian hosts !
- Print detailed page walk information and attributes in
internal debugger 'page' command
- Updated/Fixed instrumentation callbacks
- Configure and compile
- Bochs now can be compiled as native Windows x86-64 application
(tested with Mingw gcc 4.5.1 and Microsoft Visual Studio Express 2010)
- Added ability to configure CPUID stepping through .bochsrc.
The default stepping value is 3.
- Added ability to disable MONITOR/MWAIT support through .bochsrc
CPUID option. The option is available only if compiled with
--enable-monitor-mwait configure option.
- Determine and select max physical address size automatically at
configure time:
- 32-bit physical address for 386/486 guests
- 36-bit physical address for PSE-36 enabled Pentium guest
- 40-bit physical address for PAE enabled P6 or later guests
- Update config.guess/config.sub scripts to May 2010 revisions.
- Update Visual Studio 2008 project files in build/win32/vs2008ex-workspace.zip
- Added Bochs compilation timestamp after Bochs version string.
- GUI and display libraries (Volker)
- Added new .bochsrc option to select mouse capture toggle method.
In addition to the default Bochs method using the CTRL key and the
middle mouse button there are now the choices:
- CTRL+F10 (like DOSBox)
- CTRL+ALT (like QEMU)
- F12 (replaces win32 'legacyF12' option)
- display library 'x' now uses the desktop size for the maximum guest resolution
- ROM BIOS
- Support for up to 2M ROM BIOS images
- I/O Devices
- 3 new 'pseudo device' plugins created by plugin separation (see below)
- Fixes for emulated DHCP in eth_vnet (patch from @SF tracker)
- Added support for VGA graphics mode with 400 lines (partial fix for SF bug #2948724)
- NE2K: Fixed "send buffer" command issue on big endian hosts
- USB
- converted common USB code plus devices to the new 'usb_common' plugin
Now the USB device classes no longer exist twice if both HC plugins are loaded.
- added 'pseudo device' in common USB code for the device creation. This makes
the HCs independent from the device specific code.
- USB MSD: added support for disk image modes (like ATA disks)
- USB printer: output file creation failure now causes a disconnect
- re-implemented "options" parameter for additional options of connected
devices (currently only used to set the speed reported by device and to
specify an alternative redolog file of USB MSD disk image modes)
- hard drive
- new disk image mode 'vvfat'
- ported the read-only part of Qemu's 'virtual VFAT' block driver
- additions: configurable disk geometry, FAT32 support, read MBR and/or
boot sector from file, volatile write support using hdimage redolog_t
class, optional commit support on Bochs exit, save/restore file
attributes, 1.44 MB floppy support, set file modification date/time
- converted the complete hdimage stuff to the new 'hdimage' plugin
- new hdimage method get_capabilities() that can return special flags
- vmware3, vmware4 and vvfat classes now return HDIMAGE_HAS_GEOMETRY flag
- other disk image modes by default return HDIMAGE_AUTO_GEOMETRY if
cylinder value is set to 0
- multiple sector read/write support for some image modes
- new log prefix "IMG" for hdimage messages
- floppy
- added write protect option for floppy drives (based on @SF patch by Ben Lunt)
- vvfat support
- bugfix: close images on exit
- SB16
- converted the sound output module stuff to the new 'soundmod' plugin
- SF patches applied
[3164945] hack to compile under WIN64 by Darek Mihocka and Stanislav
[3164073] Fine grain SMC invalidation by Stanislav
[1539417] write protect for floppy drives by Ben Lunt
[2862322] fixes for emulated DHCP in eth_vnet
- these S.F. bugs were closed/fixed
[2588085] Mouse capture
[3140332] typo in mf3/ps2 mapping of BX_KEY_CTRL_R
[3111577] No "back" option in log settings
[3108422] Timing window in NE2K emulation
[3084390] Bochs won't load floppy plugin right on startup
[3043174] Docbook use of '_' build failure
[3085140] Ia_arpl_Ew_Rw definition of error
[3078995] ROL/ROR/SHL/SHR modeling wrong when dest reg is 32 bit
[2864794] BX_INSTR_OPCODE in "cpu_loop" causes crash in x86_64 host
[2884071] [AIX host] prefetch: EIP [00010000] > CS.limit [0000ffff]
[3053542] 64 bit mode: far-jmp instruction is error
[3011112] error compile vs2008/2010 with X2APIC
[3002017] compile error with vs 2010
[3009767] guest RFLAGS.IF blocks externel interrupt in VMX guest mode
[2964655] VMX not enabled in MSR IA32_FEATURE_CONTROL
[3005865] IDT show bug
[3001637] CMOS MAP register meaning error
[2994370] Cannot build with 3DNow support
- these S.F. feature requests were closed/implemented
[1510142] Native Windows XP x64 Edition binary
[1062553] select mouse (de)activation in bochsrc
[2930633] legacy mouse capture key : not specific enough
[2930679] Let user change mouse capture control key
[2803538] Show flags for pages when using "info tab"
-------------------------------------------------------------------------
Changes in 2.4.5 (April 25, 2010):
Brief summary :
- Major configure/cpu rework allowing to enable/disable CPU options at runtime
through .bochsrc (Stanislav)
- Bugfixes for CPU emulation correctness and stability
- Implemented X2APIC extensions (Stanislav)
- Implemented Intel VMXx2 extensions (Stanislav)
- Extended VMX capability MSRs, APIC Virtualization,
X2APIC Virtualization, Extended Page Tables (EPT),
VPID, Unrestricted Guests, new VMX controls.
- Implemented PCLMULQDQ AES instruction
- Extended Bochs internal debugger functionality
- USB HP DeskJet 920C printer device emulation (Ben Lunt)
Detailed change log :
- Configure rework
- Deprecate --enable-popcnt configure option. POPCNT instruction will be
enabled automatically iff SSE4_2 is supported (like in hardware).
- Make --ignore-bad-msrs runtime option in .bochsrc. Old --ignore-bad-msrs
configure option is deprecated and should not be used anymore.
- Enable changing part of CPU functionality at runtime through .bochsrc.
- Now you could enable/disable any of SSEx/AES/MOVBE/SYSENTER_SYSEXIT/XSAVE
instruction sets using new CPUID option in .bochsrc.
- When x86-64 support is compiled in, you could enable/disable long mode
1G pages support without recompile using new CPUID option in .bochsrc.
Configure options:
--enable-mmx, --enable-sse, --enable-movbe, --enable-xsave,
--enable-sep, --enable-aes, --enable-1g-pages
are deprecated and should not be used anymore.
- Local APIC configure option --enable-apic is deprecated and should not
be used anymore. The LAPIC option now automatically determined from
other configure options. XAPIC functionality could be enabled using
new CPUID .bochsrc option.
- Changed default CPU configuration (generated by configure script with
default options) to BX_CPU_LEVEL=6 with SSE2 enabled.
- CPU
- Implemented PCLMULQDQ AES instruction
- Implemented X2APIC extensions / enable extended topology CPUID leaf (0xb),
in order to enable X2APIC configure with --enable-x2apic
- Implemented Intel VMXx2 extensions:
- Enabled extended VMX capability MSRs
- Implemented VMX controls for loading/storing of MSR_PAT and MSR_EFER
- Enabled/Implemented secondary proc-based vmexec controls:
- Implemented APIC virtualization
- Implemented Extended Page Tables (EPT) mode
- Implemented Descriptor Table Access VMEXIT control
- Implemented RDTSCP VMEXIT control
- Implemented Virtualize X2APIC mode control
- Implemented Virtual Process ID (VPID)
- Implemented WBINVD VMEXIT control
- Implemented Unrestricted Guest mode
In order to enable emulation of VMXx2 extensions configure with
--enable-vmx=2 option (x86-64 must be enabled)
- Bugfixes for CPU emulation correctness
- Fixed Bochs crash when accessing the first byte above emulated memory size
- Internal Debugger
- Introduced range read/write physical watchpoints
- Allow reloading of segment registers from internal debugger
- Improved verbose physical memory access tracing
- BIOS
- Fix MTRR configuration (prevented boot of modern Linux kernels)
- Fix interrupt vectors for INT 60h-66h (reserved for user interrupt) by
setting them to zero
- Fix BIOS INT13 function 08 when the number of cylinders on the disk = 1
- I/O Devices
- USB HP DeskJet 920C printer device emulation (Ben Lunt)
- Misc
- Updated Bochs TESTFORM to version 0.5
- SF patches applied
[2864402] outstanding x2apic patches by Stanislav
[2960379] Fix build with -Wformat -Werror=format-security by Per Oyvind Karlsen
[2938273] allow instrumentation to change execute by Konrad Grochowski
[2926072] Indirection operators in expressions by Derek Peschel
[2914433] makesym.perl misses symbols by John R. Jackson
[2908481] USB Printer by Ben Lunt
- these S.F. bugs were closed/fixed
[2861662] dbg_xlate_linear2phy needs to be updated
[2956217] INT13 AH=8 returns wrong values when cylinders=1
[2981161] Allow DMA transfers to continue when CPU is in HALT state
[2795115] NX fault could be missed
[2964824] bad newline sequence in aspi-win32.h
[913419] configure options and build process needs some work
[2938398] gdbstub compile error with x86_64 enabled
[2734455] shutdown/reset type 05 should reinit the PICs
[1921294] extended memory less than 1M wrong size
[1947249] BX_USE_EBDA_TABLES and MP table placement
[1933859] BX_USE_EBDA_TABLES and memory overlapping
[2923680] "help dregs" is a syntax error
[2919661] CPU may fail to do 16bit near call
[2790768] Memory corruption with SMP > 32, Panic BIOS Keyboard Error
[2902118] interrupts vectors 0x60 to 67 should be NULL !
[2912502] Instruction Pointer behaving erratically
[2901047] Bochs crashed, closed by guest os
[2905385] Bochs crash
[2901481] Instruction SYSRET and SS(PL)
[2900632] Broken long mode RETF to outer priviledge with null SS
[1429011] Use bx_phyaddr_t for physaddr vars and bx_adress for lin adr
- these S.F. feature requests were closed/implemented
[2955911] RPM preuninstall scriptlet removes /core
[2947863] don't abort on unrecognised options
[2878861] numerics in the disassembler output
[2900619] make more CPU state changeable
-------------------------------------------------------------------------
Changes in 2.4.2 (November 12, 2009):
- CPU and internal debugger
- VMX: Implemented TPR shadow VMEXIT
- Bugfixes for CPU emulation correctness (mostly for VMX support).
- Bugfixes and updates for Bochs internal debugger
- On SMP system stepN command now affects only current processor
- Memory
- Bugfixes for > 32-bit physical address space.
- Allow to emulate more physical memory than host actually could or would
like to allocate. For more details look for new .bochsrc 'memory' option.
- Cleanup configure options
- All paging related options now will be automatically determined according
to --enable-cpu-level option. Related configure options
--enable-global-pages, --enable-large-pages,
--enable-pae, --enable-mtrr
are deprecated now. Only 1G paging option still remaining unchanged.
- Deprecate --enable-daz configure option. Denormals-are-zeros MXCSR control
will be enabled automatically iff SSE2 is supported (like in hardware).
- Deprecate --enable-vme configure option, now it will be supported iff
CPU_LEVEL >= 5 (like in hardware).
- I/O Devices
- Bugfixes for 8254 PIT, VGA, Cirrus-Logic SVGA, USB UCHI
- SF patches applied
[2817840] Make old_callback static by Mark Marshall
[2874004] fix for VMWRITE instruction by Roberto Paleari
[2873999] fix CS segment type during fast syscall invocation by Roberto Paleari
[2864389] Debugger gui maximize on startup by Thomas Nilsen
[2817868] Rework loops in the memory code by Mark Marshall
[2812948] PIT bug by Derek
- these S.F. bugs were closed/fixed
[2833504] GUI debugger bug-about GDT display
[2872244] BIOS writes not allowed value to MTRR MSR causing #GP
[2885383] SDL GUI memory leak
[2872290] compilation in AIX5.3 ML10 failes
[2867904] crash with cirrus bx_vga_c::mem_write
[2851495] BIOS PCI returns with INT flag = 0
[2860333] vista 64 guest STOP 109 (GDT modification)
[2849745] disassembler bug for 3DNow and SSE opcodes
[1066748] Wrong registers values after #RESET, #INIT
[2836893] Regression: Windows XP installer unable to format harddrive
[2812239] VMX: VM-Exit: Incorrect instruction length on software int
[2814130] bx_debug lex/yacc files incorrectly generated
[2813199] MP Tables Missing From BIOS
[2824093] VMX exception bug
[2811909] VMX : CS Access-rights Type.Accessed stays 0
[2810571] Compile Errors on OSX
[2823749] GCC regression or VM_EXIT RDMSR/WRMSR bug
[2815929] Vista/XP64 unnecessary panic
[2803519] Wrong example in man page bochsrc
- these S.F. feature requests were closed/implemented
[422766] Large Memory configurations
[1311287] Idea for a better GUI
[455971] USB support
[615363] debugger shortcut for repeat last cmd
-------------------------------------------------------------------------
Changes in 2.4.1 (June 7, 2009):
- Fixed bunch of CPUID issues
- Bochs is now able to install and boot 64-bit Windows images!
(special thanks to Mark Ebersole for his patch)
- Several bugfixes in CPU emulation (mostly for x87 instructions)
- Fixed two critical deadlock bugs in the Win32 gui (patches from @SF tracker)
- Fixes related to the 'show ips' feature
- removed conflicting win32-specific alarm() functions ('win32' and 'sdl' gui)
- feature now works in wx on win32
- Added support for gdb stub on big endian machine (patch by Godmar Back)
- Rewritten obsolete hash_map code in dbg symbols module (patch from @SF)
- BIOS: implemented missing INT 15h/89h (patch by Sebastian Herbszt)
-------------------------------------------------------------------------
Changes in 2.4 (May 3, 2009):
Brief summary :
- Added graphical Bochs debugger frontend for most of the supported platforms.
- Thanks for Chourdakis Michael and Bruce Ewing.
- Many new CPU features in emulation
- Support for > 32 bit physical address space and configurable MSRs
- VMX, 1G pages in long mode, MOVBE instruction
- Bugfixes for CPU emulation correctness, debugger and CPU instrumentation.
- New config interface 'win32config' with start and runtime menu
- USB: added OHCI support, external hub and cdrom
- Added user plugin interface support.
Detailed change log :
- CPU and internal debugger
- Support for VMX hardware emulation in Bochs CPU, to enable configure with
--enable-vmx option
Nearly complete VMX implementation, with few exceptions:
- Dual-monitor treatment of SMIs and SMM not implemented yet
- NMI virtualization, APIC virtualization not implemented yet
- VMENTER to not-active state not supported yet
- No advanced features like Extended Page Tables or VPID
- Support for configurable MSR registers emulation, to enable configure with
--enable-configurable-msrs option
Look for configuration example in .bochsrc and msrs.def
- Support new Intel Atom(R) MOVBE instruction, to enable configure with
--enable-movbe option
- Support for 1G pages in long mode, to enable configure with
--enable-1g-pages option
- Support for > 32 bit physical address space in CPU. Up to 36 bit could be
seen in legacy mode (PAE) and up to 40 bit in x86-64 mode.
Still support the same amount of the physical memory in the memory object,
so system with > 4Gb of RAM yet cannot be emulated.
To enable configure with --enable-long-phy-address option.
- Implemented modern BIOSes mode limiting max reported CPUID function
to 3 using .bochsrc CPU option. The mode is required in order to
correctly install and boot WinNT.
- Added ability to configure CPUID vendor/brand strings through .bochsrc
(patch from @SF by Doug Reed).
- Many bugfixes for CPU emulation correctness (both x86 and x86-64).
- Updated CPU instrumentation callbacks.
- Fixed Bochs internal debugger breakpoints/watchpoints handling.
- Configure and compile
- Added ability to choose Bochs log file name and Bochs debugger log file
name from Bochs command line (using new -log and -dbglog options)
- Removed Peter Tattam's closed source external debugger interface from
the code.
- Removed --enable-guest2host-tlb configure option. The option is always
enabled for any Bochs configuration.
- Removed --enable-icache configure option. The option is always enabled
for any Bochs configuration. Trace cache support still remains optional
and could be configured off.
- Added configure option to compile in GUI frontend for Bochs debugger,
to enable configure with --enable-debugger-gui option.
The GUI debugger frontend is enabled by default with Bochs debugger.
- Removed --enable-port-e9-hack configure option. The feature now could be
configured at runtime through .bochsrc.
- Added configure option to enable/disable A20 pin support. Disabling the
A20 pin support slightly speeds up the emulation.
- reduced dependencies between source files for faster code generation
- BIOS
- Added S3 (suspend to RAM) ACPI state to BIOS (patch by Gleb Natapov)
- Implemented MTRR support in the bios (patches by Avi Kivity and Alex
Williamsion with additions by Sebastian Herbszt)
- Bug fixes
- I/O Devices
- Added user plugin support
- remaining devices converted to plugins: pit, ioapic, iodebug
- added 'plugin_ctrl' bochsrc option to control the presence of optional
device plugins without a separate option. By default all plugins are enabled.
- added register mechanism for removable mouse and keyboard devices
- Hard drive / cdrom
- PACKET-DMA feature now supported by all ATAPI commands
- ATAPI command 0x1A added (based on the Qemu implementation)
- sb16
- Added ALSA sound support on Linux (PCM/MIDI output)
- FM synthesizer now usable with MIDI output (simple piano only)
- Fixed OPL frequency to MIDI note translation
- Fixed MIDI output command
- keyboard
- added keyboard controller commands 0xCA and 0xCB
- USB
- USB code reorganized to support more HC types and devices
- added USB OHCI support written by Ben Lunt
- added external USB hub support (initial code ported from Qemu)
- added USB cdrom support (SCSI layer ported from Qemu)
- added status bar indicators to show data transfer
- VGA
- VBE video memory increased to 16 MB
- implemented changeable VBE LFB base address (PCI only, requires latest
BIOS and VGABIOS images)
- I/O APIC
- implemented I/O APIC device hardware reset
- Config interface
- new config interface 'win32config' with start and runtime menu is now
the default on Windows ('textconfig' is still available)
- win32 device config dialogs are now created dynamicly from a parameter list
(works like the wx ParamDialog)
- changes in textcofig and the wx ParamDialog for compatibility with the new
win32 dialog behaviour
- Bochs param tree index keys are case independent now
- some other additions / bugfixes in the simulator interface code
- Misc
- updated LGPL'd VGABIOS to version 0.6c
- Updated Bochs TESTFORM to version 0.4
- SF patches applied
[2784858] IO Handler names are not compared properly
[2712569] Legacy bios serial data buffer timeout bug by grybranix
[2655090] 64 bit BSWAP with REX.W broken by M. Eby
[2645919] CR8 bug when reading by M. Eby
[1895665] kvm: bios: add support to memory above the pci hole by Izik Eidus
[2403372] rombios: check for valid cdrom before using it by Sebastian
[2307269] acpi: handle S3 by Sebastian
[2354134] TAP networking on Solaris/Sparc repaired
[2144692] The scsi device can not complete its writing data command by naiyue
[1827082] [PATCH] Configurable CPU vendor by Marcel Sondaar
[2217229] Panic on EBDA overflow in rombios32 by Sebastian
[2210194] Log pci class code by Sebastian
[1984662] red led for disk write and titlebar mod by ggbsf
[2142955] Fix for monitor/mwait by Doug Gibson
[2137774] Patch to fix bug: cdrom: read_block: lseek returned error by Gabor Olah
[2134642] Fix scan_to_scanascii table for F11 and F12 by Ben Guthro & Steve Ofsthun
[2123036] sdl fullscreen fix by ggbsf
[2073039] Remove CMOS accsess from AML code by Gleb Natapov
[2072168] smbios: add L1-L3 cache handle to processor information by Sebastian
[2055416] bochsrc cpu options for cpuid vendor and brand string by Doug Reed
[2035278] rombios: Fix return from BEV via retf by Sebastian
[2035260] rombios: El Torito load segment fix by Sebastian
[2031978] Fix VMware backdoor command 0Ah by Jamie Lokier
[2015277] Remove obsolete comment about DATA_SEG_DEFS_HERE hack by Sebastian
[2011268] Set new default format and unit only if both are supported by Sebastian
[2001919] gdbstub: fix qSupported reply by Sebastian
[2001912] gdbstub: enclose packet data by apostrophes by Sebastian
[1998071] fix missing SIGHUP and SIGQUIT with term ui on mingw by Sebastian
[1998063] fix wrong colors with term ui by Sebastian
[1995064] Compile fix needed for --enable-debugger and gcc 4.3 by Hans de Goede
[1994564] Fix typo in RDMSR BX_MSR_MTRRFIX16K_A0000 by Sebastian
[1994396] Change hard_drive_post #if by Sebastian
[1993235] TESTFORM email address update by Sebastian
[1992322] PATCH: fix compilation of bochs 2.3.7 on bigendian machines by Hans de Goede
[1991280] Shutdown status code 0Ch handler by Sebastian
[1990108] Shutdown status code 0Bh handler by Sebastian
[1988907] Shutdown status code 0Ah handler by Sebastian
[1984467] two typos in a release! (2.3.7)
[1981505] Init PIIX4 PCI to ISA bridge and IDE by Sebastian
- these S.F. bugs were closed/fixed
[2784148] an integer overflow BUG of Bochs-2.3.7 source code
[2695273] MSVC cpu.dsp failure in 2.3.7.zip
[616114] Snapshot/Copy crash on Win2K
[2628318] 'VGABIOS-latest' bug
[1945055] can't 'make install' lastest bochs on loepard
[2031993] Mac OS X Makefile bug
[1843199] install error on mac osx
[2710931] Problem compiling both instrumentation and debugger
[2617003] ExceptionInfo conflicts with OS X api
[2609432] stepping causes segfault (CVS)
[2605861] compile error with --enable-smp
[1757068] current cvs(Jul19, 07) failed to boot smp
[2426271] cannot get correct symbol entry
[2471982] VGA character height glitches
[1659659] wrong behaviour a20 at boot
[1998027] minwg + --with-term + --with-out-win32 = link failure
[1871936] bochs-2.3.6 make fails on wx.cc
[1684666] info idt for long mode
[2105989] could not read() hard drive image file at byte 269824
[1173093] Debugger totally not supports x86-64
[1803018] new win32debug dialog problems
[2141679] windows vcc build broken
[2162824] latest cvs fails to compile
[2164506] latest bochs fails to start
[2129223] MOV reg16, SS not working in real mode due to dead code
[2106514] RIS / startrom.com install ALMOST works
[2123358] SMP (HTT): wbinvd executed by CPU1 crashes CPU0
[2002758] Arch Linux: >>PANIC<< ATAPI command with zero byte count
[2026501] El Torito incorrect boot segment:offset
[2029758] BEV can return via retf instead of int 18h
[2010173] x command breaks after one error about x/s or x/i
[1830665] harddrv PANIC: ATAPI command with zero byte count
[1985387] fail to make using gcc4 with --enable-debugger
[1990187] testform feedback
[1992138] Misspell in cpu/ia_opcodes.h
- these S.F. feature requests were closed/implemented
[2175153] Update MSVC project files
[658800] front end program and bios
[1883370] Make cd and floppy images more usable
[422783] change floppy size without restarting
[2552685] param tree names should be case insensitive
[1214659] PC Speaker emu turnoff. Plugin Controll.
[1977045] support 40 bit physical address
[1506385] Intel Core Duo VT features
[1429015] Support for user plugins
[1488136] debugger access to floppy controller
[1363136] Full debugger SMP and 64 bit support
[2068304] Support for ACPI
[431032] debugger "x" command
[423420] profiling ideas (SMF)
[445342] Add FM support?
[928439] alsa
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.