Jump to content

MAME / MESS / MESSUI 0.147u2 released


Recommended Posts









MAMETesters Bugs Fixed


- 05046: [Crash/Freeze] (megatech.c) megatech, all sms-based sets: [debug]

Crash after OK (sronco)

- 05042: [Documentation] (ataxx.c) ataxxj: Missing documentation that

is on the title screen.

- 04948: [Gameplay] (pgm.c) kov and clones: resets to title screen

stage 6 (winter stage) (iq_132)

- 00007: [DIP/Input] (8080bw.c) invrvnge: The cocktail DIP has no effect. (hap)

- 05036: [Gameplay] (ninjakd2.c) omegafs: Failure to finish post + reset (hap)

- 05028: [Gameplay] (system1.c) shtngmste: The gun crosshair vs gun hit

position offset is wrong (hap)


Source Changes


-Added support for DEVCB_UNMAPPED, that will do the logging on

read/write of device callback, preventing a need for making dummy log

line handlers [Miodrag Milanovic]


-if the start of a multi-line comment is indented then following

comment lines will be indented with tabs up to that point. [smf]


-Information adjustments for naomi.c, chihiro.c, mame.lst reflecting

latest discoveries. [f205v]


-New preliminary driver for Webak MPU-12 platform. [Roberto Fresca]


-Refactored the code in jedutil to support the viewing of a GAL16V8

device and added a new command line option of "-viewlist" which will

print out a list of all the devices that can be viewed in human

readable logic equations. Also updated the jedutil regression test to

support passing in an additional argument of "debug" to print out a

detailed log. Also moved the jedutil regression test data into

separate directories composed of the device's name to make things more

organized. [Kevin Eshbach]


-Removed protection hack patches and emulated protection routines for

Caveman Ninja [iQ_132 & JackC]


-Added experimental support for using Berkeley PLA files as input to

jedutil. [Curt Coder]


-memory: Fix dynamic recursive device mapping [O. Galibert]


* you have a device (pc-fdc) with a memory map on it

* you map it dynamically into a cpu (maincpu) address space with

install_device (isa-fdc does that)

* the device pc-fdc has a subdevice (upd765)

* the subdevice upd765 has its own memory map

* the pc-fdc memory map includes the upd765 memory map through

AM_DEVICE("upd765", ...)

Before the fix, the code would search for upd765 as a subdevice of

maincpu and not of pc-fdc.


-am9517a: Don't grossly fail on verify [O. Galibert]


-3X3 Puzzle update [David Haywood]

* fixed visible area

* added the 2nd button

* added the Demo Sound dip


-Fixed sound banking in 3X3 Puzzle [Mariusz Wojcieszek]


-Added scrolling to 3X3 Puzzle [Mariusz Wojcieszek]


-SCSI: Uses logical levels rather than voltage levels for control signals,

you have to write 0 to the data lines when you're not sending data.

Added a kludge to stop the ff from the 6522 from preventing the bus

from being read, this may or may not be how the hardware really works.



-i386dasm.c: [Peter Ferrie]

* added numerous opcodes for newer CPUs;

* added some undocumented-but-supported opcodes from old CPUs;

* corrected naming of two opcodes


-port 0x64 opcode 0xd1 should incur no delay when delivering. This

allows, for example, su2000 to start booting to the CMOS setup screen

[Peter Ferrie]


-Improved inputs in 3X3 Puzzle [stephh]


-Aristocrat MK6 base system bios for New South Wales region



-hercules : hooked up mechanical sounds [Robbbert].


-memory: Map from the cpu's owner, not the root device, otherwise

siblings of cpus coming from config fragments aren't happy.

[O. Galibert]


-clifront.c: Added verifysoftlist command for verifying software

availability for separate software lists. [Wilbert Pol]


-Created a base class delegate_common_base for all delegate

types. Created a binding_type_exception which is thrown when

a bind attempt fails due to mismatched types.[Aaron Giles]


Added helper templates to driver_device to wrap legacy

device read/write handlers into driver_device member functions.

This should help move some things forward until more common

code is converted into proper devices.


Introduce new module devcb2 which contains modernized

versions of devcb. Compared to previous implementation

this one is simpler overall, trampolining calls through

a single internal set of adapter functions. The new

versions are also designed to be specified in the

machine_config rather than in structures, so they are

no longer simple POD types. Additional new/changed



* reads and writes can map to delegates for line or 8/16/32/64-bit

* reads and writes can map to an I/O port

* reads can be mapped to a constant value, with or without logging

* writes can be mapped to a device's input line

* all reads/writes can have a shift, mask, and/or xor applied

* devices can opt to make the functions safe-if-NULL when resolving

* only member function types are supported


Rewrote the YM2151 interface to be fully modernized, and

removed the ym2151_interface struct in favor of inline configs

using the new devcb2 mechanism. In many cases, removed

no longer needed trampolines, instead taking advantage of

direct support for input line writes.


-switched SCSICB to use DEVCB2 [smf]


-Optimized the PLA implementation and added simple caching with

significant performance increase. [Curt Coder]


-tlcs900.c: Implemented the 4-byte prefetch queue. [Wilbert Pol]


-t6w28.c: Converted to C++. [Wilbert Pol]


-suna8.c update [Luca Elia]

* Emulated the protection in sparkman

* Support for two sprite chips

* Support for two sample ROMs

* Fixed color cycling in hardhea2

* Per-game tile banking


-Added opcodes to Atmel AVR core: OR, SBCI, ORI, ST Y+, ADIW



-Fixed functional issues in Atmel AVR opcodes: COM, NEG, LSR [Mooglyguy]


-Hooked up polepos.c, portrait.c and tomcat.c to use the new tms5220

implementation. [Osso]


-addrmap: Yes, we can have a map for 8bits on 8bits, and that's not the

end of the world [O. Galibert]


-addrmap: Avoid a collision between address_map the type and the method

of the device_memory_interface class [O. Galibert]


-i386: 486+ WP bit support [Carl]


-Williams system3 : Contact and Disco Fever marked as WORKING. [Robbbert]


-Hot Tip, Lucky Seven : added chimes, now marked as WORKING [Robbbert]


-Moved Phoenix and Pokerino to s3.c and marked as WORKING [Robbbert]


-Don't crash on REP NOP [Carl, Alegend45]


-suna16.c: Emulate protection routines rather than patching them for

uballoon [iQ_132 & JackC]


-pgm.c: Fix level 6 crash on kov . [iQ_132]


-megadrvb.c: simplify decode function for srmdb. [iQ_132]


-Cleaned up mustache boy vblank interrupts: Got rid of the nasty

long-int hack in mustache boy in favor of the same 'vblank in+vblank

out' int scheme the other similar seibu games of this era used

(panicrd, darkmist). This seems much more likely to be what the actual

pcb used, and works just fine. [Lord Nightmare]


-changed 2 disc hack to use 1 drive [smf]


-SCSICD now has a CDDA sub device [smf]


-avr8: Implemented MULS, ANDI, STD Z+, LD -Z, LD Y+, LD -Y, LD -X,

SWAP, ASR, ROR, and SBIS opcodes. [MooglyGuy]


-avr8: Moved Timer 0-2 into the CPU core itself, 30x driver speedup



-Emulate protection in sf2rb, sf2rb2's (cps1.c) and ichirjbl (segac2.c)

rather than simply patch it out. [iQ_132]


-Hooked up PSX IRQ's using DEVCB2 [smf]


-avr8.c: Added LD Rd,Z+q opcode [MooglyGuy]


-avr8.c: Corrected cycle counts for LD and ST opcodes. [MooglyGuy]


-avr8.c: Fixed a bug where a 2-cycle or 3-cycle opcode encountered

during a time slice were causing all subsequent 1-cycle opcodes to

deduct 2 or 3 cycles for the remainder of the time slice instead.



-cleaned up the ide controller enough to change the irq to a DEVCB2



-avr8.c: Fixed register indexing for MULSU opcode. [MooglyGuy]


-avr8.c: Fixed register writeback for LD -Z and LD -Y opcodes.



-Bingo Mania: Added PCB layouts and descriptions

[Roberto Fresca, Team Europe]


-YM2612: fix LFO AM waveform [Eke-Eke, R. Belmont]


-Fun World driver improvements [Roberto Fresca]

* Added 'Bonus Card (Austrian)' from Fun World.

* Added PCB layouts.

* Set Big Deal sets and Jolly Card hybrid as clones of Bonus Card.

* Cleaned up the code.

* Changed company name 'Funworld' to 'Fun World'.

* Changed Mega Card to Power Card after check the real hardware


* Fixed Power Card graphics ROM load..

* Added technical notes.


-romload: Tell in which zips a missing rom was searched for

[O. Galibert]


-Moved jolycdat program to Bonus Card, making it parent. This program

is a real original Bonus Card program, and the PCB was populated with

common Jolly Card graphics wrongly. The other Bonus Card set was

turned as clone, since has a fake copyright string (hack). Also added

some technical notes. [Roberto Fresca]


-More Fun World driver improvements... [Roberto Fresca]

* Renamed the internal layout artwork: bigdeal --> bonuscrd.

* Default Bonus Card & Big Deal DIP switches positions, that allow

boot the system without errors.


-Pennant Fever is now WORKING [Robbbert].


-lethalj.c: Added dipswitch locations to the Egg Venture sets.

[brian Troha]


-Improvements to Maygay M1 emulation, most games at least show something

now [David Haywood/James Wallace]


-Remove hack patch for tdragonb and emulated protection instead [iQ_132]


-Comet is now WORKING [Robbbert].


Magic Card II improvements: [Roberto Fresca]

- Added new Yugoslavian set of Magic Card 2 (Nov/New).

- Added default NVRAM, needed to boot properly.

- Rearrange the whole Magic Card 2 sets, and improved descriptions.

- Added technical notes.




New games added or promoted from NOT_WORKING status


Each Way Shifter (Barcrest?) [Launton/MPU Mecca]

Lucky Twos [launton/MPU Mecca]

Scoop (Peter Simper, prototype?) (MPU3) [superbank/MPU Mecca]

More Money (VFS) (MPU3) [Fruitsim/MPU Mecca]

Talk of the Town (MPU3) [Fruitsim/MPU Mecca]

3X3 Puzzle [Mariusz Wojcieszek, David Haywood, Guru]

3 On 3 Dunk Madness (US, prototype? 1997/02/04)

[David Haywood, ShouTime, Smitdogg, The Dumping Union]

Spark Man (v2.0, 2 sets) [Luca Elia, Stefan Lindberg]

Fighting Fantasy (bootleg with 68705) [iQ_132]

Bonus Card (Austrian) [Roberto Fresca, Team Europe]



New clones added


Each Way Nudger (Barcrest?, set 3, version 20?) [Launton/MPU Mecca]

Knights of Valour Super Heroes / Sangoku Senki Super Heroes (ver. 102, CN)

[Joerg Hartenberger, JackC]

Knights of Valour Super Heroes / Sangoku Senki Super Heroes (ver. 101, CN)

[Joerg Hartenberger, JackC]

Invader's Revenge (3 sets) [Andrew Welburn]

Megatouch 5 Tournament Edition (9255-70-01 ROC, Standard version)

[brian Troha, The Dumping Union]

Phoenix (Irecsa / G.G.I Corp, set 3) [Any]

Rallys (alternate bootleg of Spectar) [Any]

The Billiards (Video Hustler bootleg) - Set 2 [Any] - not working

Double Axle (US) [shouTime, The Dumping Union]

Angler Dangler [Tornadoboy]

Puzzli 2 (ver 100) [Tormod, Smitdogg, The Dumping Union] (NOT WORKING)

4-in-1 MAME bootleg (set 1, ver 3.00) [David Haywood]

4-in-1 MAME bootleg (set 2) [David Haywood]

19-in-1 MAME bootleg [David Haywood]

48-in-1 MAME bootleg (set 2, ver 3.09, alt flash) [David Haywood]

60-in-1 MAME bootleg (ver 3.00) [David Haywood, Andreas Naive]

Xain'd Sleena (World) [Corrado Tomaselli]

WEC Le Mans 24 (set 2) [Corrado Tomaselli]

The Speed Rumbler (set 3) [Corrado Tomaselli]

Rapid River (prototype) [italian dumping team]

Hang Pilot (ver UAA) (not working) [shouTime]

Seibu Cup Soccer (set 3) (not working)

Egg Venture (Release 2) [brian Troha, The Dumping Union]

The King of Fighters '97 Oroshi Plus 2003 (bootleg)

[The Dumping Union, Smitdogg, IQ_132]

Magic Card II (Nov, Yugoslavian hack) [Roberto Fresca]



New games marked as GAME_NOT_WORKING


3 On 3 Dunk Madness (US, prototype?)

[shouTime, Smitdogg, The Dumping Union]

Secret Service (2.6 alternate sound) [PinMAME]

Odin [PinMAME]

Gamatron (Sonic) [PinMAME]

Star Wars (Sonic, alternate set) [PinMAME]

Nemesis [PinMAME]

Verne's World [PinMAME]

Still Crazy [Robbbert]

Fruit Star Bonus (Ver 8.20PIR) [Roberto Fresca, Team Europe]

Double Crown [Kevin Eschbach]

Cops [Mariusz Wojcieszek]

Bingo Mania (P03-P07-P14) [Team Europe, Angelo Salese, Roberto Fresca]

Bingo Mania (A03) [Team Europe, Angelo Salese, Roberto Fresca]

Power Card (Ver 0263, encrypted) [Roberto Fresca, Team Europe]






MAMETesters Bugs Fixed


- 05030: [DIP/Input] (coco3.c) coco3: Hi-Res joystick does not work for Tandy or CocoMax (sronco)

- 04878: [Crash/Freeze] (mac.c) macii and clones: Crash before OK with nb9 slot (R. Belmont)


New System Drivers Supported:




Systems Promoted from GAME_NOT_WORKING:


- Macintosh LC [R. Belmont]

- Macintosh IIsi [R. Belmont]

- Macintosh LC II [R. Belmont]

- Macintosh Classic II [R. Belmont]

- Macintosh LC III [R. Belmont]

- Macintosh IIvx [R. Belmont]

- Macintosh IIvi [R. Belmont]


Skeleton drivers:




System Driver Changes:


-snes.c: fixed Dezaemon SRAM mappings. [Fabio Priuli]


-gameboy.c: Added support for the mapper used by Sonic 3D Blast

5 pirate. [Wilbert Pol]


-samcoupe.c: modified the driver to not install / uninstall bank

handlers, greatly improving performaces (e.g. Manic Miner demo went

from 20% to 380% ingame). Plus added some very preliminary softlists.

[David Haywood]


-mac updates: [R. Belmont]

* Line-level ADB comms for machines using the Egret ADB MCU,

including standard transactions and SRQ

* Built-in video support for all modes on machines with the V8 and

Sonora ASICs

* Corrected some minor bugs in the ADB protocol spoken by the

keyboard simulation


-c128: Rewrote the driver using the PLA for address decoding.

[Curt Coder]


-gameboy.c: Partially implemented banking for Story of La Sa Ma.

[Wilbert Pol]


-mac: Support original Macintosh II Video Card

[R. Belmont, Sharkpuncher]


-hp9k: made drive go into boot process [Gabriele D'Antona]


-craft: added basic Timer 1 support to Craft driver and hooked up the DAC,

currently plays only a buzzing noise due to lacking EEPROM support



-mac: Convert 343-004x RTC/PRAM chip into modern RTC device

[R. Belmont]


-mac: Support headless operation [R. Belmont]


-mac updates: [R. Belmont]

* Fixed some glitches with the SE/30's built-in video

* Added preliminary infrastructure for LC and '030-type

processor-direct slots

* Support for SE/30 processor-direct slot version of RasterOps

Colorboard 264


-mac: Add support for Lapis ProColor Server 8*16 PDS video card

[R. Belmont, Sharkpuncher]


-mac: Add support for PDS Sigma Designs L-View card

[R. Belmont, Sharkpuncher]


-a2600: Reimplemented the a2600 controllers as vcs controller

devices. Switched the a2600 drivers to use slot devices for choosing

controllers. [Wilbert Pol]


-craft.c: Fixed DAC bit order, audio now plays but is 40% too slow



-craft.c: Preliminary video support, bad vsync and colors still.



-mac: Preliminary support for Micron XCEED 30HR and MacroColor

30 PDS cards [R. Belmont, Sharkpuncher, Balrog]


-a7800: NTSC Color Generator utilized for color palette with

hue shift/start based on observation of several systems across

multiple displays [Robert Tuccitto]


Software Lists:


-32x: added region compatibility filters to the software list

[Fabio Priuli, Tafoid, Bobz]


-spectrum_cass.xml: added very preliminary softlist containing

some interesting test case for emulation. [David Haywood]


-pcw16.xml: added softlist for available disk images [remax]


-snes.xml: added region compatibility filters to the software list

[Fabio Priuli, Tafoid, Bobz]


-amiga.xml: added placeholder lists for system disks. [David Haywood]


-amiga: added very preliminary softlist for game disks

[David Haywood]


-ibm5150.xml: updated with recent dumps. [Kaylee]


Source Changes


-floppy: Random fixes/logging [O. Galibert]


-upd765: Modernize [O. Galibert]


Remaining TODO list:

* take WP into account

* test the amstrad, implement its observational format (edsk) using

pasti as a start. Or find the legendary amstrad IPFs. Or both.

* correct read track, the implementation is completely wrong. See

previous for testing, it's only used in protections the check the

inter-sector gaps.

* shake and bake on the amstrad, protections are the best to find

bugs in a fdc

* add the scan id commands, but nothing seems to use them

* debug the 2.88M formatting which is unreliable. Fix its IDAM/DAM

gap size on formatting too (but that's not what's making it


* test all the systems that were hit, and fix what needs to be fixed.

Beware that multiple problems may happen:

* upd765 may be wrong

* the driver may not be working

* the hookup may be wrong/incomplete (bitrate selection and floppy

rpm in particular)

* the driver may be too limited for the new implementation (the x68k

dma device does not handle non-instant dma yet for instance)

* report invalid command when appropriate depending on the actual

chip emulated

* add the russian clones with their real names


-d88: Reduce the gap3 size from the standard value when the data

otherwise won't fit [O. Galibert]


-upd765: Implement LOCK [O. Galibert]


-upd765: Fix busy status when seeking [O. Galibert]


-upd765: Fix MSR DIO in EXEC phase [O. Galibert]


-add innovation ssi-2001 sid-on-isa device [Carl]


-upd765: Fix the dump regs command, don't exit on unknown

commands and add dsr reset [O. Galibert]


-added basic support for the loop flags in tzx [David Haywood]

Link to comment
Share on other sites

This topic is now closed to further replies.

  • Create New...