blob: 4dfd825e0fed6e2a3c028e60748f3333bdb7a1f3 (
plain) (
tree)
|
|
/***************************************************************************
GAME PLAN driver
driver by Chris Moore
***************************************************************************/
#include "machine/6522via.h"
#define GAMEPLAN_MAIN_MASTER_CLOCK (XTAL_3_579545MHz)
#define GAMEPLAN_AUDIO_MASTER_CLOCK (XTAL_3_579545MHz)
#define GAMEPLAN_MAIN_CPU_CLOCK (GAMEPLAN_MAIN_MASTER_CLOCK / 4)
#define GAMEPLAN_AUDIO_CPU_CLOCK (GAMEPLAN_AUDIO_MASTER_CLOCK / 4)
#define GAMEPLAN_AY8910_CLOCK (GAMEPLAN_AUDIO_MASTER_CLOCK / 2)
#define GAMEPLAN_PIXEL_CLOCK (XTAL_11_6688MHz / 2)
/* Used Leprechaun/Pot of Gold (and Pirate Treasure) - as stated in manual for Pot Of Gold */
#define LEPRECHAUN_MAIN_MASTER_CLOCK (XTAL_4MHz)
#define LEPRECHAUN_MAIN_CPU_CLOCK (LEPRECHAUN_MAIN_MASTER_CLOCK / 4)
class gameplan_state : public driver_device
{
public:
gameplan_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_via_0(*this, "via6522_0"),
m_via_1(*this, "via6522_1"),
m_via_2(*this, "via6522_2") { }
/* machine state */
UINT8 m_current_port;
UINT8 *m_trvquest_question;
/* video state */
UINT8 *m_videoram;
size_t m_videoram_size;
UINT8 m_video_x;
UINT8 m_video_y;
UINT8 m_video_command;
UINT8 m_video_data;
emu_timer *m_via_0_ca1_timer;
/* devices */
device_t *m_maincpu;
device_t *m_audiocpu;
device_t *m_riot;
required_device<via6522_device> m_via_0;
required_device<via6522_device> m_via_1;
required_device<via6522_device> m_via_2;
};
/*----------- defined in video/gameplan.c -----------*/
extern const via6522_interface gameplan_via_0_interface;
extern const via6522_interface leprechn_via_0_interface;
extern const via6522_interface trvquest_via_0_interface;
MACHINE_CONFIG_EXTERN( gameplan_video );
MACHINE_CONFIG_EXTERN( leprechn_video );
MACHINE_CONFIG_EXTERN( trvquest_video );
|