Commit Graph

256 Commits

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