New System Drivers Supported:
-----------------------------
Texas Instruments Compact Computer 40 [hap, Jon Guidry]
I'm still working on this, looking for bugs in tms7000 core now
- R2R resistor network DAC.
- Dummy input device. This is used so that devices can exhibit terminals not yet used
such as V+ for opamps.
- Added a very basic macro model for norton opamps (LM3900)
- Added a current controlled current source (CCCS)
Message that was posted to me
"Hi David
It was to my great disappointment that your work on the NeoGeo Multislot (Dec 2013) was not included in MAME. To aid the process I've taken your work and spent some hours addressing the concerns put forward by the developers. The code I'm sending to you converts Neo Geo to fully use slot devices for the cartridges and implements the multi-slot using techniques that have greater likelihood of being met with approval.
In some places the slot trampolines caused performance to drop below 100% so I've used methods to avoid them gathered by the study of other slot devices in MESS. Performance is the same as it was prior to this update.
I first sent this with the forms on the official site but received no reply so I'm turning to you directly.
(filehost link removed)
Credit to yourself and 'S. Smith'
"
- removed dead code from nld_signal.h
- removed m_last_Q and all callers; if a device depends on state let it maintain it.
- added development on a generic device based on truthtables.
The MMU is no longer emulated by modifying address maps at
runtime, an operation which has become excessively slow as the
core memory system has accumulated features and complexity over
the years. Instead, the MMU is now a device which works on
similar principles to the address_map_bank_device. The recent
multisession regression is fixed, all games in the driver
should now run substantially faster, and most importantly the
driver code is now much cleaner and easier to understand. [Alex Jackson]
i86.c: Four new 8086 opcode aliases: 0xc0 is 0xc2; 0xc1 = 0xc3; 0xc8 = 0xca; 0xc9 = 0xcb as documented at OS 2 Museum. [Bavarese]
rx50_dsk.h/c: Rainbow specific; The RX50 _disk drive_ was used in different architectures. Floppy format used by Rainbow-100 and -190. Track layout (post-amble, some positions) yet unverified. Currently only raw 400 K disk dumps are supported (*.img). [Bavarese]
-Updated LUA engine to run in machine_manager instead of being initialized per machine
-Added "-console" option so emulator can be started with LUA enabled console
-Update LUA to version 5.2.3
-Enabled SQLite3 to be compiled and added LUA module for it
A500.
CIA changes:
- Add missing virtual keyword to actually call the right TOD clock
- Outputs depend on the input state (fixes A1000 overlay switch)
- Switching to serial output mode with one-shot activated causes a pulse
on SP (correct? needed for keyboard handshake)
- Serial input is clocked by the CNT input, not the default clock
- Mask offsets to 4 bits
- Writing the Timer High register with one-shot activated immediately
causes the timer to be latched and the timer started, regardless of
timer start value
Curt: Please review those changes.
long wn:
started converting neogeo video / sprite system to a device_reset
created base device + number of derived classes
NEOGEO_SPRITE_REGULAR is an reference implementation, drawing direct from
NEOGEO_SPRITE_OPTIMZIED is a version with predecoded gfx (as we use now) this is the default used by the driver
NEOGEO_SPRITE_MIDAS is a version supporting the changes needed by the MIDAS games (mainly 8bpp instead of 4bpp)
- Reimplemented the cartridge slots as slot devices.
- Moved the msx slot layouts to inline machine configuration.
- Started adding support for a few more firmware types.
- Add turbo support to Panasonic FS-A1FX/FS-A1WX/FS-A1WSX.
moved the protection sims for f1dream / bbballs to machine/tigeroad.c
also marked f1dream as not working, it's never worked, the protection simulation is incomplete. (the bootleg has some original bugs too due to their workarounds, so technically there isn't a perfectly working version of this game supported by MAME)
- Pong Doubles now working
Thanks a lot to Adam Bousley for dual licensing DICE netlists.
Hooked up player inputs
- Minor performance tweaks
- Separated game netlists from driver. Dice is making extensive use of macros which may conflict
if these are in one source file.
- Added some rescap.h macros to netlist
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Pong Doubles [DICE Team, Couriersud]
-Moved midi handling in base class
-Cleaned running_machine of information of next machine
-All is cleaned after exiting of running_machine so debugger window is removed as well till next machine is started
-Made osdmini to compile
software included with the original Amstrad interface works, but not much else
does at this stage. [Barry Rodewald]
Out of whatsnew: HoneyTerm (part of the later Pace interface) expects bit 6
of RR0 on the Z80DART to be set (seems to unsupported in the current z80dart
device). Not sure on why other software doesn't work as yet.
ROMs will be uploaded in a minute ;)
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Wyvern F-0 [Guru, ????]
Moved delegates into /src/lib/util to enable usage of delegates in other project parts
Moved mame_printf_* calls into /src/osd/osdcore.c and renamed them to osd_printf_*
Changed mess.mak to display compilation of ymmu100.ppm nicely
Moved graphics decoding to a new device interface class: device_gfx_interface.
The gfxdecode device is now a device that simply inherits this interface and
does nothing else. Devices that draw tilemaps or sprites using gfx_elements
should in time be updated to use this interface rather than connect to a
machine-global gfxdecode device. Updated toaplan_scu.c as an example (also
fixed off-by-one sprite alignment in twincobr and rallybik while I was at it).
gfx_elements are normally created in interface_post_start(), making it
possible to dynamically create or modify the graphics decoding info during
device_start() if you need to. On the other hand, if you need the gfx_elements
during device_start(), you can directly call decode_gfx() to create them early.
This interface also provides a standard and init-order-safe way to connect to
a palette device (similarly to how device_video_interface helps devices
connect to a screen), so it's handy for any device that does palettized
drawing even if it doesn't use gfx_elements. Updated k053250.c as an example
of this usage.
gfxdecode info entries can now reference shared RAM regions by tag as well as
ROM regions, automatically handle endianness, and have some other new
capabilities. Updated nemesis.c and pgm.c to showcase the new features.
Removed validate_display() (it was just a commented out stub already) since
its only function, checking that drivers don't have an ind16 screen without
a palette, is now done by screen_device::device_validity_check().
Updated obsolete comments about GFXLAYOUT_RAW (cps1.c hasn't used raw gfx for
years, and "to save memory" is no longer a good reason to use it)