If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Fixed mapping for mmatrixd (cps2) to allow in-game region switch to
work and renamed to a US set due to rom labels. Replaced Phoenix Set
xmvsfu1d (cps2) bad dumps with others which pass in-game rom tests.
[Barry Harris]

timeplt.c: Added inputs to chkun and bikkuric, making them playable.
[hap]

Corrected some off by one errors in DM01 dot matrix emulation, while
making it a bit more generic. Ultimately, it will plug into Scorpion
2 and 4 hardware. [James Wallace]

preliminary Toshiba TC8830F emulation [hap]

i8251: "reset" bit is only documented to revert to looking for a mode
byte, not reset the entire chip. [R. Belmont]

Preliminary Z8001 support [Christian Groessler]

Initial work in preparation for some modernization on the whole
megadriv.c file, starting with better splitting of actual drivers
(megadriv.c, megacd.c, mega32x.c, megasvp.c and megavdp.c).
[David Haywood]

This is phase 2 of the DMD changes, creating a new ´5 dot´ element to
make it more like the actual DM01 (which uses 5 by 7 blocks, but wires
them up row wise to a buffer, giving an unusual ´65 dot row´)
[James Wallace].

Z8001: Fix inb/outb @rX form. M20 PPI test now passes. [R. Belmont]

Correct labels for bcruzm12 and replaced overdumped rom from butasan
based on pcb pictures and observation [bonky0013, Tafoid]

Updating MAME drivers to use modern i8255 implementation instead of
the legacy one [Fabio Priuli]

z800x: Support for disassembly of Z8001 instructions
[Christian Grössler]

segas16b.c: Corrected the rom labels for the Japanese Cotton set and
added the Sega ID# for the rom board. [Tormod, The Dumping Union]

Finally done the last part of the dotmatrix changes, which is to
create a dot by dot display mode. This makes the BFMDM01 emulation far
more straightforward, and should mean that anyone wanting a matrix can
call some combination of functions and make it work. [James Wallace]

info.c: added screen tags to xml output, so that it is possible to
easily identify which screens depend on optional devices (mostly of
use in MESS, for its slot options, but eventually handy for PC-based
arcades too) [Fabio Priuli]

Added the alternative bios found on Gachagachamp, it appears to just
be recompiled. [smf]

Added the 700B01 bios, only the CRC is known. [smf]

Stop the elephant stage on Handle Champ from crashing, though other
graphics issues remain. [smf]

New Mega-Tech BIOS added. [El Barto]

Fix regression on POKEY device introduced in last commit. Fixed high
pass filters for POKEY. Added POKEYN device based on modern device.
Migrated bzone, ccastles and missile to use this device. [Couriersud]

Fixed random lfsr generation in pokey.c. This fixes MT00501 while
tempest is still starting up. [Couriersud]

Convert all remaining drivers to use the modern pokey device.
[Couriersud]

Emulated the protection(s) in lhzb2a, making it playable [Luca Elia]

mc68681: Fixed generation of spurious interrupts, and provide
ASSERT/CLEAR states to the IRQ callback. [R. Belmont]

Source Changes
--------------
- Started adding support for scrolling reel displays, currently text
only, but should be pretty easy to get graphics in there and add
different direction scrolling - updating sc4 code to use these new
types. [David Haywood]

- Marked all remaining old-style CDs without gap information BAD_DUMP.
These will still run (where applicable), but need to be re-ripped for
best accuracy (and proper audio track timing for some Bemani games).
[R. Belmont, Firewave]

- Fixed gameplay crash regression in Zero Team [Angelo Salese]

- Added the clock counter chain and other common functions into
device_rtc_interface, removing duplicated code in RTC implementations.
Rewrote the Dallas DS1302 to support additional features needed by
IDE64 in MESS. [Curt Coder]

icecold.c [Sandro Ronco]
* This game has mechanical parts so it´s not exactly playable, but it
is possible try it until the end giving the expected inputs.
* Imported the i8279 device from MESS and updated to support sensor
mode and mask nibble.
* Made a simple layout and the defined input ports.

Improved the serial emulation in 68307 and added some logging,
removing the hack in bfm_sc4.c [David Haywood]

Meyco driver improvements: [Roberto Fresca]
* Reworked Inputs for all games.
* Added button-lamps support.
* Created internal control layout for all games.
* Added mech counters support.
* Promoted all games to working state.
* Renamed the mdrawpkra ROMs based on PCB picture.
* Renamed the driver to meyc8080.c
* Added technical and game notes.

preliminary Imagetek I5000 sound emulation. [hap]

Started giving Scorpion games their own reel / key configs, which is
needed for most of them to pass their post / not hang on ´reel errors´
or infinitely spinning reels. Also more work on 68307´s.
[David Haywood]

Converted turbo.c to use i8279 device [Sandro Ronco]

Added some better command handling to stop SC4 games from overwriting
their attract mode messages with garbage. [James Wallace]

Preliminary work on Scorpion 4 lamps + more set resorting
[David Haywood]

Discovered similarities in gotcha.c to Data East Bootleg sprites, also
happening to be the closest implementation to Silver Millennium in the
sources. Refactored each based on this information. [David Haywood]

Refactored a few things related to reels and use of layouts allowing
for more function with less work [David Haywood]

namcos21.c: Added Namco game prefix to the Winning Run 91 set. Added
minor documentation about the System21B two board stack. [Brian Troha]

nmk16.c: Fixes some issues and cleaned up the video sources a bit
[trap15]

Fixed ymf271.c core timer allowing for greater accuracy. [Sonikos]

BFM Scorpion 4 Hardware: [David Haywood]
* General update which fleshes out some of the 68307 code (not 100%
correct hookups, just improved logging and enough to get us
somewhere).
* Added various devices to the SC4 emulation, added a default layout
showing the VFD, to which most of the earlier games will now write
´Initializing´. Timers and other devices still need to be
implemented properly before they actually initialize.
* Put the actual SC4 hardware emulation in drivers/bfm_sc4h.c so that
it doesn´t get lost in the swamp of sets (scrolling through a file
is quite hard when it´s almost entirely set definitions)

Moved all drivers to using the paletteram helpers defined in the
driver_device base class. The palette base is now specified via an
AM_SHARE of "paletteram" or "paletteram2". The driver_device base
class now finds these pointers and places them in
m_generic_paletteram_8/_16/_32 and m_generic_paletteram2_8/_16/_32.
[Aaron Giles]

Changed required_/optional_shared_ptr to support set_target with base
and size for manually configuring a shared pointer, and a new allocate
method for dynamically allocating (and registering the memory for save
states). [Aaron Giles]

Converted memory_private to memory_manager and moved global memory
operations into methods on it. Converted the less-popular cases over
in drivers that used them, leaving the bank management APIs global for
now. [Aaron Giles]

Add logic to ensure that shared pointers are checked to be of the
right width. The primary upshot is that if you declare
AM_SHARE("paletteram") in an 8-bit memory map, then only
m_generic_paletteram_8 will be populated, and m_generic_paletteram_16
will be NULL. But it applies to all required_/optional_shared_ptrs
declared, so make sure they are of the right type. [Aaron Giles]

Added CD compressor template which separates subcode data from sector
data, removes redundant ECC data prior to compression, and uses
separate compressors for each part. Defined LZMA and ZLib CD
compressors based on this and made them the default for CDs.
[Aaron Giles]

bfm_sc1.c: [James Wallace]
* First pass of splitting out *all* of Scorpion 1 roms into clones so
that proper testing can begin.
* Identified some duplicates and ´premerged´ versions of split ROM
files. So while there are more ´games´, the number of ROMs has
actually decreased.

Formalized the Votrax SC-01 device. Implemented the full set of
digital logic from the patent, including the timing circuit,
transition circuit, glottal generator, and noise source. Some unknowns
still exist with regards to clocking, due to contradictory statements
in the patent, but as it stands now, all parameters are fetched and
processed, phonemes are requested, and in theory all that remains is
for someone with analog sound experience to simulate the filters on
the output. For now, you just get the raw glottal pulse mixed with the
noise signal based on the vocal and fricative amplitudes, which is
enough to show progress, but hardly a pleasing result just yet.
[Aaron Giles, Lord Nightmare, Olivier Galibert]

Converted gottlieb r1 and r2 sound boards into full-on devices, using
the recently-added mixer interface. All sound outputs are redirected
to the new sound device itself, and then the consuming driver can
route the new sound device´s outputs as appropriate. The Votrax chip
has been hooked up properly, with a crude guess at the variable
clocking. Current Votrax emulation is turned off, but it can be
enabled by changing USE_FAKE_VOTRAX to 0 in gottlieb.h. [Aaron Giles]

Added Driver display in both the game select UI as well as the
gameinfo screens which should prove helpful. [Tafoid]

Rework libflac to play nicer with MAME´s build system; should fix
compile problems on certain configrations based on suggestions by
Tsuruchiyo Nitro [R. Belmont]

k054539: Modernize [O. Galibert]

PowerPC: properly mirror SO bit from XER into CR0 [R. Belmont]

ioport: Make the compile time less insane [O. Galibert]

ioport: Support obsolete gcc versions [O. Galibert]

When copying CHDs, preserve the flag that indicates whether the
metadata is included in the SHA1. When creating LD CHDs, don´t use a
checksum on the AVLD metadata, like we did before. Fixes recompression
of laserdisc CHDs. [Aaron Giles]

Refactored YM3526 to use devcb. [Curt Coder]

Create new devices buffered_spriteram_device, which manage buffered
spriteram. Removed core support for legacy buffered spriteram, and
updated all drivers to use the new devices instead. [Aaron Giles]

Removed required/optional_shared_size helpers. Instead the existing
required/optional_shared_ptr helpers now have a bytes() method that
can be used to query the size of the shared region. [Aaron Giles]

Williams blits with bit 2 set take approximately 2x as long because
they are bus-shared with RAM. Should impact some timing behaviors such
as later levels in Robotron, where approximately 10% of the blits are
done with bit 2 set. Further refinements may be necessary but this
addresses the most significant issue. [Sean Riddle, Aaron Giles]

i386: One more to fix cmpsb (dir /s in MS-DOS works now) and remove
unused variables. [Carl]

info.c: several fixes and additions to listxml output [Fabio Priuli]
* appended to xml info about devices which can be optionally mounted
to slots
* added a description attribute to slotoption to show which devices
can be mounted in each slot
* added to xml info of cpus/inputs/image/slots which are relative to
devices (e.g. CPUs or Dipswitches in the device itself)
* tags of elements directly attached to the root_device do not
display anymore the root colon (slot tags were already behaving in
this way); elements attached to optional devices use tags starting
with colon (to be interpreted as a relative tags which gets
appended to the device tag, when such a device is selected in a
slot)
* modified when necessary output routines to pass a root_device and a
root_tag as parameters, in order to simplify output of relative
devices and avoid duplicated code
* updated DTD according to the new elements and attributes These
changes allow frontends to know in advance how drivers can be
configured through the various slot options (by matching option
descriptions with device descriptions), without the need to run
-lx with the various slot combinations. This is especially of use
if a device adds e.g. dipswitches or image devices (like
additional floppy drives or additional slot expansions), but also
if one wants to know e.g. how many sound channels a soundcard
would add to a pc driver, or which kind of screen parameters would
be added by a specific choice of video card.

i386: Added 32-bit versions of LMSW, and made LMSW only change the
lower 4 bits of CR0. [Barry Rodewald]

Fixed Windows 95 blue screen. [Carl]

Preliminary driver for Merkur´s ´Mahn Oh-Mann´. German board game
similar to Ludo, derivated from the indian game Parchisi. Coin-op
machine for 1-4 players. No screen, just artwork and lamps.
[Roberto Fresca]

Create a new device_mixer_interface, derived from
device_sound_interface, which mixes all its inputs to a single output
stream. Redefined the SPEAKER device to use this and remove the
duplicate underlying logic. The main purpose of this new interface is
to allow device-ification of an entire sound board, which can itself
become a mixer of all of its sound components to a single output
stream. This stream can then be routed by the device´s owner to the
appropriate speakers. A real-life example will show up soon. [Aaron
Giles]

Re-did the non-CD FLAC codec to be "smart" in that it can choose
either big-endian or little-endian on the fly and uses the best one.
Added FLAC as a default codec for hard disks, which helps a lot for
certain disks. [Aaron Giles]