mirror of
https://github.com/holub/mame
synced 2025-04-24 09:20:02 +03:00
New working clones added
------------- Fidelity Excel 68000 Mach II (rev. C+) [CB-Emu] Fidelity Excel 68000 Mach III [CB-Emu]
This commit is contained in:
parent
9ed831e0a6
commit
ca9de0f13d
@ -11,6 +11,7 @@
|
||||
such as Arena(in editmode).
|
||||
|
||||
TODO:
|
||||
- fex68km3 addressmap RAM mirror? PCB has 2*32K RAM, emulated has 16K+64K
|
||||
- how does dual-CPU work?
|
||||
- USART is not emulated
|
||||
- V9(68030 @ 32MHz) is faster than V10(68040 @ 25MHz) but it should be the other
|
||||
@ -23,11 +24,14 @@
|
||||
|
||||
Excel 68000 (model 6094)
|
||||
------------------------
|
||||
16KB RAM(2*SRM2264C-10), 64KB ROM(2*AT27C256-15DC)
|
||||
16KB RAM(2*SRM2264C-10 @ U8/U9), 64KB ROM(2*AT27C256-15DC @ U6/U7)
|
||||
HD68HC000P12 CPU, 12MHz XTAL
|
||||
PCB label 510-1129A01
|
||||
PCB has edge connector for module, but no external slot
|
||||
|
||||
There's room for 2 SIMMs at U22 and U23. Unpopulated in Excel 68000, used for
|
||||
128KB hashtable RAM in Mach II. Mach III has wire mods to U8/U9(2*32KB).
|
||||
|
||||
I/O is via TTL, overall very similar to EAG.
|
||||
|
||||
|
||||
@ -181,7 +185,7 @@ public:
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(irq_off) { m_maincpu->set_input_line(M68K_IRQ_2, CLEAR_LINE); }
|
||||
|
||||
// Excel 68000
|
||||
DECLARE_WRITE8_MEMBER(fexcel68k_mux_w);
|
||||
DECLARE_WRITE8_MEMBER(fex68k_mux_w);
|
||||
|
||||
// EAG(6114/6117)
|
||||
DECLARE_DRIVER_INIT(eag);
|
||||
@ -202,7 +206,7 @@ public:
|
||||
Excel 68000
|
||||
******************************************************************************/
|
||||
|
||||
WRITE8_MEMBER(fidel68k_state::fexcel68k_mux_w)
|
||||
WRITE8_MEMBER(fidel68k_state::fex68k_mux_w)
|
||||
{
|
||||
// a1-a3,d0: 74259
|
||||
u8 mask = 1 << offset;
|
||||
@ -282,13 +286,23 @@ READ8_MEMBER(fidel68k_state::eag_cart_r)
|
||||
|
||||
// Excel 68000
|
||||
|
||||
static ADDRESS_MAP_START( fexcel68k_map, AS_PROGRAM, 16, fidel68k_state )
|
||||
static ADDRESS_MAP_START( fex68k_map, AS_PROGRAM, 16, fidel68k_state )
|
||||
AM_RANGE(0x000000, 0x00ffff) AM_ROM
|
||||
AM_RANGE(0x000000, 0x00000f) AM_MIRROR(0x00fff0) AM_WRITE8(eag_leds_w, 0x00ff)
|
||||
AM_RANGE(0x000000, 0x00000f) AM_MIRROR(0x00fff0) AM_WRITE8(eag_7seg_w, 0xff00)
|
||||
AM_RANGE(0x044000, 0x047fff) AM_RAM
|
||||
AM_RANGE(0x100000, 0x10000f) AM_MIRROR(0x03fff0) AM_READ8(eag_input1_r, 0x00ff)
|
||||
AM_RANGE(0x140000, 0x14000f) AM_MIRROR(0x03fff0) AM_WRITE8(fexcel68k_mux_w, 0x00ff)
|
||||
AM_RANGE(0x140000, 0x14000f) AM_MIRROR(0x03fff0) AM_WRITE8(fex68k_mux_w, 0x00ff)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( fex68km2_map, AS_PROGRAM, 16, fidel68k_state )
|
||||
AM_RANGE(0x200000, 0x21ffff) AM_RAM
|
||||
AM_IMPORT_FROM( fex68k_map )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( fex68km3_map, AS_PROGRAM, 16, fidel68k_state )
|
||||
AM_RANGE(0x200000, 0x20ffff) AM_RAM
|
||||
AM_IMPORT_FROM( fex68k_map )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -345,7 +359,7 @@ ADDRESS_MAP_END
|
||||
Input Ports
|
||||
******************************************************************************/
|
||||
|
||||
static INPUT_PORTS_START( fexcel68k )
|
||||
static INPUT_PORTS_START( fex68k )
|
||||
PORT_INCLUDE( fidel_cb_buttons )
|
||||
|
||||
PORT_START("IN.8")
|
||||
@ -389,11 +403,11 @@ INPUT_PORTS_END
|
||||
Machine Drivers
|
||||
******************************************************************************/
|
||||
|
||||
static MACHINE_CONFIG_START( fexcel68k )
|
||||
static MACHINE_CONFIG_START( fex68k )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", M68000, XTAL_12MHz) // HD68HC000P12
|
||||
MCFG_CPU_PROGRAM_MAP(fexcel68k_map)
|
||||
MCFG_CPU_PROGRAM_MAP(fex68k_map)
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq_on", fidel68k_state, irq_on, attotime::from_hz(618)) // theoretical frequency from 556 timer (22nF, 91K + 20K POT @ 14.8K, 0.1K), measurement was 580Hz
|
||||
MCFG_TIMER_START_DELAY(attotime::from_hz(618) - attotime::from_nsec(1525)) // active for 1.525us
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq_off", fidel68k_state, irq_off, attotime::from_hz(618))
|
||||
@ -408,6 +422,21 @@ static MACHINE_CONFIG_START( fexcel68k )
|
||||
MCFG_SOUND_ROUTE_EX(0, "dac", 1.0, DAC_VREF_POS_INPUT)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( fex68km2, fex68k )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(fex68km2_map)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( fex68km3, fex68k )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_DEVICE_CLOCK(XTAL_16MHz) // factory overclock
|
||||
MCFG_CPU_PROGRAM_MAP(fex68km3_map)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_START( eag )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -479,10 +508,22 @@ MACHINE_CONFIG_END
|
||||
ROM Definitions
|
||||
******************************************************************************/
|
||||
|
||||
ROM_START( fexcel68k ) // model 6094, PCB label 510.1120B01
|
||||
ROM_START( fex68k ) // model 6094, PCB label 510.1120B01
|
||||
ROM_REGION16_BE( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE("e3_yellow.u6", 0x00000, 0x08000, CRC(a8a27714) SHA1(bc42a561eb39dd389c7831f1a25ad260510085d8) ) // AT27C256-15
|
||||
ROM_LOAD16_BYTE("04_red.u7", 0x00001, 0x08000, CRC(560a14b7) SHA1(11f2375255bfa229314697f103e891ba1cf0c715) ) // "
|
||||
ROM_LOAD16_BYTE("o4_red.u7", 0x00001, 0x08000, CRC(560a14b7) SHA1(11f2375255bfa229314697f103e891ba1cf0c715) ) // "
|
||||
ROM_END
|
||||
|
||||
ROM_START( fex68km2 ) // model 6097, PCB label 510.1120B01
|
||||
ROM_REGION16_BE( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE("fex68km2.u6", 0x00000, 0x08000, CRC(2e65e7ad) SHA1(4f3aec12041c9014d5d700909bac66bae1f9eadf) )
|
||||
ROM_LOAD16_BYTE("fex68km2.u7", 0x00001, 0x08000, CRC(4c20334a) SHA1(2e575b88c41505cc89599d2fc13e1e84fe474469) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( fex68km3 ) // model 6098, PCB label 510.1120B01
|
||||
ROM_REGION16_BE( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE("me_white.u6", 0x00000, 0x08000, CRC(4b14cd9f) SHA1(4d41196900a71bf0699dae50f4726acc0ed3dced) ) // 27c256
|
||||
ROM_LOAD16_BYTE("mo_yellow.u7", 0x00001, 0x08000, CRC(b96b0b5f) SHA1(281145be802efb38ed764aecb26b511dcd71cb87) ) // "
|
||||
ROM_END
|
||||
|
||||
|
||||
@ -510,6 +551,14 @@ ROM_START( feagv9 )
|
||||
ROM_LOAD16_BYTE("eag-v9a", 0x00001, 0x10000, CRC(255c63c0) SHA1(8aa0397bdb3731002f5b066cd04ec62531267e22) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( feagv10 )
|
||||
ROM_REGION( 0x20000, "maincpu", 0 )
|
||||
ROM_LOAD32_BYTE("16", 0x00000, 0x08000, CRC(8375d61f) SHA1(e042f6f01480c59ee09a458cf34f135664479824) ) // 27c256
|
||||
ROM_LOAD32_BYTE("17", 0x00001, 0x08000, CRC(bfd14916) SHA1(115af6dfd29ddd8ad6d2ce390f8ecc4d60de6fce) ) // "
|
||||
ROM_LOAD32_BYTE("18", 0x00002, 0x08000, CRC(9341dcaf) SHA1(686bd4799e89ffaf11a813d4cf5a2aedd4c2d97a) ) // "
|
||||
ROM_LOAD32_BYTE("19", 0x00003, 0x08000, CRC(a70c5468) SHA1(7f6b4f46577d5cfdaa84d387c7ce35d941e5bbc7) ) // "
|
||||
ROM_END
|
||||
|
||||
ROM_START( feagv11 )
|
||||
ROM_REGION( 0x20000, "maincpu", 0 )
|
||||
ROM_LOAD32_BYTE("16", 0x00000, 0x08000, CRC(8375d61f) SHA1(e042f6f01480c59ee09a458cf34f135664479824) ) // 27c256
|
||||
@ -518,20 +567,20 @@ ROM_START( feagv11 )
|
||||
ROM_LOAD32_BYTE("19", 0x00003, 0x08000, CRC(a70c5468) SHA1(7f6b4f46577d5cfdaa84d387c7ce35d941e5bbc7) ) // "
|
||||
ROM_END
|
||||
|
||||
#define rom_feagv10 rom_feagv11
|
||||
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
Drivers
|
||||
******************************************************************************/
|
||||
|
||||
// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
|
||||
CONS( 1987, fexcel68k, 0, 0, fexcel68k, fexcel68k, fidel68k_state, 0, "Fidelity Electronics", "Excel 68000", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
|
||||
CONS( 1987, fex68k, 0, 0, fex68k, fex68k, fidel68k_state, 0, "Fidelity Electronics", "Excel 68000", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1988, fex68km2, fex68k, 0, fex68km2, fex68k, fidel68k_state, 0, "Fidelity Electronics", "Excel 68000 Mach II (rev. C+)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1988, fex68km3, fex68k, 0, fex68km3, fex68k, fidel68k_state, 0, "Fidelity Electronics", "Excel 68000 Mach III", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
|
||||
CONS( 1989, feagv2, 0, 0, eag, eag, fidel68k_state, eag, "Fidelity Electronics", "Elite Avant Garde (model 6114-2/3/4, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1989, feagv2a, feagv2, 0, eag, eag, fidel68k_state, eag, "Fidelity Electronics", "Elite Avant Garde (model 6114-2/3/4, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1990, feagv7, feagv2, 0, eagv7, eag, fidel68k_state, 0, "Fidelity Electronics", "Elite Avant Garde (model 6117-7)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1990, feagv9, feagv2, 0, eagv9, eag, fidel68k_state, 0, "Fidelity Electronics", "Elite Avant Garde (model 6117-9)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1990, feagv10, feagv2, 0, eagv10, eag, fidel68k_state, 0, "Fidelity Electronics", "Elite Avant Garde (model 6117-10)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 2002, feagv11, feagv2, 0, eagv11, eag, fidel68k_state, 0, "hack (Wilfried Bucke)", "Elite Avant Garde (model 6117-11)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1989, feagv2, 0, 0, eag, eag, fidel68k_state, eag, "Fidelity Electronics", "Elite Avant Garde (model 6114-2/3/4, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1989, feagv2a, feagv2, 0, eag, eag, fidel68k_state, eag, "Fidelity Electronics", "Elite Avant Garde (model 6114-2/3/4, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1990, feagv7, feagv2, 0, eagv7, eag, fidel68k_state, 0, "Fidelity Electronics", "Elite Avant Garde (model 6117-7)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1990, feagv9, feagv2, 0, eagv9, eag, fidel68k_state, 0, "Fidelity Electronics", "Elite Avant Garde (model 6117-9)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 1990, feagv10, feagv2, 0, eagv10, eag, fidel68k_state, 0, "Fidelity Electronics", "Elite Avant Garde (model 6117-10)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
CONS( 2002, feagv11, feagv2, 0, eagv11, eag, fidel68k_state, 0, "hack (Wilfried Bucke)", "Elite Avant Garde (model 6117-11)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
|
@ -12490,7 +12490,9 @@ feagv2 //
|
||||
feagv2a //
|
||||
feagv7 //
|
||||
feagv9 //
|
||||
fexcel68k //
|
||||
fex68k //
|
||||
fex68km2 //
|
||||
fex68km3 //
|
||||
|
||||
@source:fidelmcs48.cpp
|
||||
fscc6 //
|
||||
|
Loading…
Reference in New Issue
Block a user