Commit Graph

269 Commits

Author SHA1 Message Date
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