Changed CPU's frequencies after some PCB measures.

Changed Xtal type for 18*22 pins hardware.
Added some handlers to debug the AY8910/12 ports.
This commit is contained in:
Roberto Fresca 2011-03-08 18:50:01 +00:00
parent 1a19ba782b
commit 32fab82a0f

View File

@ -43,7 +43,7 @@
--------------
* Winners Circle:
* Winners Circle 81 (28*28 pins PCB):
1x Z80 @ 3 MHz. (main CPU)
1x Z80 @ 2.4 MHz. (sound CPU)
@ -63,6 +63,33 @@
1x Xtal @ 20 MHz. (video)
* Winners Circle 82 (18*22 pins PCB):
1x Z80 @ 2.6 MHz. (main CPU)
1x Z80 @ 2.6 MHz. (sound CPU)
1x AY-3-8910 @ 2 MHz? (need clk confirmation).
1x empty socket (maybe an AY replacement?)
wih the following pinouts:
(28 pins)
Vcc +5v @ Pin 19
GND @ pins 6 & 16
Analog Channels @ Pins 1 y 5
Clock @ pin 15
16x 8116 (16K x 1bit). DRAM Video (should be set as 32 KB).
1x 6116 (NVRAM)
2x 2114 (Sound DRAM)
4x 2732 (Main program ROMs).
1x 2716 (Sound program ROM).
1x 82s123 (Color bipolar PROM)
1x Xtal @ 18.432 MHz. (main)
1x Xtal @ 20 MHz. (video)
* Ruleta RE-800:
1x Z80 @ 2 MHz. (main CPU) <--- is this correct?
@ -264,17 +291,19 @@
TODO:
- Inputs/Outputs for Winners Circle.
- Check the sound CPU connection in Winners Circle sets.
- See why the "rainbow timer" for gamble the earnings is nearly twice
the slow against the real thing.
- Check the sound CPU and AY clocks in Winners Circle sets.
**************************************************************************/
#define WC_MAIN_XTAL (XTAL_24MHz) /* Main for Winners Circle boards */
#define RE_MAIN_XTAL (XTAL_16MHz) /* Main for roulette boards */
#define VIDEO_XTAL (XTAL_20MHz) /* Video circuitry Xtal (all) */
#define AY_CLK1 (1000000) /* AY-3-8912 clock for 81 (28*28 PCB), measured */
#define AY_CLK2 (2000000) /* AY-3-8912 clock for 81b & 82 (18*22 PCB), guessed */
#define WC81_MAIN_XTAL (XTAL_24MHz) /* Main crystal for Winners Circle 28*28 pins PCB's */
#define WC82_MAIN_XTAL (XTAL_18_432MHz) /* Main crystal for Winners Circle 18*22 pins PCB's */
#define RE_MAIN_XTAL (XTAL_16MHz) /* Main for roulette boards */
#define VIDEO_XTAL (XTAL_20MHz) /* Video circuitry crystal (all) */
#define AY_CLK1 (1000000) /* AY-3-8912 clock for WC81 (28*28 PCB), measured */
#define AY_CLK2 (2000000) /* AY-3-8910 clock for 81b & 82 (18*22 PCB), guessed */
#include "emu.h"
@ -511,6 +540,16 @@ static WRITE8_HANDLER( wc_meters_w )
// popmessage("meters: %02x", (data ^ 0xff));
}
static WRITE8_DEVICE_HANDLER(ay_port_a_out)
{
logerror("AY port A write: %02X\n", data);
}
static WRITE8_DEVICE_HANDLER(ay_port_b_out)
{
logerror("AY port B write: %02X\n", data);
}
/***************************************************
* --- MEMORY MAPS --- *
@ -1289,18 +1328,32 @@ static INPUT_PORTS_START( luckyrlt )
INPUT_PORTS_END
/*******************************************
* Sound Interface *
*******************************************/
static const ay8910_interface aysnd_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, /* Port A read */
DEVCB_NULL, /* Port B read */
DEVCB_HANDLER(ay_port_a_out), /* Port A write */
DEVCB_HANDLER(ay_port_b_out) /* Port B write */
};
/*******************************************
* Machine Drivers *
*******************************************/
static MACHINE_CONFIG_START( winner81, driver_device )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, WC_MAIN_XTAL/8) /* measured */
MCFG_CPU_ADD("maincpu", Z80, WC81_MAIN_XTAL/8) /* measured */
MCFG_CPU_PROGRAM_MAP(winner81_map)
MCFG_CPU_IO_MAP(winner81_cpu_io_map)
MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse)
MCFG_CPU_ADD("soundcpu", Z80, WC_MAIN_XTAL/10) /* measured */
MCFG_CPU_ADD("soundcpu", Z80, WC81_MAIN_XTAL/10) /* measured */
MCFG_CPU_PROGRAM_MAP(winner81_sound_map)
MCFG_CPU_IO_MAP(winner81_sound_cpu_io_map)
MCFG_CPU_PERIODIC_INT(nmi_line_pulse, 244) /* 244 Hz (1MHz/16/16/16) */
@ -1324,17 +1377,18 @@ static MACHINE_CONFIG_START( winner81, driver_device )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8912, AY_CLK1) /* measured */
MCFG_SOUND_CONFIG(aysnd_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( winner82, driver_device )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, WC_MAIN_XTAL/8) /* measured */
MCFG_CPU_ADD("maincpu", Z80, WC82_MAIN_XTAL/8) /* measured */
MCFG_CPU_PROGRAM_MAP(winner82_map)
MCFG_CPU_IO_MAP(winner82_cpu_io_map)
MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse)
MCFG_CPU_ADD("soundcpu", Z80, WC_MAIN_XTAL/10) /* measured */
MCFG_CPU_ADD("soundcpu", Z80, WC82_MAIN_XTAL/8) /* measured */
MCFG_CPU_PROGRAM_MAP(winner82_sound_map)
MCFG_CPU_IO_MAP(winner82_sound_cpu_io_map)
@ -1356,7 +1410,7 @@ static MACHINE_CONFIG_START( winner82, driver_device )
MCFG_VIDEO_START(winner)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8912, AY_CLK2) /* measured */
MCFG_SOUND_ADD("aysnd", AY8910, AY_CLK2) /* measured */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -1390,7 +1444,7 @@ static MACHINE_CONFIG_START( re800, driver_device )
MCFG_VIDEO_START(winner)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8912, AY_CLK1)
MCFG_SOUND_ADD("aysnd", AY8912, AY_CLK2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END