mirror of
https://github.com/holub/mame
synced 2025-07-12 21:19:14 +03:00
New working systems
------------------- Star Trek: 25th Anniversary (handheld) [hap, Sean Riddle, Mr. Do] Top Gun: Second Mission (handheld) [hap, Sean Riddle] Elite Premiere [hap, Berger]
This commit is contained in:
parent
7b45bf1403
commit
8a333d14e0
@ -15,7 +15,7 @@ It was not manufactured by Elektor, only described as a homebrew project.
|
||||
FN 1 = new game, FN 2 = set level, FN 3 = principle variation.
|
||||
Moves are confirmed by pressing GO twice.
|
||||
|
||||
The program is the same for all versions, only the display differs.
|
||||
The chess program is the same for all versions, only the display differs.
|
||||
|
||||
Hardware notes:
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
Fidelity Chesster Challenger
|
||||
|
||||
These were made after Hegener + Glaser took over Fidelity(design phase started
|
||||
These were made after Hegener + Glaser took over Fidelity (design phase started
|
||||
before that). Kishon Chesster was released under both Fidelity, and Mephisto brands.
|
||||
|
||||
********************************************************************************
|
||||
|
@ -10,7 +10,7 @@ Excel 68000 I/O is very similar to EAG, so it's handled in this driver as well
|
||||
|
||||
TODO:
|
||||
- unemulated waitstates with DTACK
|
||||
- EAG USART is not emulated, conflict with input2_r?
|
||||
- EAG USART doesn't work right? it should be able to connect to a serial printer
|
||||
- V10 CPU emulation is too slow, MAME 68040 opcode timing is same as 68030 but in
|
||||
reality it is much faster, same goes for V11 of course (see note below)
|
||||
- V11 CPU should be M68EC060, not yet emulated. Now using M68EC040 in its place
|
||||
@ -19,6 +19,8 @@ TODO:
|
||||
- Do the opening book modules work? It detects the rom, but then does nothing
|
||||
with it. Maybe support is limited since the basic CB9/CB16 modules have no use
|
||||
on newer chesscomputers with a large internal opening library.
|
||||
- does premiere only use half of the nvram? 0x600000-0x603fff seems unused
|
||||
- premiere unknown reads/writes to 0x500000 with the Vancouver program
|
||||
|
||||
Currently(May 2020) when compared to the real chesscomputers, to get closer to the
|
||||
actual speed, overclock V10 and V11 to 230%. This can be done by starting MAME
|
||||
@ -45,8 +47,8 @@ To start, hold New Game or Clear.
|
||||
|
||||
********************************************************************************
|
||||
|
||||
Elite Avant Garde (EAG, model 6114)
|
||||
-----------------------------------
|
||||
Elite Avant Garde 2265 (EAG, model 6114)
|
||||
----------------------------------------
|
||||
|
||||
There are 5 versions of model 6114(V1 to V5):
|
||||
|
||||
@ -98,15 +100,15 @@ Memory map: (of what is known)
|
||||
|
||||
********************************************************************************
|
||||
|
||||
Elite Avant Garde (EAG, model 6117)
|
||||
-----------------------------------
|
||||
Elite Avant Garde 2325 (EAG, model 6117)
|
||||
----------------------------------------
|
||||
|
||||
There are 6 versions of model 6117(V6 to V11). From a programmer's point of view,
|
||||
the hardware is very similar to model 6114.
|
||||
|
||||
V6: 68020, 512KB hashtable RAM
|
||||
V7: 68020, 1MB h.RAM
|
||||
V8: 2*68020, 512KB+128KB h.RAM
|
||||
V8: 2*68020, 512KB+128KB h.RAM (unreleased?)
|
||||
V9: 68030, 1MB h.RAM
|
||||
V10: 68040, 1MB h.RAM
|
||||
V11: 68060, high speed, 2MB h.RAM (half unused?)
|
||||
@ -154,7 +156,7 @@ V11 Hardware info:
|
||||
- MC68EC060RC75 CPU, 36MHz XTAL(36MHz bus, 72MHz CPU), CPU cooler required
|
||||
- 4*CXK5863AP-20 8KB SRAM, 4*K6X4008C1F-DF55 512KB CMOS SRAM
|
||||
- 4*M27C256B 32KB EPROM, 2*AT28C64 8KB EEPROM, 5*GAL16V8D
|
||||
- NEC D71051C USART, assume 8MHz, on quick glance it's same as the OKI USART
|
||||
- NEC D71051C USART, on quick glance it's same as the OKI USART
|
||||
- same as 6114: NE555, SN74HC4060, module slot, chessboard, ..
|
||||
|
||||
This is a custom overclocked V10, manufactured by Wilfried Bucke. PCB is marked:
|
||||
@ -168,18 +170,46 @@ V1x Memory map:
|
||||
280000-37FFFF: hashtable SRAM
|
||||
B0000x-xxxxxx: see V7, -800000
|
||||
|
||||
********************************************************************************
|
||||
|
||||
Elite Premiere (model 6131)
|
||||
---------------------------
|
||||
|
||||
This 2-in-1 chesscomputer was manufactured after Fidelity became a H+G subsidiary,
|
||||
it's still Fidelity branded. It has a switch where the module slot used to be,
|
||||
for selecting between Vancouver (Richard Lang) and 2265 (Spracklen's) programs.
|
||||
The 2265 ROM half is almost identical to EAG V2 (the elite_1.6 one), the handful
|
||||
of bytes difference is due to the changed hash RAM start address.
|
||||
|
||||
The switch is not supposed to be flipped while power is on, hence MAME will only
|
||||
check it at reset (otherwise, the CPU will crash and may overwrite NVRAM). Each
|
||||
program has its own NVRAM bank, so unfortunately the user can't save the game on
|
||||
one program and then analyze or continue on the other.
|
||||
|
||||
Hardware info:
|
||||
--------------
|
||||
- TMP68HC000P-16, 16MHz XTAL
|
||||
- 256KB ROM (2*M27C1001), 256KB RAM (2*TC551001PL-10)
|
||||
- 64KB battery-backed RAM (2*KM62256AP-10), Dallas DS1210
|
||||
- OKI M82C51A-2 USART, 4.9152MHz XTAL
|
||||
|
||||
RAM can't be expanded, there are MB1422A and SIMM PCB markings, but unpopulated.
|
||||
The I/O remains the same as EAG V2.
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
|
||||
#include "bus/generic/carts.h"
|
||||
#include "bus/generic/slot.h"
|
||||
#include "bus/rs232/rs232.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "cpu/m68000/m68020.h"
|
||||
#include "cpu/m68000/m68030.h"
|
||||
#include "cpu/m68000/m68040.h"
|
||||
#include "machine/clock.h"
|
||||
#include "machine/gen_latch.h"
|
||||
#include "machine/i8251.h"
|
||||
#include "machine/ram.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "machine/sensorboard.h"
|
||||
@ -205,6 +235,7 @@ public:
|
||||
driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_ram(*this, "ram"),
|
||||
m_usart(*this, "usart"),
|
||||
m_board(*this, "board"),
|
||||
m_display(*this, "display"),
|
||||
m_dac(*this, "dac"),
|
||||
@ -222,17 +253,22 @@ public:
|
||||
|
||||
void init_eag();
|
||||
|
||||
DECLARE_INPUT_CHANGED_MEMBER(in1_changed) { update_dsr(); }
|
||||
|
||||
protected:
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
|
||||
void eag_base(machine_config &config);
|
||||
|
||||
// devices/pointers
|
||||
required_device<m68000_base_device> m_maincpu;
|
||||
optional_device<ram_device> m_ram;
|
||||
optional_device<i8251_device> m_usart;
|
||||
required_device<sensorboard_device> m_board;
|
||||
required_device<pwm_display_device> m_display;
|
||||
required_device<dac_bit_interface> m_dac;
|
||||
optional_ioport_array<2> m_inputs;
|
||||
optional_ioport_array<3> m_inputs;
|
||||
|
||||
// address maps
|
||||
void eag_map(address_map &map);
|
||||
@ -241,9 +277,9 @@ protected:
|
||||
|
||||
// I/O handlers
|
||||
void update_display();
|
||||
virtual void mux_w(offs_t offset, u8 data);
|
||||
u8 input1_r(offs_t offset);
|
||||
u8 input2_r();
|
||||
void update_dsr();
|
||||
void mux_w(offs_t offset, u8 data);
|
||||
u8 input_r(offs_t offset);
|
||||
void leds_w(offs_t offset, u8 data);
|
||||
void digit_w(offs_t offset, u8 data);
|
||||
|
||||
@ -261,6 +297,11 @@ void eag_state::machine_start()
|
||||
save_item(NAME(m_led_data));
|
||||
}
|
||||
|
||||
void eag_state::machine_reset()
|
||||
{
|
||||
update_dsr();
|
||||
}
|
||||
|
||||
// EAG V5
|
||||
|
||||
class eagv5_state : public eag_state
|
||||
@ -292,6 +333,54 @@ private:
|
||||
u8 sub_ack_r();
|
||||
};
|
||||
|
||||
// Elite Premiere
|
||||
|
||||
class premiere_state : public eag_state
|
||||
{
|
||||
public:
|
||||
premiere_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
eag_state(mconfig, type, tag),
|
||||
m_nvram(*this, "nvram", 0x10000, ENDIANNESS_BIG),
|
||||
m_nvrambank(*this, "nvrambank"),
|
||||
m_rombank(*this, "rombank")
|
||||
{ }
|
||||
|
||||
// machine configs
|
||||
void premiere(machine_config &config);
|
||||
|
||||
protected:
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
|
||||
private:
|
||||
// devices/pointers
|
||||
memory_share_creator<u16> m_nvram;
|
||||
required_memory_bank m_nvrambank;
|
||||
required_memory_bank m_rombank;
|
||||
|
||||
// address maps
|
||||
void main_map(address_map &map);
|
||||
};
|
||||
|
||||
void premiere_state::machine_start()
|
||||
{
|
||||
eag_state::machine_start();
|
||||
|
||||
// init banks
|
||||
m_rombank->configure_entries(0, 2, memregion("maincpu")->base(), 0x20000);
|
||||
m_nvrambank->configure_entries(0, 2, m_nvram, 0x8000);
|
||||
}
|
||||
|
||||
void premiere_state::machine_reset()
|
||||
{
|
||||
eag_state::machine_reset();
|
||||
|
||||
// program switch directly selects bank
|
||||
const u8 bank = m_inputs[2]->read() & 1;
|
||||
m_rombank->set_entry(bank);
|
||||
m_nvrambank->set_entry(bank);
|
||||
}
|
||||
|
||||
// Excel 68000
|
||||
|
||||
class excel68k_state : public eag_state
|
||||
@ -333,6 +422,13 @@ void eag_state::update_display()
|
||||
m_display->matrix(1 << m_select, m_led_data << 8 | seg_data);
|
||||
}
|
||||
|
||||
void eag_state::update_dsr()
|
||||
{
|
||||
// USART DSR: 3 more buttons on EAG
|
||||
if (m_usart != nullptr)
|
||||
m_usart->write_dsr(!BIT(m_inputs[1]->read(), m_select));
|
||||
}
|
||||
|
||||
void eag_state::mux_w(offs_t offset, u8 data)
|
||||
{
|
||||
// a1-a3,d0: 74259
|
||||
@ -341,6 +437,7 @@ void eag_state::mux_w(offs_t offset, u8 data)
|
||||
|
||||
// 74259 Q0-Q3: 74145 A-D (Q4-Q7 N/C)
|
||||
m_select &= 0xf;
|
||||
update_dsr();
|
||||
|
||||
// 74145 0-8: input mux, digit/led select
|
||||
// 74145 9: speaker out
|
||||
@ -348,7 +445,7 @@ void eag_state::mux_w(offs_t offset, u8 data)
|
||||
update_display();
|
||||
}
|
||||
|
||||
u8 eag_state::input1_r(offs_t offset)
|
||||
u8 eag_state::input_r(offs_t offset)
|
||||
{
|
||||
u8 data = 0;
|
||||
|
||||
@ -370,12 +467,6 @@ u8 eag_state::input1_r(offs_t offset)
|
||||
return (data >> offset & 1) ? 0 : 0x80;
|
||||
}
|
||||
|
||||
u8 eag_state::input2_r()
|
||||
{
|
||||
// d7: 3 more buttons on EAG
|
||||
return (BIT(m_inputs[1]->read(), m_select)) ? 0x80 : 0;
|
||||
}
|
||||
|
||||
void eag_state::leds_w(offs_t offset, u8 data)
|
||||
{
|
||||
// a1-a3,d0: led data
|
||||
@ -425,7 +516,7 @@ void excel68k_state::fex68k_map(address_map &map)
|
||||
map(0x000000, 0x00000f).mirror(0x00fff0).w(FUNC(excel68k_state::leds_w)).umask16(0x00ff);
|
||||
map(0x000000, 0x00000f).mirror(0x00fff0).w(FUNC(excel68k_state::digit_w)).umask16(0xff00);
|
||||
map(0x044000, 0x047fff).ram();
|
||||
map(0x100000, 0x10000f).mirror(0x03fff0).r(FUNC(excel68k_state::input1_r)).umask16(0x00ff);
|
||||
map(0x100000, 0x10000f).mirror(0x03fff0).r(FUNC(excel68k_state::input_r)).umask16(0x00ff);
|
||||
map(0x140000, 0x14000f).mirror(0x03fff0).w(FUNC(excel68k_state::mux_w)).umask16(0x00ff);
|
||||
}
|
||||
|
||||
@ -447,7 +538,7 @@ void excel68k_state::fex68km4_map(address_map &map)
|
||||
map(0x00000000, 0x0000000f).mirror(0x00fff0).w(FUNC(excel68k_state::leds_w)).umask32(0x00ff00ff);
|
||||
map(0x00000000, 0x0000000f).mirror(0x00fff0).w(FUNC(excel68k_state::digit_w)).umask32(0xff00ff00);
|
||||
map(0x00044000, 0x00047fff).ram(); // unused?
|
||||
map(0x00100000, 0x0010000f).mirror(0x03fff0).r(FUNC(excel68k_state::input1_r)).umask32(0x00ff00ff);
|
||||
map(0x00100000, 0x0010000f).mirror(0x03fff0).r(FUNC(excel68k_state::input_r)).umask32(0x00ff00ff);
|
||||
map(0x00140000, 0x0014000f).mirror(0x03fff0).w(FUNC(excel68k_state::mux_w)).umask32(0x00ff00ff);
|
||||
map(0x00200000, 0x0027ffff).ram();
|
||||
map(0x00400000, 0x00407fff).ram();
|
||||
@ -467,11 +558,11 @@ void eag_state::eag_map(address_map &map)
|
||||
map(0x000000, 0x01ffff).rom();
|
||||
map(0x104000, 0x107fff).ram();
|
||||
map(0x300000, 0x30000f).mirror(0x000010).w(FUNC(eag_state::digit_w)).umask16(0xff00).nopr();
|
||||
map(0x300000, 0x30000f).mirror(0x000010).rw(FUNC(eag_state::input1_r), FUNC(eag_state::leds_w)).umask16(0x00ff);
|
||||
map(0x300000, 0x30000f).mirror(0x000010).rw(FUNC(eag_state::input_r), FUNC(eag_state::leds_w)).umask16(0x00ff);
|
||||
map(0x400000, 0x400007).w(FUNC(eag_state::mux_w)).umask16(0x00ff);
|
||||
map(0x400000, 0x407fff).r("cartslot", FUNC(generic_slot_device::read_rom)).umask16(0xff00);
|
||||
map(0x604000, 0x607fff).ram().share("nvram");
|
||||
map(0x700003, 0x700003).r(FUNC(eag_state::input2_r));
|
||||
map(0x700000, 0x700003).rw(m_usart, FUNC(i8251_device::read), FUNC(i8251_device::write)).umask16(0x00ff);
|
||||
}
|
||||
|
||||
void eagv5_state::main_map(address_map &map)
|
||||
@ -495,11 +586,11 @@ void eag_state::eagv7_map(address_map &map)
|
||||
map(0x000000, 0x01ffff).rom();
|
||||
map(0x104000, 0x107fff).ram();
|
||||
map(0x300000, 0x30000f).mirror(0x000010).w(FUNC(eag_state::digit_w)).umask32(0xff00ff00).nopr();
|
||||
map(0x300000, 0x30000f).mirror(0x000010).rw(FUNC(eag_state::input1_r), FUNC(eag_state::leds_w)).umask32(0x00ff00ff);
|
||||
map(0x300000, 0x30000f).mirror(0x000010).rw(FUNC(eag_state::input_r), FUNC(eag_state::leds_w)).umask32(0x00ff00ff);
|
||||
map(0x400000, 0x400007).w(FUNC(eag_state::mux_w)).umask32(0x00ff00ff);
|
||||
map(0x400000, 0x407fff).r("cartslot", FUNC(generic_slot_device::read_rom)).umask32(0xff00ff00);
|
||||
map(0x604000, 0x607fff).ram().share("nvram");
|
||||
map(0x700003, 0x700003).r(FUNC(eag_state::input2_r));
|
||||
map(0x700000, 0x700003).rw(m_usart, FUNC(i8251_device::read), FUNC(i8251_device::write)).umask32(0x00ff00ff);
|
||||
map(0x800000, 0x807fff).ram();
|
||||
}
|
||||
|
||||
@ -508,12 +599,23 @@ void eag_state::eagv10_map(address_map &map)
|
||||
map(0x00000000, 0x0001ffff).rom();
|
||||
map(0x00280000, 0x0037ffff).ram();
|
||||
map(0x00b00000, 0x00b0000f).mirror(0x00000010).w(FUNC(eag_state::digit_w)).umask32(0xff00ff00).nopr();
|
||||
map(0x00b00000, 0x00b0000f).mirror(0x00000010).rw(FUNC(eag_state::input1_r), FUNC(eag_state::leds_w)).umask32(0x00ff00ff);
|
||||
map(0x00b00000, 0x00b0000f).mirror(0x00000010).rw(FUNC(eag_state::input_r), FUNC(eag_state::leds_w)).umask32(0x00ff00ff);
|
||||
map(0x00c00000, 0x00c00007).w(FUNC(eag_state::mux_w)).umask32(0x00ff00ff);
|
||||
map(0x00c00000, 0x00c07fff).r("cartslot", FUNC(generic_slot_device::read_rom)).umask32(0xff00ff00);
|
||||
map(0x00e04000, 0x00e07fff).ram().share("nvram");
|
||||
map(0x00f00003, 0x00f00003).r(FUNC(eag_state::input2_r));
|
||||
map(0x01000000, 0x0101ffff).ram();
|
||||
map(0x00f00000, 0x00f00003).rw(m_usart, FUNC(i8251_device::read), FUNC(i8251_device::write)).umask32(0x00ff00ff);
|
||||
map(0x01018000, 0x0101ffff).ram();
|
||||
}
|
||||
|
||||
void premiere_state::main_map(address_map &map)
|
||||
{
|
||||
map(0x000000, 0x01ffff).bankr(m_rombank);
|
||||
map(0x100000, 0x13ffff).ram();
|
||||
map(0x300000, 0x30000f).mirror(0x000010).w(FUNC(premiere_state::digit_w)).umask16(0xff00).nopr();
|
||||
map(0x300000, 0x30000f).mirror(0x000010).rw(FUNC(premiere_state::input_r), FUNC(premiere_state::leds_w)).umask16(0x00ff);
|
||||
map(0x400000, 0x400007).w(FUNC(premiere_state::mux_w)).umask16(0x00ff);
|
||||
map(0x600000, 0x607fff).mirror(0x008000).bankrw(m_nvrambank);
|
||||
map(0x700000, 0x700003).rw(m_usart, FUNC(i8251_device::read), FUNC(i8251_device::write)).umask16(0x00ff);
|
||||
}
|
||||
|
||||
|
||||
@ -546,9 +648,18 @@ static INPUT_PORTS_START( eag )
|
||||
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_V) PORT_NAME("RV")
|
||||
|
||||
PORT_START("IN.1")
|
||||
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_DEL) PORT_NAME("CL")
|
||||
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_M) PORT_NAME("DM")
|
||||
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_R) PORT_CODE(KEYCODE_N) PORT_NAME("New Game")
|
||||
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_DEL) PORT_NAME("CL") PORT_CHANGED_MEMBER(DEVICE_SELF, eag_state, in1_changed, 0)
|
||||
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_M) PORT_NAME("DM") PORT_CHANGED_MEMBER(DEVICE_SELF, eag_state, in1_changed, 0)
|
||||
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_R) PORT_CODE(KEYCODE_N) PORT_NAME("New Game") PORT_CHANGED_MEMBER(DEVICE_SELF, eag_state, in1_changed, 0)
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( premiere )
|
||||
PORT_INCLUDE( eag )
|
||||
|
||||
PORT_START("IN.2")
|
||||
PORT_CONFNAME( 0x01, 0x00, "Program" )
|
||||
PORT_CONFSETTING( 0x00, "Vancouver" )
|
||||
PORT_CONFSETTING( 0x01, "2265" )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
@ -622,6 +733,14 @@ void eag_state::eag_base(machine_config &config)
|
||||
|
||||
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
|
||||
|
||||
I8251(config, m_usart, 4.9152_MHz_XTAL);
|
||||
m_usart->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
|
||||
m_usart->rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
|
||||
m_usart->rxrdy_handler().set_inputline(m_maincpu, M68K_IRQ_IPL2);
|
||||
|
||||
auto &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
|
||||
rs232.rxd_handler().set(m_usart, FUNC(i8251_device::write_rxd));
|
||||
|
||||
SENSORBOARD(config, m_board).set_type(sensorboard_device::MAGNETS);
|
||||
m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess));
|
||||
m_board->set_delay(attotime::from_msec(150));
|
||||
@ -702,6 +821,9 @@ void eag_state::eagv10(machine_config &config)
|
||||
M68040(config.replace(), m_maincpu, 25_MHz_XTAL);
|
||||
m_maincpu->set_interrupt_mixer(false);
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &eag_state::eagv10_map);
|
||||
|
||||
// IRQ pulse should be shorter, guessed here
|
||||
subdevice<clock_device>("irq_clock")->set_pulse_width(attotime::from_nsec(1000));
|
||||
}
|
||||
|
||||
void eag_state::eagv11(machine_config &config)
|
||||
@ -710,10 +832,20 @@ void eag_state::eagv11(machine_config &config)
|
||||
|
||||
// basic machine hardware
|
||||
M68EC040(config.replace(), m_maincpu, 36_MHz_XTAL*2); // wrong! should be M68EC060
|
||||
m_maincpu->set_interrupt_mixer(false);
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &eag_state::eagv10_map);
|
||||
}
|
||||
|
||||
config.device_remove("irq_clock"); // 8.25us is too long
|
||||
m_maincpu->set_periodic_int(FUNC(eag_state::irq2_line_hold), attotime::from_hz(600));
|
||||
void premiere_state::premiere(machine_config &config)
|
||||
{
|
||||
eag_base(config);
|
||||
|
||||
// basic machine hardware
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &premiere_state::main_map);
|
||||
|
||||
// no cartridge
|
||||
config.device_remove("cartslot");
|
||||
config.device_remove("cart_list");
|
||||
}
|
||||
|
||||
|
||||
@ -839,6 +971,12 @@ ROM_START( feagv11 )
|
||||
ROM_LOAD32_BYTE("19", 0x00003, 0x08000, CRC(a70c5468) SHA1(7f6b4f46577d5cfdaa84d387c7ce35d941e5bbc7) ) // "
|
||||
ROM_END
|
||||
|
||||
ROM_START( premiere ) // model 6131, PCB label 510.1157A01
|
||||
ROM_REGION16_BE( 0x40000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE("101.1103a01_1meg_even.u22", 0x00000, 0x20000, CRC(0df2d4d8) SHA1(2c6cd8d83768d14aeb9860be76ed2ec0f64f118b) ) // M27C1001
|
||||
ROM_LOAD16_BYTE("101.1104a01_1meg_odd.u19", 0x00001, 0x20000, CRC(afae9d5e) SHA1(7ab5fb8b8a2fa30f2fd444a050eae2432c9236d0) ) // "
|
||||
ROM_END
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
|
||||
@ -853,17 +991,19 @@ SYST( 1987, fex68ka, fex68k, 0, fex68k, excel68k, excel68k_state, empt
|
||||
SYST( 1987, fex68kb, fex68k, 0, fex68k, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 (set 3)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km2, fex68k, 0, fex68km2, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach II (rev. C+, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km2a, fex68k, 0, fex68km2, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach II (rev. C+, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km3, fex68k, 0, fex68km3, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach III Master (set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km3a, fex68k, 0, fex68km3, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach III Master (set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km3b, fex68k, 0, fex68km3, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach III Master (set 3)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km3, fex68k, 0, fex68km3, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach III Master 2265 (set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km3a, fex68k, 0, fex68km3, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach III Master 2265 (set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1988, fex68km3b, fex68k, 0, fex68km3, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach III Master 2265 (set 3)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, fex68km4, fex68k, 0, fex68km4, excel68k, excel68k_state, empty_init, "Fidelity Electronics", "Excel 68000 Mach IV 68020 Master 2325", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
|
||||
SYST( 1989, feagv4, 0, 0, eagv4, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde (model 6114-2/3/4, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, feagv4a, feagv4, 0, eagv4, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde (model 6114-2/3/4, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, feagv5, feagv4, 0, eagv5, eag, eagv5_state, init_eag, "Fidelity Electronics", "Elite Avant Garde (model 6114-5)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1990, feagv7, feagv4, 0, eagv7, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde (model 6117-6/7, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1990, feagv7a, feagv4, 0, eagv7, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde (model 6117-6/7, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1990, feagv7b, feagv4, 0, eagv7, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde (model 6117-6/7, set 3)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1990, feagv9, feagv4, 0, eagv9, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde (model 6117-9)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1990, feagv10, feagv4, 0, eagv10, eag, eag_state, empty_init, "Fidelity Electronics", "Elite Avant Garde (model 6117-10)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_TIMING )
|
||||
SYST( 2002, feagv11, feagv4, 0, eagv11, eag, eag_state, empty_init, "hack (Wilfried Bucke)", "Elite Avant Garde (model 6117-11)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_TIMING )
|
||||
SYST( 1989, feagv4, 0, 0, eagv4, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde 2265 (model 6114-2/3/4, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, feagv4a, feagv4, 0, eagv4, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde 2265 (model 6114-2/3/4, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, feagv5, feagv4, 0, eagv5, eag, eagv5_state, init_eag, "Fidelity Electronics", "Elite Avant Garde 2265 (model 6114-5)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, feagv7, feagv4, 0, eagv7, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde 2325 (model 6117-6/7, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, feagv7a, feagv4, 0, eagv7, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde 2325 (model 6117-6/7, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1989, feagv7b, feagv4, 0, eagv7, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde 2325 (model 6117-6/7, set 3)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1990, feagv9, feagv4, 0, eagv9, eag, eag_state, init_eag, "Fidelity Electronics", "Elite Avant Garde 2325 (model 6117-9)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
SYST( 1990, feagv10, feagv4, 0, eagv10, eag, eag_state, empty_init, "Fidelity Electronics", "Elite Avant Garde 2325 (model 6117-10)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_TIMING )
|
||||
SYST( 2001, feagv11, feagv4, 0, eagv11, eag, eag_state, empty_init, "hack (Wilfried Bucke)", "Elite Avant Garde 2325 (model 6117-11)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_TIMING )
|
||||
|
||||
SYST( 1992, premiere, 0, 0, premiere, premiere, premiere_state, empty_init, "Fidelity Electronics", "Elite Premiere", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
|
@ -5367,14 +5367,14 @@ public:
|
||||
|
||||
static INPUT_PORTS_START( knascar )
|
||||
PORT_START("IN.0") // S1
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_LEFT ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_CHANGED_CB(input_changed) PORT_NAME("Pause")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START ) PORT_CHANGED_CB(input_changed) PORT_NAME("Power On/Start")
|
||||
|
||||
PORT_START("IN.1") // S2
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_RIGHT ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_DOWN ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VOLUME_DOWN ) PORT_CHANGED_CB(input_changed) PORT_NAME("Sound")
|
||||
|
||||
@ -5480,8 +5480,8 @@ ROM_END
|
||||
Konami Teenage Mutant Ninja Turtles II: Splinter Speaks (model 13012)
|
||||
* PCB label: BH012
|
||||
* Sharp SM511 under epoxy (die label KMS73B, 785)
|
||||
* lcd screen with custom segments, 1-bit sound
|
||||
* OKI MSM6373 ADPCM under epoxy
|
||||
* lcd screen with custom segments, 1-bit sound (on top of ADPCM)
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
@ -5495,7 +5495,7 @@ public:
|
||||
|
||||
void ktmnt2(machine_config &config);
|
||||
|
||||
private:
|
||||
protected:
|
||||
required_device<samples_device> m_samples;
|
||||
|
||||
void sound_w(u8 data);
|
||||
@ -5522,8 +5522,12 @@ void ktmnt2_state::sound_w(u8 data)
|
||||
if (sample == 0)
|
||||
m_samples->stop(0);
|
||||
}
|
||||
else if (sample < m_samples->samples() + 1)
|
||||
m_samples->start(0, sample - 1);
|
||||
else
|
||||
{
|
||||
sample--;
|
||||
if (sample < m_samples->samples() && strncmp(m_samples->names()[sample + 1], "none", 4))
|
||||
m_samples->start(0, sample);
|
||||
}
|
||||
}
|
||||
|
||||
// other: input mux
|
||||
@ -5683,6 +5687,192 @@ ROM_END
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Konami Star Trek: 25th Anniversary (model 13015)
|
||||
* PCB label: BH015
|
||||
* Sharp SM511 under epoxy (die label KMS73B, 787)
|
||||
* OKI MSM6373 ADPCM under epoxy
|
||||
* lcd screen with custom segments, 1-bit sound (on top of ADPCM)
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
class kst25_state : public ktmnt2_state
|
||||
{
|
||||
public:
|
||||
kst25_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
ktmnt2_state(mconfig, type, tag)
|
||||
{
|
||||
// increase lcd decay: bullets flicker
|
||||
m_decay_len = 30;
|
||||
}
|
||||
|
||||
void kst25(machine_config &config);
|
||||
};
|
||||
|
||||
// inputs
|
||||
|
||||
static INPUT_PORTS_START( kst25 )
|
||||
PORT_START("IN.0") // S1
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, 0x02, IPT_CUSTOM ) PORT_CONDITION("FAKE", 0x03, NOTEQUALS, 0x00) // Up/Down
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_CHANGED_CB(input_changed)
|
||||
|
||||
PORT_START("IN.1") // S2
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_VOLUME_DOWN ) PORT_CHANGED_CB(input_changed) PORT_NAME("Sound")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_CHANGED_CB(input_changed) PORT_NAME("Pause")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START ) PORT_CHANGED_CB(input_changed) PORT_NAME("Power On/Start")
|
||||
|
||||
PORT_START("IN.2") // S3
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x0b, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("FAKE") // Up/Down are electronically the same button
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_CHANGED_CB(input_changed)
|
||||
INPUT_PORTS_END
|
||||
|
||||
// config
|
||||
|
||||
static const char *const kst25_sample_names[] =
|
||||
{
|
||||
"*kst25",
|
||||
"beammeupscotty",
|
||||
"warpspeed",
|
||||
"thatsnotlogical",
|
||||
"shieldsup",
|
||||
"firethephotontorpedos",
|
||||
"orbittheplanet",
|
||||
"engage",
|
||||
"boom",
|
||||
"teleporter",
|
||||
"klaxon",
|
||||
"photontorpedo",
|
||||
"hum",
|
||||
nullptr
|
||||
};
|
||||
|
||||
void kst25_state::kst25(machine_config &config)
|
||||
{
|
||||
ktmnt2(config);
|
||||
|
||||
config.device_remove("screen");
|
||||
mcfg_svg_screen(config, 1464, 1080);
|
||||
m_samples->set_samples_names(kst25_sample_names);
|
||||
}
|
||||
|
||||
// roms
|
||||
|
||||
ROM_START( kst25 )
|
||||
ROM_REGION( 0x1000, "maincpu", 0 )
|
||||
ROM_LOAD( "787.program", 0x0000, 0x1000, CRC(05abdeec) SHA1(b947fcf4c6c9696b606eabdc74594076013ff73c) )
|
||||
|
||||
ROM_REGION( 0x100, "maincpu:melody", 0 )
|
||||
ROM_LOAD( "787.melody", 0x000, 0x100, CRC(3f1c63d4) SHA1(efdfa49c4fd89f2ca5d5cfc6bf9fa741ac227338) )
|
||||
|
||||
ROM_REGION( 570121, "screen", 0)
|
||||
ROM_LOAD( "kst25.svg", 0, 570121, CRC(6529d2de) SHA1(993c84ae46277d0d8e0af66473f6ce324b697638) )
|
||||
|
||||
ROM_REGION( 0x8000, "adpcm", 0)
|
||||
ROM_LOAD( "msm6373", 0, 0x8000, NO_DUMP )
|
||||
ROM_END
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Konami Top Gun: Second Mission
|
||||
* PCB label: BH017
|
||||
* Sharp SM511 under epoxy (die label KMS73B, 792)
|
||||
* OKI MSM6373 ADPCM under epoxy
|
||||
* lcd screen with custom segments, 1-bit sound (on top of ADPCM)
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
class ktopgun2_state : public ktmnt2_state
|
||||
{
|
||||
public:
|
||||
ktopgun2_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
ktmnt2_state(mconfig, type, tag)
|
||||
{ }
|
||||
|
||||
void ktopgun2(machine_config &config);
|
||||
};
|
||||
|
||||
// inputs
|
||||
|
||||
static INPUT_PORTS_START( ktopgun2 )
|
||||
PORT_START("IN.0") // S1
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_LEFT ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_CHANGED_CB(input_changed) PORT_NAME("Pause")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START ) PORT_CHANGED_CB(input_changed) PORT_NAME("Power On/Start")
|
||||
|
||||
PORT_START("IN.1") // S2
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_RIGHT ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_DOWN ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_CHANGED_CB(input_changed)
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VOLUME_DOWN ) PORT_CHANGED_CB(input_changed) PORT_NAME("Sound")
|
||||
|
||||
PORT_START("ACL")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CHANGED_CB(acl_button) PORT_NAME("All Clear")
|
||||
INPUT_PORTS_END
|
||||
|
||||
// config
|
||||
|
||||
static const char *const ktopgun2_sample_names[] =
|
||||
{
|
||||
"*ktopgun2",
|
||||
"explosion",
|
||||
"crash",
|
||||
"none",
|
||||
"machinegun",
|
||||
"boom",
|
||||
"lockon",
|
||||
"none",
|
||||
"danger",
|
||||
"missioncomplete",
|
||||
"targetinrange",
|
||||
"none",
|
||||
"bailout",
|
||||
"none",
|
||||
"gameover",
|
||||
nullptr
|
||||
};
|
||||
|
||||
void ktopgun2_state::ktopgun2(machine_config &config)
|
||||
{
|
||||
ktmnt2(config);
|
||||
|
||||
config.device_remove("screen");
|
||||
mcfg_svg_screen(config, 1496, 1080);
|
||||
m_samples->set_samples_names(ktopgun2_sample_names);
|
||||
}
|
||||
|
||||
// roms
|
||||
|
||||
ROM_START( ktopgun2 )
|
||||
ROM_REGION( 0x1000, "maincpu", 0 )
|
||||
ROM_LOAD( "792.program", 0x0000, 0x1000, CRC(bb6eeeb6) SHA1(7bb21d1736ef7fdfc58ffc0e9dc633ec3c491117) )
|
||||
|
||||
ROM_REGION( 0x100, "maincpu:melody", 0 )
|
||||
ROM_LOAD( "792.melody", 0x000, 0x100, CRC(dce276ae) SHA1(27ce9c02e69c38120fd3608577176cdce29f6f06) )
|
||||
|
||||
ROM_REGION( 756991, "screen", 0)
|
||||
ROM_LOAD( "ktopgun2.svg", 0, 756991, CRC(d65dbf75) SHA1(f2b55bfba784919f6601a7adaeeb7e5951a03367) )
|
||||
|
||||
ROM_REGION( 0x8000, "adpcm", 0)
|
||||
ROM_LOAD( "msm6373", 0, 0x8000, NO_DUMP )
|
||||
ROM_END
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Konami Teenage Mutant Ninja Turtles 3: Shredder's Last Stand (model 13017)
|
||||
@ -11277,8 +11467,10 @@ SYST( 1990, kbottom9, 0, 0, kbottom9, kbottom9, kbott
|
||||
SYST( 1990, kloneran, 0, 0, kloneran, kloneran, kloneran_state, empty_init, "Konami", "The Lone Ranger (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
SYST( 1990, knascar, 0, 0, knascar, knascar, knascar_state, empty_init, "Konami", "Bill Elliott's NASCAR Racing (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
SYST( 1990, kblades, 0, 0, kblades, kblades, kblades_state, empty_init, "Konami", "Blades of Steel (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
SYST( 1990, ktmnt2, 0, 0, ktmnt2, ktmnt2, ktmnt2_state, empty_init, "Konami", "Teenage Mutant Ninja Turtles II: Splinter Speaks (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
SYST( 1990, ktmnt2, 0, 0, ktmnt2, ktmnt2, ktmnt2_state, empty_init, "Konami", "Teenage Mutant Ninja Turtles II: Splinter Speaks (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK | MACHINE_IMPERFECT_SOUND )
|
||||
SYST( 1990, knfl, 0, 0, knfl, knfl, knfl_state, empty_init, "Konami", "NFL Football (Konami, handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
SYST( 1991, kst25, 0, 0, kst25, kst25, kst25_state, empty_init, "Konami", "Star Trek: 25th Anniversary (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK | MACHINE_IMPERFECT_SOUND )
|
||||
SYST( 1991, ktopgun2, 0, 0, ktopgun2, ktopgun2, ktopgun2_state, empty_init, "Konami", "Top Gun: Second Mission (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK | MACHINE_IMPERFECT_SOUND )
|
||||
SYST( 1991, ktmnt3, 0, 0, ktmnt3, ktmnt3, ktmnt3_state, empty_init, "Konami", "Teenage Mutant Ninja Turtles 3: Shredder's Last Stand (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
SYST( 1991, ktmntbb, 0, 0, ktmntbb, ktmntbb, ktmntbb_state, empty_init, "Konami", "Teenage Mutant Ninja Turtles: Basketball", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
SYST( 1991, kbucky, 0, 0, kbucky, kbucky, kbucky_state, empty_init, "Konami", "Bucky O'Hare (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
|
@ -117,8 +117,9 @@ license:CC0-1.0
|
||||
<element name="text_r92"><text string="NEW" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_r93"><text string="GAME" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
|
||||
<element name="text_rx1"><text string="YOUR MOVE"><color red="0.61" green="0.6" blue="0.59" /></text></element>
|
||||
<element name="text_ry1"><text string="CHECK"><color red="0.61" green="0.6" blue="0.59" /></text></element>
|
||||
<element name="text_rx1a"><text string="YOUR"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_rx1b"><text string="MOVE"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_ry1"><text string="CHECK"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_rx2"><text string="CL" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_ry2"><text string="DM" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
|
||||
@ -503,7 +504,8 @@ license:CC0-1.0
|
||||
|
||||
<element ref="text_rx2"><bounds x="96.8" y="79.65" width="10" height="1.5" /></element>
|
||||
<element ref="text_ry2"><bounds x="96.8" y="82.15" width="10" height="1.5" /></element>
|
||||
<element ref="text_rx1"><bounds x="88" y="78.75" width="6" height="1" /></element>
|
||||
<element ref="text_rx1a"><bounds x="88" y="78.0" width="5.5" height="1" /></element>
|
||||
<element ref="text_rx1b"><bounds x="88" y="78.75" width="5.5" height="1" /></element>
|
||||
<element ref="text_ry1"><bounds x="88" y="81.25" width="5.5" height="1" /></element>
|
||||
|
||||
<element name="8.14" ref="led2y"><bounds x="90" y="79.75" width="1.5" height="1.5" /></element>
|
||||
|
@ -117,8 +117,9 @@ license:CC0-1.0
|
||||
<element name="text_r92"><text string="NEW" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_r93"><text string="GAME" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
|
||||
<element name="text_rx1"><text string="YOUR MOVE"><color red="0.61" green="0.6" blue="0.59" /></text></element>
|
||||
<element name="text_ry1"><text string="CHECK"><color red="0.61" green="0.6" blue="0.59" /></text></element>
|
||||
<element name="text_rx1a"><text string="YOUR"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_rx1b"><text string="MOVE"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_ry1"><text string="CHECK"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_rx2"><text string="CL" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
<element name="text_ry2"><text string="DM" align="1"><color red="0.81" green="0.8" blue="0.79" /></text></element>
|
||||
|
||||
@ -503,7 +504,8 @@ license:CC0-1.0
|
||||
|
||||
<element ref="text_rx2"><bounds x="96.8" y="79.65" width="10" height="1.5" /></element>
|
||||
<element ref="text_ry2"><bounds x="96.8" y="82.15" width="10" height="1.5" /></element>
|
||||
<element ref="text_rx1"><bounds x="88" y="78.75" width="6" height="1" /></element>
|
||||
<element ref="text_rx1a"><bounds x="88" y="78.0" width="5.5" height="1" /></element>
|
||||
<element ref="text_rx1b"><bounds x="88" y="78.75" width="5.5" height="1" /></element>
|
||||
<element ref="text_ry1"><bounds x="88" y="81.25" width="5.5" height="1" /></element>
|
||||
|
||||
<element name="8.9" ref="led2y"><bounds x="90" y="79.75" width="1.5" height="1.5" /></element>
|
||||
|
@ -17808,6 +17808,7 @@ fex68km3 //
|
||||
fex68km3a //
|
||||
fex68km3b //
|
||||
fex68km4 //
|
||||
premiere //
|
||||
|
||||
@source:fidelity/eldorado.cpp
|
||||
feldo
|
||||
@ -18917,11 +18918,13 @@ kosmicmt // Elektronika
|
||||
kosmicpt // Elektronika
|
||||
krybolov // Elektronika
|
||||
kskatedie // Konami
|
||||
kst25 // Konami
|
||||
ktmnt // Konami
|
||||
ktmnt2 // Konami
|
||||
ktmnt3 // Konami
|
||||
ktmntbb // Konami
|
||||
ktopgun // Konami
|
||||
ktopgun2 // Konami
|
||||
kvakazad // Elektronika
|
||||
morataka // Elektronika
|
||||
nochnyev // Elektronika
|
||||
|
Loading…
Reference in New Issue
Block a user