modernized skeleton template: hopefully it will help people to create modern skeleton drivers. ;-) no whatsnew.

This commit is contained in:
Fabio Priuli 2011-12-21 11:58:48 +00:00
parent 0da3f91d82
commit 368a119cae

View File

@ -4,6 +4,8 @@ Template for skeleton drivers
***************************************************************************/ ***************************************************************************/
#define ADDRESS_MAP_MODERN
#include "emu.h" #include "emu.h"
#include "cpu/z80/z80.h" #include "cpu/z80/z80.h"
//#include "sound/ay8910.h" //#include "sound/ay8910.h"
@ -14,24 +16,36 @@ class xxx_state : public driver_device
{ {
public: public:
xxx_state(const machine_config &mconfig, device_type type, const char *tag) xxx_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag) { } : driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu")
{ }
// devices
required_device<cpu_device> m_maincpu;
// driver_device overrides
virtual void machine_start();
virtual void machine_reset();
virtual void video_start();
virtual bool screen_update(screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect);
}; };
static VIDEO_START( xxx ) void xxx_state::video_start()
{ {
} }
static SCREEN_UPDATE( xxx ) bool xxx_state::screen_update( screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect )
{ {
return 0; return 0;
} }
static ADDRESS_MAP_START( xxx_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( xxx_map, AS_PROGRAM, 8, xxx_state )
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( xxx_io, AS_IO, 8 ) static ADDRESS_MAP_START( xxx_io, AS_IO, 8, xxx_state )
// ADDRESS_MAP_GLOBAL_MASK(0xff) // ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END ADDRESS_MAP_END
@ -53,17 +67,16 @@ static GFXDECODE_START( xxx )
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 1 ) GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 1 )
GFXDECODE_END GFXDECODE_END
static MACHINE_START( xxx )
{
// xxx_state *state = machine.driver_data<xxx_state>();
void xxx_state::machine_start()
{
} }
static MACHINE_RESET( xxx ) void xxx_state::machine_reset()
{ {
} }
static PALETTE_INIT( xxx ) static PALETTE_INIT( xxx )
{ {
} }
@ -75,9 +88,6 @@ static MACHINE_CONFIG_START( xxx, xxx_state )
MCFG_CPU_PROGRAM_MAP(xxx_map) MCFG_CPU_PROGRAM_MAP(xxx_map)
MCFG_CPU_IO_MAP(xxx_io) MCFG_CPU_IO_MAP(xxx_io)
MCFG_MACHINE_START(xxx)
MCFG_MACHINE_RESET(xxx)
/* video hardware */ /* video hardware */
MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60) MCFG_SCREEN_REFRESH_RATE(60)
@ -85,15 +95,12 @@ static MACHINE_CONFIG_START( xxx, xxx_state )
MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16) MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MCFG_SCREEN_SIZE(32*8, 32*8) MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE(xxx)
MCFG_GFXDECODE(xxx) MCFG_GFXDECODE(xxx)
MCFG_PALETTE_INIT(xxx) MCFG_PALETTE_INIT(xxx)
MCFG_PALETTE_LENGTH(8) MCFG_PALETTE_LENGTH(8)
MCFG_VIDEO_START(xxx)
/* sound hardware */ /* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono") MCFG_SPEAKER_STANDARD_MONO("mono")
// MCFG_SOUND_ADD("aysnd", AY8910, MAIN_CLOCK/4) // MCFG_SOUND_ADD("aysnd", AY8910, MAIN_CLOCK/4)