Commit Graph

2247 Commits

Author SHA1 Message Date
Michaël Banaan Ananas
8a74f58d3b obsolete file 2009-08-19 15:30:28 +00:00
Aaron Giles
fd1eff262e And bye bye 5110intf.* 2009-08-19 15:11:13 +00:00
Aaron Giles
e4b94176bb Bye bye 5220intf.* 2009-08-19 14:50:17 +00:00
Roberto Fresca
28e4394616 New driver for Coinmaster-Gaming VGA based games. [Roberto Fresca, Angelo Salese]
Colorama is a standalone game driven for 1x VGA board plus a mechanical arm.
Roulette is just the bet station, since the phisical wheel has its own controller. Each roulette has 10/15 stations.


New games marked as GAME_NOT_WORKING
------------------------------------
Colorama (english) [Roberto Fresca, Angelo Salese]
Roulette V75 (spanish) [Roberto Fresca, Angelo Salese]
2009-08-17 18:28:10 +00:00
R. Belmont
2a76fb52c6 YM2612/3834 updates [Eke-Eke, Nemesis]
- Split YM2612/3834 to a separate file to avoid disturbing other OPN chips
- SSG-EG, envelope, LFO, and CSM behavior all improved to better match 
  tested behavior on real YM2612 chips
2009-08-15 02:48:52 +00:00
Aaron Giles
21d9be570c From: hoge hoge [mailto:c8cv@hotmail.com]
Sent: Sunday, August 09, 2009 8:39 AM
To: submit@mamedev.org
Subject: depthch overlay

Hi,

Attached diff for 0133u1 adds a simple color overlay for Depthcharge 
based on http://www.arcadeflyers.com/?page=flyer&db=videodb&id=1701&image=1 , 
clone subhunt is excluded since that's a different cab and no good photos were 
found. Related mametesters bug: http://www.mametesters.org/view.php?id=2858

hap
________________________________________
2009-08-13 05:12:31 +00:00
Aaron Giles
9b0333264b Should have been deleted. 2009-08-13 05:02:21 +00:00
Aaron Giles
019d919850 Hi Aaron,
I have done Intel 4004 implementation, here is a patch (it also
contain a POC driver for 4004 Nixie tube clock, that runs under MESS).

4004clk is artwork file, and roms file contain needed roms (just rename ZIP).

Regards,
Miodrag


> -----Original Message-----
> From: Micko [mailto:mmicko@gmail.com]
> Sent: Tuesday, August 04, 2009 8:11 AM
> To: Aaron Giles
> Subject: Intel 4004 core
> 
> Hi Aaron,
> 
> Here is a final version of CPU core for MAME submition.
> 
> Regards,
> Miodrag
2009-08-13 04:30:33 +00:00
Ryan Holtz
e5c2064384 Improved PXA255 DMA controller emulation. [MooglyGuy] 2009-07-27 04:39:07 +00:00
Angelo Salese
acfed1e509 new not working
-----------------
Bingo Roll (4 sets) [Team Europe, Dumping Project]
2009-07-26 23:57:39 +00:00
Angelo Salese
4eea9db584 new not working
---------------
Videotronics Poker [Angelo Salese, SoftwareThis]
2009-07-26 20:43:41 +00:00
Angelo Salese
52def314ff New not working:
----------------
Photo Play [Klaus Sommers, Angelo Salese]
2009-07-22 18:54:21 +00:00
mariuszw1
5c79939388 New games added or promoted from NOT_WORKING status
---------------------------------------------------
Tetris (Photon System) [Miodrag Milanovic, Mariusz Wojcieszek]
2009-07-20 21:53:25 +00:00
Roberto Fresca
a1118b9137 Merit Multi-Poker improvements:
* Full Inputs.
 * DIP Switches.
 * Simulated spark-watchdog circuitery.
 * Demuxed custom port.
 * NVRAM support.
 * CPU clock derived from #defined crystal.
 * 8000-8007 Output ports.
 * Coin related counters.
 * Sound components and trigger found at 8000-8003, bit2.
 * Full lamps support.
 * PCBs layouts & technical notes.

The 4 games are fully playable. Sound seems to be discrete, so the circuitery need to be traced.
Colors are still wrong.

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Multi-Poker [Roberto Fresca]
2009-07-20 01:54:58 +00:00
Aaron Giles
d879a67a4a Never send a monster to do the work of an evil scientist... 2009-07-16 07:10:16 +00:00
Yasuhiro Ogawa
00cdb38daf renamed rockola.c to snk6502.c as the hardware is made by SNK, not by Rock-ola 2009-07-16 04:43:17 +00:00
Angelo Salese
6f2d3f59e0 New games marked as GAME_NOT_WORKING
------------------------------------
Time Traveller [Angelo Salese]
2009-07-13 23:29:15 +00:00
Angelo Salese
ba36cda75e New games marked as GAME_NOT_WORKING
------------------------------------
Cobra Command (Data East LD) [Angelo Salese]
Road Blaster (Data East LD) [Angelo Salese]
2009-07-13 21:37:09 +00:00
Angelo Salese
f026a7e02a New games marked as GAME_NOT_WORKING
------------------------------------
Multipede [Angelo Salese]
2009-07-13 20:02:46 +00:00
Curt Coder
3bf122986c Intel 8255A PPI:
- Added a new implementation of the I8255A device. Rewritten from scratch to properly support handshaking in modes 1 and 2.
- Refactored sg1000a.c to use the new implementation.
2009-07-10 13:26:54 +00:00
Aaron Giles
c1b119d3e5 New not working: Turret Tower [SoftwareThis] 2009-07-09 08:45:23 +00:00
Aaron Giles
ddc3fe4a5d New net working: Quake Arcade Tournament [SoftwareThis] 2009-07-09 08:42:57 +00:00
Aaron Giles
2dca7f9cee From: Mr. Do [mailto:mrdo_emu@hotmail.com]
Sent: Sunday, July 05, 2009 11:47 PM
To: Aaron Giles
Subject: Bugfix - MT # 3019


http://www.mametesters.org/view.php?id=3019

Looks like I messed up a few of the driving games.  Here are the fixed layout files, 
along with a small change in \src\mame\drivers\mw8080.c, as lagunar was referencing 280zzzap.
2009-07-09 08:35:13 +00:00
Aaron Giles
f287f4646f Oops forgot this one. 2009-07-09 08:26:36 +00:00
R. Belmont
e9d09a6073 New games marked as GAME_NOT_WORKING
------------------------------------
Johnny Nero Action Hero [R. Belmont, The Dumping Union]


The boot ROM has a lot to say on two different TTY ports (really).
2009-07-06 04:42:33 +00:00
Angelo Salese
ce8e7c07ab New games added or promoted from NOT_WORKING status
---------------------------------------------------
Tokimeki Mahjong Paradise - Dear My Love [David Haywood, Angelo Salese] 
Tokimeki Mahjong Paradise - Doki Doki Hen [David Haywood, Angelo Salese]

changes:

- split tmmjprd / tmpdoki from rabbit.c as it uses the graphic chip in a very different way, and having them together was making it more difficult to make progress on [David Haywood]
- changed them to use custom rendering code instead of tilemaps, as they can address tile data at a sub-tile level, this fixes the girls in the intro [David Haywood]
- added inputs [Angelo Salese]
- added some notes about a hang, and possible reason [David Haywood]
- marked the graphic roms of tmpdoki as BAD as it appears to be using tiles which are not present in the tmmjprd roms for the title screen [David Haywood]
2009-07-05 13:56:07 +00:00
Phil Bennett
2246b5eeba New games marked as GAME_NOT_WORKING
------------------------------------

Skeet Shot [Phil Bennett, Andy Welburn, Angelo Salese]
2009-06-26 22:50:10 +00:00
Wilbert Pol
75ce6af133 Added TMS0980 cpu core. 2009-06-26 17:49:45 +00:00
Ryan Holtz
c2965b8335 Added extremely rudimentary Atmel 8-bit AVR CPU core, missing most opcodes and any attempt at proper cycle counts. [MooglyGuy] 2009-06-20 12:13:48 +00:00
Angelo Salese
ef09d0e61e New games marked as GAME_NOT_WORKING
------------------------------------
Hit Poker

=======================================================================

No credit please, it's just a skeleton driver with another unknown CPU
(Haze did the gfxdecoding iirc)
2009-06-18 18:47:57 +00:00
Aaron Giles
ef0a31ca13 From: Atari Ace [mailto:atari_ace@verizon.net]
Sent: Sunday, June 07, 2009 9:54 AM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] "Regularize" some interfaces in MAME

Hi mamedev,

This patch adjusts the code in a few places to be more regular in it
object approach.  It recognizes five idioms.

1.  device_configs should be passed const.  dsp56k.h took a non-const
device_config for no particular reason, necessitating casting where
used.  A few other places cast to non-const, in most cases
unnecessarily.
2.  running_machines should be passed non-const.  A few places used
const in different ways on running_machines, instead of the idiomatic
non-const running_machine.
3.  Eliminate passing running_machine explicitly where it can be
computed.  esrip.c, m37710.c, sfbonus.c had cases where the machine
could easily be eliminated.
4.  Pass the object machine/config first.  In some cases this makes
the interface object oriented, in some cases it simply makes it more
idiomatic with the rest of MAME.
5.  Prefer (screen, bitmap, cliprect) to (machine, bitmap, cliprect).
Fully implementing this would be a large patch, this patch simply does
it for the one core 'device', tms9928a.c.
2009-06-08 06:24:21 +00:00
Angelo Salese
c447385c2f Nuked unneeded system18.c file 2009-06-07 22:15:24 +00:00
Angelo Salese
56fb451d7e New games marked as GAME_NOT_WORKING
------------------------------------
Enchanted Forest [Palindrome]
2009-06-04 21:15:10 +00:00
Ryan Holtz
7ef80f9393 Added CPU core for the Manchester Small-Scale Experimental Machine (SSEM) from 1948 [MooglyGuy] 2009-06-02 01:11:11 +00:00
Aaron Giles
a9d29f2d78 Cleaned up Namco 5xxx docs, listing both MB88xx pin IDs and
Namco custom IDs where appropriate.

Added clocks to the Namco 06xx in anticipation of improved
device interconnection.

Added new file devtempl.h which can be used to generate the
DEVICE_GET_INFO function. Updated all the Namco I/O devices
to use this.

Updated galaga driver to use computed video timing.
2009-05-31 22:04:15 +00:00
Aaron Giles
0c0affd00e Replaced Namco 52xx sound simulation with emulation of the MCU.
Updated polepos and bosco drivers to use the new 52xx sound
emulation, wiring up the output through the discrete mixer that
Derrick had already plumbed but left disabled.

This required several MB88xx changes/fixes:
 - internal timer support now works; prescaler is guessed based
    on Pole Position sample playback frequency
 - external counter support works
 - a basic mechanism for reading serial input has been added; it
    is not sufficient for a full implementation, but good enough
    to sample the SI pin at startup
 - fixed TSTS/TSTV to clear their respective flags
 - fixed CI and CYI to compute imm-reg instead of reg-imm
 - added masking of the PA register upon RTI/RTS to prevent bogus
    PC values
2009-05-28 09:15:09 +00:00
smf-
c96c490060 preliminary work on beatmania iidx, still lots to do but I didn't want to waste anyones time. 2009-05-28 07:13:38 +00:00
Aaron Giles
8048a37ae7 Split the Namco 06xx interface into a separate device, which has
the information needed to connect to the CPU and other devices
specified in the definition.

Updated drivers to use this new device.

(I notice that the bosco shoot sound no longer changes pitch during
another explosion. Not sure if this was fixed prior or if the
recent device-ification cleaned something up....)
2009-05-27 05:03:08 +00:00
Aaron Giles
adffaf795b Split out Namco 51xx and 53xx into separate modules.
Converted Namco 51xx and 53xx into proper devices. The MB84xx is not
yet emulated, but is now present.

Converted 51xx and 53xx interfaces to use the devcb system for 
port I/O callbacks.

Dig Dug is known to be somewhat broken at the moment.
2009-05-26 15:16:58 +00:00
Angelo Salese
88c1d2db97 Renamed yumefuda.c/hanaroku.c drivers to albazg.c/albazc.c (like they should be properly named) 2009-05-08 12:38:13 +00:00
Tomasz Slanina
0d71c2d7c8 Various improvements to Parent Jack driver. 2009-05-04 15:49:40 +00:00
Angelo Salese
0e77ecc1d2 test svn commit 2009-05-03 20:27:01 +00:00
Angelo Salese
eafc1367bf Added a preliminary driver for Irem M14 HW, will finish it soon if possible. 2009-05-03 15:07:54 +00:00
Aaron Giles
9eb86548bb Added missing casts and made other tweaks. The entire project
can now be optionally compiled with the C++ compiler (mingw g++
only for the moment; MSVC still has issues).
2009-04-27 09:18:17 +00:00
Phil Bennett
aa82f73e7e New games marked as GAME_NOT_WORKING
------------------------------------

Skimaxx [Phil Bennett]
2009-04-26 22:09:14 +00:00
Angelo Salese
176ec7a804 Moved NAOMI DRIVER_INITs to specific machine/naomi.c & includes/naomi.h files, in preparation to add per-game JVS settings. 2009-04-22 10:09:58 +00:00
Wilbert Pol
2ef8ba4347 Added T6W28 sound core (SNK(?) custom sn76489a clone). 2009-04-20 20:40:47 +00:00
Wilbert Pol
4f2a65da42 Added Toshiba TLCS-900/H cpu core. 2009-04-20 16:49:10 +00:00
Aaron Giles
7a0f34cb33 Added basic TMS9927 implementation. Hooked it up to the statriv2
and thief drivers.

Bunch of improvements to the Status system emulation. Correct
video timing, hooked up TMS9927, corrected colors, etc. Still
some work to do.

New games
=========
Status Blackjack
Status Fun Casino
2009-04-20 09:31:18 +00:00
davidhay
d6f87205c1 refactoring of naomi.c 2009-04-19 10:01:53 +00:00
Roberto Zandona
51023c0b6a roul:
- added a simple layout for the roulette
- promoted to working status
2009-04-18 09:39:18 +00:00
Roberto Zandona
2d90be3636 skeleton for Super Lucky Roulette? 2009-04-12 15:59:33 +00:00
Aaron Giles
7e5b973c25 Missed a file. 2009-04-09 17:09:47 +00:00
Roberto Zandona
1005577743 unkpoker:
renamed to murogmbl
promoted to working
2009-04-08 18:00:53 +00:00
Roberto Zandona
d03013df49 New games marked as GAME_NOT_WORKING
------------------------------------
Unknown Poker [Roberto Zandonà, Angelo Salese]
2009-04-07 06:14:51 +00:00
davidhay
10f7d87f23 Eeprom and i2c implemeted as devices [Samuele Zannoli]
The eepromdev.* files are the device impementation for the serial eeproms
The i2cmemdev.* files are the device impementation for the i2c memory
These aren't currently hooked up

I'm committing this so that the Naomi changes don't accidentally get applied.  The idea seems good, but they conflict with the current driver and I'd rather not have them accidentally slipping in and breaking things just yet.
2009-04-02 20:48:28 +00:00
Fabio Priuli
bcc3b3a3d9 Konami inputs improvements:
* Added source file konamipt.h to unify Konami inputs where possible (e.g. most 80s-90s games were using basically the same coinage settings and joystick inputs). 
* While at it, verified all 0x00 coinage effects in drivers which now use konamipt.h (fixing a few mistakes: hexion, mikie, crimfgtj...). 
* Added finalizb service coin. Removed roadf coin4 & asterix coin3 (neither used by the games nor present in service mode). 
* Fixed gberetb coin inputs (they were switched). 
* Added port_condition to hcrash so that brake appears only when present in the chosen cabinet. 
* Cleaned up mystwarr.c & moo.c input handlers.
2009-04-01 13:42:58 +00:00
Aaron Giles
61f3b183db trackfld cleanups:
- derived clocks where possible
 - complete memory maps from the schematics
 - hooked up proper sound command latching
 - reimplemented 6802-based ADPCM samples for the bootlegs
 - merged memory maps
 - extended NVRAM to the full RAM range (according to schematics)
 - created common include file and modified drivers to use it instead of explicit externs
2009-03-30 07:38:00 +00:00
davidhay
dc169055da killed off the no-longer-used photoy2k simulation.
not sure if it would have been a useful reference for photoyk2 2 when that gets dumped (Guru has one..) but it's unused now, and liable to just rot.
2009-03-28 16:03:09 +00:00
Yasuhiro Ogawa
5dcec26757 missing from last commit 2009-03-27 23:24:20 +00:00
mariuszw1
8acbfec6a4 WIP driver for Cubo CD32 [Mariusz Wojcieszek].
Done:
- AGA palette
- AGA bitplane data fetching
- support for up to 8 standard bitplanes
- HAM8 mode



To do (for devs):
- inputs (buttons/coins are connected as CD32 pad, current implementation (copied from WinUAE) doesn't work, help is welcome)
- sprites (current implementation is incomplete - see CD32 logo)
- incorrect hstart/hstop values in CD32 logo, lsrquiz & lsrquiz2
2009-03-22 22:04:10 +00:00
Angelo Salese
c67011a342 New games marked as GAME_NOT_WORKING
------------------------------------
Street Games II [Guru, Angelo Salese]

==========================================================

Basic driver, will add the other romsets soonish.
2009-03-18 21:03:27 +00:00
Angelo Salese
f706da3eb7 New games marked as GAME_NOT_WORKING
------------------------------------
California Chase [Angelo Salese]

==========================================================

Basic skelly, will improve it soonish.
2009-03-17 19:35:43 +00:00
davidhay
1bacb8e642 added button lamp display to some sfbonus.c sets 2009-03-15 22:23:58 +00:00
davidhay
9848fe625d added tokyocop set (not working, no PC bios, no emulation of a 'recent' PC system) 2009-03-15 15:00:44 +00:00
Mirko Buffoni
6c522222c7 New games marked as GAME_NOT_WORKING
------------------------------------
Champion Super 3 [Mirko Buffoni]
Champion Super 2 [Mirko Buffoni]
2009-03-12 12:48:54 +00:00
Aaron Giles
d98a6ba381 Taito G-NET support
New games added:
Chaos Heat [Olivier Galibert]
Super Puzzle Bobble [Olivier Galibert]
2009-03-12 08:22:50 +00:00
Angelo Salese
053ca07fdd Merged Casino Winner and Royal Casino drivers [Angelo Salese]
* Fixes Royal Casino colors;
* Added flip screen support to the driver;
* Changed Casino Winner to be a clone of Royal Casino;
* Cleaned-up the driver;
2009-03-09 21:40:32 +00:00
Pierpaolo Prazzoli
930081c98c New WORKING game:
Puzzle Time (Prototype) [Angelo Salese, Pierpaolo Prazzoli, Yoshi]
2009-03-06 15:09:50 +00:00
Aaron Giles
8dd5d2b953 Renamed 6821new.* -> 6821pia.*
Renamed pia_* functions to pia6821_*

Fixed a couple of compiler errors.
2009-03-03 06:58:07 +00:00
Aaron Giles
9fbb1e6d7b Delete old PIA implementation. 2009-03-03 06:34:32 +00:00
Aaron Giles
6f59a149a9 From: Mr. Do. Note I just wired up the layouts he provided, I left the PORT_TOGGLE alone.
OK, here we go so far.  Layouts for all the games that have a simple one-input shifter.  Except 
Turbo, because I'll need to update the whole file, which will take a little more work.
 
And below is the rest of the games that have shifters, but use a separate input for each gear, 
so something different will need to be done.
 
There are also six games that use a simple shifter, but the button isn't set to toggle.  So to 
play the game, you hold the button for low gear, then let go for high gear.  Not sure if you 
wanted to change these or not, so I just included the layout file for now.

Games to update for PORT_TOGGLE
buggychl - src/mame/drivers/buggychl.c
chasehq - src/mame/drivers/taito_z.c
contcirc - src/mame/drivers/taito_z.c
sci - src/mame/drivers/taito_z.c
roundup5 - src/mame/drivers/tatsumi.c
superchs - src/mame/drivers/superchs.c
2009-02-26 10:44:59 +00:00
Derrick Renaud
4e365930b2 M79-Ambush - Added Discrete sounds, fixed DIPs and added Self Test Lamp Output. 2009-02-26 04:45:02 +00:00
davidhay
ca96cfadad Agemame Integration [James Wallace]
(I haven't verified this works, just checking it in for now)
2009-02-25 22:46:15 +00:00
Angelo Salese
bab0d8e76b New games marked as GAME_NOT_WORKING
------------------------------------
Kung-Fu Roushi [Angelo Salese, Roberto Fresca]
2009-02-23 01:09:47 +00:00
Tomasz Slanina
efb90c1023 Heavy unit - very preliminary driver
New games marked as GAME_NOT_WORKING
------------------------------------
Heavy Unit (3 sets)  [Tomasz Slanina, Corrado Tomaselli]
2009-02-23 00:59:27 +00:00
Angelo Salese
af11f60eda New games marked as GAME_NOT_WORKING
------------------------------------
King Derby? [Stefan Lindberg, Andrew Gardner, Angelo Salese, Roberto Fresca]

======================================

aka the original "Cow Race", made by Tazmi in 1981 -> http://mamedev.emulab.it/kale/fast/files/0000(183371730).png
HW is pretty much hellish...
2009-02-19 00:46:52 +00:00
davidhay
bd741103e9 Multifish for reconsideration as the HW is the same era as 'Fever Soccer' which was added in u4.
Some of these sets might not be available, they're based off operator manuals, so should be accurate.  The sets which are not available will be disabled once it's been firmly established exactly which ones they are I'm not 100% sure.

No credit wanted / anonymous submission
2009-02-18 23:10:21 +00:00
Aaron Giles
cd9086819a Undo premature PinMAME stuff. 2009-02-16 08:39:22 +00:00
Curt Coder
6fc10ff553 Cidelsa changes:
- Combined CDP1869 video and sound parts to one device
- Refactored CDP1852 to use devcb
2009-02-16 07:45:00 +00:00
Angelo Salese
9249b10aa9 Merged brasil.c and highvdeo.c drivers [Angelo Salese] 2009-02-14 23:28:18 +00:00
Aaron Giles
5cb6bf00e9 Ok, this is The Big One.
Please note: regression testing is in progress, but the first round 
of glaring regressions have already been taken care of. That said, 
there is likely to be a host of regressions as a result of this 
change.

Also note: There are still a few rough edges in the interfaces. I
will try to clean them up systematically once the basic system is
working.

All sound chips are now proper devices.

Merged the sound chip interface into the device interface,
removing any differences (such as the whole ALIASing concept).

Modified every sound chip in the following ways:
 * updated to match the device interface
 * reduced read/write handlers down to the minimal number
 * added the use of get_safe_token() for ensuring correctness
 * other minor cleanup

Removed the custom sound device. The additional work to just make
custom sound cases into full devices is minimal, so I just converted
them all over to be actual devices.

Vastly simplified the sound interfaces, removing the ghastly
sndti_* business and moving everyone over to using tags for
sound identity. sndintrf, like cpuintrf, is now just a header
file with no implementation.

Modified each and every driver that references a sound chip:
 * all memory maps explicitly reference the targeted device via
    AM_DEVREAD/AM_DEVWRITE/AM_DEVREADWRITE
 * 16-bit and 32-bit accesses to 8-bit chips no longer use
    trampoline functions but instead use the 8-bit AM_DEVREAD/WRITE
    macros
 * all references to sound chips are now done via tags
 * note that these changes are brute force, not optimal; in many
    cases drivers should grab pointers to devices in MACHINE_START
    and stash them away
2009-02-11 19:48:39 +00:00
mariuszw1
cea86cdab1 Driver for TomCat
New games added or promoted from NOT_WORKING status
---------------------------------------------------
TomCat (prototype) [Mariusz Wojcieszek]

There are still some small issues (complete list in driver), if somebody with more experience with Atari and/or vector hardware wants to take a look, feel free.
2009-02-10 22:19:15 +00:00
Angelo Salese
29064cb779 Wrote a driver for Fever Soccer, not working due of incomplete gfx decyption (uses RISE11 algorythm as SPI HW).
New games marked as GAME_NOT_WORKING
------------------------------------
Fever Soccer [Angelo Salese]
2009-02-08 16:44:44 +00:00
davidhay
845e4900b3 TMS57002 preliminary implementation [Olivier Galibert] 2009-02-06 22:50:40 +00:00
davidhay
21fd26ebd3 PinMAME ---
Merging back in the PinMAME drivers is proposed every now and again, and since we've just added other non-video based things I figured that now might be a good time to look at it.

This is likely to be a HUGE undertaking as PinMAME is based on old code, and is Macro-hell, I see it as a several step plan.

1) Convert all the PinMAME drivers to compile their ROM Loading with current versions of MAME
2) Clean up the ROM loading, removing the excessive Macros which really don't help readability at all IMO
3) Hook up the Machine Drivers again for each system, so that the CPU core runs again
4) Look at ways in which the artwork system can be used to simulate the display parts etc.  (there is a scary amount of code in PinMAME for handling this stuff)
5) See how feasible it is to allow MAME to communicate with another program, as it's unlikely we'll be able to simulate the full table physics in MAME.

I've updated the System11 rom loading to compile for now.  The old PinMAME code which hasn't been updated is there #if 0'd out for reference for when a stab is made at hooking back up the actual CPUs to run etc.

Part of me wonders if just rewriting it from scratch would be easier, but it would be a shame to throw away the information that was figured out in PinMAME.

This was done by request, so I'm not especially bothered if it doesn't get included, PinMAME is rather hideous ;-)

If anybody wants to help they're more than welcome.  The other Williams systems should be easy to hook up the rom loading for because they share most of the Macros that have already been updated to compile.
2009-02-06 22:09:40 +00:00
Angelo Salese
6f1af08290 Merged Strip Teaser and Il Pagliaccio driver, fixed the layer clearance for both and added a preliminary MCU simulation for the former. [Angelo Salese] 2009-02-03 18:08:47 +00:00
davidhay
ed3bf17889 getting the AGEMAME ball rolling.
Moved over some of the drivers (thanks to James Wallace / ageMAME)
2009-02-02 22:52:37 +00:00
davidhay
6bd40937d5 nuke fruit.c, obsolete 2009-02-02 00:14:23 +00:00
Angelo Salese
9e9a5ad24b Wrote a skeleton driver for Pachi Fever, not working due of encrypted/incomplete program rom.
New games marked as GAME_NOT_WORKING
------------------------------------
Pachi Fever
2009-02-01 23:47:44 +00:00
Phil Bennett
e4aeab1a20 New games added or promoted from NOT_WORKING status
---------------------------------------------------
Monopoly [Phil Bennett]
Monopoly Classic [Phil Bennett]
Monopoly Deluxe [Phil Bennett]


6850acia: Only adjust the rx/tx bit timers on a control write if the divide ratios have changed.
2009-01-31 20:00:30 +00:00
Mirko Buffoni
1ae43ea1d7 Fixed encryption in Cabaret and added sound emulation (Mirko Buffoni)
- Moved to a separate driver
- Not fully playable, press reset to exit from pitfalls

Added new game Super Poker (Mirko Buffoni)
2009-01-28 10:32:54 +00:00
Roberto Fresca
ed11fa3318 Improvements to norautp.c driver:
- Merged GTI Poker (gtipoker.c) with this driver.
 - Added new memory map and machine driver for gtipoker.
 - Hooked 2x PPI 8255 to gtipoker.
 - Hooked the video RAM access ports to gtipoker.
 - Changed norautpn description from Noraut Poker (No Payout),
   to Noraut Poker (bootleg), since the game has payout system.
 - Some clean-ups.
2009-01-28 06:08:22 +00:00
Angelo Salese
34a275e72f Wrote a driver for Noraut Poker,working without sound (discrete) [Roberto Fresca,Angelo Salese]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Noraut Poker [Roberto Fresca,Angelo Salese]
2009-01-27 15:15:46 +00:00
Aaron Giles
2fd8c5122b Added new module devcb, which can generically handle conversions between device
read/write functions and various other types of functions. Introduced new
structures and macros to make this possible. 

To take advantage of this, a device must change its interface to replace and 
read/write callbacks with the new devcb_read/write structures. During device 
start time, the device then uses this new devcb module to resolve the information 
in the devcb_read/write structures into a more efficient form. When the device 
needs to call one of the callbacks, it uses the inline devcb_call_read/write 
functions.

Once a device has defined its callbacks as devcb_read/write structures, users
of the device must use the DEVCB_* macros to specify the type and information
about the handler to use:

   DEVCB_NULL = no handler
   DEVCB_HANDLER = a standard device read/write handler
   DEVCB_MEMORY_HANDLER = a memory address space read/write handler
   DEVCB_DEVICE_HANDLER = a device read/write handler for a different device
   DEVCB_INPUT_PORT = an input port

Converted the 8255PPI device to use this new structure, and updated all users
to use the DEVCB macros, removing some unnecessary trampoline functions along
the way.
2009-01-26 16:25:48 +00:00
R. Belmont
adf3ac320d Adding first-cut shared Archimedes code and hooked it up to MK5. 2009-01-26 03:18:44 +00:00
davidhay
46fa64f1f8 added skeleton driver for aristocrat mk5
this is apparently somewhat based on the acorn archimedies home computer system
2009-01-25 18:24:51 +00:00
Angelo Salese
581006125c Wrote a driver for Big 10,working with sound [Angelo Salese,Roberto Fresca,Tomasz Slanina]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Big 10 [Angelo Salese,Roberto Fresca,Tomasz Slanina]
2009-01-22 17:23:19 +00:00
Aaron Giles
6c61906589 From: naibo zhang [naibo_zhang@hotmail.com]
Sent: Thursday, January 15, 2009 12:16 PM
To: submit@mamedev.org
Subject: stepstag.c
-added custom 3-screen layout;
-added recently dumpped game "Stepping 3 Surperior"(incomplete ROM/CHD set);

The game name of "stepstag" romset is actually "Stepping Stage Special", not the original "Stepping Stage".
2009-01-22 10:07:50 +00:00
Tomasz Slanina
f05b6469ce Super Othello driver
/current/s/sothello.zip

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Super Othello [Tomasz Slanina]
2009-01-21 20:02:13 +00:00
Mirko Buffoni
517c33a847 Major cleanup to IGS poker games (Mirko Buffoni)
- Renamed csk driver to igspoker.  This includes Champion Poker, Champion Skill,
  New Champion Skill
- Converted drivers to tilemap system and unified video section
- Unified memory maps and checked all input ports
- Removed obsolete palette handlers and made use of generic handlers
- Added layout for lamps handling
- Added hopper simulation
- Added New Champion Skill (different set, maybe original international release)
  and renamed current igs_ncs to igs_ncs2 (2000 version for italian market)
- Promoted igs_ncs2 to working state, but set GAME_IMPERFECT_GRAPHICS (missing
  initial notice screen)
- Moved Jackie to a separate driver (it's a slot machine game)
- Made some progress on Jackie which now boots (toggle mode to play, but work
  still needs to be done)
2009-01-20 16:59:52 +00:00
Phil Bennett
e03f020244 New games added or promoted from NOT_WORKING status
---------------------------------------------------
Himeshikibu (Japan) [Uki]
2009-01-20 16:50:25 +00:00
Angelo Salese
65efabec37 Seibu CRTC part 1: [Angelo Salese]
* Merged Sengoku Mahjong & Good e Jong video HWs
* Added correct scrolling functions for Sengoku Mahjong
* Removed some positioning kludges in both drivers

Fixed Sengoku Mahjong hopper error after first winning match [Angelo Salese]

Removed deprecat dependancy from Good e Jong,one irq wasn't needed at all (points to a reti) [Angelo Salese]
2009-01-17 14:07:56 +00:00
Aaron Giles
db8a1fc748 New games added or promoted from GAME_NOT_WORKING status
--------------------------------------------------------------------------------------------------

Trivia Hangup [Mariusz Wojcieszek]
Sure Shot [Mariusz Wojcieszek]

Mariusz.
2009-01-15 07:57:19 +00:00
Andrew Gardner
6ea9ca0589 Virtual Combat driver improvements. [Jason Eckhardt, Andrew Gardner]
* Graphics decoded, video improved, inputs mapped.

Intel i860 CPU core added. [Jason Eckhardt]


(The CPU core doesn't have accurate cycle counts for each opcode yet, but it'll have them soon.  I believe that is the main culprit behind the sync of the two i860s and the 68k being outta' whack.  You can still see the i860s do their thing and rasterize a voxel? groundplane and some simple polygon bad guys).
2009-01-15 04:40:57 +00:00
Aaron Giles
62bddb4fe6 Added digitalker support to scorpion driver. [Olivier Galibert] 2009-01-14 06:07:26 +00:00
Aaron Giles
9df0e956f7 Forgot a file. 2009-01-14 05:44:14 +00:00
Aaron Giles
0708ba2cd6 NON-WORKING GAMES
-----------------
3 Super 8 (Italy) [David Haywood]
New Champion Skill (v100n) [David Haywood]
Buster [David Haywood]
2009-01-14 05:43:57 +00:00
Curt Coder
de81d24aab COP400 cpu core refactoring:
- added state table for the debugger
- grouped all cpu types under a single makefile entry
- removed duplicate code
2009-01-12 13:18:32 +00:00
Aaron Giles
ac0abd1706 Major drawgfx cleanup, global removal, and feature enhancements:
- Added built-in dirty tile tracking to the gfx_element. This removes
    the need for all drivers that had dynamically populated graphics
    to do their own dirty tracking. Tiles are marked dirty via the
    new function gfx_element_mark_dirty(). Any driver that needs access
    to the decoded data must call gfx_element_get_data() in order to
    ensure that the referenced tile is clean before proceeding.
    
 - In order to support dirty tracking, the gfx_element was enhanced to
    keep track of the original source pointer, so that it can go back
    and regenerate tiles on demand. For systems that set NULL for the
    region in the gfxdecode, they must use gfx_element_set_source()
    to specify a pointer to the raw data before drawing anything.
 
 - Changed allocgfx() to gfx_element_alloc(), and added parameters to
    specify the source data pointer, base color index, and total colors.
    Many drivers had to whack these values in after the fact, so this
    allowed for some minor additional cleanup.
 
 - Added a dirtyseq member to the gfx_element struct. This is 
    incremented on each tile dirty, and can be used to sniff if 
    something has changed.
 
 - Added logic in the tilemap engine to track which gfx_elements are
    used for a given tilemap, and automatically detect changes to the
    tiles so that drivers no longer have to explicitly invalidate the
    tilemap when tiles change. In the future, this may grow smarter to
    only invalidate the affected tiles, but for now it invalidates the
    entire tilemap.
 
 - Updated a number of drivers to remove their own dirty handling and
    leverage the new internal dirty marking.

 - Because the source data must always be present, updated the atarigen
    zwackery and mystwarr graphics handing code to support this.

 - Thanks to the dirty tracking, this actually allows all gfx decoding
    to happen on the fly instead of all at once up front. Since there 
    was some concern that this would cause undesirable behavior due to 
    decoding lots of tiles on the fly, it is controlled with a compile-
    time constant in mame.h (PREDECODE_GFX). Set this to 1 to get the
    old behavior back.
    
 - Moved decodechar() and decodegfx() to deprecat.h. All drivers in MAME
    have been updated to simply mark tiles dirty and let the rendering
    system decode them as needed, so these functions may go away in the
    future.

 - Rewrote entirely the rendering code in drawgfx. This code previously
    used extensive recursive #includes and tricks to build, and was
    very difficult to understand. The new code is based off of a set of 
    macros defined in drawgfxm.h. These new macros separate the core 
    rendering logic from the per-pixel operation, allowing the operation 
    to be easily "plugged" into any of the renderers. These macros are
    also available to any driver that wants custom rendering behavior
    that is similar to existing core behavior, without needing to
    populate the core with esoteric one-off rendering behaviors.
 
 - Added a set of new functions for [p]drawgfx[zoom], one for each
    transparency type. The old [p]drawgfx[zoom] functions are still
    present, but now switch off the transparency type and call through
    to one of these new transparency-specific functions. The old
    functions are also now reduced to only supporting TRANSPARENCY_NONE,
    TRANSPARENCY_PEN, and TRANSPARENCY_PENS. All other rendering types
    must use the new functions.
 
 - All new rendering functions have extensive asserts to catch improper
    clipping rectangles and other common errors.
    
 - All new rendering functions automatically downgrade to optimized
    versions where appropriate. For example, calling drawgfx_transpen
    with an out-of-range pen automatically falls back to drawgfx_opaque.
    And drawgfxzoom_* with xscale=yscale=1.0 automatically falls back
    to drawgfx_*. And many other examples. In general, this relieves 
    drivers from needing to make these sorts of decisions.
 
 - All new rendering functions have a consistent parameter order that
    is a bit different from the existing functions. The cliprect
    parameter is now specified immediately after the destination bitmap,
    to match the convention used throughout the rest of the system.
    The core parameters are followed by the scale parameters (for the
    zoom functions), and then followed by the priority parameters (for
    the pdrawgfx* functions), finally followed by any PIXEL_OP*-specific
    parameters (such as transparent pen, alpha, drawing tables, etc.)
  
 - Removed drawgfx_alpha_cache, alpha_set_level(), and the inline 
    functions alpha_blend16() and alpha_blend32(). To render graphics 
    with alpha, use the new [p]drawgfx[zoom]_alpha functions, which 
    take an explicit alpha value. To render tilemaps with alpha, the 
    TILEMAP_DRAW_ALPHA option now takes an explicit alpha parameter. 
    And to do you own alpha blending, use the alpha_blend_r16() and
    alpha_blend_r32() functions, which take an explicit alpha.
  
 - Updated a number of drivers as a result of removing the implicit
    alpha in the drawgfx_alpha_cache. 

 - Removed drawgfx_pen_table and TRANSPARENCY_PEN_TABLE. To achieve 
    the same effect, build your own table and pass it to 
    [p]drawgfx[zoom]_transtable, along with a pointer to the 
    machine->shadow_table to use for shadows. Eventually 
    machine->shadow_table is likely to go away, and drivers will need 
    to fetch the shadow table from the palette directly.
    
 - Updated a number of drivers to remove use of drawgfx_pen_table.
 
 - Removed TRANSPARENCY_ALPHARANGE; it was only used by the psikyosh
    driver, so it is now moved locally into that driver and built
    using the macros in drawgfxm.h.
 
 - Removed TRANSPARENCY_PEN_RAW; to achieve the same effect, call the
    new [p]drawgfx[zoom]_transpen_raw() functions. Updated drivers to
    make this change.
 
 - Removed the unused mdrawgfx* functions entirely.
 
 - Added new function gfx_element_set_source_clip() to specify a
    source clipping rectangle for any element. This replaces the nasty 
    hacks that were being used in bnstars, ms32, namcos86, and namcos1
    to achieve similar behaviors.
    
 - Simplified the copyrozbitmap() functions to match the copybitmap()
    functions in having separate opaque and transparent versions. Also
    removed the 'priority' parameter which was only used by one driver,
    and moved that logic into a custom renderer built using macros in
    drawgfxm.h. Updated copyrozbitmap* to use the destbitmap, cliprect
    parameter ordering convention as well.
 
 - Simplified the draw_scanline*() functions to always render opaque.
    Only one driver was doing otherwise, and it now does its work
    internally (draw_scanline is dead-simple ever since we moved 
    rotation to the OSD code; I almost just removed it entirely).
 
Other changes:

 - Added a cliprect to the bitmap_t type, which describes the full 
    bitmap.
    
 - Removed tilemap_set_pen_data_offset; unfortunately, this adds a
    random tile offset behind the scenes and goes against the dirty
    tile detection and invalidation. Updated the mainsnk, snk, and 
    snk68 drivers to use old fashioned tile banking. (Sorry Nicola.)
 
 - Changed zac2650 gfxdecode to use scale factors.

 - Added function video_assert_out_of_range_pixels() to help find
    the source of invalid pixels (generally out-of-range palette
    entries due to invalid data or sloppy calculations). Place this
    after each step in your rendering in a debug build to discover
    which code is generating improper pixels.
2009-01-12 11:05:15 +00:00
Mirko Buffoni
fa224bfe85 Added V30-based High Video gambling games [Mirko Buffoni]
* Added VCF board based games (Tour4000, Casino Fever 4.0, Casino Fever 5.0)
* Added NCF board based games (Tour4010, Casino Fever 5.1, Casino Fever 6.1)
* Added TCF board based games (Casino Fever 1k, Girotutto)
2009-01-12 09:42:36 +00:00
Mirko Buffoni
25abe62db4 Added OKIM6376 emulation ADPCM Speech Synthesizer [Mirko Buffoni]
* At the moment only the ADPCM part is implemented, while it's missing the BEEP
  generator and the 2nd channel handling, used mainly for echoing or continuous
  speech.

Added OKIM6376 sound emulation to High Video games [Mirko Buffoni]
* Removed GAME_NO_SOUND from newmcard, brasil and fashion
* Sound frequency may be incorrect
* Although the manual says OKIM6376 is straight ADPCM, generated sound is
  distorted (over-clamped?)
2009-01-12 09:25:00 +00:00
Nathan Woods
4df40b369c 1. Introduced a parallel 6821 PIA implementation, as a MAME device (6821new.c)
2.  Ported the Williams drivers over to use this new PIA implementation
2009-01-11 01:16:21 +00:00
Angelo Salese
41b8808bcb Renamed filetto.c to pcxt.c and made several improvements to the driver [Angelo Salese]
* Merged tetriunk.c and filetto.c,and renamed tetriunk set to tetriskr;
* Fixed inputs & gameplay quirks in tetriskr,so it's now playable;
* Added preliminary external graphics emulation hook-up for the backgrounds in tetriskr;
* Rearranged & cleaned up the palette initialization,now 0x000-0x1ff offsets are for the char modes and 0x200-0x2ff are for the bitmap modes;
* Fixed color attributes bits;
* Cleaned up and fixed colors in CGA bitmap mode for Filetto;

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Tetris  (bootleg of Mirrorsoft PC-XT Tetris version) [Angelo Salese]
2009-01-09 00:38:28 +00:00
Angelo Salese
ebfc1010ea Wrote a driver for 86 Lions,not working due of missing inputs...
New games marked as GAME_NOT_WORKING
------------------------------------
86 Lions [Chris Hardy,Angelo Salese,Roberto Fresca]
2009-01-06 18:14:27 +00:00
Roberto Fresca
6d8e81d505 Another non-working driver from Haze, supporting Skill Fruit Bonus.
New games marked as GAME_NOT_WORKING
------------------------------------
Skill Fruit Bonus [David Haywood]
2009-01-06 01:55:36 +00:00
Aaron Giles
41879d052a Removed bogus port 4-7 definitions from MCS-48. Added i8243
implementation. Connected 8243 properly to monsterb and 
system 16a sound. Changed draw80pkr to connect the PROG
line like videopkr.
2009-01-04 03:35:12 +00:00
Roberto Fresca
bc684e993c New driver for Slot Carnival. (1985, Wing Co. Ltd) [David Haywood, Roberto Fresca]
The driver is quite complete, but need some work to get proper colors and reels support.

New games marked as GAME_NOT_WORKING
------------------------------------
Slot Carnival [David Haywood, Roberto Fresca]
2009-01-03 17:26:35 +00:00
Angelo Salese
3fbfe210ab Wrote a preliminary driver for the original Magic Card [Roberto Fresca,David Haywood,Angelo Salese]
New games marked as GAME_NOT_WORKING
------------------------------------
Magic Card [Roberto Fresca,David Haywood,Angelo Salese]

=============

This thing is pretty Amiga-ish...How much similar is this one to the Amiga HW?
2009-01-03 16:55:01 +00:00
Phil Bennett
67b625e3e9 New games marked as GAME_NOT_WORKING
------------------------------------
Operation Tiger [Chris Hardy, Phil Bennett]
2009-01-03 16:42:51 +00:00
Luca Elia
a5d9d44c00 Improved mgcs. It now runs through attract mode.
[Luca Elia]

It still locks up as soon as one coins up though,
due to the unemulated IGS029 protection.
2009-01-03 14:16:25 +00:00
Roberto Fresca
0ff277afe4 Lots of improvements to the different Cherry Master hardwares. [Roberto Fresca, David Haywood]
Added new sets, created new machine drivers, fixed colors, added PPI devices, created new 8255 and ay8910 interfaces, worked out inputs and DIP switches from the scratch, fixed memory maps, merged the cherrym2.c driver with goldstar.c and much more...


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Cherry Master (Corsica, ver.8.01) [Roberto Fresca]
Cherry Master (ver.4) [Roberto Fresca, David Haywood]
Cherry Master I (ver.1.01) [Roberto Fresca, David Haywood]
2009-01-03 04:09:31 +00:00
Aaron Giles
e71d65e896 Added simple built-in layout for polepos showing the position of the shifter
(this works thanks to recent changes from Nathan; in fact, any input can
affect the state of an artwork element). Removed debug build hack to popmessage
the shifter state.
2009-01-03 00:47:44 +00:00
Roberto Fresca
0a85553367 From David Haywood...
Skeleton driver for Lucky Girl (1991, Wing Co.Ltd.)
2008-12-31 18:48:06 +00:00
Phil Bennett
d99d6e84b9 New games marked as GAME_NOT_WORKING
------------------------------------
Landing High Japan [Ordyne, Phil Bennett]
2008-12-31 00:13:22 +00:00
Aaron Giles
528d5b6528 Merged i8x41 (UPI-41) core into MCS-48 core:
* all code now lives in mcs48.c
 * rewrote disassembler as unified MCS-48/UPI-41 disassembler
 * changed UPI-41 interfaces to match MCS-48
 * added new master read/write interfaces for external access
 * unified interface to 8243 expander chip
 * converted tnzs and decocass to the new interfaces

DECO Cassette fixes/cleanups:
 * converted tape handling to a device
 * changed tape handling to use a timer callback
 * updated to work with new UPI-41 core
 * corrected clock speeds for all chips (esp. the 8041)
 * fixed very wrong CRC implementation (how did it ever work?)
 * corrected sound IRQ rate
 * corrected video timing

Burger Time hardware fixes:
 * corrected sound IRQ rate and handling
 * removed lnc audio reset hack
 * full audio memory maps based on schematics
 * corrected video timing
2008-12-30 00:24:06 +00:00
Angelo Salese
5af4b958a2 (Wrote a placeholder driver for the "fruit" set from the unemulated/coinmaster/ folder,anything might be wrong about it...) [David Haywood,Angelo Salese] 2008-12-29 19:49:17 +00:00
Angelo Salese
f974e7504d Wrote a driver for Cherry Chance,not working due of coin/hopper issues [David Haywood,Angelo Salese]
New games marked as GAME_NOT_WORKING
------------------------------------
Cherry Chance [David Haywood,Angelo Salese]
2008-12-29 00:21:53 +00:00
Angelo Salese
fe6b72fb0f Wrote a preliminary Merit Poker driver [David Haywood,Angelo Salese]
New games marked as GAME_NOT_WORKING
------------------------------------
Merit Poker [David Haywood,Angelo Salese]
2008-12-28 18:44:19 +00:00
Angelo Salese
d5e2af77f1 Wrote a preliminary Bingo Circus driver,not working due to missing "terminal" roms [David Haywood,Angelo Salese]
New games marked as GAME_NOT_WORKING
------------------------------------
Bingo Circus [David Haywood,Angelo Salese]
2008-12-28 16:05:09 +00:00
Angelo Salese
99c20bffe9 Merged Mahjong Shiyou to the Royal Mahjong driver,graphics are improved because of that [Angelo Salese] 2008-12-27 00:43:50 +00:00
Aaron Giles
4ed7452ceb From: Atari Ace [mailto:atari_ace@verizon.net]
Sent: Monday, December 22, 2008 8:04 AM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Update sound core header files

Hi mamedev,

This patch updates all the sound core header files to declare their
SND_GET_INFO functions, which will be needed once the sound cores
become proper devices.  It also makes a handful of other header
declaration fixes in emu/sound, and makes one SND_RESET routine
static.  Note: votrax.h is a new include file altogether.

~aa
2008-12-26 06:40:58 +00:00
Andrew Gardner
e7ec9c0df6 Adds extremely preliminary i860 disassembler and hooks it up to the vcombat driver. [Jason Eckhardt, Andrew Gardner]
(We're not even decoding args yet, but it's on its way).
2008-12-25 03:03:30 +00:00
Angelo Salese
3914152d3e Preliminary Night Gal driver,not yet working for comms issues [David Haywood,Angelo Salese]
New games marked as GAME_NOT_WORKING
------------------------------------
Night Bunny / Royal Night [David Haywood,Angelo Salese]
Night Gal [David Haywood,Angelo Salese]
Night Gal Summer [David Haywood,Angelo Salese]
Sexy Gal / Sweet Gal [David Haywood,Angelo Salese]
2008-12-23 21:09:34 +00:00
Wilbert Pol
da128743fb Changed the F3853 implementation into a device. 2008-12-23 20:14:57 +00:00
Aaron Giles
a70fdf00a1 CPU interface organization shuffle. The file cpuintrf.h now merely
describes the interface, but does not contain any implementation.
All remaining bits of implementation have been migrated either to
cpuexec.c or to debugcpu.c. Specifically, cpu_dasm() is now
debug_cpu_disassemble(), and cpu_set_dasm_override() is now
debug_cpu_set_dasm_override(). Also moved memory_address_physical()
to debug_cpu_translate(), since it was only ever used for
debugging.

Changed all CPU and sound cores to use memory_find_address_space()
instead of cpu_get_address_space(). The former is reliable even
during early initialization when the CPU cores generally need it.

Removed the dummy CPU core and cpuintrf.c.

Changed the core execution loop to directly call the execute
function instead of using the inline helper (which has been removed).
2008-12-22 17:35:27 +00:00
Phil Bennett
9f76d751c0 New games added or promoted from NOT_WORKING status
---------------------------------------------------
Turbo Sub (prototype rev. TSCA) [Phil Bennett]
Turbo Sub (prototype rev. TSC6) [Phil Bennett]
2008-12-22 13:19:01 +00:00
Aaron Giles
6be42cb850 Missed a file. 2008-12-22 04:02:57 +00:00
Aaron Giles
b86e015e32 Preliminary driver for Taito's "Parent Jack" [David Haywood]
New games marked as GAME_NOT_WORKING
------------------------------------
Parent Jack [David Haywood]
2008-12-22 03:34:01 +00:00
Angelo Salese
9f29926c2f Wrote a driver for Casino Winner,working with sound [Chris Hardy,David Haywood,Angelo Salese]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Casino Winner [Chris Hardy,Angelo Salese]
2008-12-22 00:17:44 +00:00
Roberto Fresca
41ef03afbb Merged goldstar and lucky8 drivers. [David Haywood] 2008-12-21 07:26:49 +00:00
Angelo Salese
b501c8dd73 (Oh snap,forgot to add the driver)... 2008-12-20 16:44:48 +00:00
Aaron Giles
bc33516388 Oops, missed this file. 2008-12-20 00:06:49 +00:00
Aaron Giles
f36fc8641e This update is the below two patches, plus the remaining changes
necessary to remove 12 of the final 14 references to the global
Machine. The remaining 2 are in fatalerror() and logerror(), which
are both local to mame.c, so Machine is now fully static.

--

From: Atari Ace [mailto:atari_ace@verizon.net] 
Sent: Thursday, December 18, 2008 5:47 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Make Machine static followup

Hi mamedev,

This incremental patch to my last patch undoes the change that caches
the ppu2c0x videorom.  I changed the code back to how it behaved
originally, using an existing machine on the chip struct to eliminate
the one troublesome Machine reference.

~aa

--

From: Atari Ace [mailto:atari_ace@verizon.net] 
Sent: Thursday, December 18, 2008 2:54 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] Make Machine static!

Hi mamedev,

This large patch completes the removal of the use of Machine
throughout MAME.  It does so primarily by adding machine, device or
space to various apis and modifying the callers, but for some
remaining cases it adds a new api, mame_get_running_machine(), which
will be called instead.  There are only 14 uses of this api currently,
and that number should drop over time.

There are a few changes of note:
1.  6821pia.c.  I attached machine to the 'device' structure.  I'm
working on converting this to a proper device, but that change isn't
ready.
2.  fddebug.c.  I added a proper header so that the apis won't get
accidentally converted to static again.
3.  scsi.c.  I added a machine to SCSIInstance.
4.  system16.c.  I modified sys16_patch_code to take an array of
patches.
4.  custom.h.  I added the owning sound device to the reset/stop
routines as well as the token.  Note that passing only the device
would require exposing the internals of custom_sound, as the token
passed is not the device token, but the token returned from the
CUSTOM_START routine.  Better ideas here are welcome.
4.  ppc2c0x.c.  To avoid changing more interfaces, the init routine
saves the videorom location rather than looks it up each time.

I tried to choose what I felt was the natural parameter for an api,
rather than always pass machine, but in some cases I used machine to
limit the number of additional changes.  Some additional cleanup here
is probably warranted, I'll look into that later once I'm recovered
from this two-week project.

~aa
2008-12-19 19:40:22 +00:00
Aaron Giles
42c9aeff39 Cleaned up device and sound interfaces to match the CPU
interfaces when handling strings. Namely, the generic
get_info functions allocate a temporary string and the
device in question copies its string to the target,
instead of assigning a const char *. Updated all device
and sound cores to operate this way.

Added the concept of a cpu_state_table, which is
supplied by the CPU cores and which describes all the
register state accessible to the debugger and other
subsystems. The format of the table is such that most
data can be simply fetched from memory without the
further involvement of the CPU core, including the 
display of common formats. Extensibility points are
available for custom display and for importing/exporting
the data to intermediate variables for more complicated
scenarios. Updated the ADSP21xx, TMS340x0, and i86 cores
to use this.

Removed the old debugger register list, which was never
used. Replaced it with using ordering from the
cpu_state_table.

Renamed REG_PC -> REG_GENPC, REG_SP -> REG_GENSP, and
REG_PREVIOUSPC -> REG_GENPCBASE. Updated a few spots
that were using these directly. Moved these definitions
into the end of the register area rather than leaving
them outside which put them in a weird range.
2008-12-19 06:46:17 +00:00
Aaron Giles
aa7e2482e2 CPU header cleanups....
i86/i286/i386/nec/v30mz:
 * renamed i86.h -> i86priv.h
 * renamed i86intrf.h -> i86.h
 * consolidated i88intrf.h, i186intf.h, i188intf.h, etc into i86.h

m6805:
 * moved memory read/write macros out of public header

m37710:
 * moved memory read/write macros out of public header

spc700:
 * moved many structs/functions/macros out of public header

tms32010:
 * moved memory read/write macros out of public header

sm8500:
 * pointer-ified the core (apparently never had get/set context!)

g65816:
 * moved memory read/write macros out of public header

pic16c5x:
 * moved memory read/write macros out of public header

t11:
 * moved memory read/write macros out of public header
2008-12-18 09:38:12 +00:00
Aaron Giles
a1bd0a2a92 Removed old cherrym driver. 2008-12-15 05:52:19 +00:00
Aaron Giles
f65131343d Added proper artwork for the led in Gridiron Fight [David Haywood]
-----Messaggio originale-----
Da: David Haywood [mailto:neohaze@nildram.co.uk] 
Inviato: domenica 14 dicembre 2008 23.56
A: Angelo Salese
Oggetto: Gridiron update

Changed it from using a hack using the gfx rom to display the 'play 
number' to using the LEDs in the artwork system.
2008-12-15 01:12:26 +00:00
Aaron Giles
6b4efba253 Queen [David Haywood]
This adds the "Queen" game into a driver (a.k.a. the 2002 PC-era game)
(roms are already on the ftp,I believe)

-----Messaggio originale-----
Da: David Haywood [mailto:neohaze@nildram.co.uk] 
Inviato: venerdi 12 dicembre 2008 0.05
A: Angelo Salese
Oggetto: Queen Skeleton..

Didn't think the queen was dead yet, but here is her skeleton ...
2008-12-15 00:58:31 +00:00
Angelo Salese
b12547e1e1 Written a driver for Jangou,working with sound. [David Haywood,Angelo Salese,Phil Bennett]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Jangou [David Haywood,Angelo Salese,Phil Bennett]
2008-12-13 16:30:56 +00:00
Roberto Fresca
c53a11a57d New driver for Four Roses. The game is encrypted and also has a MCU.
Added hardware and tech notes.


New games marked as GAME_NOT_WORKING
------------------------------------
Four Roses (encrypted, 2 sets)[Roberto Fresca]
2008-12-13 01:08:00 +00:00
Roberto Fresca
cd7f972c5e Added working button-lamps + layout to Bra$il, Fashion, and New Magic Card. 2008-12-12 01:27:58 +00:00
Angelo Salese
976643a24b (Added the Forte 2 driver into the main SVN tree) 2008-12-11 21:09:49 +00:00
Roberto Zandona
6b20f6a155 Cherry Bonus 2001: added a skeleton driver and some decrypted opcodes
New games marked as GAME_NOT_WORKING
------------------------------------
Cherry Bonus 2001 [David Haywood, robiza]
2008-12-11 19:54:59 +00:00
Angelo Salese
0b35ca1c1d Wrote a driver for Super Pool 99 (versions 0.36 & 0.31),working with small problems. [David Haywood,Angelo Salese]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Super Pool 99 [David Haywood,Angelo Salese]
2008-12-10 16:59:04 +00:00
Roberto Fresca
5a15a2182a Improvements to Millennium 4000 driver.
- Completed normal Inputs/Outputs.
- Added button-lamps calculation.
- Created button-lamps layout.
- Documented the PCB RAM.
- Fixed NVRAM size based on PCB picture (2x CY62256L-70PC near the battery).
- Added notes about the method to make appear the real poker cards.
- Fixed the OKI 6295 frequency (1000 kHz resonator near). Now the game has more decent sounds.
- Corrected CPU clock to 12 MHz. (main Xtal).
2008-12-10 15:32:08 +00:00
Aaron Giles
89e14c632f Pointer-ified the i86/i286 cores.
Removed unused v20/v30 implementation.
2008-12-09 15:39:20 +00:00
Aaron Giles
35b6d98757 Oops forgot a file. 2008-12-09 06:36:41 +00:00
Angelo Salese
8c09fe8b03 Merged The Couples driver with Merit,fixing most of the graphics/color bugs in it. 2008-12-06 16:45:12 +00:00
Angelo Salese
0b23053a74 Wrote drivers for Millenium Nuovo 4000 (working with sound) and Il Pagliaccio (not working) [David Haywood,Angelo Salese]
New games added or promoted from NOT_WORKING status
---------------------------------------------------
Millenium Nuovo 4000 [David Haywood,Angelo Salese]

New games marked as GAME_NOT_WORKING
------------------------------------
Il Pagliaccio [David Haywood,Angelo Salese]
2008-12-06 15:12:39 +00:00
Angelo Salese
4375cea253 Bra$il skeleton driver from David Haywood.
(Likely that I'll check this thing to see if I can do anything).
2008-12-01 00:05:51 +00:00
Roberto Fresca
b78d3282b2 Pmpoker.c major rewrite (part 2):
- Changed the driver name to goldnpkr.c (Golden Poker is the most representative hardware).
 - Splitted the PIA interfases to cover witchcrd/pottenpkr connections.
 - Fixed the witchcrd/pottnpkr/sloco93 double up mode.
 - Replaced the pottenpkr layout with goldnpkr one in all Jack Potten's Poker sets.
 - Updated game notes for Witch Card and Super Loco 93 sets.
 - Fixed al inputs & lamps to allow double up mode to the above games.
 - Added Witch Card (Video Klein) but still not working.
 - Added several Buena Suerte! sets.
 - Added new games: Maverik, Brasil 89 & Poker'91.
 - Reworked the sets parent-clone relationship (still in progress).


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Maverik [Roberto Fresca]
Brasil 89 [Roberto Fresca]
Poker'91 [Roberto Fresca]


New clones added
----------------
Buena Suerte (21 new sets) [Roberto Fresca]
Royalea [Roberto Fresca]


New games marked as GAME_NOT_WORKING
------------------------------------
Witch Card (Video Klein) [Roberto Fresca, Guru]
2008-11-29 22:51:47 +00:00
davidhay
8f50591c40 new not working - Galaxian 3 [Andy Welburn]
I won't be writing this driver, it fits somewhere between System21 and System22, with multiple PCBs etc.  I just created this to document what we know so far.  Chances are Phil or somebody with good Namco knowledge will have to emulate it.
2008-11-26 23:54:14 +00:00
Angelo Salese
f51cd063d4 Added preliminary Destiny Horoscope driver (not working due of missing Artworks & missing printer emulation)
New games marked as GAME_NOT_WORKING
------------------------------------
Destiny Horoscope [Angelo Salese]
2008-11-25 17:32:26 +00:00
Aaron Giles
cb10461ed1 From: Barry Rodewald [mailto:bsr@xnet.co.nz]
Sent: Sunday, November 23, 2008 12:17 AM
To: submit@mamedev.org
Subject: Oki MSM6258 ADPCM core

Hi,

I have attached the Oki MSM6258 ADPCM sound core, which is intended for 
use with the MESS Sharp X68000 driver.  This code was written by Phil 
Bennett, so he ought to be the one getting the credit for it.  I have 
mostly worked on the MESS X68000 driver and HD63450 (DMA controller) 
code to get the ADPCM working for most X68000 software.  I am unaware as 
to if Phil has already submitted this or not yet.

I've tested compiling and running MAME itself (including a debug build) 
with the MSM6258 core in it, and experienced no issues.  Although there 
is nothing in MAME to test it specifically with, it doesn't cause any 
problems with MAME use in general.

The current MESS X68000 driver code with the MSM6258 enabled is 
available for those that want to test that out - 
http://mahlemiut.marpirc.net/msm6258-211108.zip

Thanks,
Barry Rodewald
mailto:bsr@xnet.co.nz
2008-11-24 03:22:29 +00:00
Aaron Giles
13333c1469 From: Steve Golson
This more accurately describes the aux board behavior for Ms. Pac-Man. There
is a thorough description of how the board works. mspacman is a more faithful
emulation. In particular you can now enter service mode (F2) at anytime during
game play.
2008-11-24 03:05:08 +00:00
smf-
24022b72ca pointerified the psx cpu core & switched it to the new memory functions. Changed some MIPS_* to PSXCPU_* 2008-11-19 19:32:44 +00:00
R. Belmont
6c1655976f Big H8 update
H8:
- Added support for 8-bit H8 family MCUs, starting with the H8/3344
- Pointer-ified all H8 cores
- Some cleanup and renames toward additional future work

System 23:
- Added extremely preliminary support for I/O boards with the H8/3344
- Added new game: Motocross Go! (MG3 Ver. A) [credit Guru]
2008-11-19 03:29:10 +00:00
Curt Coder
a8475e4c1e Pointerized the COP400 CPU cores. 2008-11-18 17:15:40 +00:00
Aaron Giles
5a9c7e2d2d Significantly pared down the 68k core. Merged outer MAME shell
into the core proper and removed unused macros. Changed all
external interfaces to pass the CPU device. Enabled 64-bit
operations by default. Re-derived the interface functions to
cascade and share code more aggressively.

These changes also seem to have cured the taito_f3 issues as
far as I can tell (at least pbobble3 seems right now).
2008-11-17 09:39:11 +00:00
davidhay
78f8527fa2 missing files from last checkin 2008-11-16 18:07:00 +00:00
Aaron Giles
63d10ee9bf Massive API cleanup/change. The primary goal is that all CPU-
related APIs now take a device pointer instead of an index.
All functions that take a CPU device are prefixed with cpu_*
All functions that are globally related to cpu execution
are prefixed with cpuexec_*. Below is a list of some of the 
mappings:

  cpu_boost_interleave     -> cpuexec_boost_interleave
  cpunum_suspend           -> cpu_suspend
  cpunum_resume            -> cpu_resume
  cpunum_is_suspended      -> cpu_is_suspended
  cpunum_get_clock         -> cpu_get_clock
  cpunum_set_clock         -> cpu_set_clock
  cpunum_get_clockscale    -> cpu_get_clockscale
  cpunum_set_clockscale    -> cpu_set_clockscale
  cpunum_get_localtime     -> cpu_get_local_time
  cpunum_gettotalcycles    -> cpu_get_total_cycles
  activecpu_eat_cycles     -> cpu_eat_cycles
  activecpu_adjust_icount  -> cpu_adjust_icount
  cpu_trigger              -> cpuexec_trigger
  cpu_triggertime          -> cpuexec_triggertime
  cpunum_set_input_line    -> cpu_set_input_line
  cpunum_set_irq_callback  -> cpu_set_irq_callback

In addition, a number of functions retain the same name but
now require a specific CPU parameter to be passed in:

  cpu_yield
  cpu_spin
  cpu_spinuntil_time
  cpu_spinuntil_int
  cpu_spinuntil_trigger
  cpu_triggerint

Merged cpuint.c into cpuexec.c. One side-effect of this
change is that driver reset callbacks are called AFTER the
CPUs and devices are reset. This means that if you make
changes to the CPU state and expect the reset vectors to
recognize the changes in your reset routine, you will need
to manually reset the CPU after making the change (since it
has already been reset).

Added a number of inline helper functions to cpuintrf.h for
managing addresses

Removed cpu_gettotalcpu(). This information is rarely needed
outside of the core and can be obtained by looking at the
machine->cpu[] array.

Changed CPU interrupt acknowledge callbacks to pass a CPU 
device instead of machine/cpunum pair.

Changed VBLANK and periodic timer callbacks to pass a CPU
device instead of machine/cpunum pair.

Renamed all information getters from cpu_* to cpu_get_* and
from cputype_* to cputype_get_*.
2008-11-13 06:59:57 +00:00
Nathan Woods
2f64840531 Sync with MESS 2008-11-11 03:58:52 +00:00
Couriersud
d6dedbdedf Converted i8x41 to use pointers for state access
Separated opcodes into i8x41ops.c
2008-11-09 20:38:33 +00:00
Aaron Giles
5fc6083545 From: Atari Ace [mailto:atari_ace@verizon.net]
Sent: Friday, November 07, 2008 9:47 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] More header files for mame

Hi mamedev,

Here's another set of about 20 new include files for MAME.  As before,
the only issues discovered by the migration were some dead prototypes.

~aa
2008-11-08 21:09:42 +00:00
Aaron Giles
6a979c82ff From: Atari Ace [mailto:atari_ace@verizon.net]
Sent: Wednesday, November 05, 2008 7:21 PM
To: submit@mamedev.org
Cc: atariace@hotmail.com
Subject: [patch] New include files for drivers

Hi mamedev,

Here's a patch that adjusts a few existing include files, but
principally adds new include files for about twenty existing drivers.
This found a few dead prototypes, but otherwise didn't reveal any
errors.

~aa
2008-11-08 21:08:00 +00:00
Couriersud
eed3bdac15 Merged DS5002FP into MCS51
* Merged DS5002FP
* Disassembler now uses type specific memory names
* Merged DS5002FP disasm
* added 83C751 memory names to disassembler
* delete DS5002FP specific files
* removed unnecessary cpu callback in wrally
* DATA_MAP ==> IO_MAP in wrally
2008-11-07 22:44:14 +00:00
Aaron Giles
a769919540 Missed file from AtariAce. 2008-11-02 03:15:38 +00:00
Roberto Fresca
e03868c87a Ruleta RE-900:
Use pre-defined crystals. Added with notes to xtal.h.
Added missing layout file.
2008-11-01 01:17:55 +00:00
Couriersud
7dd6c89221 Finally move cpu/i8051 to cpu/mcs51, rename files and some constants 2008-10-29 23:41:31 +00:00
Roberto Fresca
b2288ad1d5 Preliminary driver for Joker's Wild (Sigma, 1988).
- Initial release.
 - ROMs load OK.
 - Proper ROMs decryption.
 - Added MC6845 CRTC.
 - Video RAM OK.
 - Added technical notes.


New games marked as GAME_NOT_WORKING
------------------------------------
Joker's Wild (encrypted) [Roberto Fresca]
2008-10-25 09:09:31 +00:00
Roberto Fresca
1b7cfe0da2 Another driver from Grull Osgo.
Ruleta RE-900 from Entretenimientos GEMINI.

Is a roulette game based on i8051 and TMS9928, that has a phisical roulette with leds simulating the ball.
Game is working properly with full sound support.
Need better inputs implementation, leds, external artwork for the roulette and technical notes (I'm taking care of them).
If someone want to give a try, turn the operator key to allow enter credits.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Ruleta RE-900 [Grull Osgo]
2008-10-24 17:28:14 +00:00
davidhay
72269c2e5e Magic the Gathering: Armageddon (Skeleton driver)
I'm not going to be working on this, but this documents it in the source at least.
2008-10-19 22:07:43 +00:00
davidhay
16e2482cde NOT WORKING | P's Attack [Guru] 2008-10-19 21:12:38 +00:00
Aaron Giles
819c231992 Added new tool ldresample to assist in resynchronizing audio tracks in
a CHD with frames. Currently still WIP but useful if you know what 
you're doing. [Aaron Giles]
2008-10-16 08:47:06 +00:00
Aaron Giles
51098d32cd From: Fabio Priuli [mailto:doge.fabio@gmail.com]
Sent: Tue 10/7/2008 10:45 AM
To: submit@mamedev.org
Subject: snes special chips emulation
Hi, 

the attached patch adds emulation for snes special chips DSP-2 & OBC-1. Changes:

- added sources snesdsp2.c & snesobc1.c (directly included in machine/snes.c as per Arbee's guidelines). credits mostly goes to byuu, which released to Public Domain his sources
- removed special chips detection from MAME (no nss / bootleg carts have special chips so far) and only left a variable has_addon_chip whose possible values are in includes/snes.h (it is initialized to HAS_NONE for MAME games)
- modified memory handlers to account for the new chips

Regards
   Fabio
2008-10-09 09:41:12 +00:00
Roberto Fresca
2a000a7cc8 Improvements to InterFlip / Recreativos Franco driver: [Grull Osgo, Roberto Fresca]
- Added Baby Poker Game.
 - Added sound support to Baby Poker Game.
 - Reworked the color routines.
 - Added Baby Dado Game.
 - Added new color routines for Baby Games.
 - Redumped the videocba color PROM.
 - Added color switch. (It changes background color in some games).
 - Added "hopper full" switch support (for diverter function).
 - Added diverter function decoder.
 - Added full functional mechanical counters decoding.
 - Added 7 Segment decoder and 7 Digit Counter functions.
 - Added button-lamps layout & mechanical counters simulation on layout.
   Mechanical counters to layout: Coin-In, Coin-Out and Coin to Drop.
 - Added NVRAM support to mechanical counters.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Baby Poker [Grull Osgo, Roberto Fresca]
Baby Dado [Grull Osgo, Roberto Fresca]
2008-10-07 06:27:53 +00:00
Aaron Giles
9b72b5abc4 Added 22VP931 emulation, which is mostly working. Communication works
fine and basic searching/playback/skipping is functional. Still a bit
glitchy.

Firefox improvements:
 - removed need for deprecat.h
 - memory map is complete from schematics
 - gutted laserdisc hacks in favor of actual laserdisc implementation
 - fixed all CPU and sound clocks
 
Removed old laserdsc.c implementation.

Added generic timer devices, which simply allocate a timer but don't
prime it. This is the preferred method for allocating timers, and may 
eventually be the only mechanism for doing so in the future.
2008-09-25 16:21:35 +00:00
davidhay
07a34e9cd3 New Games
---------

Chanbara [Tomasz Slanina, David Haywood]
2008-09-23 18:35:10 +00:00
davidhay
4ee7a57a71 Jaleco 'Bomb's Away' Improvements [aDG4W+qp0] 2008-09-15 09:27:37 +00:00
Phil Bennett
6ff2372d8c Namco NA-2: Use real C70 BIOS. Removed sound and input simulation code. Changed the NA-1/2 MCU type to M37702. 2008-09-14 17:51:01 +00:00
smf-
75e68187dc preliminary firefox emulation. 2008-09-13 07:58:39 +00:00
Roberto Fresca
0bf917467e Added lamps support + layout to magjoker and galaxi.
Magjoker has a good lamps sequence in the attract.
2008-09-12 23:56:09 +00:00
Roberto Fresca
1510ffd2e3 Improvements to Croupier (Playmark Roulette):
- Simulated the MCU communication/protection.
  The game seems to work properly, but is hard to win.
  I conserved the game flags till we have the MCU decapped,
  and emulated properly.

- Added full sound support.
- Added lamps support + layout.
2008-09-10 23:47:12 +00:00
Roberto Fresca
f599e6d274 More cleanups and improvements to Super Derby driver.
- Fixed memory maps.
- Documented Super Derby outputs.
- Added lamps support + layout to Super Derby.
- Fixed the phisical RAM size to all games.
- Fixed the wrong NVRAM size to spacewin (16Kb instead of 16KB).
- Added proper NVRAM to sderby and pmroulet.
- Added the missing 3rd input to pmroulet (needed for 3-button mode).
- Cleaned up the driver.
2008-09-09 23:51:25 +00:00
Aaron Giles
9b4e46fad5 Changed DEVICE_START functions to return an error code. Currently this
is either DEVICE_START_OK or DEVICE_START_MISSING_DEPENDENCY. The latter
should be returned by a device if there is another device it depends on
which hasn't been started yet. Added new flag in the device interface to
indicate whether a device has been started.

Changed laserdisc interface to explicitly specify the screen and sound
devices it should route to. Drivers no longer have to manually call
laserdisc_vsync(). Instead, the laserdisc code connects up to the routed
screen device and works based on that screen's VBLANK timing. Removed
all existing calls to laserdisc_vsync().

Changed laserdisc behavior so that it completes the previous video read
and initiates the next read at the end of VBLANK instead of the beginning.
This gives player logic time during VBLANK to alter the slider position
prior to fetching the next frame.

Added new laserdisc callback for vsync begin and changed the update
callback to be called at the end of VBLANK. Also added functions to set
the slider speed, advance the slider, and directly control the video/
audio squelch. In addition, there is a new status function to get the
slider position in general terms.

Added parameter to the VBLANK callbacks supported in emu/video.c. Updated
all callers to provide a callback value.

Fixed bug that would cause watchpoints to trigger if you had a memory
window open to the watchpoint address.

Further updates to the PR-8210 ROM simulation. Still not quite there but
the system is much better understood now. Added layout to the PR-8210
which displays the state of the front-panel LEDs.
2008-09-09 16:10:11 +00:00
Roberto Fresca
0ad067f14d Space Win changes:
- Some corrections to the memory map.
- Added proper working RAM.
- Added Dallas DS1220Y NVRAM.
- Added output port.
- Added lamps layout.
- Added complete inputs.
- Changed description to "Scacco Matto / Space Win" since the default game is Scacco Matto.

You must enter the service mode and change graphics in order to switch the game.

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Scacco Matto / Space Win [David Haywood, Roberto Fresca]
2008-09-09 01:11:43 +00:00
Roberto Fresca
2c605c0528 Changes to magic10 driver.
- Better structure and organization.
- Added Super Gran Safari.
- Added improved lamps layout to Super Gran Safari and Magic's 10.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Super Gran Safari [Roberto Fresca]
2008-09-06 05:24:37 +00:00
Nicola Salmoria
7c90a0cd38 fixed emulation of the "SNK Wave" custom sound used by Marvin's Maze and Vanguard II and made it into a proper sound core
fixed palette decoding of early SNK games (from marvins to athena + fitegolf). The least significan bits were assigned incorrectly.
merged marvins.c into snk.c, with all resulting fixes (removed hacks, correct shadows, scroll offsets etc)
2008-09-04 08:57:02 +00:00
Aaron Giles
c1f0164f5d Split core laserdisc functionality into separate file ldcore.c.
Each player now gets its own source file, along with new hooks
which enable more precise control over the behavior. Updated the
PR-8210 and LD-V1000 implementations to the new spec. Other 
players will come online shortly.

Changed scan behavior so that it requires a constant stream of
signals to continue scanning. Updated ldplayer accordingly.
2008-09-04 08:48:57 +00:00
Nicola Salmoria
ceb28ace28 merged hal21.c into snk.c
removed hacks and kludges
fixed colors (I think--though some sprites do look weird)
2008-09-02 19:31:57 +00:00
Roberto Fresca
9af87ebaf3 New working driver for older InterFlip gambling games. [Grull Osgo, Roberto Fresca] 2008-08-30 17:08:26 +00:00
Aaron Giles
8959f89d1a Revert change 2597 2008-08-28 08:29:56 +00:00
Nicola Salmoria
f03d10d335 merged jcross.c into snk.c
fixed fg layer and visible area
the game seems to be ok now? is there still something wrong?
2008-08-27 13:39:09 +00:00
Nicola Salmoria
36c88b32dd merged sgladiat.c into snk.c
fixed shadows, visible area, tilemaps, inputs, etc.
00228: sgladiat: Emulation is missing some enemy sprites that are present on the pcb.
2008-08-27 08:57:20 +00:00
Aaron Giles
ba60161f97 i8039 -> mcs48 2008-08-26 04:38:50 +00:00
Couriersud
d8d031e8d3 Adds new generic latch device
8 bit latch interface and emulation
    
    Generic emulation of 74LS174/175, 74LS259 and other latches.
    Apart from providing synched latch operation, these
    latches can be configured to read their input bitwise from other
    devices as well and individual bits can be connected to
    discrete nodes.
    
    Please see audio/dkong.c for examples.
2008-08-22 21:25:49 +00:00
Derrick Renaud
8a8e197eae added Discrete Sound for Starship 1. I still need to properly emulate the MC3340. 2008-08-22 03:51:26 +00:00
Aaron Giles
7521888dd7 Added PR-8210 support to the ldplayer. Fixed step forward command on the PR-8210.
02136: cubeqst: from minimal UI cubeqst requires the optional CHD 
02127: xymg: The game name should be Xing Yun Man Guan and "Pin Yin:"should be omitted 
02138: flamegun: Debugger/Cheat System upper case cpu tag of MAIN doesn't work 
02139: In audio/system16.c, there is a reference to REGION_SOUND1 
02133: chindrah: The title of Zhong Guo Long?(Hong Kong,V011H) is Dong Fang Zhi Zhu(Hong Kong, V011H) 
02126: corrupt CHDs are reported as missing
2008-08-22 02:43:32 +00:00
Roberto Fresca
a211e37694 Bells and whistles to Game-A-Tron gambling hardware.
After an exhaustive analysis to the unknown writes, finally figured out the missing sound device.

 - Added sound support to "Poker 4-1" and "Pull Tabs".
 - Figured out the output ports. Documented each bit accessed.
 - Added button lamps support. Created layouts for both games.
 - Switched the 8255 port C to be used as output port.
 - Adjusted the coin pulse timing.
 - Updated technical notes.
 - Splitted the driver to driver + video.
 - Final clean-up.
2008-08-21 09:42:50 +00:00
Nicola Salmoria
c6e6c95244 snk.c rewrite (WIP)
TNK3, Athena, Fighting Golf, Country Club
converted to tilemaps
removed hacks
proper memory maps
screen flip / cocktail mode support
dip locations
better implementation of sound CPU communication
hooked sound cpu interrupts to YM chips
fitegolf hax 1xYM3812, not 2xYM3526
2008-08-20 10:24:57 +00:00
davidhay
c9f47d831f minor updates to megadriv.c / genesis code.
My mail is broken (or I'm not on the list anymore?) so I don't know how the suggestion went down, but given that within the space of a week simply updating the tree completely broke my compile again I *need* these files maintained to develop with if we're going to see accurate genesis emulation in MAME.  There's too much to split out of MAME.

I haven't included driver definitions, but the source files at least need to compile or I'm going to go completely bananas.
2008-08-19 07:39:53 +00:00
Aaron Giles
284b5a0d95 Added new generic laserdisc VIDEO_UPDATE handler to the laserdisc code.
This handler works for both disc-only games and those with overlays. 
For disc-only games, the base macro is sufficient. For games with 
overlays, an additional set of configuration macros are provided:

   MDRV_LASERDISC_OVERLAY - specifies update function, width, height,
      and bitmap format of the overlay
   MDRV_LASERDISC_OVERLAY_CLIP - specifies the visible area of the
      overlay bitmap
   MDRV_LASERDISC_OVERLAY_POSITION - specifies default x,y position
   MDRV_LASERDISC_OVERLAY_SCALE - specifies default x,y scale factors

The update function provided to MDRV_LASERDISC_OVERLAY is identical to
a normal VIDEO_UPDATE callback, so a standard one can be used. All
existing laserdisc drivers have been updated to support this new
rendering mechanism, removing much duplicated code.

Added the ability to configure the overlay position and scale 
parameters at runtime. Added OSD menus to control them. Added logic
to save/restore the data in the game's configuration file.

Added new macros MDRV_LASERDISC_SCREEN_ADD_NTSC and _PAL, which
defines a standard screen with the correct video timing characteristics
and update function for laserdiscs. Updated all drivers to use these
macros instead of defining their own screens.

Added DISK_REGIONS to all laserdisc drivers.

Added DISK_IMAGE_READONLY_OPTIONAL to support games (like Cube Quest)
where the disk is non-essential to the game's operation.

Fixed bug in identifying the custom sound driver for the laserdisc.

Updated ldverify to identify blank regions of the disc for post-
processing.

Fixed rendering 16bpp with alpha using bilinear filters (fixes
screenshots of laserdisc games with overlays).

Included support for parsing .gdi files in chdman. [ElSemi]

Added new driver for Cube Quest. This includes CPU cores for the three
bitslice processors, as well as laserdisc support for the hacked
laserdisc that was used to drive the games. 
[Philip Bennett, Joe Magiera, Warren Ondras]

Note that the SHA1/MD5 for the laserdisc will likely undergo at least
one more change before being finalized.
2008-08-18 04:31:08 +00:00
R. Belmont
f118954dc5 Split out SH-4 non-interpreter-specific stuff to sh4comn.c. 2008-08-17 04:44:02 +00:00
Aaron Giles
aeb7e74d74 Oops, missed deleted file. 2008-08-14 07:14:26 +00:00
Aaron Giles
a0574bb473 Moved several include files from mame/ to emu/, as they were
included by generic components in emu/ and thus should have no
dependencies on the MAME code.

Added new target ldplayer, which is based on MAME but serves as
a standalone laserdisc player for CHDs. Right now only the
Pioneer LD-V1000 is connected, and limited commands are available.
Each player type is a driver, so you specify the player type on
the command-line. The driver then opens the first CHD it finds
in your ROM path and uses that as the laserdisc. The intention is
that you specify the -rompath each time on the command-line, so
a typical approach might be:

   ldplayer ldv1000 -rompath j:\mach3

where it will pick up the mach3.chd lurking in your j:\mach3
folder. Several basic commands are supported:

   Space = play/pause
   Alt   = toggle frame display
   Left  = scan forward (when playing) or step forward (when paused)
   Right = scan backward (when playing) or step backward (when paused)
   0-9   = enter numbers for search
   Enter = execute search to frame
2008-08-13 15:09:08 +00:00
Roberto Zandona
906b6a5c39 now shanghai and adp use hd63484.c e hd63484.h in video folder 2008-08-12 15:29:20 +00:00
Tomasz Slanina
b6e297e8a4 New games added or promoted from NOT_WORKING status
---------------------------------------------------
Killer Instinct (SNES bootleg) [Tomasz Slanina]
Final Fight 2 (SNES bootleg) [David Haywood, Tomasz Slanina, Kowal]

New games marked as GAME_NOT_WORKING
------------------------------------
Sonic Blast Man TURBO 2 (SNES bootleg) [Corrado Tomaselli]
2008-08-10 22:43:48 +00:00
Derrick Renaud
1c8e102f7b Discrete sound for Mad Alien 2008-08-08 21:56:44 +00:00
Derrick Renaud
b3bfdc060a Added Discrete Sound to Fantasy, Nibbler and Pioneer Balloon. (mantis# 00227) 2008-08-06 04:02:46 +00:00
Aaron Giles
5e3764d0a0 Removed obsolete makemeta tool. Replaced it with new ldverify
tool which walks through either an AVI or CHD capture from a
laserdisc and ensures that there are no anomalies lurking in
the VBI data.

Added new option to chdman, where if you use -createav with
a special filename (either 2:2 or 3:2) it will create a fake
laserdisc files with the equivalent cadence. This can be used
for testing until full captures are available. Most games used
2:2 apart from Dragon's Lair and Space Ace, which were 3:2.
Note that even though these files are essentially blank, they 
are Huffman-compressed, meaning that the maximum compression
ratio you will get is 8:1, so they still end up ~5GB.

Moved error strings from chdman.c to chd.c, where they can be
fetched from any caller via the new chd_error_string()
function.

Updated vbiparse to improve Manchester code decoding. It now
assigns a confidence level per bit based on how solid the
data is. Also added a new function vbi_parse_all which parses
the white flag and all three lines of metadata from a 
laserdisc frame. It then compares line 17 and 18 against each
other and selects the most likely candidate based on per-bit
confidence and other factors.

Added frame number display to laserdsc.c. It is off by
default, though most players can be configured to turn it on
(not sure if any actually do). It can be manually toggled via
the backslash key during playback.
2008-08-05 16:30:35 +00:00
Luca Elia
9f8e261997 Driver for "Jingle Bell" by IGS
(roms in current/j/jingbell.zip)

The background (slot reels) is not emulated properly,
hence it's not playable and marked as not working.

New games marked as GAME_NOT_WORKING
------------------------------------
Jingle Bell [Luca Elia]
2008-07-31 16:52:17 +00:00
Luca Elia
eb89942ce4 Preliminary driver for "Quiz Punch 2"
Like some other Space games (mosaic.c), it is protected by an MCU
that supplies the addresses to jump to.

I've done some basic simulation that at least shows the service mode.

This is a candidate for decapping / trojaning, or for Nicola to examine
like he did with Mosaic ;-)

Note to Guru: u118 is probably bad, it fails the rom test.

New games marked as GAME_NOT_WORKING
------------------------------------
Quiz Punch 2 [Luca Elia]
2008-07-31 09:41:24 +00:00
Luca Elia
fb63d91e65 Driver for "Galaxi", an italian gambling game.
Roms are in current/g/galaxi.zip.

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Galaxi [Luca Elia]
2008-07-30 17:17:29 +00:00
Roberto Fresca
d67a7c8c74 Changes to lucky74.c driver:
- Pre-defined CPU and SND clocks.
 - Switched the color system to RESNET calculations.
 - Completed the remaining DIP switches.
 - Added lamps support. Created a layout to show them.
 - Changes on the interrupt system (need to be verified on the PCB).
 - Renamed the graphics regions to more descriptive names.
 - Corrected the manufacturer's name.
 - Splitted the driver to driver + video.
 - Updated technical notes.
2008-07-28 18:34:06 +00:00
Andrew Gardner
6e13a53ff7 DSP56156 CPU Core updates.
- Rewrote core logic, communications, and interfaces.
- Added three parallel memory moves to the disassembler.
- Initial interrupt logic in place.

Plygonet.c updates.
- All communication hacks have been removed.
- Memory maps have been temporarily reverted while new DSP56k cpu core catches up.
2008-07-28 01:19:21 +00:00
Aaron Giles
7c527fd0a7 Missed file from last checkin. 2008-07-24 03:49:38 +00:00
R. Belmont
1f9a29d7fa UDRC-based SH-2 dynamic recompiler.
- All games on all drivers should work as before except "colmns97" and "stress" which crash due to sound system trouble.
- All idle skips are still included.  They are quite a bit less effective than they were on the interpreter, but they still give a boost.
- Fast RAM bypass is not included yet so this does not represent final performance.  That said, it's consistently faster than the interpreter even now.  Example: sfiii3 on 0.126 gets 609% on the interpreter and 961% on the DRC.

Major thanks to Aaron for his assistance with several sticky core bugs and other issues encountered writing this.
2008-07-13 23:40:54 +00:00
Nicola Salmoria
4b6e06f175 merged exctsccr.c into champbas.c 2008-07-13 14:09:09 +00:00
Aaron Giles
d8715ab4ac Note: I have done some testing, but there are probably more bugs
lurking. If you run into anything odd, please let me know.

Added new module uiinput.c which manages input for the user interface.
The OSD is responsible for pushing mouse events and character events
to this interface in order to support mouse movement and text-based
input (currently only used for the select game menu). Added support
for navigating through the menus using the mouse. 
[Nathan Woods, Aaron Giles]

Redesigned the UI menus so that they can maintain a richer state. Now
the menus can be generated once and reused, rather than requiring them
to be regenerated on each frame. All menus also share a comment eventing
system and navigation through them is managed centrally. Rewrote all the 
menus to use the new system, apart from the cheat menus, which are now 
disabled. Reorganized the video menu to make it easier to understand.
[Aaron Giles]
2008-07-12 20:18:25 +00:00
davidhay
5d5550c907 some naomi stuff. no credit wanted.
I don't want people bugging me about this, so don't bother even mentioning it.
2008-07-11 20:49:38 +00:00
Aaron Giles
d256dc7e88 Split out Philips code parsing into a separate utility module.
Rewrote Philips code parsing to be clock based.
Updated makemeta to call the new function.
2008-07-08 07:55:49 +00:00
Roberto Fresca
ea8dec56f4 New driver for Lucky 74 (Wing Co.Ltd, 1988)
- Set the proper screen size.
 - Decoded graphics.
 - Decoded the dual-state color circuitry.
 - Mapped the NVRAM, VRAM1-1, VRAM1-2, VRAM2-1 and VRAM2-2 properly.
 - Emulated 2x PPI 8255 devices.
 - Mapped the 4x DIP switches banks.
 - Added PORT_DIPLOCATION to all DIP switches.
 - Added DIP switches for 'Bet Max' and 'Limit'.
 - Added DIP switches for 'Jackpot' and 'Pay Table'.
 - Added the Memory Reset Switch.
 - Added the 2nd video & color RAM.
 - Added a 2nd tilemap for background graphics.
 - Simplified the graphics banks.
 - Fixed colors for foreground graphics.
 - Fixed visible area to show the top of background graphics.
 - Finally fixed colors for background graphics.
 - Added all coinage DIP switches.
 - Mapped all remaining inputs (service and player buttons).
 - Added pulse time limitation to coins A, B & C.
 - Switched to use 4x 8255 in replace of 2x 82c255 for I/O.
 - Created a handler to feed the z80 port0 requests.
 - Promoted lucky74s to 'working' state.
 - Added an alternate set, but the program ROM looks like incomplete,
   protected or just a bad dump.
 - Parent/clone relationship.
 - Added technical notes.

 From Dox:

 - Hooked interrupts.
 - Hooked the AY8910 and therefore the NMI trigger.
 - Changed the input "Key In" to active high.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Lucky 74 (small) [Roberto Fresca]


New clones added
----------------
Lucky 74 (big) [Roberto Fresca]
2008-07-06 08:23:50 +00:00
davidhay
03871ffff4 sksleton hikaru driver. 2008-07-04 08:12:41 +00:00
Aaron Giles
c26a5b3fd5 Galactic Storm
(c)1992 Taito

added by Hau
2008-07-03 15:41:07 +00:00
Tomasz Slanina
b00ee43b40 New games marked as GAME_NOT_WORKING
------------------------------------
King of Football [Tomasz Slanina]
2008-06-28 18:48:45 +00:00
Tomasz Slanina
793b257be7 Renamed wilytowr.c to m63.c. Added Irem M63 PCB layout (based on Atomic Boy).
[Tomasz Slanina, Stefan Lindberg]
2008-06-28 11:55:00 +00:00
R. Belmont
f6c3274df2 Refactor SH2 to separate out things that aren't part of the interpreter. 2008-06-27 05:33:54 +00:00
Aaron Giles
68f3a9ab9e Removed DEBUGGER flag from makefile and ENABLE_DEBUGGER
macro from the source code. All MAME builds now include
the debugger, and it is enabled/disabled exclusively by
the runtime command-line/ini settings. This is a minor 
speed hit for now, but will be further optimized going 
forward.

Changed the 'd' suffix in the makefile to apply to DEBUG
builds (versus DEBUGGER builds as it did before).

Changed machine->debug_mode to machine->debug_flags.
These flags now indicate several things, such as whether
debugging is enabled, whether CPU cores should call the
debugger on each instruction, and whether there are live
watchpoints on each address space.

Redesigned a significant portion of debugcpu.c around
the concept of maintaining these flags globally and a
similar, more complete set of flags internally for each
CPU. All previous functionality should work as designed
but should be more robust and faster to work with.

Added new debugger hooks for starting/stopping CPU
execution. This allows the debugger to decide whether
or not a given CPU needs to call the debugger on each
instruction during the coming timeslice.

Added new debugger hook for reporting exceptions.
Proper exception breakpoints are not yet implemented.

Added new module debugger.c which is where global
debugger functions live.
2008-06-26 14:51:23 +00:00
Tomasz Slanina
cecb9c22a9 Preliminary emulation of ST-0026 NiLe (sound).
Added audio (imperfect) to Super Real Mahjong P6.
(2nd attempt)
2008-06-22 20:14:14 +00:00
Couriersud
50b9d23c82 dkong.c: Merge driver init code for drakton and strtheat
* made decryption for drakton and strtheat more compact
* moved decryption and driver init code into dkong.c
* deleted drakton.c and strtheat.c
2008-06-22 14:59:35 +00:00
Wilbert Pol
01756b3bcb Renamed "Nintendo z80gb" cpu core to "Sharp LR35902". 2008-06-16 18:22:10 +00:00
Aaron Giles
5deab27d6d Created common virtual TLB managment module.
Updated MIPS and PowerPC code to make use of it.
2008-06-16 03:12:49 +00:00
Aaron Giles
e62e3229d3 Missed file from previous checkin. 2008-06-12 16:58:03 +00:00
Aaron Giles
f874100bc9 From: Atari Ace [mailto:atari_ace@verizon.net]
Subject: [patch] Static qualifiers, header file cleanups, and new
include files for MAME

Hi mamedev,

The following two patches improve the use of header files in MAME, and
reduce the number of exported symbols.

The second patch then adds ~30 header files for a number of drivers
that use multiple source files.  It consolidated the various cchip
related declarations in cchip.h, and added machine/seicop.h as well.

~aa
2008-06-12 16:27:56 +00:00
Roberto Fresca
f034b2b75f New driver for italian gambling games based on Mitsubishi/Renesas M16C MCU family.
Added dumper notes, hardware details and hooked the sound devices.
Moved Euro Jolly X5 to this new driver, and add support for Grand Prix.


New games marked as GAME_NOT_WORKING
------------------------------------
Grand Prix [Roberto Fresca]
2008-06-09 08:51:36 +00:00
Luca Elia
ab1c2761ae Preliminary driver for Subsino's gambling games.
(sets uploaded to roms/current)

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Super Rider (Italy) [Luca Elia]

New games marked as GAME_NOT_WORKING
------------------------------------
Shark Party (Italy) [Luca Elia]
Victor 5 [Luca Elia]
Victor 21 [Luca Elia]
2008-06-08 14:38:04 +00:00
Aaron Giles
ee8162eff9 UML:
* Wrote new disassembler based on enhanced opcode info structure.
 * Moved disassembler into drcuml.c and removed old code.
 * Extended disassembler buffer sizes to at least 256 bytes.
2008-06-06 06:42:21 +00:00
Aaron Giles
95ae38db10 Missed files from Atari Ace's change. 2008-06-05 09:50:25 +00:00
Aaron Giles
ed6ad8b4f9 PowerPC dynamic recompiler: [Aaron Giles]
- rewrote PowerPC implementation as a dynamic recompiler on top
    of the universal recompiler engine
 - wrote a front-end to analyze PowerPC code paths and register usage
 - wrote a common shared module with C implementations of tricky
    CPU behaviors
 - added separate CPU types for the variants supported, instead of
    relying on a hidden model enum
 - rewrote the serial port emulation for the 4xx series to be more
    accurate and not rely on separate DMA handlers
 - rewrote the MMU handling to implement a software TLB that faults
    in pages and handles changed bits appropriately
 - implemented emulation of the PowerPC 603's software TLB, which
    allows the model 3 games to run without a hack to disable the MMU

Updated the PowerPC disassembler to share constants with the rest of
the core, and to more aggressively use simplified mnemonics, especially
for branches. [Aaron Giles]

Universal recompiler:
 - fixed frontend to handle opcode widths different from bus width
 - added several new opcodes:
    * (D)GETFLGS - copies the UML flags to a destination operand
    * FDRNDS - rounds a double precision value to single precision
 - renamed several opcodes:
    * SETC   -> CARRY
    * XTRACT -> ROLAND
    * INSERT -> ROLINS
 - consolidated the following opcodes:
    * LOAD?U -> LOAD
    * LOAD?S -> LOADS
    * STORE? -> STORE
    * READ?U -> READ
    * READ?M -> READM
    * WRITE? -> WRITE
    * WRITM? -> WRITEM
    * SEXT?  -> SEXT
    * FTOI?? -> FTOINT
    * FFRI?  -> FFRINT
    * FFRF?  -> FFRFLT
 - removed some opcodes:
    * FLAGS - can be done with GETFLGS/LOAD4/ROLINS
    * ZEXT - can be achieved with AND
    * READ?S - can be achieved with READ/SEXT
 - updated C, x86, and x64 back-ends to support these opcode changes
 - updated disassembler to support these opcode changes
 
MIPS3 dynamic recompiler:
 - updated to use new/changed opcode forms
 - changed context switch so that it only swaps a single pointer

Konami Hornet changes: [Aaron Giles]
 - updated to new PowerPC configurations
 - updated some memory handlers to be native 8-bit handlers
 - cleaned up JVS implementation to work with new serial code
 - added fast RAM for the work RAM to give a small speed boost

Konami GTI Club changes: [Aaron Giles]
 - updated to new PowerPC configurations
 - updated some memory handlers to be native 8-bit handlers

Konami Viper/ZR107 changes: [Aaron Giles]
 - updated to new PowerPC configurations

Sega Model 3 changes: [Aaron Giles]
 - updated to new PowerPC configurations
 - reimplemented/centralized interrupt handling
 - these games are broken for the moment

Fixed crasher due to some Konami games using 8 layers in
the K056832 implementation, even though it was only written
for 4. [Aaron Giles]

Added fisttp opcode to i386 disassembler. [Aaron Giles]
2008-06-05 08:34:13 +00:00
Roberto Fresca
23a5c04d66 New skeleton driver for italian gambling games based on H8/3337 MCU + NEC D7759GC (sound).
Added all games that fit in this hardware, plus dumper notes (when available) and hardware descriptions.

New games marked as GAME_NOT_WORKING
------------------------------------
Carta Magica (Ver 1.8) [Roberto Fresca]
Laser 2001 (Ver 1.2) [Roberto Fresca]
Magic Drink (Ver 1.2) [Roberto Fresca]
Millennium Sun [Roberto Fresca]
NtCash [Roberto Fresca]
Super Space 2001 [Roberto Fresca]
Unknown italian gambling game [Roberto Fresca]
Wizard (Ver 1.0) [Roberto Fresca]
2008-06-04 07:20:51 +00:00
davidhay
43b1a48c89 added some extra tecmosys protection notes (nuapete), added skeleton driver for black touch 96 (me), will continue to work on it. 2008-06-03 21:23:58 +00:00
davidhay
dc19a5250c added a skeleton driver for some italian gambling games. we can't emulate them because the entire program code is in the MCUs. Not worth mentioning in whatsnew. 2008-06-01 14:35:35 +00:00
davidhay
948b4f6152 from nuapete - tecmosys protection simulation
(i'm currently working on the video, ignore that part for now)
2008-05-30 19:39:47 +00:00
Roberto Fresca
6736fbc2a5 Sandii' games improvements:
- Switched the color system to RESNET calculations.
 - Hooked the infamous bit7 of Input Port 0x3004 in parallel to DIP switch 1.
   This allow to use the PAYOUT button to trigger the Super Game instead of STOP 5.
 - Demultiplexed lamps matrix.
 - Added lamps support, but is still imperfect.
 - Updated technical notes.
2008-05-29 17:57:17 +00:00
Wilbert Pol
4e1afc32f5 Fixed memory access in the 80286 cpu core which made i286.h obsolete. Changed CPUINFO_INT_MAX_INSTRUCTION_BYTES to prevent crashes during disassembly. 2008-05-24 15:14:12 +00:00
Aaron Giles
d4c1d73b8f > -----Original Message-----
> From: deaconblue@worldofretro.net [mailto:deaconblue@worldofretro.net] 
> Subject: shuttle invader (shuttlei)
> 
> i remember that there was a three coloured pressure-sensitive decal on
> the screen, i mean the monitor itself.
> 
> maybe 75 percent was green (the aliens are in "green" status, green
> area), then 10 percent was orange (they come closer, two lines in total)
> and from that below was red, to show up, they as close as they never
> should be (red alert state)
> 
> i can't say, how much lines they spend for each color, but i surely
> know, that my memories is very close to that what it was....
> 
> 
> 
> maybe you can use this, thanks in advance for your answer...
> 
> Deacon
2008-05-22 03:44:26 +00:00
Aaron Giles
98a8e73947 From: Antoine Mine [mailto:Antoine.Mine@ens.fr]
Subject: saturn CPU patch

Dear MAMEDev,

The attached patch corrects several bugs in the emulation of the saturn 
CPU. These corrections are needed to make new HP48 drivers (to be 
submitted to MESS imminently) work.
AFAIK, MESS is the only place where this CPU is used, so, the patch
should 
not cause any regression in MAME.
The patch is against 0125u1.

Best regards,
-
Antoine Mine
2008-05-22 03:09:01 +00:00
Aaron Giles
bb9fec0f86 Moving old DRC out of the way. 2008-05-22 03:06:49 +00:00
Aaron Giles
096331c856 Restructured input port internals and cleaned up inptport.c:
* Input ports are now maintained hierarchically. At the top
level are input ports, which contain a list of fields. Each
field represents one or more bits of the port. Certain fields
such as DIP switches and configuration switches contain a
list of settings, which can be selected. DIP switch fields
can also contain a list of DIP switch locations.

* Normalized behavior of port overrides (via PORT_INCLUDE or
by defining multiple overlapping bits). All fields within a
port are kept in strict increasing bit order, so altered DIP
switches are now kept in the appropriate order. This addresses
MAMETesters bug 01671.

* Live port state is now fully separate from configured 
state. This is manifested in a similar way to devices, where
a const list of ports can be managed either offline or live.
Each port has a pointer to an opaque set of live state which
is NULL when offline or valid when live. Each port also has
a running_machine * which is also NULL when offline.

* Because of this new arrangement, the conversion from tokens
to a list of ports now requires reasonably complex memory
allocation, so these port lists must be explicitly allocated
and freed (they are not mantained by automatic resource
allocation).

* Custom and changed callbacks now take a pointer to a field
config instead of a running machine. This provides more
information about what field triggered the change notification.
The machine can be found by referenced field->port->machine.

* The inptport.c module has been cleaned up and many 
ambiguities resolved. Most of this is internal, though it did
result in osd_customize_inputport_list() being changed to
osd_customize_input_type_list(). The parameter to this function
is now a linked list instead of an array, and the structures
referenced have been reorganized somewhat.

* Updated config.c to pass machine parameters to its callbacks.

* Updated validity checks, XML output, and UI system to handle
the new structures.

* Moved large table of default input settings to a separate
include file inpttype.h.

* Removed gross hacks in trackfld and hyperspt NVRAM. These
may be broken as a result.
2008-05-15 16:25:03 +00:00
Curt Coder
2528b956f5 Added CDP1852 I/O buffer chip, and used it in Altair/Draco. 2008-05-12 16:10:28 +00:00
Manuel Abadia
90f263f8a3 DS5002FP core 2008-05-12 09:03:33 +00:00
Aaron Giles
b735b4be6c New universal dynamic recompiler system. The central module
is drcuml.c, which defines a universal machine language
syntax that can be generated by a frontend recompiler and
then retargeted via a generic backend interface to any of
a number of different architectures. A disassembler for the
UML is also included to allow examination of the generated
UML code.

Currently supported backend architectures include 32-bit x86,
64-bit x86, and a platform-neutral interpreted C backend that
can be used as a fallback for platforms without native 
support. The C backend also performs additional validation
to ensure assumptions are met.

Along with the new architecture is a new MIPS III/IV 
recompiler frontend. This frontend has been rewritten from 
the old x64-specific recompiler to generate UML opcodes
instead. This means that the single recompiler can be used
to target multiple backend architectures and should in
theory produce identical results across all of them.

The old 32-bit and 64-bit MIPS recompilers are now officially
retired. The new system provides similar performance (within
5% generally) to the old system and has similar compatibility.
The only currently known issues are some problems with the
two Gauntlet 3D games.
2008-05-11 22:15:13 +00:00
Roberto Fresca
9b3d9ea3cd New driver for old Game-A-Tron gambling games hardware.
- Properly decoded graphics.
 - Proper memory map.
 - Added NVRAM support.
 - Proper Inputs through 8255 PPI I/O chip.
 - Both games are working.
 - Added technical & game notes.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Card Games? [Roberto Fresca]
Slots Game? [Roberto Fresca]
2008-05-11 21:21:07 +00:00
Nicola Salmoria
384388cf6f Rewrote the Gaelco video ram encryption, which finally makes sense.
The key observation was that when decryptiong the second word, both encrypted and decrypted bits of the first word are used.
Many thanks to Javier Valero for the detailed information that made this possible.
2008-05-10 18:09:15 +00:00
Couriersud
85a5a3d827 AY-3-8910 rewrite:
* adds a model to calculate mixing of channels with different resistance loads.
* based on above, each channel may be assigned a different load in individual case
  i.e. channels not tied together
* rewrote ay8910.c to make emulation simpler
* changed the config structure to include a flag field and output resistor loads.
* Updated all drivers affected.
* Added some "Todos" related to stuff I discovered when reading datasheets.
* Fixed a bug in disc_flt.c (konami filters)

galaxian.c:
* Fixed discrete sound and konami filter addressing
* Changed addressing of AY-3-8910 to be in line with schematics

gyruss.c:
* Added discrete sound for filtering ("konami"-style) and mixing.
2008-04-22 21:58:36 +00:00
Aaron Giles
e26f80fde0 (from Mariusz Wojcieszek)
Attached is diff which makes Touchmaster games playable.

General changes:
- Added preliminary 68681 DUART (machine\68681.c)
- Moved Microtouch touch screen controller emulation to separate module (machine\microtch.c)

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Touchmaster [Mariusz Wojcieszek]
Touchmaster 3000 [Mariusz Wojcieszek]
Touchmaster 4000 [Mariusz Wojcieszek]
Touchmaster 5000 [Mariusz Wojcieszek]
Touchmaster 7000 [Mariusz Wojcieszek]
2008-04-21 00:00:55 +00:00
Roberto Fresca
baad7a6f45 New driver for Sandii' hardware. Support for snookr10, apple10 and tenballs. Added technical/general notes.
Funworld updates:
- Removed the temporary hack to jolyc980.
- Updated technical notes regarding Magic Card II & Jolly Card Professional 2.0.
- Moved snookr10 to its own driver.
- Minor clean-up.


New games marked as GAME_NOT_WORKING
------------------------------------
Apple 10 (Ver 1.21) [Roberto Fresca]
Ten Balls (Ver 1.05) [Roberto Fresca]
2008-04-20 04:16:47 +00:00
davidhay
bd7c159b15 Seibu COP stuff - just moving things around renaming them, comparing Legionnaire with Raiden 2 etc. No functional improvements just yet. 2008-04-05 13:08:11 +00:00
Aaron Giles
ca3d7d01e6 From: Wilbert Pol
Subject: pit8253 device

I have converted the pit8253 implementation into a device. To make it  
easier to use I've also created a src/emu/devconv.h in the same style  
as src/emu/memconv.h.

I do not have all roms/disk images to test all drivers.  I have only  
been able to test pf2012, filetto, and topgunnr.
2008-04-03 05:26:47 +00:00
Curt Coder
1859e012d2 - converted CDP1869 to the new device system
- refactored to represent how the hardware actually works
- added PMA latching on OUT5
- separated Cidelsa video to its own file
2008-04-02 14:43:06 +00:00
Aaron Giles
d26f7f12da From: Mr. Do [mailto:mrdo_emu@hotmail.com]
Subject: Internal LAY File - Armor Attack

This is becoming kind of fun.  Here's an internal LAY file for Armor Attack.
 
Re-created the overlay using just rectangles.
 
And finally got to use flipx and flipy for the first time (main reason I did it).
2008-04-02 08:36:30 +00:00
Phil Bennett
ed397c466a 1. Added driver for JPM 'Give us a Break' hardware, supporting:
* Give us a Break [2 sets]
* Ten Up [2 sets]
Neither are playable; they don't register coins for some reason.

2. Fixed interrupt handling and 16-bit memory accessors in 6840ptm.c
Also cleaned up code for the sake of readability.

3. JPM games now have their own object archive file.
2008-03-29 01:35:02 +00:00
Aaron Giles
6979179c11 Galaxian rewrite. Ultimately will combine the existing drivers
for galaxian, scramble, frogger, scobra, amidar, and dambustr.
For the moment, only a subset of games are implemented in the
new system; the remainder are running on the old code.

Main features are accurate video timing, correct stars 
implementation, better organization, simplified input ports,
and many other smaller fixes. In addition, the following
MAMETesters bugs are addressed:

- 01598: [Graphics] 4in1, gmgalax, pacmanbl: Sprites are cut off on the top row
- 01563: [DIP/Input] gmgalax: Duplicated Inputs
- 00300: [Graphics] zigzag: in cocktail mode player 2 screen is shift over to the right
- 01454: [Graphics] mshuttle, mshuttlj, mshutlj2: The display of the screen is shifted
- 01473: [Graphics] orbitron: Orbitron graphics not correctly displayed
- 01600: [Graphics] pacmanbl, batman2: The background is shifted to the right and cut off on the right side
- 01602: [Misc.] luctoday: Messed up graphics. (Screen Offset)
- 01599: [Graphics] omega: Screen is vertically offset
- 01605: [Graphics] gteikokb, gteikob2: Wrong screen offset (aaron)
2008-03-28 08:34:31 +00:00
Aaron Giles
e670f5c51a Renamed galaxian.c -> galaxold.c. Updated all drivers accordingly. 2008-03-25 12:20:09 +00:00
Luca Elia
757d289163 Driver for Astro Corp. hardware.
New game:

- Show Hand (roms/current/s/showhand.zip)
2008-03-24 18:29:07 +00:00
Nicola Salmoria
23a0601055 Alpha Denshi major update
This is still WIP bug I've been working on it for sveral weeks and I want to get it out before leaving for holidays.

- Fixed Alpha 8201/830x MCU simulation.
  - all hacks from the equites driver removed
  - fixed equites restart position after going underground
  - fixed hvolume, splndrbt 2 players
  - removed hacks from exctsccr2
  - fixed CPU gameplay in shougi

- Gekisou promoted to working

- added dump of Alpha 8201 MCU to games that use it (the ROM isn't used yet, HMCS44 CPU core needs to be written first)

- major cleanup of the mess in equites.c:
  - many thanks to Corrado Tomaselli for precious hardware info.
  - implemented bg perspective scrolling using PROMs
  - fixed sprite flip & disable
  - fixed bg color
  - converted bg to tilemaps
  - fixed fg banking
  - fixed screen flip
  - removed meaningless banking of player inputs
  - added UI adjuster for MSM5232 frequency
  - MSM5232 volume control

- fixed MSM5232 noise LFSR formula (done by Jarek Burczynski; thanks to Corrado Tomaselli for samples)

- changed MSM5232 emulator to output channels separately

- added output of SOLO channels to MSM5232 emulator.

- mametesters bugs fixed:
  - 00217 splndrbt: On boot the pcb displays a clean light blu screen while in mame there is a black road. 
  - 00220 splndrbt: Concerning the gfx, on the pcb the background is not linear as shown in mame.
  - 00223 splndrbt: On the first level when you pass the asteroid belt the star road should be light blue instead of black like mam 

- fixed champbas inputs

- merged talbot with champbas, some driver clenaup

- fixed shougi inputs

- switched exctsccb to use the correct gfx ROMs (matches screenshot found in 01058 exctsccb: Exciting soccer bootleg should be placed in champbas.c.)

- fixed sprite bpp in exctscrr, removed the horrible hacks that were used to fix colors and transparency.

- fixed sound clipping in exctsccr
2008-03-17 19:07:23 +00:00
Zsolt Vasvari
12546a8559 From Mr.Do: Adds Gorf internal artwork 2008-03-17 05:15:37 +00:00
Aaron Giles
3a082a644f From: notaz [mailto:notasas@gmail.com]
Subject: patch for SVP (Sega Virtua Processor) emulation

hello,

this patch adds support for Sega Virtua Processor, to run
Genesis/MegaDrive version of Virtua Racing, intended to be used by
MESS. It consists of a CPU core SSP1601, and updates in megadriv.c:
* SSP1601 replaces SSP1610, as it has been confirmed by Stiletto and
other sources that SVP actually contains SSP1601. The current SSP1610
is placeholder only (nearly completely unimplemented) anyway.
* Changes in megadriv.c add a new driver for Genesis/MegaDrive+SVP
combination, also add SVP memory controller logic and memory map.

The diff has already been reviewed by Reip and SSP1610 removal was one
of his suggestions (SSP1610 is not used by any drivers).
2008-03-13 15:35:17 +00:00
Aaron Giles
311669e24d From Mr. Do!
mame/drivers/qix.c:
+mame/layout/elecyoyo.lay:

Add Mr. Do's layout to crop corners in Electric Yo-Yo.
2008-03-13 15:29:29 +00:00
Zsolt Vasvari
5397db0615 Moves crosshair code from video.c into its own module
Simplifies crosshair logic and makes it screen device based
2008-03-11 02:41:24 +00:00
Zsolt Vasvari
c537f056f5 Mysterious Stones gets the "full treatment" 2008-03-06 03:45:15 +00:00
Zsolt Vasvari
c7a0a7942f Moves watchdog processing logic into its own module 2008-03-02 03:32:54 +00:00
Zsolt Vasvari
a3aef48df5 - Converted Amiga based games to partial updating and proper scanline based timers
- Beginning of the clean-up of Space Guerilla - fixed rotation, some other stuff
- Removed tmpbitmap from some drivers
2008-02-29 01:42:25 +00:00
Zsolt Vasvari
f78611cfd3 - Clean-up of the Crazy Climber video driver, mainly via tilemap conversion.
This fixes the ape sprite positioning in Crazy Kong -- no more gap between feet and platform
- Merged Yamato driver with Crazy Climber
- XX Mission tilemap conversion
- Removes VIDEO_START(generic) -- no longer used
2008-02-27 13:51:06 +00:00
Roberto Fresca
b28523cabe Big changes to Cal Omega driver to support systems 903/904/905/906.
A lot of sets were added. Also System 903/905 diag ROMs.
Submitted the driver at this point because it's growing as a monster.
Parent/clone relationship for official games is not defined yet.

Changes:
- Renamed the driver to calomega.c.
- Extended the driver to support all the other Cal Omega systems.
- Switched to XTAL def.
- Fixed CPU & sound clocks based on official diagrams.
- Replaced the AY-8910 with AY-8912 to match the real hardware.
- Unified some memory maps.
- Splitted machine in sys903 and sys905.
- Fixed memory map offsets for sys905.
- Added support to the following games:

    Game 7.6 (Arcade Poker)
    Game 7.9 (Arcade Poker)
    Game 9.4 (Keno)
    Game 12.5 (Bingo)
    Game 12.7 (Keno)
    Game 12.8 (Arcade Game)
    Game 13.4 (Nudge Bingo)
    Game 14.5 (Pixels)
    Game 15.7 (Double-Draw Poker)
    Game 15.9 (Wild Double-Up)
    Game 16.4 (Keno)
    Game 16.8 (Keno)
    Game 17.2 (Double Double Poker)
    Game 17.51 (Gaming Draw Poker)
    Game 17.6 (Nudge Bingo)
    Game 18.1 (Nudge Bingo)
    Game 18.3 (Pixels)
    Game 18.5 (Pixels)
    Game 18.6 (Pixels)
    Game 20.4 (Super Blackjack)
    Game 20.8 (Winner's Choice)
    Game 22.7 (Amusement Poker, d/d)
    Game 23.6 (Hotline)
    Game 23.9 (Gaming Draw Poker) --> EX gdrawpkr.
    Game 24.6 (Hotline)
    Game 27.2 (Keno, amusement)
    Game 27.2 (Keno, gaming)
    System 903 Diag.PROM 
    System 905 Diag.PROM
    Jackpot Joker Poker (set 1)
    Jackpot Joker Poker (set 2)
    SSI Poker (v2.4)
    SSI Poker (v3.0)
    SSI Poker (v4.0)

- Added a list of official/unofficial games, and their states.
- Fixed a bug introduced when extended the color PROM region to eliminate colortable lenght.
- Other changes/fixes.
- Updated technical notes.
2008-02-26 09:41:11 +00:00
Aaron Giles
9a359b370d Added new module: tokenize.h. This centralizes the behavior of
tokenizing data structures, as currently used by the input
port system. Redid the input port tokenization to be more
compact and make use of the new macros.
2008-02-25 01:35:48 +00:00
Zsolt Vasvari
422de34a3f - Adds the layout file created by Mr. Do
- Clean-up and reorg
2008-02-22 07:32:08 +00:00
Zsolt Vasvari
4606ca9dc2 - Reorganized Gameplan driver
- Changed Trivia Quest use the Gameplan video code
- Added crystal for Gameplan pixel clock
2008-02-21 00:46:44 +00:00
Zsolt Vasvari
df91564d03 - Complete memory map
- Cyrsals
- Driver state structure
- Text layer is rendered at the same time as the background
2008-02-20 05:25:29 +00:00
Aaron Giles
3accee936b New module: devintrf.c/.h. Implements a generic device interface similar
to the sound and CPU interfaces. This is still a bit WIP, but works at
a fundamental level. Currently the only example of usage is in qix.c for
the MC6845 CRTC.

New module: mconfig.c/.h. Moved all machine_config and MDRV_* macros here, 
out of driver.c/.h. Added MDRV macros for adding/removing/configuring
devices.

qix.c: Moved video part of machine driver to video/qix.c. Added MC6845
as a device in the machine driver. Removed explicit MC6845 initialization
from VIDEO_START in favor of simply retrieving the token from the device
interface code.

mc6845.c: Updated all callbacks to pass the mc6845_t * object. Updated
all drivers accordingly. Added a minimal device interface.

Deprecated the following constants because global constants that pretend
to document things but which are only guesses are dumb:

  - DEFAULT_60HZ_VBLANK_DURATION
  - DEFAULT_30HZ_VBLANK_DURATION
  - DEFAULT_REAL_60HZ_VBLANK_DURATION
  - DEFAULT_REAL_30HZ_VBLANK_DURATION
  - DEFAULT_60HZ_3S_VBLANK_WATCHDOG
  - DEFAULT_30HZ_3S_VBLANK_WATCHDOG

Updated all drivers to explicitly specify the equivalent bogus times.
Added comments for the "REAL" VBLANK durations to indicate that they are
not accurate.
2008-02-19 08:49:59 +00:00
R. Belmont
8877f5321b [NAOMI] Added and hooked up AICA (sound chip). Naomi boot sounds now play.
Since it's an SCSPx2 with ADPCM instead of FM it's already feature-complete except filter envelopes.

A bug in the ARM7 core causes incorrect pan/level values to be computed in e.g. the Naomi SOUND TEST menu (I've also been seeing this in DSF playback).  This is not a defect in the AICA.

Please credit ElSemi, Deunan Knute, kingshriek, and myself.
2008-02-17 18:28:36 +00:00
stephh
015e47c058 Fixed Dip Switches (especially coinage) and inputs for 'mpatrol' and 'troangl' (and their clones).
Tried to "unified" the drivers (I still think that some things can be merged).
Added src/includes/iremipt.h source file (same purpose as src/includes/taitoipt.h).

Fixed Dip Switches and inputs for 'alpha1v'. The game is now more playable to me but I left the GAME_NOT_WORKING flag as I think there are still some things to look at).
2008-02-17 13:35:28 +00:00
Zsolt Vasvari
8715109eb4 - Color table removal
- Reorganization/minor clean-up of Mad Alien driver
2008-02-15 05:43:05 +00:00
Zsolt Vasvari
a35f6aba82 Renames M6845 to MC6845 2008-02-12 20:31:55 +00:00
Zsolt Vasvari
d3cc7e0dd4 Renames CRTC6845 to M6845 2008-02-12 12:48:58 +00:00
Couriersud
88940550a1 makefiles:
* move verinfo.c to src/build
* move rules for verinfo to src/build/build.mak
2008-02-05 22:32:11 +00:00
Luca Elia
c96f0df8fa Promoted "Galaxy Games (BIOS v1.90)" to working
(moved to tmaster.c)
2008-02-05 17:48:27 +00:00
Andrew Gardner
7765adf61b Added skeleton driver for two Kyle Hodgetts games, Virtual Combat and Shadow Fighters. Each running on the same hardware.
Each game has 2 68000's, and one unemulated Intel i860XR CPU.  I couldn't find docs for the i860 anywhere!
Virtual Combat is a stereoscopic game using an additional i860 to drive the second eye.
The ROMs all seem to check out as valid, with human-readable strings throughout.
The sound program is extremely simple for each, and the sound data ROMs are simply Creative Labs VOC files concatenated to eachother.
A MC6845P lives by the edge connector.

Additional notes in the driver.

Roms uploaded to /roms/current/v & /roms/current/s.

Wiki updated with skeleton driver status.
2008-02-05 06:12:47 +00:00
Zsolt Vasvari
11b06e94a5 - Color table removal
- Renames skychut to m10
2008-02-05 05:17:17 +00:00
Nicola Salmoria
06dece135f merged nova2001, ninjakun, pkunwar, raiders5; misc cleanup 2008-02-03 16:06:28 +00:00
Aaron Giles
aa16ee779d Changed debugger-related code to be based off a new makefile define (DEBUGGER) which sets
a new compile-time define (ENABLE_DEBUGGER). This means that MAME_DEBUG no longer means
"enable debugger", it simply enables debugging features such as assertions and debug code
in drivers.

Also removed the various levels of opbase protection in memory.h and always just turned 
on full bounds checking.

Fixed build break due to missing ampoker.lay -> ampoker2.lay renaming.
2008-02-02 08:57:39 +00:00
Zsolt Vasvari
03510c0a11 - Removed color table
- Renamed driver to ampoker.c
- Removed cubeqst.o from makefile.  Not sure what it is, but there is so such driver
2008-02-02 04:02:42 +00:00
Phil Bennett
6696fe197c * Improved Lock-On by a fair bit and added an alternate set.
* Added POLL input handling to the NEC V20/V30 core.
2008-02-02 02:19:24 +00:00
Aaron Giles
174ae58559 yard -> m58 2008-02-01 15:44:19 +00:00
Aaron Giles
b8997f5e04 A little more cleaning in the irem games. 2008-02-01 15:42:55 +00:00
Aaron Giles
05da1d9ec9 Cleaned up pooyan driver. Save states, full memory maps, proper NMI generation, etc.
Also added proper NMI generation to Time Pilot.
2008-01-29 05:58:38 +00:00
Zsolt Vasvari
274235aef1 - Removed color table from a couple of games
- Renamed bking2 to bking
2008-01-29 02:50:12 +00:00
Aaron Giles
f394a31d0e Cleaned up Time Pilot sound board implementation:
* full memory maps
 * partial machine driver removes need for replicating filtering logic
 * updated all relevant drivers

Cleaned up Time Pilot and Tutankham drivers:
 * correct clocks where possible
 * merged memory maps
 * fully decoded memory maps
 * replaced hacky sprite rendering in Time Pilot with partial updates
 * save state support
 * removed Power Surge kludge, replaced with unmapped handler control
 * Tutankham runs at 60fps, with IRQs every other frame
 * Proper IRQ ack in Tutankham
2008-01-29 02:14:44 +00:00
Zsolt Vasvari
e424adb362 - Driver clean-up, including driver state
- Tried improving on the ROM mirroring, without any success.  Maybe somebody could look into it -- right now it requires all kinds of trickery and even a memcpy ;)  All I know is that everything that's there right now is needed otherwise either the game fails the ROM test, or Galaga crashes
2008-01-28 06:06:27 +00:00
Aaron Giles
340d21a577 mpatrol -> m52
troangel -> m57
2008-01-28 00:07:18 +00:00
Aaron Giles
395e08814b Turns out not all Irem sound boards are identical.
Properly tagged m52 and m62 sound boards, plus variants.
Updated all connected drivers.
Merged memory maps.
Proper video timing in 10 yard fight.
Converted troangel to tilemaps.
Moved definitions to header files.
2008-01-28 00:05:08 +00:00
Andrew Gardner
777f10fff8 Adds Galaxy Games multi-system dumped by www.softwarethis.com.
This purely a skeleton driver.  Someone who knows anything about the m68k will likely be able to make great progress with this one.

"Galaxy Games" is a trackball-based, cocktail, multi-game cab released in 1998.  It has 7 games built into the BIOS, but can also take 4 cartridges.  Namco apparently licensed some software to the company who makes it (two player simultaneous Ms. Pac Man - using trackballs?!).

The company's webpage is here:  http://www.cesgames.com/

They also have ROMs for their Classic Collection games available for download.  There's no information about the Classic Collection hardware, but I'm guessing it's very similar to the Galaxy Games hardware.  These can be likely added at a later date.

It looks like the softwarethis.com fellow has a Namco cart, but was unable to dump the ROMs?

BIOS ROMs are uploaded to /roms/g/galgbios.zip and Wiki is updated with skeleton status.
2008-01-27 04:04:04 +00:00
Zsolt Vasvari
4930b2dbfd - Added deprecat.h that contains some deprecated/discouraged contructs (see below)
The idea is to create extra work if a driver wants to use these and hopefully
  gives an incentive to look for an alternate solution
- Added #include of deprecat.h that rely on these contructs
- Removed a bunch of unneccassary #include's from these files
2008-01-25 09:30:43 +00:00
Aaron Giles
47d0b81153 Too early for this one.
Also moved the pce games into a separate library.
(General rule is 2 or more drivers files warrants its own library.)
2008-01-24 05:57:53 +00:00
Zsolt Vasvari
6d5ae15ab0 Removed the freely distributable Exidy games' dependency on Berzerk. Mainly for tinymame.mak 2008-01-24 01:53:56 +00:00
Zsolt Vasvari
79dcd62c8a Rewrote and modernize driver:
- correct colors -- in places different from the manual's description, but matches the flyer perfectly
- added speech
- fixed AY-8910 sounds
- odds and ends
- for now, broke Demon Eye X, but I wanted to get this out
2008-01-23 02:00:08 +00:00
davidhay
e3e182ee3d credit RussiaWithLove
Multifish and Rollfruit don't appear to have any 'recent' revisions, so this adds just those.  Sets are simply based on public dats.
2008-01-22 23:45:07 +00:00
Zsolt Vasvari
81a8efe80e - Fixes Ninja Kuna
- Cleaned up memory maps
- Renamed files to ninjakun.c
2008-01-21 01:53:30 +00:00
Nicola Salmoria
3caf91c713 - MAMEtesters bugs fixed: ninjakd2_0111u3gra, mnight0102gre
- cleaned up and merged ninjakd2, mnight and omegaf drivers into a single driver
- added flip screen support to all games
- fixed sprite overdraw mode:
  - ninjakd2 congratulations screen (e.g. stage 3) shows japanese characters which were previously missing
  - in ninjakd2, at the beginning of a level items are visible during the initial fade in. I'm not sure if this is correct but the other effects wouldn't work otherwise
  - in mnight attract mode, when the big ship is firing the other sprites no longer leave trails
  - in mnight at the end of a level the screen is slowly filled with balls and then slowly cleared to begin the following level. Same effect in the death sequence during attract mode.
- added proper computation of sprites to be drawn taking into account double size sprites. This fixes sticking shots in mnight without need for a hack.
- lowered ninjakd2 PCM playback rate to 13020 (from 16000). This seems to sound better and is a round division from one of the master clocks.
- removed ROM patch that was used to avoid the input protection in omegaf, added a rough but effective protection simulation.
- corrected some dip switches
- hooked up sound cpu reset line
- simplified ROM loading for the older games swizzling address lines in driver init.
2008-01-20 15:17:23 +00:00
Zsolt Vasvari
171060dca7 - Changed TLC34076 and games using it to RGB32
- Removed global Machine variable where possible
2008-01-14 02:38:35 +00:00
Zsolt Vasvari
679ddd69b8 Reorganizing the exidy audio hardware code. Only checking in because of the missing file victory.h 2008-01-13 09:54:58 +00:00
Aaron Giles
864e14b28d Cleaned up astinvad driver:
* Proper video timing
 * Hooked up 8255 PPIs
 * Correct interrupt timing
 * Consolidated code into single file
2008-01-12 21:36:25 +00:00
Aaron Giles
a62870621a It's the end of uitext.c as we know it (and I feel fine) 2008-01-12 03:32:30 +00:00
davidhay
47cf2c7874 log:
- added MESS PC-Engine emulatation
- added Blazing Lazers (working)
- added Paranoia (non-working due to lack of jamma interface 
emulation)
- fixed MAME debug build under VC2003

Please co-credit Charles MacDonald & Mr. Do for Blazing Lazers.

Note to Nathan: video/vdc.* re taken as-is from MESS, for the 
machine stuff I extracted common code (to be shared by MAME and 
MESS) and created machine/pcecommn.*
2008-01-10 22:34:51 +00:00
Zsolt Vasvari
ad0e78bc1c Added speech CPU
Removed cvsdrvrc.c
2008-01-10 00:57:25 +00:00
davidhay
7088b5139e Reorganization of Raiden 2 driver.. a bit of extra documentation of the 'V33' based set, which I've renamed..
nothing new working.
2008-01-09 23:10:20 +00:00
Zsolt Vasvari
c06b5027d3 Reogranized and started to clean up the CVS driver.
Moved ROM definition into its own file, like the NeoGeo driver
2008-01-09 09:48:39 +00:00
Zsolt Vasvari
531aea4a38 This essentially rewrites the CVS system video code. This fixes wallst071gre. Also fixed the S2650 registry window display. 2008-01-07 10:43:55 +00:00
Couriersud
7ce3ee6529 A major rewrite of skychut.c lying around for months. There are still some glitches and it is not perfect but the following has been achieved:
* fixes skychut37b1yel 
* fixes skychut37b6gre
* adds samples to ipm invaders - just rename your old invaders samples to ipminvad to test
* added - amongst others - "capsule" dip switch to ipm invaders
* sound ports identified
* demo sound and cabinet type driver configuration
* more I don't remember
2008-01-06 18:05:41 +00:00
Aaron Giles
aae4b919d1 (From David Haywood)
Added standard layout to neogeo driver, with alternate view to crop out leftmost 8 pixels.
2008-01-06 06:44:24 +00:00
Couriersud
fe9dff357c Added Z80 DMA chip.
- only implements intelligence to emulate dkong3
- fixed a misleading comment in 8257dma.h
2008-01-04 23:10:29 +00:00
Aaron Giles
415aebd2bd Rewrote sbrkout driver based on schematics:
* XTAL-based timing
 * Correct video timing
 * Full memory map
 * Correct memory usage ("zero page" RAM is shared with videoram)
 * Removed all input hacks
 * Fixed interrupt generation
 * Connected coin counters
 * Added save state support

Also fixed incorrect dependency in cdrom.c.
2008-01-03 09:01:18 +00:00
Aaron Giles
008440aa62 Better documented various bit latches.
Hooked up crusnexo lamp board (added layout).
Fixed year in MK4 startup test.
Switched to XTALs.
2008-01-02 15:16:59 +00:00
Couriersud
1ededa80ee Rewrote mario.c:
- fixed mario0110u1gre
- rewrote driver, separate MACHINE_DRIVER(mario_audio)
- palette from schematics
- video timing from schematics
- driver configuration switch Nintendo/Std Monitor
- got rid of COLORTABLE
- clocks as defines in .h
- use XTAL_*
2008-01-01 19:20:50 +00:00
Aaron Giles
fffa20252e Added new file xtal.h with commonly known/used clock XTALs.
Added #include "drivers/xtal.h" to driver.h so that these values are always available.
2008-01-01 09:11:07 +00:00
Couriersud
bf79fa4948 - radarsc1 uses tms5110 speech synth
- cvs games: according to PCBInfos speech chip is TMS5100.
  Changed driver to use TMS5100 and "game system operational" now sounds more natural
- removed sound/m58817.*
- added support for multiple coefficients maps to tms5110.*
- added coefficient maps for TMS5100 and M58817 from documented sources to tms5110r.c
- fixed interpolation factors (see tms5110r.c for reason)
- made lattice calculation precision 9bit
- added support for READBIT and LOADADDRESS commands to tms5110.c
- more changes in line with various patents
2007-12-25 22:47:08 +00:00
Aaron Giles
dbb50ed634 Zeus hardware:
* Cleaned up zeus wave RAM accessors.
 * Changed rendering code to allow for greater parallelism on multicore systems.
 * Removed some vestigial zeus 2 hacks.
 * Reduced visible area to remove artifacts.
 * Made right/bottom vertices inclusive to fix some gapping issues.
 * Fixed invasn lightgun offset.
 * Marked invasn as playable.

Zeus 2 hardware:
 * Fixed ROM loading, added banking support.
 * Separated zeus 2 video implementation from zeus implementation.
 * Implemented direct pixel accesses; enough to get startup screens to show.

ADSP-2100:
 * Properly documented ADSP-2104 internal memory map.
2007-12-21 16:12:20 +00:00
Phil Bennett
366460bd8f Renamed 'buggyb1' set to 'buggybjr'
Also made it work properly.
2007-12-20 23:58:28 +00:00
Tomasz Slanina
f80cc32b04 Merged afega.c and nmk16.c drivers
Removed many hacks from both.
A couple of games changed status from GAME_NOT_WORKING to fully playable:
stagger1, redhawk, redhawkb, grdnstrm, spec2k, firehawk (all - former afega.c) 
and  tharrier/tharrierj(nmk16.c)
2007-12-19 14:16:30 +00:00
Aaron Giles
75265e5e23 Changes for MAME 0.122. 2007-12-18 08:09:03 +00:00
Aaron Giles
df34329a47 Changes for MAME 0.121u3. 2007-12-17 16:39:40 +00:00
Aaron Giles
c82a966b3b Changes for MAME 0.121u2. 2007-12-17 16:37:57 +00:00
Aaron Giles
8a8ccc5949 Changes for MAME 0.121u1. 2007-12-17 16:33:33 +00:00
Aaron Giles
7b77f12186 Initial checkin of MAME 0.121. 2007-12-17 15:19:59 +00:00
Aaron Giles
3da7f47606 First checkin of MAME 0.121 docs folder. 2007-12-17 06:11:01 +00:00
Aaron Giles
811ef79c66 Created directory structure. 2007-12-17 05:15:05 +00:00