mirror of
https://github.com/holub/mame
synced 2025-06-05 12:26:35 +03:00
backgamn: Merge skeleton driver with that of manohman, which has a better description of same HW (nw)
This commit is contained in:
parent
01c94de408
commit
3d6eab8501
@ -912,7 +912,7 @@ files {
|
||||
createMAMEProjects(_target, _subtarget, "adp")
|
||||
files {
|
||||
MAME_DIR .. "src/mame/drivers/adp.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/backgamn.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/manohman.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/stellafr.cpp",
|
||||
}
|
||||
|
||||
@ -4622,7 +4622,6 @@ files {
|
||||
MAME_DIR .. "src/mame/drivers/malzak.cpp",
|
||||
MAME_DIR .. "src/mame/includes/malzak.h",
|
||||
MAME_DIR .. "src/mame/video/malzak.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/manohman.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/marywu.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/mcatadv.cpp",
|
||||
MAME_DIR .. "src/mame/includes/mcatadv.h",
|
||||
|
@ -1,99 +0,0 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:AJR
|
||||
/***************************************************************************
|
||||
|
||||
Backgammon - "COPYRIGHT BY ADP LUEBBECKE GERMANY 1990"
|
||||
|
||||
Skeleton driver.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "machine/68230pit.h"
|
||||
#include "machine/mc68681.h"
|
||||
#include "machine/msm6242.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/saa1099.h"
|
||||
#include "speaker.h"
|
||||
|
||||
class backgamn_state : public driver_device
|
||||
{
|
||||
public:
|
||||
backgamn_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_duart(*this, "duart"),
|
||||
m_pit(*this, "pit")
|
||||
{ }
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<mc68681_device> m_duart;
|
||||
required_device<pit68230_device> m_pit;
|
||||
|
||||
IRQ_CALLBACK_MEMBER(iack_handler);
|
||||
|
||||
private:
|
||||
virtual void machine_start() override;
|
||||
};
|
||||
|
||||
|
||||
void backgamn_state::machine_start()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
IRQ_CALLBACK_MEMBER(backgamn_state::iack_handler)
|
||||
{
|
||||
// TODO: fetch 68230 vector
|
||||
return m_duart->get_irq_vector();
|
||||
}
|
||||
|
||||
|
||||
static ADDRESS_MAP_START( backgamn_mem, AS_PROGRAM, 16, backgamn_state )
|
||||
AM_RANGE(0x000000, 0x01ffff) AM_ROM
|
||||
AM_RANGE(0x100000, 0x10003f) AM_DEVREADWRITE8("pit", pit68230_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE8("duart", mc68681_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x300000, 0x300003) AM_DEVWRITE8("saa", saa1099_device, write, 0x00ff) AM_READNOP
|
||||
AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x500000, 0x503fff) AM_RAM AM_SHARE("nvram") //work RAM
|
||||
AM_RANGE(0x600006, 0x600007) AM_NOP //(r) is discarded (watchdog?)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
static INPUT_PORTS_START( backgamn )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( backgamn )
|
||||
MCFG_CPU_ADD("maincpu", M68000, XTAL_8MHz) // MC68000P8
|
||||
MCFG_CPU_PROGRAM_MAP(backgamn_mem)
|
||||
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(backgamn_state, iack_handler)
|
||||
|
||||
MCFG_DEVICE_ADD("pit", PIT68230, XTAL_8MHz) // MC68230P8
|
||||
|
||||
MCFG_DEVICE_ADD("duart", MC68681, XTAL_3_6864MHz)
|
||||
MCFG_MC68681_IRQ_CALLBACK(INPUTLINE("maincpu", M68K_IRQ_4))
|
||||
|
||||
MCFG_DEVICE_ADD("rtc", MSM6242, XTAL_32_768kHz) // M62X42B
|
||||
|
||||
MCFG_NVRAM_ADD_NO_FILL("nvram") // KM6264BL-10 x2 + MAX696CFL + battery
|
||||
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
MCFG_SOUND_ADD("saa", SAA1099, XTAL_8MHz / 2) // clock not verified
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
ROM_START( backgamn )
|
||||
ROM_REGION( 0x100000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE( "b_f2_i.bin", 0x00000, 0x10000, CRC(9e42937c) SHA1(85d462a560b85b03ee9d341e18815b7c396118ac) )
|
||||
ROM_LOAD16_BYTE( "b_f2_ii.bin", 0x00001, 0x10000, CRC(8e0ee50c) SHA1(2a05c337db1131b873646aa4109593636ebaa356) )
|
||||
|
||||
ROM_REGION16_BE( 0x40000, "gfx1", 0 )
|
||||
ROM_LOAD16_BYTE( "b_f1_i.bin", 0x00000, 0x20000, NO_DUMP )
|
||||
ROM_LOAD16_BYTE( "b_f1_ii.bin", 0x00001, 0x20000, NO_DUMP )
|
||||
ROM_END
|
||||
|
||||
|
||||
GAME( 1990, backgamn, 0, backgamn, backgamn, backgamn_state, 0, ROT0, "ADP", "Backgammon", MACHINE_NOT_WORKING )
|
@ -133,35 +133,59 @@
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "machine/68230pit.h"
|
||||
#include "machine/mc68681.h"
|
||||
#include "machine/msm6242.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/saa1099.h"
|
||||
#include "speaker.h"
|
||||
|
||||
#define MASTER_CLOCK XTAL_8MHz
|
||||
#define SECONDARY_CLOCK XTAL_3_6864MHz
|
||||
|
||||
|
||||
class manohman_state : public driver_device
|
||||
{
|
||||
public:
|
||||
manohman_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_duart(*this, "duart"),
|
||||
m_pit(*this, "pit")
|
||||
{ }
|
||||
|
||||
IRQ_CALLBACK_MEMBER(iack_handler);
|
||||
|
||||
private:
|
||||
virtual void machine_start() override;
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<mc68681_device> m_duart;
|
||||
required_device<pit68230_device> m_pit;
|
||||
};
|
||||
|
||||
|
||||
void manohman_state::machine_start()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
IRQ_CALLBACK_MEMBER(manohman_state::iack_handler)
|
||||
{
|
||||
// TODO: fetch 68230 vector
|
||||
return m_duart->get_irq_vector();
|
||||
}
|
||||
|
||||
|
||||
/*********************************************
|
||||
* Memory Map Definition *
|
||||
*********************************************/
|
||||
|
||||
static ADDRESS_MAP_START( manohman_map, AS_PROGRAM, 16, manohman_state )
|
||||
static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, manohman_state )
|
||||
AM_RANGE(0x000000, 0x01ffff) AM_ROM
|
||||
AM_RANGE(0x100000, 0x100001) AM_NOP // smell to MAX696 watchdog...
|
||||
AM_RANGE(0x300000, 0x300003) AM_DEVWRITE8("saa", saa1099_device, write, 0x00ff)
|
||||
AM_RANGE(0x500000, 0x503fff) AM_RAM
|
||||
AM_RANGE(0x600006, 0x600007) AM_RAM // write bitpatterns to compare with the 500000-503ff8 RAM testing.
|
||||
// AM_RANGE(0xYYYYYY, 0xYYYYYY) AM_RAM
|
||||
AM_RANGE(0x100000, 0x10003f) AM_DEVREADWRITE8("pit", pit68230_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE8("duart", mc68681_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x300000, 0x300003) AM_DEVWRITE8("saa", saa1099_device, write, 0x00ff) AM_READNOP
|
||||
AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x500000, 0x503fff) AM_RAM AM_SHARE("nvram") //work RAM
|
||||
AM_RANGE(0x600006, 0x600007) AM_NOP //(r) is discarded (watchdog?)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
/*
|
||||
@ -209,14 +233,22 @@ INPUT_PORTS_END
|
||||
*********************************************/
|
||||
|
||||
static MACHINE_CONFIG_START( manohman )
|
||||
// basic machine hardware
|
||||
MCFG_CPU_ADD("maincpu", M68000, MASTER_CLOCK) // 8 MHz
|
||||
MCFG_CPU_PROGRAM_MAP(manohman_map)
|
||||
MCFG_CPU_ADD("maincpu", M68000, XTAL_8MHz) // MC68000P8
|
||||
MCFG_CPU_PROGRAM_MAP(mem_map)
|
||||
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(manohman_state, iack_handler)
|
||||
|
||||
MCFG_DEVICE_ADD("pit", PIT68230, XTAL_8MHz) // MC68230P8
|
||||
|
||||
MCFG_DEVICE_ADD("duart", MC68681, XTAL_3_6864MHz)
|
||||
MCFG_MC68681_IRQ_CALLBACK(INPUTLINE("maincpu", M68K_IRQ_4))
|
||||
|
||||
MCFG_DEVICE_ADD("rtc", MSM6242, XTAL_32_768kHz) // M62X42B
|
||||
|
||||
MCFG_NVRAM_ADD_NO_FILL("nvram") // KM6264BL-10 x2 + MAX696CFL + battery
|
||||
|
||||
// sound hardware
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
MCFG_SAA1099_ADD("saa", MASTER_CLOCK) // guess
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_ADD("saa", SAA1099, XTAL_8MHz / 2) // clock not verified
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
@ -230,6 +262,12 @@ ROM_START( manohman )
|
||||
ROM_LOAD16_BYTE( "mom_austria_vorserie_i.bin", 0x000001, 0x010000, CRC(3c9507f9) SHA1(489a6aadfb7d61be0873bf48d428e9d915268f95) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( backgamn )
|
||||
ROM_REGION( 0x100000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE( "b_f2_i.bin", 0x00000, 0x10000, CRC(9e42937c) SHA1(85d462a560b85b03ee9d341e18815b7c396118ac) )
|
||||
ROM_LOAD16_BYTE( "b_f2_ii.bin", 0x00001, 0x10000, CRC(8e0ee50c) SHA1(2a05c337db1131b873646aa4109593636ebaa356) )
|
||||
ROM_END
|
||||
|
||||
|
||||
/*********************************************
|
||||
* Game Drivers *
|
||||
@ -237,3 +275,4 @@ ROM_END
|
||||
|
||||
// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS
|
||||
GAME( 199?, manohman, 0, manohman, manohman, manohman_state, 0, ROT0, "Merkur", "Mann, oh-Mann", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_REQUIRES_ARTWORK )
|
||||
GAME( 1990, backgamn, 0, manohman, manohman, manohman_state, 0, ROT0, "Merkur", "Backgammon", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_REQUIRES_ARTWORK )
|
||||
|
@ -2660,9 +2660,6 @@ babbage //
|
||||
backfire // MBZ (c) 1995
|
||||
backfirea // MBZ (c) 1995
|
||||
|
||||
@source:backgamn.cpp
|
||||
backgamn // (c) 1990
|
||||
|
||||
@source:badlands.cpp
|
||||
badlands // 136074 (c) 1989
|
||||
badlandsb // bootleg
|
||||
@ -18295,6 +18292,7 @@ malzak // (c) 1980? Kitronix
|
||||
malzak2 // (c) 1980? Kitronix
|
||||
|
||||
@source:manohman.cpp
|
||||
backgamn // (c) 1990
|
||||
manohman // 199?, Merkur.
|
||||
|
||||
@source:mappy.cpp
|
||||
|
Loading…
Reference in New Issue
Block a user