- enforced short names for slot card devices
- updated validation, romverify and listxml output accordingly
- slotoptions now also contain shortnames so it's possible to link
slot option and device
----------------
Mortal Kombat (Yawdim bootleg - Set 2) [ScheissNussen, Smitdogg, The Dumping Union]
New games marked as GAME_NOT_WORKING
------------------------------------
Area 51: Site 4 (September 11, 1998) [ninjakid]
Added missing proms for Fax and Fax 2. [W. Belk, Smitdogg, The Dumping Union]
similar to Ludo, derivated from the indian game Parchisi. Coin-op
machine for 1-4 players. No screen, just artwork and lamps.
[Roberto Fresca]
New games marked as GAME_NOT_WORKING
------------------------------------
Mann, oh-Mann [Roberto Fresca, Team Europe]
- 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.
only through validity checking. If detected normally, do
a best-effort attempt so that things like CRC(1) SHA1(1) can
be used to force reporting of proper checksums.
* Added Casino Poker (Ver PM86LO-35-5, German).
* Inputs from the scratch.
* Switched manufacturer 'Playman' to PM / Beck Elektronik, since
it's PM and Beck Elektronik/Computer/etc...
* Added technical and game notes.
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Casino Poker (Ver PM86LO-35-5, German) [Roberto Fresca, Team Europe]
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]
diserial - added optinal rx and tx timers and callbacks [Carl]
ins8250 - serial rx line high on start and fix for msr register [Carl]
bitbanger - added 19200bps (no whatsnew)
Now that the FD1094 key has been supplied we see it's actually Altered Beast ;-)
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Altered Beast (FD1094 317-0069) [Stefan Lindberg, Chris Hardy, The Dumping Union]
src/lib/util/chd.c: In member function 'chd_error chd_file::compress_v5_map()':
src/lib/util/chd.c:1660: warning: comparison is always true due to limited range of data type
reading is now done using the FLAC wrapper. There is now a
samples_iterator class to centralize the logic for handling
the sample list walking.
Also redid the cheesy half-baked votrax device since it relied
on some old samples-based handling. Until we have a real
implementation, it would be good to route the various clients
through the current one to at least wire it up properly, even
if it just plays samples in the end. Will look into that
shortly.
mc146818: remove previous Apollo hack, fix 32768 Hz. updates [Hans Ostermeyer]
m68k: fix FSGLMUL/FSGLDIV plus some minor MMU improvements [Hans Ostermeyer]
m68k: slightly less stubby CINV [Hans Ostermeyer]
Started making some individual rom name adjustments, assisting those who decide to use parent-only romset merging, a more likely event now with added .7z solid archiving. (nw)
Out of whatsnew - Haze should be able to correct the speed up soonish
New Game Added
-----------------------------------------
Diet Family [Dr. Spankenstein, Paratech, joe35car, tormod, M. Hoenig, Mosquito2001, M. Ponweiser, M. Viste, Phil Bennett, N. Francfort, A. Costin, J. Finney, gamerfan, Smitdogg, The Dumping Union]
Centralize detection of existing output files. Add detection (require --force)
for extracted files as well. Move checks outside of try/catch so that the
files are not subsequently deleted.
to more optimally use FLAC. Updated flac wrapper to implement a
tell callback so FLAC can tell us how much we've decoded. Updated
chdman to use CD-FLAC codec in preference over the existing
codecs for CDs by default. Credit Haze for the idea.
in order to make things more consistent with behaving when cmd line
parameters are sent, also added emuopts support to add newly created
options if some is added with adding software item in slot (no whatsnew)
from 4 to 5. This means any diff CHDs will no longer work. If you
absolutely need to keep the data for any existing ones you have,
find both the diff CHD and the original CHD for the game in question
and upgrade using these commands:
rename diff\game.dif diff\game-old.dif
chdman copy -i diff\game-old.dif -ip roms\game.chd -o diff\game.dif -op roms\game.chd -c none
Specifics regarding this change:
Defined a new CHD version 5. New features/behaviors of this version:
- support for up to 4 codecs; each block can use 1 of the 4
- new LZMA codec, which tends to do better than zlib overall
- new FLAC codec, primarily used for CDs (but can be applied anywhere)
- upgraded AVHuff codec now uses FLAC for encoding audio
- new Huffman codec, used to catch more nearly-uncompressable blocks
- compressed CHDs now use a compressed map for significant savings
- CHDs now are aware of a "unit" size; each hunk holds 1 or more units
(in general units map to sectors for hard disks/CDs)
- diff'ing against a parent now diffs at the unit level, greatly
improving compression
Rewrote and modernized chd.c. CHD versions prior to 3 are unsupported,
and version 3/4 CHDs are only supported for reading. Creating a new
CHD now leaves the file open. Added methods to read and write at the
unit and byte level, removing the need to handle this manually. Added
metadata access methods that pass astrings and dynamic_buffers to
simplify the interfaces. A companion class chd_compressor now
implements full multithreaded compression, analyzing and compressing
multiple hunks independently in parallel. Split the codec
implementations out into a separate file chdcodec.*
Updated harddisk.c and cdrom.c to rely on the caching/byte-level read/
write capabilities of the chd_file class. cdrom.c (and chdman) now also
pad CDs to 4-frame boundaries instead of hunk boundaries, ensuring that
the same SHA1 hashes are produced regardless of the hunk size.
Rewrote chdman.exe entirely, switching from positional parameters to
proper options. Use "chdman help" to get a list of commands, and
"chdman help <command>" to get help for any particular command. Many
redundant commands were removed now that additional flexibility is
available. Some basic mappings:
Old: chdman -createblankhd <out.chd> <cyls> <heads> <secs>
New: chdman createhd -o <out.chd> -chs <cyls>,<heads>,<secs>
Old: chdman -createuncomphd <in.raw> <out.chd> ....
New: chdman createhd -i <in.raw> -o <out.chd> -c none ....
Old: chdman -verifyfix <in.chd>
New: chdman verify -i <in.chd> -f
Old: chdman -merge <parent.chd> <diff.chd> <out.chd>
New: chdman copy -i <diff.chd> -ip <parent.chd> -o <out.chd>
Old: chdman -diff <parent.chd> <compare.chd> <diff.chd>
New: chdman copy -i <compare.chd> -o <diff.chd> -op <parent.chd>
Old: chdman -update <in.chd> <out.chd>
New: chdman copy -i <in.chd> -o <out.chd>
Added new core file coretmpl.h to hold core template classes. For now
just one class, dynamic_array<> is defined, which acts like an array
of a given object but which can be appended to and/or resized. Also
defines dynamic_buffer as dynamic_array<UINT8> for holding an
arbitrary buffer of bytes. Expect to see these used a lot.
Added new core helper hashing.c/.h which defines classes for each of
the common hashing methods and creator classes to wrap the
computation of these hashes. A future work item is to reimplement
the core emulator hashing code using these.
Split bit buffer helpers out into C++ classes and into their own
public header in bitstream.h.
Updated huffman.c/.h to C++, and changed the interface to make it
more flexible to use in nonstandard ways. Also added huffman compression
of the static tree for slightly better compression rates.
Created flac.c/.h as simplified C++ wrappers around the FLAC interface.
A future work item is to convert the samples sound device to a modern
device and leverage this for reading FLAC files.
Renamed avcomp.* to avhuff.*, updated to C++, and added support for
FLAC as the audio encoding mechanism. The old huffman audio is still
supported for decode only.
Added a variant of core_fload that loads to a dynamic_buffer.
Tweaked winwork.c a bit to not limit the maximum number of processors
unless the work queue was created with the WORK_QUEUE_FLAG_HIGH_FREQ
option. Further adjustments here are likely going to be necessary.
Fixed bug in aviio.c which caused errors when reading some AVI files.
To test it, I used my Logitech Trackball (normally a mouse) and configured it as a joystick.
Prerequisites:
- Locate your linux input device for the trackball. In my case that's /dev/input/event3
- "sudo chmod a+r /dev/input/event3"
- "export SDL_JOYSTICK_DEVICE=/dev/input/event3"
This forces sdl to recognize the trackball as a input device.
-mame64 missile -nomouse -w
Configure the trackball axis. Make sure the mouse pointer is outside the window and window still has keyboard focus - most modern window manager should support this.
Quit and restart with
-mame64 missile -mouse -now
to hide the mouse. Voila. Works.
Sega Model 2 update:
* Dumped and hooked up Dynamite Baseball
* Dynamite Baseball 97 renamed as dynabb97
* Properly renamed 4 MASK ROMs in dynabb97
to match pcb manual
* Minor cleanups and fixes
Credits:
New NOT WORKING clones added
---------------------------------------------------------------
Dynamite Baseball [Layne, Yohji, hap, Smitdogg, The Dumping Union]
----------------
Oozumou - The Grand Sumo (DECO Cassette) [Charles MacDonald, Dr. Spankenstein, Kevin Eshbach, T. Huff, SteveS, E. Page-Hanify, Hikari, ArcadeDude, F. Bukor, N. Francfort, jmurjr, arcade-history.com, ThumB, Hurray Banana, Paratech, Xiaou2, Cornishdavey, A. Costin, M. Ponweiser, Tormod, Rambo, Smitdogg, The Dumping Union]
new clones
---------------
JoJo's Bizarre Adventure (990927) [Layne, Smitdogg, The Dumping Union]
- The SDL team has moved from 1.3 to 2.0. At the same time, changes were made to allow SDL1.2 and SDL2.0 to coexist. All SDL2.0 include files are now in /usr/include/SDL2.
- Added sdlinc.h to avoid having tons of #ifdef .. #include in the code.
- Scalemode is no longer a per-window setting
- Fixed a bug in YUV rendering.
- Use SDL_GetClipboard (SDL2.0)
- Updated README_SDL20.txt
Currently, SDL 2.0 is only supported on *nix. Volunteers welcome.
(nw) If anyone has any suggestions on how better to sync per-scanline state than what I'm currently doing, I'd be all ears. The renderer is now pretty darn fast, but every little bit counts.
* Writing a C148 IRQ priority register now clears the prior interrupt state (required by dirtfoxj and winrun)
* Changed 'Winning Run Suzuka Grand Prix (Japan)' setname to winrungp
* Promoted winrungp and winrun91 to working.
New games added
---------------
Winning Run [gamerfan, Smitdogg, The Dumping Union]
Not in whatsnew:
* I kept all the functionality from the current code & added a few minor things.
* You can see the color and placement of the text strings as colored blocks,
and if you uncomment lines 471-476, the game's text is printed out to the
terminal as ASCII.
* Given the ability to "read" the test mode, the rest of the inputs and sound
can probably be hooked up. (Also, the ROMs all seem to pass the check).
* I'm still trying to decode the tiles based on the patent.
I'm not sure if the change from "m_image_name = softlist:gamename" to "m_image_name = softlist:gamename:partname" was done on purpose, but given how close we are to the release, I think it's safer to fix it here than to modify the softlist code.
* Identified and added EF6821P PIA for I/O.
* Identified and added the CRTC as HD/UM6845.
* Identified a Maxim MAX691 and hooked watchdog/reset functions
based on the PIA line where is tied. Also hooked others
minor related things.
* Identified a Darlington Array ULN2003.
* Added correct clocks for main crystal, CPU and CRTC through #define.
* Improved inputs/jumpers with PCB traces.
* Added technical notes.
of machine->pens to lookup RGB32 values if the palette is present (it
is on all screen bitmaps). Today these are identical, but it's part of
a long-term effort to move away from a global palette and allowing
each bitmap or screen to have their own if that is preferred.