Commit Graph

630 Commits

Author SHA1 Message Date
Aaron Giles
a7313263b3 Converted sauro, scotrsht, segald, seicross, senjyo, shangha3,
shaolins, shisen, skyraid, solomon, spcforce, speekatk, splash, 
sprcros2, ssozumo, suna16, suna8 to driver_data. [Atari Ace]


---------- Forwarded message ----------
From: Atari Ace <atari_ace@frontier.com>
Date: Sat, Aug 28, 2010 at 9:39 PM
Subject: [patch] Convert various s drivers to driver_data
To: submit@mamedev.org
Cc: atariace@hotmail.com


Hi mamedev,

Another round of driver_data conversions...

sauro, scotrsht, segald, seicross, senjyo, shangha3, shaolins, shisen,
skyraid, solomon, spcforce, speekatk, splash, sprcros2, ssozumo,
suna16, suna8

~aa
2010-09-02 09:04:26 +00:00
Miodrag Milanovic
5319902394 Made MAME compile by adding missing H files restored from files Atari Ace sent (no whatsnew) 2010-08-27 09:03:57 +00:00
Ryan Holtz
e2f6e9c473 Added a set of macros to minimize the amount of copy/pasting necessary to convert a device to the new style. [Harmony] 2010-08-26 01:56:46 +00:00
R. Belmont
65425075d3 New games added as GAME_NOT_WORKING
-----------------------------------
Savage Quest [TrevEB]
2010-08-25 01:11:26 +00:00
Aaron Giles
e38adf825e Added mask-free versions of read_word/read_dword/read_qword to
address_space. Also added unaligned variants that can read
unaligned values. Rewrote the core handler as a template that
handles all cases, along with a simple unit test to verify that
everything is correct.

Updated 68k, v60, i86, and nec cores to use unaligned read/
write instead of their own stubs for handling misalinged reads.

Fixed memory management of ga2 decryption.
2010-08-21 18:40:01 +00:00
Curt Coder
d303a4f17d Imported the Hitachi HCD62121 CPU core from MESS. 2010-08-20 17:32:03 +00:00
Aaron Giles
dd19e512c0 Massive memory system change. This is another step along the path toward
supporting cleaner implementations of drivers in the explicitly OO world.
Expect a follow-on of several more changes to clean up from this one, which
deliberately tried to avoid touching much driver code.

Converted address_space to a class, and moved most members behind accessor
methods, apart from space->machine and space->cpu. Removed external references
to 8le/8be/16le/16be/32le/32be/64le/64be. All external access is now done via
virtual functions read_byte()/read_word()/etc. Moved differentiation between
the endianness and the bus width internal to memory.c, and also added a new
axis to support small/large address spaces, which allows for faster lookups
on spaces smaller than 18 bits. 

Provided methods for most global memory operations within the new address_space 
class. These will be bulk converted in a future update, but for now there are
inline wrappers to hide this change from existing callers.

Created new module delegate.h which implements C++ delegates in a form that 
works for MAME. Details are in the opening comment. Delegates allow member 
functions of certain classes to be used as callbacks, which will hopefully 
be the beginning of the end of fetching the driver_data field in most 
callbacks. All classes that host delegates must derive from bindable_object.
Today, all devices and driver_data do implicitly via their base class.

Defined delegates for read/write handlers. The new delegates are always
passed an address_space reference, along with offset, data, and mask. Delegates
can refer to methods either in the driver_data class or in a device class.
To specify a callback in an address map, just use AM_READ_MEMBER(class, member).
In fact, all existing AM_ macros that take read/write handlers can now accept
delegates in their place. Delegates that are specified in an address map are
proto-delegates which have no object; they are bound to their object when
the corresponding address_space is created.

Added machine->m_nonspecific_space which can be passed as the required
address_space parameter to the new read/write methods in legacy situations 
where the space is not provided. Eventually this can go away but we will
need it for a while yet.

Added methods to the new address_space class to dynamically install delegates
just like you can dynamically install handlers today. Delegates installed this
way must be pre-bound to their object.

Moved beathead's read/write handlers into members of beathead_state as an
example of using the new delegates. This provides examples of both static (via
an address_map) and dynamic (via install_handler calls) mapping using delegates.

Added read/write member functions to okim6295_device as an example of using
delegates to call devices. Updated audio/williams.c as a single example of
calling the device via its member function callbacks. These will be bulk
updated in a future update, and the old global callbacks removed.

Changed the DIRECT_UPDATE_CALLBACKs into delegates as well. Updated all users
to the new function format. Added methods on direct_read_data for configuring the
parameters in a standard way to make the implementation clearer.

Created a simple_list template container class for managing the common
singly-linked lists we use all over in the project.

Many other internal changes in memory.c, mostly involving restructuring the code
into proper classes.
2010-08-19 06:57:51 +00:00
Angelo Salese
9000eb69e3 Improved video emulation to the Aristocrat MK-5, added bare-bones VIDC DMA transfer and timings, added 8bpp mode [Angelo Salese] 2010-08-18 20:37:01 +00:00
Phil Bennett
9ddee4ab77 Merged topshoot into the megadrvb driver (formerly genesisb) [Sonikos]
---------- Forwarded message ----------
From: abcd efgh <cix_999@yahoo.it>

- Hide quoted text -
Date: Sat, Aug 14, 2010 at 8:41 PM
Subject: topshoot/genesisb
To: submit@mamedev.org


Hi

I merge topshoot into genesisb driver.

bye sonikos
2010-08-16 12:16:19 +00:00
Angelo Salese
4201afbb6d new NOT WORKING
----------------
Olympic Hot Stuff [Ogoun]
2010-08-13 09:59:00 +00:00
mariuszw1
793c0fd358 Added sound support to Signetics S2636 (by using VC4000 sound support from MESS). Hooked up sound to Malzak, Galaxia and Astro Wars [Mariusz Wojcieszek] 2010-08-12 19:45:01 +00:00
Phil Bennett
f3581568d8 Merged aladbl.c and ssf2md.c to create genesisb.c [Sonikos]
---------- Forwarded message ----------
From: abcd efgh <cix_999@yahoo.it>
Date: Mon, Aug 9, 2010 at 7:51 PM
Subject: genesisb.c
To: submit@mamedev.org


Hi everybody !
I made just a little work, i moved ssf2md  in to aladinb.c driver and
renamed this one genesisb.c for create a new driver for all the
Genesis\Megadrive bootleg.

Bye Sonikos.
2010-08-11 19:12:32 +00:00
Angelo Salese
d310259357 More refactoring to the Toaplan 2 / GP9001 VDP device [David Haywood] 2010-08-09 10:48:14 +00:00
Andrew Gardner
26d3ec3244 plygonet.c : Updates Polygonet driver to use driver_data class. [Atari Ace] 2010-08-08 07:07:15 +00:00
Andrew Gardner
0946c173cb dsp56k : Hooked up new execution engine. [Andrew Gardner] 2010-08-07 18:42:59 +00:00
Phil Bennett
cf66ab4463 New games added or promoted from NOT_WORKING
--------------------------------------------
The Last Starfighter (prototype) [Phil Bennett, Ken Van Mersbergen]
Air Race (prototype) [Phil Bennett, Ken Van Mersbergen]
2010-08-07 17:32:54 +00:00
Aaron Giles
ff3f202d0a Convert seta.c, seta2.c, and ssv.c to driver_data. [Atari Ace]
--

From: Atari Ace <atari_ace@frontier.com>
Date: Tue, Aug 3, 2010 at 3:03 PM
Subject: [patch] Convert seta/seta2/ssv to driver_data
To: submit@mamedev.org
Cc: atariace@hotmail.com


Hi mamedev,

This patch removes all global variables from seta.c, seta2.c and
ssv.c.  The number of AM_BASE() macros drops by 4% from 3111 to 2989.

Note: ssv.h and seta2.h are new files.

~aa
2010-08-04 15:58:29 +00:00
Andrew Gardner
7543a1a9a4 The dsp561xx CPU core now generates accurate disassembly for Konami Polygonet hardware
(verified against Motorola's reference disassembler). [Andrew Gardner, Stiletto]
2010-08-04 05:11:00 +00:00
Aaron Giles
fe47da274e Return to type safety. Changed address maps back into functions that build
up the definition, rather than the whole tokenizing system, which lost type
checking. Added a new module addrmap.c which implements the address map
classes, and changed the macros to call methods on the address_map and
address_map_entry classes which are strongly typed.

Fixed a few incorrectly specified memory map entries along the way. Please
double-check to make sure the behavior is expected in: twincobr.c, lordgun.c,
galaxold.c.

This change also means that since the address_maps are now constructor
functions, they are detected when not used, so a number of #ifdef UNUSED_CODE
were added around dangling address map definitions.

Also included with this change:
- removed cputag_clocks_to_attotime() and cputag_attotime_to_clocks() in
   favor of just expanding the class
- same for cputag_suspend() and cputag_resume()
2010-08-01 21:04:03 +00:00
Roberto Fresca
811ee9874e New driver for Mega Double Poker, from Blitz System Inc. [Roberto Fresca]
* Initial release.
 * Preliminary memory map.
 * Hooked both PIAs, but need more analysis to confirm the offsets.
 * Accurate graphics and color decode.
 * Added main PCB and daughterboard layouts.
 * Added partial docs and diagrams about the CPU/MCU/ROMs addressing.
 * Added debug and technical notes.


New games marked as GAME_NOT_WORKING
------------------------------------
Mega Double Poker (conversion kit) [Roberto Fresca, ChrisQC, Smitdogg]
2010-07-30 21:06:28 +00:00
Quench
08c2ad802e Added Ameri Darts internal DSP dump and TMS32015 support to the
Amerdart driver. Also added savestate support to the game.
[Dr Decapitator, Quench]
2010-07-20 16:11:46 +00:00
Phil Bennett
e848cb8bb7 Various improvements to polepos.c [Alex Jackson]:
* Corrected the way the steering wheel is hooked up, fixing the jittery
   steering in the sets with MCUs.
 * Added a new layout file for the bootleg sets without MCUs (topracern and polepos2bi).
 * Converted clock frequencies to crystal values from xtal.c.
 * Added correct ROM names for the Namco-manufactured sets (polepos and polepos2).
 * Completely removed the unused global variable polepos_gear_bit.
 * Fixed a couple of bootleg ROMs that were very likely bit-rotted.
2010-07-15 11:05:38 +00:00
R. Belmont
018a21fa53 Add *IX man pages for MAME and utils [wallyweek] 2010-07-08 14:18:07 +00:00
smf-
c13eb4d193 turned i2cmem into a c++ device & ditched the unused legacy device. 2010-07-07 13:05:02 +00:00
Nicola Salmoria
0664448c9d divided segacrpt.c in two files, one for the old encryption and one for the new one. 2010-07-05 19:38:55 +00:00
Miodrag Milanovic
c14878e59a Imported image related utils from MESS into /lib/util [Miodrag Milanovic] 2010-07-05 10:19:05 +00:00
Aaron Giles
733b797a3d Split mame.c into mame.c and machine.c, the latter containing the
running_machine definition and implementation.

Moved global machine-level operations and accessors into methods on the
running_machine class. For the most part, this doesn't affect drivers
except for a few occasional bits:

  mame_get_phase() == machine->phase()
  add_reset_callback() == machine->add_notifier(MACHINE_NOTIFY_RESET, ...)
  add_exit_callback() == machine->add_notifier(MACHINE_NOTIFY_EXIT, ...)
  mame_get_base_datetime() == machine->base_datetime()
  mame_get_current_datetime() == machine->current_datetime()

Cleaned up the region_info class, removing most global region accessors
except for memory_region() and memory_region_length(). Again, this doesn't
generally affect drivers.
2010-06-30 03:46:21 +00:00
Phil Bennett
6fa25e5c9a aristmk4: various improvements: [FrasheR, Palindrome]
* Fixed VIA for good. 5010 - 501F
* Hooked up push button inputs
* Hooked up ports for the PML 2852 U3
* Implemented coin input
* Lamp output and button layout
* NVRAM backup
* Connected SW7 for BG colour map select
* Added LK13. 3MHz or 1.5 MHz CPU speed select
* Added sound sample for mechanical meter pulse
* Replaced custom RTC code with MC146818
2010-06-27 14:42:45 +00:00
Phil Bennett
b94bf9156b Hooked up Daikaiju no Gyakushu 68705 MCU and removed MCU simulation code [Phil Bennett, Dr. Decapitator] 2010-06-26 20:34:51 +00:00
Aaron Giles
29b6b0de41 C++-ified the debugger views. Not quite architecturally where I would
like them, but it's a start. Split implementation of individual view
types out to separate files. Updated all callers.

Also:
 * fixed okim6295 memory view
 * changed emualloc to free resource pools from earliest to latest
    so that early objects can safely clean up stuff they allocated
2010-06-25 05:11:42 +00:00
Miodrag Milanovic
ea8dd94677 - Moved ioproc implementation from MESS [Miodrag Milanovic]
- Implemented more image device calls, and did some cleanup (no whatsnew)
2010-06-23 19:35:49 +00:00
Miodrag Milanovic
cbe7260a59 - Moved softlist implementation from MESS [Miodrag Milanovic]
- Moved image related UI from MESS to emu core
- Reimplemented filename related image device calls
2010-06-20 18:48:02 +00:00
Ryan Holtz
834b1badde Added a skeleton driver for Philips CD-i-based arcade series, Quizard [Harmony]
New gamse marked as GAME_NOT_WORKING
------------------------------------
Quizard (1.7) [ANY, The Dumping Union, Harmony]
Quizard (2.2) [ANY, The Dumping Union, Harmony]
Quizard (3.2) [ANY, The Dumping Union, Harmony]
Quizard Rainbow (4.1) [ANY, The Dumping Union, Harmony]
2010-06-19 20:58:26 +00:00
Miodrag Milanovic
826dba5923 - removed MESS dependency from config.c
- moved image legacy device implementation to devimage.c
- created image.c implementation with initialization of devices/configuration for image devices, used those calls from mame.c
- some minor cleanup of legacy device and initial implementation of some calls

(no whatsnew for now, this is just for log,will put more info on final commit)
2010-06-17 20:06:54 +00:00
Miodrag Milanovic
d2a7b5f332 hashfile moved from MESS to emu section (needed for now in image support until softlist implementation is finished), this doesn't affect mame side (no whatsnew) 2010-06-17 06:57:05 +00:00
Miodrag Milanovic
848bf53c3d - moved opresolv and zippath into /lib/util from MESS [Miodrag Milanovic]
- removed ifdef MESS from osd part since calls are needed by zippath
2010-06-16 18:04:30 +00:00
Miodrag Milanovic
791a3515b9 devlegacy.c,clifront.c,info.c [Miodrag Milanovic]
- Created legacy image device
- Moved opresolv implementation from MESS
- listmedia is option is available in MAME too
- listxml output now contains image devices
2010-06-15 09:16:05 +00:00
Angelo Salese
4a7156c0a0 Dumped internal ROM for Janshi [Charles MacDonald] 2010-06-13 16:45:41 +00:00
Aaron Giles
100564d412 WARNING: There are likely to be regressions in both functionality and
performance as a result of this change. Do not panic; report issues to the
list in the short term and I will look into them. There are probably also
some details I forgot to mention. Please ask questions if anything is not
clear.

NOTE: This is a major internal change to the way devices are handled in
MAME. There is a small impact on drivers, but the bulk of the changes are
to the devices themselves. Full documentation on the new device handling
is in progress at http://mamedev.org/devwiki/index.php/MAME_Device_Basics

Defined two new casting helpers: [Aaron Giles]

  downcast<type>(value) should be used for safe and efficient downcasting
  from a base class to a derived class. It wraps static_cast<> by adding
  an assert that a matching dynamic_cast<> returns the same result in 
  debug builds.
  
  crosscast<type>(value) should be used for safe casting from one type to
  another in multiple inheritance scenarios. It compiles to a 
  dynamic_cast<> plus an assert on the result. Since it does not optimize
  down to static_cast<>, you should prefer downcast<> over crosscast<>
  when you can.
  
Redefined running_device to be a proper C++ class (now called device_t).
Same for device_config (still called device_config). All devices and
device_configs must now be derived from these base classes. This means
each device type now has a pair of its own unique classes that describe
the device. Drivers are encouraged to use the specific device types
instead of the generic running_device or device_t classes. Drivers that
have a state class defined in their header file are encouraged to use
initializers off the constructor to locate devices. [Aaron Giles]

Removed the following fields from the device and device configuration
classes as they never were necessary or provided any use: device class,
device family, source file, version, credits. [Aaron Giles]

Added templatized variant of machine->device() which performs a downcast
as part of the device fetch. Thus machine->device<timer_device>("timer")
will locate a device named "timer", downcast it to a timer_device, and
assert if the downcast fails. [Aaron Giles]

Removed most publically accessible members of running_device/device_t in
favor of inline accessor functions. The only remaining public member is
machine. Thus all references to device->type are now device->type(), etc.
[Aaron Giles]

Created a number of device interface classes which are designed to be mix-
ins for the device classes, providing specific extended functionality and
information. There are standard interface classes for sound, execution,
state, nvram, memory, and disassembly. Devices can opt into 0 or more of
these classes. [Aaron Giles]

Converted the classic CPU device to a standard device that uses the
execution, state, memory, and disassembly interfaces. Used this new class
(cpu_device) to implement the existing CPU device interface. In the future
it will be possible to convert each CPU core to its own device type, but 
for now they are still all CPU devices with a cpu_type() that specifies
exactly which kind of CPU. [Aaron Giles] 

Created a new header devlegcy.h which wraps the old device interface using
some special template classes. To use these with an existing device,
simply remove from the device header the DEVICE_GET_INFO() declaration and
the #define mapping the ALL_CAPS name to the DEVICE_GET_INFO. In their
place #include "devlegcy.h" and use the DECLARE_LEGACY_DEVICE() macro.
In addition, there is a DECLARE_LEGACY_SOUND_DEVICE() macro for wrapping
existing sound devices into new-style devices, and a 
DECLARE_LEGACY_NVRAM_DEVICE() for wrapping NVRAM devices. Also moved the
token and inline_config members to the legacy device class, as these are
not used in modern devices. [Aaron Giles]

Converted the standard base devices (VIDEO_SCREEN, SPEAKER, and TIMER) 
from legacy devices to the new C++ style. Also renamed VIDEO_SCREEN to
simply SCREEN. The various global functions that were previously used to
access information or modify the state of these devices are now replaced
by methods on the device classes. Specifically:

  video_screen_configure()             == screen->configure()
  video_screen_set_visarea()           == screen->set_visible_area()
  video_screen_update_partial()        == screen->update_partial()
  video_screen_update_now()            == screen->update_now()
  video_screen_get_vpos()              == screen->vpos()
  video_screen_get_hpos()              == screen->hpos()
  video_screen_get_vblank()            == screen->vblank()
  video_screen_get_hblank()            == screen->hblank()
  video_screen_get_width()             == screen->width()
  video_screen_get_height()            == screen->height()
  video_screen_get_visible_area()      == screen->visible_area()
  video_screen_get_time_until_pos()    == screen->time_until_pos()
  video_screen_get_time_until_vblank_start() == 
                                 screen->time_until_vblank_start()
  video_screen_get_time_until_vblank_end() == 
                                 screen->time_until_vblank_end()
  video_screen_get_time_until_update() == screen->time_until_update()
  video_screen_get_scan_period()       == screen->scan_period()
  video_screen_get_frame_period()      == screen->frame_period()
  video_screen_get_frame_number()      == screen->frame_number()

  timer_device_adjust_oneshot()        == timer->adjust()
  timer_device_adjust_periodic()       == timer->adjust()
  timer_device_reset()                 == timer->reset()
  timer_device_enable()                == timer->enable()
  timer_device_enabled()               == timer->enabled()
  timer_device_get_param()             == timer->param()
  timer_device_set_param()             == timer->set_param()
  timer_device_get_ptr()               == timer->get_ptr()
  timer_device_set_ptr()               == timer->set_ptr()
  timer_device_timeelapsed()           == timer->time_elapsed()
  timer_device_timeleft()              == timer->time_left()
  timer_device_starttime()             == timer->start_time()
  timer_device_firetime()              == timer->fire_time()

Updated all drivers that use the above functions to fetch the specific
device type (timer_device or screen_device) and call the appropriate
method. [Aaron Giles]

Changed machine->primary_screen and the 'screen' parameter to VIDEO_UPDATE
to specifically pass in a screen_device object. [Aaron Giles]

Defined a new custom interface for the Z80 daisy chain. This interface
behaves like the standard interfaces, and can be added to any device that
implements the Z80 daisy chain behavior. Converted all existing Z80 daisy
chain devices to new-style devices that inherit this interface.
[Aaron Giles]

Changed the way CPU state tables are built up. Previously, these were data
structures defined by a CPU core which described all the registers and how
to output them. This functionality is now part of the state interface and
is implemented via the device_state_entry class. Updated all CPU cores
which were using the old data structure to use the new form. The syntax is
currently awkward, but will be cleaner for CPUs that are native new 
devices. [Aaron Giles]

Converted the okim6295 and eeprom devices to the new model. These were
necessary because they both require multiple interfaces to operate and it
didn't make sense to create legacy device templates for these single cases.
(okim6295 needs the sound interface and the memory interface, while eeprom
requires both the nvram and memory interfaces). [Aaron Giles]

Changed parameters in a few callback functions from pointers to references
in situations where they are guaranteed to never be NULL. [Aaron Giles]

Removed MDRV_CPU_FLAGS() which was only used for disabling a CPU. Changed
it to MDRV_DEVICE_DISABLE() instead. Updated drivers. [Aaron Giles]

Reorganized the token parsing for machine configurations. The core parsing
code knows how to create/replace/remove devices, but all device token
parsing is now handled in the device_config class, which in turn will make
use of any interface classes or device-specific token handling for custom
token processing. [Aaron Giles]

Moved many validity checks out of validity.c and into the device interface
classes. For example, address space validation is now part of the memory
interface class. [Aaron Giles]

Consolidated address space parameters (bus width, endianness, etc.) into
a single address_space_config class. Updated all code that queried for
address space parameters to use the new mechanism. [Aaron Giles]
2010-06-08 06:09:57 +00:00
Roberto Fresca
e9e9e31d9c Improvements to Lucky Girl (newer Z80 based hardware): [Roberto Fresca]
* Improved the input system, added missing buttons.
 * Figured out the full coinage DIP switches. (Coins A, B, C, Key In)
 * Found and documented the output ports.
 * Added full lamps support.
 * Created a new button-lamps layout.
 * Hooked the coin and key in counters.
 * Added technical notes.
2010-06-07 01:54:25 +00:00
mariuszw1
7ca4c4a9f5 pcat_nit.c update [Mariusz Wojcieszek]
- added VGA emulation from MESS
- added INS8250 emulation from MESS
- added format decimal support to Microtouch
- added rom banking and inputs to pcat_nit games
- streetg(2) now boot properly
2010-06-05 19:41:27 +00:00
Angelo Salese
00d405a975 Basic M6502 hook-up in Royal Gum [David Haywood]
Moved Miracle Derby inside homedata.c driver [David Haywood]
2010-06-03 15:27:27 +00:00
Couriersud
690f98e05b Moved tms6100 code into emu/machine/tms6100.[ch]. Added pinouts for TMS6100 and M58819. [Couriersud] 2010-05-31 19:54:22 +00:00
Angelo Salese
dfafd7bd5d Ported Super Famicom Box from MESS to MAME [Angelo Salese]
Modified the naomi clipping a bit to avoid so many black lines at the bottom [David Haywood]

new clones
----------
Road Riot's Revenge (prototype, set 3) [Siftware]
Indoor Soccer (set 2) [Siftware]

new not working
---------------
Super Famicom Box BIOS [Angelo Salese]
New Super 3D Golf Simulation - Waialae No Kiseki / Super Mahjong 2 (Super Famicom Box) [Angelo Salese]
2010-05-22 14:05:16 +00:00
Fabio Priuli
728e00bc44 sega16sp: moved bootleg interfaces to the system 16 bootleg driver and added different interfaces to avoid drivers to directly access device private items. No whatsnew.
snes.c: moved some more elements to driver_data class and added skeleton support for the BS-X satellaview addon (which will be used by MESS, eventually). No whatsnew.
2010-05-19 08:52:12 +00:00
Luca Elia
ede9da11b2 New driver: sigmab98.c [Luca Elia]
New games added or promoted from NOT_WORKING status
---------------------------------------------------

GeGeGe no Kitarou Youkai Slot [A. Hoekman, ranger_lennier, Smitdogg, The Dumping Union, Luca Elia]

New games marked as GAME_NOT_WORKING
------------------------------------

Win Win Bingo (2 sets) [f205v, Filippo Tarderia]
Zoo [Brian Troha, The Dumping Union]
2010-05-16 14:04:49 +00:00
Michaël Banaan Ananas
f45ce8f223 rm empty unused file 2010-05-10 13:48:49 +00:00
Roberto Fresca
8ab54982e1 New Lucky 8 Lines hardware:
* Added lamps support to lucky8, lucky8a, lucky8b,
    ns8liner, ns8linew and kkojnoli.
 * Created lamps layout for the above sets.
 * New inputs for ns8linew. This set has a second set of inputs,
    and can be switched between them. No lamps activity or Big/Small
    buttons are present while this alternative controls are used.
    Maybe is a leftover.
 * Some DIP switches were figured out. Coinage and limits are still
    a real mystery since all DIP switches are reflected in the test mode.
 * Remapped inputs to be straightforward with the control panel.
 * Added the type (W-4/F-5) to the sets description.
 * General inputs clean-up.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
New Lucky 8 Lines / New Super 8 Lines (F-5, Witch Bonus)
[Roberto Fresca, incog, Smitdogg, The Dumping Union]
2010-05-06 16:51:41 +00:00
Fabio Priuli
d327f106f4 sega system16 and later: first pass in the conversion of video ICs to be devices [David Haywood]
also, out of whatsnew: modified segaybd to use callbacks for output instead of a huge switch statement (as per Haze's and Arbee's suggestions).
2010-04-26 15:28:03 +00:00
Scott Stone
89c4252140 Added a screen layout for Space Stranger based on photos [M.A.S.H] 2010-04-23 22:11:06 +00:00
Roberto Fresca
5b15b9b029 More improvements to Treasure Bonus (Subsino) [Roberto Fresca]
* Fixed inverted functions and buggy inputs.
 * Added lamps support.
 * Created button-lamps layout.
 * Remapped inputs to reflect the controls layout. This way is more
    user-friendly since controls are straight with button-lamps.
 * Added coin/keyin/keyout/payout counters.
 * Removed the pulse limitation in the BET input. This allow it to work
    as BET and STOP2 properly.
 * Added technical notes.
2010-04-22 19:08:45 +00:00
Roberto Fresca
392179b0ab Improvements to Shark Party (English, Alpha license): [Roberto Fresca]
* Created complete inputs from the scratch.
 * Added coin/keyin/keyout counters.
 * Added main game and double-up rates DIP switches.
 * Added minimum bet DIP switches.
 * Added maximum bet DIP switches.
 * Added complete coinage and remote credits DIP switches.
 * Added jokers and demo sounds DIP switches.
 * Figured out and documented all the game outputs.
 * Created proper button-lamps layout.

Now the game is in full-working state.
2010-04-20 06:56:01 +00:00
Fabio Priuli
1e21b12b9e Added driver data class and save states to playmark.c, powerbal.c, pushman.c and pzletime.c [Fabio Priuli] 2010-04-19 08:00:59 +00:00
Ryan Holtz
b64d429b8e Reworked the entire Nintendo 64 renderer to be class-based. More
cleanup to follow. [Harmony]
2010-04-02 05:34:10 +00:00
Angelo Salese
2f0d3d3d25 Replaced Stocker dump with a good set [Kevin Eshbach]
Hooked up default NVRAM for Golly Ghost / Bubble Trouble [David Haywood]

clones
---
Moon Base (set 2) [jmurjr, D. Maeby, Charles MacDonald, The Dumping Union]
Vapor Trail - Hyper Offence Formation (World revision 3?) [f205v, Tirino73]
Cherry Bonus III (alt, set 2) [Anonymous]


new NOT WORKING games
---------------------
Lucky Boy / Poker 72 [David Haywood]
2010-03-28 19:53:10 +00:00
Fabio Priuli
b7d6cf77c1 metro.c: added driver data class [Fabio Priuli]
vmetal: added driver data class and save states [Fabio Priuli]

no save states in metro.c (yet) because some games like 3kokushi have serious glitches when loading a state. any help is welcome...
2010-03-17 16:38:26 +00:00
Fabio Priuli
47a1fe17f8 spc700.c: Added save states [Fabio Priuli]
snes.c: Updated the snes sound device to use device handlers, to store its internals in a struct, and to save them [Fabio Priuli]
2010-03-17 09:33:15 +00:00
Fabio Priuli
462128d7a8 Added driver data class and save states to: paradise.c, pasha2.c and pbaction.c
Enabled saves states in pass.c (everything was already saved)
2010-03-16 07:53:12 +00:00
Roberto Fresca
1388839de7 More improvements to Funworld driver. [Roberto Fresca]
* Reworked button-lamps layouts per game. Cleaned-up the code.
 * Added specific button-lamps layout for bigdeal games.
 * Added specific button-lamps layout for royalcrd & jolycdit,
    but there is a bug in the d-up select code that lights the
    wrong lamp. This is a leftover from jollycrd routines.
 * Flagged vegasfte as GAME_NOT_WORKING, since is not receiving
    any coins or remote credits anymore.
2010-03-16 01:51:08 +00:00
Angelo Salese
8a376dc6e6 Added default NVRAM for Namco FL games and some Namco System 2 games [David Haywood] 2010-03-15 19:13:44 +00:00
Curt Coder
5826c45ea4 Imported Z80 DART and Z80 STI from MESS. (no whatsnew) 2010-03-08 16:47:53 +00:00
Roberto Fresca
f84bb3da43 New driver for Five Clown, from IGS. This is a dual 6502 system
with CRT controller, AY8910 and OKI M6295. Main program, graphics
and sound samples are encrypted. [Roberto Fresca, Grull Osgo]

 - Hooked both 6502 CPU's.
 - Hooked the M6845 CRT.
 - Decrypted main program and bulk GFX.
 - Decoded GFX and color PROM.
 - Hooked both PIA's 6821.
 - Worked inputs from the scratch.
 - Hooked DIP Switches banks 2 & 4.
 - Hooked proper interrupts for audio CPU.
 - Hooked the AY8910 latches...
 - Hooked the OKI6295.
 - Hooked DIP switches ports $C400 & $CC00.
 - Found the sound samples decryption algorithm.
 - Added NVRAM support.
 - Added a complete PCB layout.
 - Added game notes.
 - Added technical notes.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Five Clown (english) [Roberto Fresca, Grull Osgo]
Five Clown (spanish hack) [Roberto Fresca, Grull Osgo]
2010-03-08 05:23:44 +00:00
Angelo Salese
e65d75cfee Merged kingdrby.c and cowrace.c drivers [Angelo Salese] 2010-03-02 20:37:30 +00:00
Angelo Salese
8ba44d6bad new NOT WORKING
---------------

Royal Gum [Siftware]
2010-03-02 19:57:37 +00:00
R. Belmont
beeffeb5e7 Add MAME-ified version of SoftFloat library [John R. Hauser]
As previously discussed, this will be used for the MC680x0 FPU in 
order to handle high-precision floats portably.  The license is 
included in README.txt and is MAME compatible.
2010-03-02 04:26:48 +00:00
Fabio Priuli
19723cecd0 Added driver_data class and save states to the following drivers: oneshot.c, onetwo.c, orbit.c, othello.c and othldrby.c
Added driver_data class to the following drivers: nemesis.c and nyny.c
2010-03-01 09:10:49 +00:00
Fabio Priuli
bb91514d13 Added missing files from rev.8444 2010-03-01 05:39:34 +00:00
Fabio Priuli
745d7c0f68 Added driver_data class and save states to the following drivers: backfire.c, boogwing.c, cbuster.c, cninja.c, dassault.c, dblewing.c, deco156.c, rohga.c, simpl156.c [Fabio Priuli]
and yes, this completes driver data class for all the deco16ic drivers ;)
2010-02-25 21:17:06 +00:00
Fabio Priuli
ef97820c1b Renamed decodev->deco16ic [Fabio Priuli]
Added driver data class to funkyjet.c [Fabio Priuli]

Added driver data class and save states to vaportra.c and tumbleb.c [Fabio Priuli]
2010-02-25 16:21:27 +00:00
Fabio Priuli
acf08c5b70 Made deco32.c independent of deco16ic.c (it only needed a drawing routine) and removed deco16ic.c now that it is not needed anymore [Fabio Priuli] 2010-02-25 13:11:59 +00:00
stephh
56c1f02268 wardner, wardnerj, pyros (wardner.c driver) :
- Fixed Dip Switches and Inputs (after verification of the Z80 code)
2010-02-25 10:51:37 +00:00
Fabio Priuli
9c435fdb38 Implemented device version of the deco16ic tilemap chip [Fabio Priuli]
Converted backfire.c, boogwing.c, dietgo.c, mirage.c, pktgaldx.c, simpl156.c, supbtime.c, tumblep.c to use the device-fied video chips [Fabio Priuli]

Added driver data struct and save states to the following drivers: dietgo.c, mirage.c, pktgaldx.c, supbtime.c and tumblep.c [Fabio Priuli]


side note: the device-fied code (currently included in video/decodev.c) still needs various refinements, but I will clean it up after all the drivers have been converted.
2010-02-25 00:33:25 +00:00
Fabio Priuli
a47eb26d5b Added driver_data struct and save states to the following drivers: matmania.c, metlclsh.c, mexico86.c, mouser.c, mrflea.c, mrjong.c, munchmo.c and mwarr.c
Added driver_data struct to the following drivers: mgolf.c, minivadr.c, mosaic.c and mrdo.c

Enabled save states to mugsmash.c (everything was already saved)
2010-02-23 19:18:49 +00:00
Fabio Priuli
02ef38f4bd forgotten headers 2010-02-21 00:37:26 +00:00
Fabio Priuli
c34df5727c Added driver_data struct and save states to the following drivers: madmotor.c, mazerbla.c, mikie.c, mjsister.c, mogura.c, mole.c and momoko.c 2010-02-20 17:44:46 +00:00
Fabio Priuli
9ec77c765d es5506.c: added save state to both ES5505 and ES5506 [Fabio Priuli]
added driver_data struct and save states to the following drivers: attckufo.c, m79amb.c, macrossp.c, marinedt.c, markham.c, mayumi.c and mcatadv.c
2010-02-20 12:09:42 +00:00
Dirk Best
1ad1e26df8 Moved ins8154 emulation from MESS to MAME, needed by future drivers 2010-02-20 02:57:56 +00:00
Fabio Priuli
3a7a4dfe3c skyfox.c: added driver data struct and save states [Fabio Priuli] 2010-02-18 18:24:51 +00:00
Fabio Priuli
1fd0720ac2 hexa: merged the remaining code into arkanoid.c 2010-02-18 18:23:58 +00:00
Scott Stone
784e015f66 Preliminary merging of hexa.c into the arkanoid.c driver.
Comments:  Further cleaning up of code and merging is possible as the includes/hexa.c and video/hexa.c haven't been merged at all and still exist.
2010-02-17 22:38:21 +00:00
Fabio Priuli
f26c5bf115 attckufo: Imported MOS6560 device emulation from MESS and removed the existent custom audio/video emulation [Fabio Priuli] 2010-02-17 17:07:06 +00:00
Angelo Salese
fd0f63de72 new working
-----------

Uncle Poo [Team Europe, Dumping Union, René Single, David Haywood, Angelo Salese]
2010-02-14 22:56:03 +00:00
Couriersud
f529fad8b3 Move functions from sdlclip.c to sdlos_*
- X11 clipboard code will now be compiled and will honor -DNO_X11
2010-02-12 21:21:42 +00:00
Miodrag Milanovic
0a6b13608d - Moved natural keyboard support from MESS to MAME
- Moved OSD file functions and clipboard access functions into OSD core
2010-02-12 15:40:11 +00:00
Couriersud
0898987bc3 Internal debugger using the mame rendering infrastructure
- added support for arbitrary number of containers for render_target
- added command-line parameter -debug_internal (-di) to use the internal debugger when in debug mode
- internal debugger supports all views except memory view
- added "Debug" view to layout/vertical.lay to create more place for debug views in vertical games.

The colors are ugly. Font rendering needs improvement. There are no shortcut keys right now. There is still a lot of room for more improvements.
However, it works and does not depend on any ui toolkit. The interface has been designed to support displaying views programmatically e.g. from the ui. 

Currently, the ui render target is used. In order to support views being displayed in separate windows further changes are needed:
- the osd layer must support creating and closing windows (render targets) on demand.
- There must be a mode for render targets where their bounds follows the window size - Currently the render target size depends on the aspect of currently selected "artwork" view.
- Render target needs a name property.

Short HowTo:

- Start MAME with "-debug -di"
- Console, register and disasm views will be shown. Place them by dragging the view on the title bar.
- Views can be resized by dragging the bottom-right yellow square.
- The view having the focus has a green background title bar.
- Hit "Tab" (IPT_UI_CONFIGURE) to show the menu.
- Console and disasm views support a very simple facility to support entering commands and addresses. Just start typing. Hit "enter" when finished.
2010-02-11 23:59:36 +00:00
Roberto Fresca
0f5caa3cfb New driver for Sigma B52 system.
ACRTC implementation is a bit hacky due to its preliminary emulation status.


New games marked as GAME_NOT_WORKING
------------------------------------
Joker's Wild (B52 system, set 1) [Roberto Fresca, Tomasz Slanina, Gerald Vanderick]
Joker's Wild (B52 system, set 2) [Roberto Fresca, Tomasz Slanina]
Joker's Wild (B52 system, Harrah's GFX) [Roberto Fresca, Tomasz Slanina, Gerald Vanderick]
2010-02-07 06:08:58 +00:00
R. Belmont
49e9851b24 Add and hook up ZOOM ZSG-2 skeleton [Olivier Galibert]
Doesn't do much at the moment, but the increase in documentation value is
significant (we're documenting the sample compression format, for one thing).
2010-02-07 04:59:42 +00:00
Scott Stone
1aa3fa6dcd Source Cleanup: Setname fixes and other minor changes - Drivers starting with D (part 1). 2010-02-04 18:59:33 +00:00
R. Belmont
01efae2c12 Preliminary Panasonic MN10200 CPU core and Taito ZOOM ZSG-1 sound system [Olivier Galibert]
---

This is just stage one of converting OG's stuff, please do not touch any 
of it yet.  Next up is the skeleton of the ZOOM chip, finishing up 
the missing bits of the CPU core (the interrupt controller and timers), and
debugging the results.
2010-02-04 05:20:18 +00:00
Roberto Fresca
7b22bc982c Improvements to Treasure Island:
- Added proper inputs.
 - Added coin/keyin/keyout/payout counters.
 - Limited the bet and coin pulses to avoid repeats and coin jams.
 - Added complete coinage and keyin DIP switches.
 - Added main game and double-up rates DIP switches.
 - Added minimum bet DIP switches.
 - Added maximum bet DIP switches.
 - Added main game and double-up limit DIP switches.
 - Added payout mode and auto take DIP switches.
 - Added DIP locations as seen in the settings mode.
 - Added demo sounds DIP switch.
 - Created proper button-lamps layout.
 - Added technical notes.
 - Some clean-ups...

(promoted from not working status....)

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Treasure Island (Subsino) [Team Europe, Dumping Union, Angelo Salese, David Haywood, Roberto Fresca]
2010-02-03 07:25:49 +00:00
Angelo Salese
a165af4b1b new not working
----------------

Neptune's Pearls 2 [Tomasz Slanina]
2010-01-31 22:57:10 +00:00
Fabio Priuli
eac9b402ba Forgot to remove a file 2010-01-31 18:38:13 +00:00
Fabio Priuli
5f458ac103 Sega misc wip:
- split dependences of system16 games from bootleg ones
- moved some .h files to includes/
- removed some unneeded include
- removed some dead code
- added driver data struct to segahang.c, segaorun.c, segas16a.c, sega16b.c, segas18.c, segaxbd.c & segaybd.c
- added save states to segas16a.c


Side notes: 
* save states for other drivers do not work atm due to timer issues and/or missing item registrations in video/segaic16.c
* next, I'm going to see if bootlegs can be cleaned up a bit and if some segaic16 components can be device-fied
2010-01-31 18:07:57 +00:00
Roberto Fresca
e717512127 Moved HD63484 ACRTC device from mame/video to emu/video. 2010-01-26 07:46:49 +00:00
Angelo Salese
ab0df04b93 new not working
----------------

Pinkiri 8 [Gyrovision, Smitdogg, The Dumping Union]
2010-01-23 12:07:53 +00:00
Couriersud
10bee5ce78 The return of the "misc"
- Added sdlmisc_<targetos>.c again. This was necessary since
  certain tools create stubs for e.g. osd_break_into_debugger.
  If we do not have this in a separate file, the link stage may
  break.
- Applied OS/2 patch [Credit: KO Myung-Hun]
- Cleaned up #includes. Removed stdlib.h were possible.
- More malloc to osd_malloc rename.
- SDL monitor modes are read now when they are needed. This is now consistent across platforms.
2010-01-21 22:54:49 +00:00
mariuszw1
8683a494e9 New games marked as NOT_WORKING
-------------------------------
Penguin Adventure (bootleg) [Mariusz Wojcieszek]

Game is playable, but coin system is missing, so I left NOT_WORKING flag.
2010-01-20 22:15:23 +00:00
Phil Bennett
1227bbfd0c Converted the following drivers to use a driver_data structure: [Atari Ace]
bigstrkb, mugsmash, pass, sbugger, sderby, shadfrce, shootout,
silkroad, spbactn, sslam, stlforce, taitojc, tunhunt,
welltris, wwfsstar, xyonix


---------- Forwarded message ----------
From: Atari Ace <atari_ace@verizon.net>
Date: Fri, Jan 15, 2010 at 4:21 PM
Subject: [patch] [resubmit] More driver_data conversions
To: submit@mamedev.org
Cc: atariace@hotmail.com


Another driver_data patch, this one converting the following drivers
(same as last submission, minus taitoair):

bigstrkb, mugsmash, pass, sbugger, sderby, shadfrce, shootout,
silkroad, spbactn, sslam, stlforce, taitojc, tunhunt,
welltris, wwfsstar, xyonix

~aa
2010-01-17 21:56:15 +00:00
Phil Bennett
51f56f0eb6 Missed a file 2010-01-17 16:49:39 +00:00
Phil Bennett
2860295205 New games added or promoted from NOT_WORKING
--------------------------------------------
F-15 Strike Eagle (2 sets) [Phil Bennett]
Battle of the Solar System (rev. 1.1) [Phil Bennett]
Tank Battle (prototype rev. 4/21/92) [Phil Bennett]


Added Am29000 CPU core [Phil Bennett]
2010-01-17 16:21:57 +00:00