summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/galaxian/galaxian.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/galaxian/galaxian.cpp')
-rw-r--r--src/mame/galaxian/galaxian.cpp1253
1 files changed, 803 insertions, 450 deletions
diff --git a/src/mame/galaxian/galaxian.cpp b/src/mame/galaxian/galaxian.cpp
index b27e7d409b8..d4ce540bf4b 100644
--- a/src/mame/galaxian/galaxian.cpp
+++ b/src/mame/galaxian/galaxian.cpp
@@ -730,6 +730,7 @@ TODO:
- scprpng : fix read/writes at/to unmapped/wrong memory
- scorpion : check whether konami filters are used
- explorer : check whether konami filters are used
+- superbon : needs correct color PROM
***************************************************************************/
@@ -757,10 +758,10 @@ TODO:
*
*************************************/
-WRITE_LINE_MEMBER(galaxian_state::vblank_interrupt_w)
+void galaxian_state::vblank_interrupt_w(int state)
{
- /* interrupt line is clocked at VBLANK */
- /* a flip-flop at 6F is held in the preset state based on the NMI ON signal */
+ // interrupt line is clocked at VBLANK
+ // a flip-flop at 6F is held in the preset state based on the NMI ON signal
if (state && m_irq_enabled)
m_maincpu->set_input_line(m_irq_line, ASSERT_LINE);
}
@@ -777,10 +778,10 @@ INPUT_CHANGED_MEMBER(tenspot_state::tenspot_fake)
void galaxian_state::irq_enable_w(uint8_t data)
{
- /* the latched D0 bit here goes to the CLEAR line on the interrupt flip-flop */
+ // the latched D0 bit here goes to the CLEAR line on the interrupt flip-flop
m_irq_enabled = data & 1;
- /* if CLEAR is held low, we must make sure the interrupt signal is clear */
+ // if CLEAR is held low, we must make sure the interrupt signal is clear
if (!m_irq_enabled)
m_maincpu->set_input_line(m_irq_line, CLEAR_LINE);
}
@@ -793,15 +794,15 @@ void galaxian_state::irq_enable_w(uint8_t data)
void galaxian_state::start_lamp_w(offs_t offset, uint8_t data)
{
- /* offset 0 = 1P START LAMP */
- /* offset 1 = 2P START LAMP */
+ // offset 0 = 1P START LAMP
+ // offset 1 = 2P START LAMP
m_lamps[offset] = BIT(data, 0);
}
void galaxian_state::coin_lock_w(uint8_t data)
{
- /* many variants and bootlegs don't have this */
+ // many variants and bootlegs don't have this
machine().bookkeeping().coin_lockout_global_w(~data & 1);
}
@@ -827,7 +828,7 @@ void galaxian_state::coin_count_1_w(uint8_t data)
uint8_t galaxian_state::konami_ay8910_r(offs_t offset)
{
- /* the decoding here is very simplistic, and you can address both simultaneously */
+ // the decoding here is very simplistic, and you can address both simultaneously
uint8_t result = 0xff;
if (offset & 0x20) result &= m_ay8910[1]->data_r();
if (offset & 0x80) result &= m_ay8910[0]->data_r();
@@ -837,13 +838,13 @@ uint8_t galaxian_state::konami_ay8910_r(offs_t offset)
void galaxian_state::konami_ay8910_w(offs_t offset, uint8_t data)
{
- /* AV 4,5 ==> AY8910 #2 */
- /* the decoding here is very simplistic, and you can address two simultaneously */
+ // AV 4,5 ==> AY8910 #2
+ // the decoding here is very simplistic, and you can address two simultaneously
if (offset & 0x10)
m_ay8910[1]->address_w(data);
else if (offset & 0x20)
m_ay8910[1]->data_w(data);
- /* AV6,7 ==> AY8910 #1 */
+ // AV6,7 ==> AY8910 #1
if (offset & 0x40)
m_ay8910[0]->address_w(data);
else if (offset & 0x80)
@@ -856,12 +857,12 @@ void galaxian_state::konami_sound_control_w(uint8_t data)
uint8_t old = m_konami_sound_control;
m_konami_sound_control = data;
- /* the inverse of bit 3 clocks the flip flop to signal an INT */
- /* it is automatically cleared on the acknowledge */
+ /* the inverse of bit 3 clocks the flip flop to signal an INT.
+ It is automatically cleared on the acknowledge */
if ((old & 0x08) && !(data & 0x08))
m_audiocpu->set_input_line(0, HOLD_LINE);
- /* bit 4 is sound disable */
+ // bit 4 is sound disable
machine().sound().system_mute(data & 0x10);
}
@@ -885,28 +886,28 @@ uint8_t galaxian_state::konami_sound_timer_r()
uint32_t cycles = (m_audiocpu->total_cycles() * 8) % (uint64_t)(16*16*2*8*5*2);
uint8_t hibit = 0;
- /* separate the high bit from the others */
+ // separate the high bit from the others
if (cycles >= 16*16*2*8*5)
{
hibit = 1;
cycles -= 16*16*2*8*5;
}
- /* the top bits of the counter index map to various bits here */
- return (hibit << 7) | /* B7 is the output of the final divide-by-2 counter */
- (BIT(cycles,14) << 6) | /* B6 is the high bit of the divide-by-5 counter */
- (BIT(cycles,13) << 5) | /* B5 is the 2nd highest bit of the divide-by-5 counter */
- (BIT(cycles,11) << 4) | /* B4 is the high bit of the divide-by-8 counter */
- 0x0e; /* assume remaining bits are high, except B0 which is grounded */
+ // the top bits of the counter index map to various bits here
+ return (hibit << 7) | // B7 is the output of the final divide-by-2 counter
+ (BIT(cycles,14) << 6) | // B6 is the high bit of the divide-by-5 counter
+ (BIT(cycles,13) << 5) | // B5 is the 2nd highest bit of the divide-by-5 counter
+ (BIT(cycles,11) << 4) | // B4 is the high bit of the divide-by-8 counter
+ 0x0e; // assume remaining bits are high, except B0 which is grounded
}
void galaxian_state::konami_sound_filter_w(offs_t offset, uint8_t data)
{
if (m_netlist != nullptr)
{
- /* the offset is used as data, 6 channels * 2 bits each */
- /* AV0 .. AV5 ==> AY8910 #2 - 3C */
- /* AV6 .. AV11 ==> AY8910 #1 - 3D */
+ // the offset is used as data, 6 channels * 2 bits each
+ // AV0 .. AV5 ==> AY8910 #2 - 3C
+ // AV6 .. AV11 ==> AY8910 #1 - 3D
for (int which = 0; which < 2; which++)
{
if (m_ay8910[which] != nullptr)
@@ -916,8 +917,8 @@ void galaxian_state::konami_sound_filter_w(offs_t offset, uint8_t data)
const int fltnum = (flt + 6 * which);
const uint8_t bit = (offset >> (flt + 6 * (1 - which))) & 1;
- /* low bit goes to 0.22uF capacitor = 220000pF */
- /* high bit goes to 0.047uF capacitor = 47000pF */
+ // low bit goes to 0.22uF capacitor = 220000pF
+ // high bit goes to 0.047uF capacitor = 47000pF
m_filter_ctl[fltnum]->write(bit);
}
}
@@ -946,7 +947,7 @@ void galaxian_state::konami_portc_1_w(uint8_t data)
uint8_t galaxian_state::theend_ppi8255_r(offs_t offset)
{
- /* the decoding here is very simplistic, and you can address both simultaneously */
+ // the decoding here is very simplistic, and you can address both simultaneously
uint8_t result = 0xff;
if (offset & 0x0100) result &= m_ppi8255[0]->read(offset & 3);
if (offset & 0x0200) result &= m_ppi8255[1]->read(offset & 3);
@@ -956,7 +957,7 @@ uint8_t galaxian_state::theend_ppi8255_r(offs_t offset)
void galaxian_state::theend_ppi8255_w(offs_t offset, uint8_t data)
{
- /* the decoding here is very simplistic, and you can address both simultaneously */
+ // the decoding here is very simplistic, and you can address both simultaneously
if (offset & 0x0100) m_ppi8255[0]->write(offset & 3, data);
if (offset & 0x0200) m_ppi8255[1]->write(offset & 3, data);
}
@@ -980,27 +981,27 @@ void galaxian_state::theend_protection_w(uint8_t data)
const uint8_t num2 = (m_protection_state >> 4) & 0x0f;
const uint8_t op = m_protection_state & 0x0f;
- /* TODO: theend writes several, other mystery sequences */
+ // TODO: theend writes several, other mystery sequences
switch (op)
{
case 0x6:
- /* scrambles */
+ // scrambles
m_protection_result ^= 0x80;
break;
case 0x9:
- /* scramble */
+ // scramble
m_protection_result = std::min(num1 + 1, 0xf) << 4; // does not want overflow
break;
case 0xb:
- /* theend */
+ // theend
m_protection_result = std::max(num2 - num1, 0) << 4; // assume no underflow
break;
case 0xa:
- /* theend */
+ // theend
m_protection_result = 0x00; // needs this to avoid glitches after first round
break;
case 0xf:
- /* scrambles */
+ // scrambles
m_protection_result = std::max(num1 - num2, 0) << 4; // assume no underflow
break;
}
@@ -1013,7 +1014,7 @@ uint8_t galaxian_state::theend_protection_r()
}
template <int N>
-READ_LINE_MEMBER(galaxian_state::theend_protection_alt_r)
+int galaxian_state::theend_protection_alt_r()
{
/*
Handled by a custom IC. Holds two bits derived from the upper bit of
@@ -1124,7 +1125,7 @@ void monsterz_state::machine_start()
uint8_t galaxian_state::frogger_ppi8255_r(offs_t offset)
{
- /* the decoding here is very simplistic, and you can address both simultaneously */
+ // the decoding here is very simplistic, and you can address both simultaneously
uint8_t result = 0xff;
if (offset & 0x1000) result &= m_ppi8255[1]->read((offset >> 1) & 3);
if (offset & 0x2000) result &= m_ppi8255[0]->read((offset >> 1) & 3);
@@ -1134,7 +1135,7 @@ uint8_t galaxian_state::frogger_ppi8255_r(offs_t offset)
void galaxian_state::frogger_ppi8255_w(offs_t offset, uint8_t data)
{
- /* the decoding here is very simplistic, and you can address both simultaneously */
+ // the decoding here is very simplistic, and you can address both simultaneously
if (offset & 0x1000) m_ppi8255[1]->write((offset >> 1) & 3, data);
if (offset & 0x2000) m_ppi8255[0]->write((offset >> 1) & 3, data);
}
@@ -1142,7 +1143,7 @@ void galaxian_state::frogger_ppi8255_w(offs_t offset, uint8_t data)
uint8_t galaxian_state::frogger_ay8910_r(offs_t offset)
{
- /* the decoding here is very simplistic */
+ // the decoding here is very simplistic
uint8_t result = 0xff;
if (offset & 0x40) result &= m_ay8910[0]->data_r();
return result;
@@ -1151,8 +1152,8 @@ uint8_t galaxian_state::frogger_ay8910_r(offs_t offset)
void galaxian_state::frogger_ay8910_w(offs_t offset, uint8_t data)
{
- /* the decoding here is very simplistic */
- /* AV6,7 ==> AY8910 #1 */
+ // the decoding here is very simplistic
+ // AV6,7 ==> AY8910 #1
if (offset & 0x40)
m_ay8910[0]->data_w(data);
else if (offset & 0x80)
@@ -1162,7 +1163,7 @@ void galaxian_state::frogger_ay8910_w(offs_t offset, uint8_t data)
uint8_t galaxian_state::frogger_sound_timer_r()
{
- /* same as regular Konami sound but with bits 3,5 swapped */
+ // same as regular Konami sound but with bits 3,5 swapped
uint8_t konami_value = konami_sound_timer_r();
return bitswap<8>(konami_value, 7,6,3,4,5,2,1,0);
}
@@ -1189,7 +1190,7 @@ IRQ_CALLBACK_MEMBER(galaxian_state::froggermc_audiocpu_irq_ack)
uint8_t galaxian_state::frogf_ppi8255_r(offs_t offset)
{
- /* the decoding here is very simplistic, and you can address both simultaneously */
+ // the decoding here is very simplistic, and you can address both simultaneously
uint8_t result = 0xff;
if (offset & 0x1000) result &= m_ppi8255[0]->read((offset >> 3) & 3);
if (offset & 0x2000) result &= m_ppi8255[1]->read((offset >> 3) & 3);
@@ -1199,7 +1200,7 @@ uint8_t galaxian_state::frogf_ppi8255_r(offs_t offset)
void galaxian_state::frogf_ppi8255_w(offs_t offset, uint8_t data)
{
- /* the decoding here is very simplistic, and you can address both simultaneously */
+ // the decoding here is very simplistic, and you can address both simultaneously
if (offset & 0x1000) m_ppi8255[0]->write((offset >> 3) & 3, data);
if (offset & 0x2000) m_ppi8255[1]->write((offset >> 3) & 3, data);
}
@@ -1397,7 +1398,7 @@ void zigzagb_state::ay8910_w(offs_t offset, uint8_t data)
*************************************/
template <int N>
-READ_LINE_MEMBER(galaxian_state::azurian_port_r)
+int galaxian_state::azurian_port_r()
{
return (ioport("FAKE")->read() >> N) & 1;
}
@@ -1422,14 +1423,14 @@ void kingball_state::machine_start()
}
-READ_LINE_MEMBER(kingball_state::muxbit_r)
+int kingball_state::muxbit_r()
{
// multiplex the service mode switch with a speech DIP switch
return BIT(m_mux_port->read(), m_speech_dip);
}
-READ_LINE_MEMBER(kingball_state::noise_r)
+int kingball_state::noise_r()
{
/* bit 5 is the NOISE line from the sound circuit. The code just verifies
that it's working, doesn't actually use return value, so we can just use
@@ -1524,7 +1525,7 @@ uint8_t galaxian_state::jumpbug_protection_r(offs_t offset)
case 0x0118: return 0xd3;
case 0x0214: return 0xcf;
case 0x0235: return 0x02;
- case 0x0311: return 0xff; /* not checked */
+ case 0x0311: return 0xff; // not checked
}
logerror("Unknown protection read. Offset: %04X PC=%04X\n",0xb000+offset,m_maincpu->pc());
return 0xff;
@@ -1638,6 +1639,7 @@ void sbhoei_state::sbhoei_soundlatch_w(uint8_t data)
{
m_soundlatch->write(data & 0x7f);
m_8039->set_input_line(0, (data & 0x80) ? ASSERT_LINE : CLEAR_LINE);
+ machine().scheduler().perfect_quantum(attotime::from_usec(100)); // main CPU polls for response from 8039
}
void sbhoei_state::p2_w(uint8_t data)
@@ -1716,7 +1718,7 @@ LATCH: (write 7000-77ff)
loads latch at 9J
*/
-/* map derived from schematics */
+// map derived from schematics
void galaxian_state::galaxian_map_discrete(address_map &map)
{
@@ -1812,7 +1814,7 @@ void galaxian_state::highroll_map(address_map &map)
map(0x4000, 0x43ff).mirror(0x0400).ram().share("nvram");
}
-/* map derived from schematics */
+// map derived from schematics
void galaxian_state::mooncrst_map_discrete(address_map &map)
{
@@ -2065,7 +2067,7 @@ void galaxian_state::ozon1_io_map(address_map &map)
}
-/* map derived from schematics */
+// map derived from schematics
void galaxian_state::theend_map(address_map &map)
{
map.unmap_value_high();
@@ -2141,7 +2143,7 @@ void galaxian_state::explorer_map(address_map &map)
map(0x6805, 0x6805).mirror(0x07f8); //POUT2
map(0x6806, 0x6806).mirror(0x07f8).w(FUNC(galaxian_state::galaxian_flip_screen_x_w));
map(0x6807, 0x6807).mirror(0x07f8).w(FUNC(galaxian_state::galaxian_flip_screen_y_w));
- map(0x7000, 0x7000).mirror(0x07ff).rw("watchdog", FUNC(watchdog_timer_device::reset_r), FUNC(watchdog_timer_device::reset_w)); /* watchdog works for writes as well? (or is it just disabled?) */
+ map(0x7000, 0x7000).mirror(0x07ff).rw("watchdog", FUNC(watchdog_timer_device::reset_r), FUNC(watchdog_timer_device::reset_w)); // watchdog works for writes as well? (or is it just disabled?)
map(0x8000, 0x8000).mirror(0x0ffc).portr("IN0");
map(0x8000, 0x8000).mirror(0x0fff).w(m_soundlatch, FUNC(generic_latch_8_device::write));
map(0x8001, 0x8001).mirror(0x0ffc).portr("IN1");
@@ -2173,7 +2175,7 @@ void galaxian_state::astroamb_map(address_map &map)
map(0x7800, 0x7800).r("watchdog", FUNC(watchdog_timer_device::reset_r)).w("cust", FUNC(galaxian_sound_device::pitch_w));
}
-/* map derived from schematics */
+// map derived from schematics
void galaxian_state::scobra_map(address_map &map)
{
map.unmap_value_high();
@@ -2187,7 +2189,7 @@ void galaxian_state::scobra_map(address_map &map)
map(0xa802, 0xa802).mirror(0x47f8).w(FUNC(galaxian_state::coin_count_0_w));
map(0xa803, 0xa803).mirror(0x47f8).w(FUNC(galaxian_state::scramble_background_enable_w));
map(0xa804, 0xa804).mirror(0x47f8).w(FUNC(galaxian_state::galaxian_stars_enable_w));
- map(0xa805, 0xa805).mirror(0x47f8); /* POUT2 */
+ map(0xa805, 0xa805).mirror(0x47f8); // POUT2
map(0xa806, 0xa806).mirror(0x47f8).w(FUNC(galaxian_state::galaxian_flip_screen_x_w));
map(0xa807, 0xa807).mirror(0x47f8).w(FUNC(galaxian_state::galaxian_flip_screen_y_w));
map(0xb000, 0xb000).mirror(0x47ff).r("watchdog", FUNC(watchdog_timer_device::reset_r));
@@ -2326,7 +2328,7 @@ void galaxian_state::anteaterg_map(address_map &map)
map(0x2606, 0x2606).mirror(0x01f8).w(FUNC(galaxian_state::galaxian_flip_screen_x_w));
map(0x2607, 0x2607).mirror(0x01f8).w(FUNC(galaxian_state::galaxian_flip_screen_y_w));
map(0x4000, 0x7bff).rom();
- map(0x7c00, 0x7fff).ram().w(FUNC(galaxian_state::galaxian_videoram_w)).share("videoram"); /* mirror! */
+ map(0x7c00, 0x7fff).ram().w(FUNC(galaxian_state::galaxian_videoram_w)).share("videoram"); // mirror!
map(0x8000, 0xbfff).rom();
map(0xf400, 0xf400).mirror(0x01ff).r("watchdog", FUNC(watchdog_timer_device::reset_r));
map(0xf600, 0xf603).mirror(0x01fc).rw("ppi8255_0", FUNC(i8255_device::read), FUNC(i8255_device::write));
@@ -2381,7 +2383,7 @@ void galaxian_state::jungsub_io_map(address_map &map) // TODO: preliminary
map(0x00, 0x00).mirror(0x0f).w(m_soundlatch, FUNC(generic_latch_8_device::write));
}
-/* map derived from schematics */
+// map derived from schematics
void galaxian_state::frogger_map(address_map &map)
{
map.unmap_value_high();
@@ -2393,13 +2395,13 @@ void galaxian_state::frogger_map(address_map &map)
map(0xb808, 0xb808).mirror(0x07e3).w(FUNC(galaxian_state::irq_enable_w));
map(0xb80c, 0xb80c).mirror(0x07e3).w(FUNC(galaxian_state::galaxian_flip_screen_y_w));
map(0xb810, 0xb810).mirror(0x07e3).w(FUNC(galaxian_state::galaxian_flip_screen_x_w));
- map(0xb818, 0xb818).mirror(0x07e3).w(FUNC(galaxian_state::coin_count_0_w)); /* IOPC7 */
- map(0xb81c, 0xb81c).mirror(0x07e3).w(FUNC(galaxian_state::coin_count_1_w)); /* POUT1 */
+ map(0xb818, 0xb818).mirror(0x07e3).w(FUNC(galaxian_state::coin_count_0_w)); // IOPC7
+ map(0xb81c, 0xb81c).mirror(0x07e3).w(FUNC(galaxian_state::coin_count_1_w)); // POUT1
map(0xc000, 0xffff).rw(FUNC(galaxian_state::frogger_ppi8255_r), FUNC(galaxian_state::frogger_ppi8255_w));
}
-/* map derived from schematics */
+// map derived from schematics
void galaxian_state::turtles_map(address_map &map)
{
map.unmap_value_high();
@@ -2421,7 +2423,7 @@ void galaxian_state::turtles_map(address_map &map)
}
-/* map NOT derived from schematics */
+// map NOT derived from schematics
void galaxian_state::amigo2_map(address_map &map)
{
map(0x0000, 0x3fff).rom();
@@ -2608,10 +2610,10 @@ void fourplay_state::fourplay_map(address_map &map)
map(0x7001,0x7001).w(FUNC(fourplay_state::irq_enable_w));
map(0x7002,0x7003).w(FUNC(fourplay_state::fourplay_rombank_w));
map(0x7004,0x7004).w(FUNC(fourplay_state::galaxian_stars_enable_w));
- map(0x7005,0x7005).nopw(); /* bit 3 of rombank select - always 0 */
+ map(0x7005,0x7005).nopw(); // bit 3 of rombank select - always 0
map(0x7006,0x7006).w(FUNC(fourplay_state::galaxian_flip_screen_x_w));
map(0x7007,0x7007).w(FUNC(fourplay_state::galaxian_flip_screen_y_w));
- map(0x7008,0x7008).nopw(); /* bit 4 of rombank select - always 0 */
+ map(0x7008,0x7008).nopw(); // bit 4 of rombank select - always 0
map(0x7800,0x7800).w("cust",FUNC(galaxian_sound_device::pitch_w));
}
@@ -2634,7 +2636,7 @@ void videight_state::videight_map(address_map &map)
map(0x7002,0x7005).w(FUNC(videight_state::videight_rombank_w));
map(0x7006,0x7006).w(FUNC(videight_state::galaxian_flip_screen_x_w));
map(0x7007,0x7007).w(FUNC(videight_state::galaxian_flip_screen_y_w));
- map(0x7008,0x7008).nopw(); /* bit 4 of rombank select - always 0 */
+ map(0x7008,0x7008).nopw(); // bit 4 of rombank select - always 0
map(0x7800,0x7800).w("cust",FUNC(galaxian_sound_device::pitch_w));
}
@@ -3132,9 +3134,9 @@ static INPUT_PORTS_START( swarm )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x04, "4" )
- PORT_DIPNAME( 0x08, 0x00, DEF_STR( Difficulty ) ) /* aliens "flying" simultaneously */
- PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) /* less aliens */
- PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) /* more aliens */
+ PORT_DIPNAME( 0x08, 0x00, DEF_STR( Difficulty ) ) // aliens "flying" simultaneously
+ PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) // less aliens
+ PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) // more aliens
INPUT_PORTS_END
static INPUT_PORTS_START( kamikazp )
@@ -3187,9 +3189,9 @@ static INPUT_PORTS_START( zerotime )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x04, "5" )
- PORT_DIPNAME( 0x08, 0x00, DEF_STR( Difficulty ) ) /* player's bullet speed */
- PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) /* gap of 6 pixels */
- PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) /* gap of 8 pixels */
+ PORT_DIPNAME( 0x08, 0x00, DEF_STR( Difficulty ) ) // player's bullet speed
+ PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) // gap of 6 pixels
+ PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) // gap of 8 pixels
INPUT_PORTS_END
@@ -3234,7 +3236,7 @@ static INPUT_PORTS_START( orbitron )
PORT_MODIFY("IN1")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
- PORT_DIPNAME( 0x60, 0x40, DEF_STR( Coinage ) ) /* Routine at 0x00e1 */
+ PORT_DIPNAME( 0x60, 0x40, DEF_STR( Coinage ) ) // Routine at 0x00e1
PORT_DIPSETTING( 0x00, "A 2C/1C B 1C/3C" )
PORT_DIPSETTING( 0x20, "A 2C/1C B 1C/3C (duplicate)" )
PORT_DIPSETTING( 0x40, "A 1C/1C B 1C/6C" )
@@ -3253,7 +3255,7 @@ static INPUT_PORTS_START( orbitron )
INPUT_PORTS_END
-/* These inputs are clearly wrong, they need a full test */
+// These inputs are clearly wrong, they need a full test
static INPUT_PORTS_START( luctoday )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 )
@@ -3503,7 +3505,7 @@ static INPUT_PORTS_START( azurian )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, azurian_port_r<0>) /* "linked" with bit 2 of IN2 */
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, azurian_port_r<0>) // "linked" with bit 2 of IN2
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x80, "5" )
@@ -3515,13 +3517,13 @@ static INPUT_PORTS_START( azurian )
PORT_DIPNAME( 0x02, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "5000" )
PORT_DIPSETTING( 0x02, "7000" )
- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, azurian_port_r<1>) /* "linked" with bit 6 of IN1 */
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, azurian_port_r<1>) // "linked" with bit 6 of IN1
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("FAKE") /* fake port to handle routine at 0x05b3 that stores value at 0x40f4 */
+ PORT_START("FAKE") // fake port to handle routine at 0x05b3 that stores value at 0x40f4
PORT_DIPNAME( 0x03, 0x01, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x03, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x01, DEF_STR( Normal ) )
@@ -3574,8 +3576,8 @@ static INPUT_PORTS_START( gteikokub )
PORT_MODIFY("IN0")
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Not tested due to code removed at 0x00ab, 0x1b26 and 0x1c97*/
- PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Not tested due to code removed at 0x1901*/
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) // Not tested due to code removed at 0x00ab, 0x1b26 and 0x1c97
+ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) // Not tested due to code removed at 0x1901
PORT_MODIFY("IN1")
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Coin_A ) )
@@ -3708,7 +3710,7 @@ static INPUT_PORTS_START( batman2 )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( ladybugg )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 )
@@ -3816,7 +3818,7 @@ static INPUT_PORTS_START( articms )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_5C ) )
PORT_START("IN2")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) /* Likely Bonus Life */
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) // Likely Bonus Life
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x00, DEF_STR( Difficulty ) )
@@ -3894,7 +3896,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( tenspot )
PORT_INCLUDE(articms)
- PORT_START("SELECT") /* inputs? read by select CPU - unknown */
+ PORT_START("SELECT") // inputs? read by select CPU - unknown
PORT_DIPUNKNOWN( 0x01, 0x01 )
PORT_DIPUNKNOWN( 0x02, 0x02 )
PORT_DIPUNKNOWN( 0x04, 0x04 )
@@ -3904,7 +3906,7 @@ static INPUT_PORTS_START( tenspot )
PORT_DIPUNKNOWN( 0x40, 0x40 )
PORT_DIPUNKNOWN( 0x80, 0x80 )
- PORT_START("SELECT2") /* inputs? read by select CPU - unknown */
+ PORT_START("SELECT2") // inputs? read by select CPU - unknown
PORT_DIPUNKNOWN( 0x01, 0x01 )
PORT_DIPUNKNOWN( 0x02, 0x02 )
PORT_DIPUNKNOWN( 0x04, 0x04 )
@@ -3914,7 +3916,7 @@ static INPUT_PORTS_START( tenspot )
PORT_DIPUNKNOWN( 0x40, 0x40 )
PORT_DIPUNKNOWN( 0x80, 0x80 )
- PORT_START("FAKE_SELECT") /* fake button to move onto next game - until select rom is understood! */
+ PORT_START("FAKE_SELECT") // fake button to move onto next game - until select rom is understood!
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_NAME("Next Game (Fake)") PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, tenspot_state, tenspot_fake, 0)
PORT_MODIFY("IN0")
@@ -4078,15 +4080,15 @@ static INPUT_PORTS_START( atlantib )
PORT_INCLUDE(articms)
PORT_MODIFY("IN1")
- PORT_DIPNAME( 0x40, 0x00, DEF_STR( Coin_A ) ) /* These are backwards compared to the other sets??? */
+ PORT_DIPNAME( 0x40, 0x00, DEF_STR( Coin_A ) ) // These are backwards compared to the other sets???
PORT_DIPSETTING( 0x40, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_MODIFY("IN2")
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Lives ) ) /* These are backwards compared to the other sets??? */
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Lives ) ) // These are backwards compared to the other sets???
PORT_DIPSETTING( 0x04, "3" )
PORT_DIPSETTING( 0x00, "5" )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Cabinet ) ) /* These are backwards compared to the other sets??? */
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Cabinet ) ) // These are backwards compared to the other sets???
PORT_DIPSETTING( 0x08, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
INPUT_PORTS_END
@@ -4162,7 +4164,7 @@ static INPUT_PORTS_START( gmgalax )
PORT_START("IN2")
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_CUSTOM) PORT_CUSTOM_MEMBER(gmgalax_state, port_r<2>)
- PORT_START("GMIN0") /* Ghost Muncher - IN0 */
+ PORT_START("GMIN0") // Ghost Muncher - IN0
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP) PORT_4WAY PORT_COCKTAIL PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
@@ -4174,7 +4176,7 @@ static INPUT_PORTS_START( gmgalax )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
- PORT_START("GMIN1") /* Ghost Muncher - IN1 */
+ PORT_START("GMIN1") // Ghost Muncher - IN1
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
@@ -4187,7 +4189,7 @@ static INPUT_PORTS_START( gmgalax )
PORT_DIPSETTING( 0xc0, "20000" )
PORT_DIPSETTING( 0x00, DEF_STR( None ) )
- PORT_START("GMIN2") /* Ghost Muncher - IN2 */
+ PORT_START("GMIN2") // Ghost Muncher - IN2
PORT_DIPNAME( 0x03, 0x02, "Ghost Muncher - Coinage" ) PORT_DIPLOCATION("SW2:3,4") PORT_CONDITION("GAMESEL",0x01,NOTEQUALS,0x01)
PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
@@ -4200,7 +4202,7 @@ static INPUT_PORTS_START( gmgalax )
PORT_DIPSETTING( 0x00, "5" )
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("GLIN0") /* Galaxian - IN0 */
+ PORT_START("GLIN0") // Galaxian - IN0
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
@@ -4212,7 +4214,7 @@ static INPUT_PORTS_START( gmgalax )
PORT_SERVICE( 0x40, IP_ACTIVE_HIGH ) PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
- PORT_START("GLIN1") /* Galaxian - IN1 */
+ PORT_START("GLIN1") // Galaxian - IN1
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_COCKTAIL PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
@@ -4225,7 +4227,7 @@ static INPUT_PORTS_START( gmgalax )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0xc0, DEF_STR( Free_Play ) )
- PORT_START("GLIN2") /* Galaxian - IN2 */
+ PORT_START("GLIN2") // Galaxian - IN2
PORT_DIPNAME( 0x03, 0x01, "Galaxian - Bonus Life" ) PORT_DIPLOCATION("SW2:3,4") PORT_CONDITION("GAMESEL",0x01,EQUALS,0x01)
PORT_DIPSETTING( 0x01, "4000" )
PORT_DIPSETTING( 0x02, "5000" )
@@ -4237,7 +4239,7 @@ static INPUT_PORTS_START( gmgalax )
PORT_DIPUNUSED( 0x08, 0x00 ) PORT_DIPLOCATION("SW2:6")
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("GAMESEL") /* game select, toggle switch on control panel */
+ PORT_START("GAMESEL") // game select, toggle switch on control panel
PORT_DIPNAME( 0x01, 0x00, "Game Select") PORT_DIPLOCATION("SW1:1") PORT_CODE(KEYCODE_F1) PORT_TOGGLE PORT_CHANGED_MEMBER(DEVICE_SELF, gmgalax_state, game_changed, 0)
PORT_DIPSETTING( 0x00, "Ghost Muncher" )
PORT_DIPSETTING( 0x01, "Galaxian" )
@@ -4262,7 +4264,7 @@ static INPUT_PORTS_START( mooncrst )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x20, DEF_STR( Cocktail ) )
- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* "reset" on schematics */
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) // "reset" on schematics
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN1")
@@ -4298,7 +4300,7 @@ static INPUT_PORTS_START( mooncrsa )
PORT_INCLUDE(mooncrst)
PORT_MODIFY("IN2")
- PORT_DIPUNUSED( 0x03, IP_ACTIVE_HIGH ) /* Not used due to code at 0x01c0 */
+ PORT_DIPUNUSED( 0x03, IP_ACTIVE_HIGH ) // Not used due to code at 0x01c0
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
@@ -4311,7 +4313,7 @@ static INPUT_PORTS_START( mooncrsg )
PORT_INCLUDE(mooncrst)
PORT_MODIFY("IN1")
- PORT_DIPUNUSED( 0x80, IP_ACTIVE_HIGH ) /* Always non-Japanese due to code at 0x2f77 */
+ PORT_DIPUNUSED( 0x80, IP_ACTIVE_HIGH ) // Always non-Japanese due to code at 0x2f77
INPUT_PORTS_END
@@ -4319,7 +4321,7 @@ static INPUT_PORTS_START( fantazia )
PORT_INCLUDE(mooncrst)
PORT_MODIFY("IN1")
- PORT_DIPUNUSED( 0x80, IP_ACTIVE_HIGH ) /* Always non-Japanese due to code at 0x2f53 */
+ PORT_DIPUNUSED( 0x80, IP_ACTIVE_HIGH ) // Always non-Japanese due to code at 0x2f53
PORT_MODIFY("IN2")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coin_B ) )
@@ -4344,7 +4346,7 @@ static INPUT_PORTS_START( eagle2 )
PORT_DIPSETTING( 0x02, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
- PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Free_Play ) ) /* Not used due to code at 0x01c0, but "Free Play" is checked */
+ PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Free_Play ) ) // Not used due to code at 0x01c0, but "Free Play" is checked
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
// PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
// PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
@@ -4356,17 +4358,17 @@ static INPUT_PORTS_START( smooncrs )
PORT_INCLUDE(mooncrst)
PORT_MODIFY("IN1")
- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Not read due to code at 0x2b1c and 0x3313 */
- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Not read due to code at 0x2b1c and 0x3313 */
- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Not read due to code at 0x2b1c and 0x3313 */
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) ) /* code at 0x2962 (0x2f68 in spcdrag) */
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) // Not read due to code at 0x2b1c and 0x3313
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) // Not read due to code at 0x2b1c and 0x3313
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) // Not read due to code at 0x2b1c and 0x3313
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Difficulty ) ) // code at 0x2962 (0x2f68 in spcdrag)
PORT_DIPSETTING( 0x40, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
- PORT_DIPNAME( 0x80, 0x80, "Player's Bullet Speed" ) /* code at 0x0007 (0x2f53 in spcdrag) */
+ PORT_DIPNAME( 0x80, 0x80, "Player's Bullet Speed" ) // code at 0x0007 (0x2f53 in spcdrag)
PORT_DIPSETTING( 0x00, "Slow" )
PORT_DIPSETTING( 0x80, "Fast" )
- /* Bonus life is always '50000' due to code at 0x2f68 */
- /* Language is always non-Japanese due to code at 0x2f53 */
+ // Bonus life is always '50000' due to code at 0x2f68
+ // Language is always non-Japanese due to code at 0x2f53
INPUT_PORTS_END
static INPUT_PORTS_START( mooncreg )
@@ -4445,7 +4447,7 @@ static INPUT_PORTS_START( mooncrgx )
PORT_DIPSETTING( 0x01, "30000" )
PORT_DIPSETTING( 0x00, "50000" )
PORT_DIPUNUSED( 0x02, 0x00 )
- PORT_DIPUNUSED( 0x04, 0x00 ) /* Always non-Japanese due to code removed at 0x2f4b */
+ PORT_DIPUNUSED( 0x04, 0x00 ) // Always non-Japanese due to code removed at 0x2f4b
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
@@ -4657,30 +4659,30 @@ static INPUT_PORTS_START( kong )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( bongo )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 )
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* see notes */
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) // see notes
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_2WAY
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_2WAY
- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* see notes */
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) // see notes
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 )
- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) /* see notes */
- PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) /* see notes */
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) // see notes
+ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) // see notes
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_COCKTAIL
- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* see notes */
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) // see notes
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN2")
- PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED ) /* see notes */
+ PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED ) // see notes
PORT_START("DSW")
PORT_DIPUNUSED( 0x01, IP_ACTIVE_HIGH )
@@ -4689,14 +4691,14 @@ static INPUT_PORTS_START( bongo )
PORT_DIPSETTING( 0x02, "3" )
PORT_DIPSETTING( 0x04, "4" )
PORT_DIPSETTING( 0x06, "5" )
- PORT_DIPNAME( 0x08, 0x00, "Infinite Lives (Cheat)" ) /* always gives 3 lives */
+ PORT_DIPNAME( 0x08, 0x00, "Infinite Lives (Cheat)" ) // always gives 3 lives
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x08, DEF_STR( On ) )
PORT_DIPUNUSED( 0x10, IP_ACTIVE_HIGH )
PORT_DIPUNUSED( 0x20, IP_ACTIVE_HIGH )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Coinage ) )
- PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) /* also 1C_3C for Coin B if it existed */
- PORT_DIPSETTING( 0x40, DEF_STR( 1C_1C ) ) /* also 1C_6C for Coin B if it existed */
+ PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) // also 1C_3C for Coin B if it existed
+ PORT_DIPSETTING( 0x40, DEF_STR( 1C_1C ) ) // also 1C_6C for Coin B if it existed
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
@@ -4766,7 +4768,7 @@ static INPUT_PORTS_START( tdpgal )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( porter )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 )
@@ -4774,17 +4776,17 @@ static INPUT_PORTS_START( porter )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL /* see notes */
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL // see notes
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_START("IN1")
- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) /* also START1 - see notes */
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) /* also START2 - see notes */
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) // also START1 - see notes
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) // also START2 - see notes
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL /* see notes */
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL // see notes
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "10000 only" )
PORT_DIPSETTING( 0x40, "30000 only" )
@@ -4796,7 +4798,7 @@ static INPUT_PORTS_START( porter )
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, "A 2C/1C B 1C/3C" )
PORT_DIPSETTING( 0x01, "A 1C/1C B 1C/6C" )
- PORT_DIPUNUSED( 0x02, IP_ACTIVE_LOW ) /* stored to 0x8021 bit 1 but not tested */
+ PORT_DIPUNUSED( 0x02, IP_ACTIVE_LOW ) // stored to 0x8021 bit 1 but not tested
PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "2" )
PORT_DIPSETTING( 0x04, "3" )
@@ -4869,9 +4871,9 @@ static INPUT_PORTS_START( jumpbug )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
- PORT_DIPNAME( 0x40, 0x00, "Difficulty ?" )
- PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
- PORT_DIPSETTING( 0x40, DEF_STR( Easy ) )
+ PORT_DIPNAME( 0x40, 0x00, "Difficulty" )
+ PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( Hard ) )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_START("IN2")
@@ -4911,9 +4913,9 @@ static INPUT_PORTS_START( levers )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(2)
PORT_START("IN2")
- PORT_DIPUNKNOWN( 0x01, 0x01 ) /* probably unused */
- PORT_DIPUNKNOWN( 0x02, 0x02 ) /* probably unused */
- PORT_DIPNAME( 0x04, 0x00, "Leave On" ) /* used - MUST be ON */
+ PORT_DIPUNKNOWN( 0x01, 0x01 ) // probably unused
+ PORT_DIPUNKNOWN( 0x02, 0x02 ) // probably unused
+ PORT_DIPNAME( 0x04, 0x00, "Leave On" ) // used - MUST be ON
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Free_Play ) )
@@ -4935,11 +4937,11 @@ static INPUT_PORTS_START( checkman )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
PORT_START("IN1")
- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Start 1 / P1 Tiles Left")/* also p1 tiles left */
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Start 2 / P1 Tiles Right")/* also p1 tiles right */
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Start 1 / P1 Tiles Left") // also p1 tiles left
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Start 2 / P1 Tiles Right") // also p1 tiles right
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL
- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL PORT_NAME("P2 Tiles Left")/* p2 tiles left */
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL PORT_NAME("P2 Tiles Left") // p2 tiles left
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_COCKTAIL
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x40, "A 2C/1C B 1C/3C" )
@@ -4999,7 +5001,7 @@ static INPUT_PORTS_START( dingo )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL /* 1st Button 1 */
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL // 1st Button 1
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_COCKTAIL
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
@@ -5009,7 +5011,7 @@ static INPUT_PORTS_START( dingo )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_COCKTAIL
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL /* 2nd Button 1 */
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL // 2nd Button 1
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x40, DEF_STR( Cocktail ) )
@@ -5029,8 +5031,8 @@ static INPUT_PORTS_START( dingo )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "20000" )
PORT_DIPSETTING( 0x08, "40000" )
- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) /* Yes, the game reads both of these */
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) /* Check code at 0x22e1 */
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) // Yes, the game reads both of these
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) // Check code at 0x22e1
INPUT_PORTS_END
@@ -5087,13 +5089,13 @@ static INPUT_PORTS_START( kingball )
PORT_MODIFY("IN0")
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(kingball_state, muxbit_r)
- /* Relating to above port:Hack? - possibly multiplexed via writes to $b003 */
+ // Relating to above port:Hack? - possibly multiplexed via writes to $b003
//PORT_DIPNAME( 0x40, 0x40, "Speech" )
//PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
//PORT_DIPSETTING( 0x40, DEF_STR( On ) )
PORT_MODIFY("IN1")
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(kingball_state, noise_r) /* NOISE line */
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(kingball_state, noise_r) // NOISE line
PORT_DIPNAME( 0xc0, 0x40, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_1C ) )
@@ -5167,9 +5169,9 @@ INPUT_PORTS_END
static INPUT_PORTS_START( frogger )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* 1P shoot2 - unused */
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) // 1P shoot2 - unused
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* 1P shoot1 - unused */
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) // 1P shoot1 - unused
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
@@ -5181,8 +5183,8 @@ static INPUT_PORTS_START( frogger )
PORT_DIPSETTING( 0x01, "5" )
PORT_DIPSETTING( 0x02, "7" )
PORT_DIPSETTING( 0x03, "256 (Cheat)")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* 2P shoot2 - unused */
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* 2P shoot1 - unused */
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) // 2P shoot2 - unused
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) // 2P shoot1 - unused
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
@@ -5203,7 +5205,7 @@ static INPUT_PORTS_START( frogger )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -5243,7 +5245,7 @@ static INPUT_PORTS_START( froggermc )
PORT_DIPSETTING( 0x00, "A 1/1 B 1/6 C 1/1" )
PORT_BIT( 0xf8, IP_ACTIVE_HIGH, IPT_UNKNOWN )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -5301,7 +5303,7 @@ static INPUT_PORTS_START( froggeram )
PORT_DIPSETTING( 0x04, "A 1/1 B 2/1" )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END
@@ -5344,7 +5346,7 @@ static INPUT_PORTS_START( turtles )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -5421,7 +5423,7 @@ static INPUT_PORTS_START( amidar )
PORT_DIPSETTING( 0x50, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
PORT_DIPSETTING( 0x00, "Invalid" )
- /* Invalid = both coin slots disabled */
+ // Invalid = both coin slots disabled
INPUT_PORTS_END
@@ -5491,7 +5493,7 @@ static INPUT_PORTS_START( mandingarf )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 )
- /* the rest appear to be unused, except for Lives? */
+ // the rest appear to be unused, except for Lives?
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -5510,7 +5512,7 @@ static INPUT_PORTS_START( mandingarf )
PORT_DIPSETTING( 0x80, "4" )
PORT_DIPSETTING( 0x00, "255 (Cheat)" ) // skips the self test checks?
- /* these two are reversed for some reason... */
+ // these two are reversed for some reason...
PORT_START("IN2")
PORT_DIPNAME( 0x02, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "30000 70000" )
@@ -5518,7 +5520,7 @@ static INPUT_PORTS_START( mandingarf )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, "A 1/1 B 1/6" )
PORT_DIPSETTING( 0x04, "A 2/1 B 1/3" )
- /* the rest appear to be unused? */
+ // the rest appear to be unused?
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -5637,7 +5639,7 @@ static INPUT_PORTS_START( bmxstunts )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( ozon1 )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
@@ -5666,7 +5668,7 @@ static INPUT_PORTS_START( ozon1 )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_DIPNAME( 0x06, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, "A 1C/1C B 2C/1C" )
- PORT_DIPSETTING( 0x02, "A 1C/2C B 1C/1C" ) /* see notes */
+ PORT_DIPSETTING( 0x02, "A 1C/2C B 1C/1C" ) // see notes
PORT_DIPSETTING( 0x04, "A 1C/3C B 3C/1C" )
PORT_DIPSETTING( 0x06, "A 1C/4C B 4C/1C" )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
@@ -5711,11 +5713,11 @@ static INPUT_PORTS_START( theend )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<0>) /* protection bit */
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<0>) // protection bit
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<1>) /* protection bit */
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<1>) // protection bit
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -5755,11 +5757,11 @@ static INPUT_PORTS_START( scramble )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<0>) /* protection bit */
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<0>) // protection bit
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<1>) /* protection bit */
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(galaxian_state, theend_protection_alt_r<1>) // protection bit
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -5806,7 +5808,7 @@ static INPUT_PORTS_START( namenayo )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) // is this checked?
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -5906,7 +5908,7 @@ static INPUT_PORTS_START( explorer )
PORT_DIPUNKNOWN( 0x04, 0x00 )
PORT_DIPUNKNOWN( 0x08, 0x00 )
PORT_DIPUNKNOWN( 0x10, 0x00 )
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* pressing this disables the coins */
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) // pressing this disables the coins
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START1 )
@@ -5998,7 +6000,7 @@ static INPUT_PORTS_START( atlantis )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) // probably unused
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
@@ -6025,13 +6027,13 @@ static INPUT_PORTS_START( atlantis )
PORT_DIPSETTING( 0x02, "A 1/3 B 2/1" )
PORT_DIPSETTING( 0x00, "A 1/6 B 1/1" )
PORT_DIPSETTING( 0x04, "A 1/99 B 1/99")
- /* all the other combos give 99 credits */
+ // all the other combos give 99 credits
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -6079,13 +6081,13 @@ static INPUT_PORTS_START( scorpion )
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Very_Hard ) )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
static INPUT_PORTS_START( scorpnmc )
- PORT_START("IN0") /* 0xa000 */
+ PORT_START("IN0") // 0xa000
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) // COIN2? (it ALWAYS adds 1 credit)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN1 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
@@ -6095,9 +6097,9 @@ static INPUT_PORTS_START( scorpnmc )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
- PORT_START("IN1") /* 0xa800 */
- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Start 1 / P1 Button 1") /* also P1 Button 1 */
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Start 2 / P1 Button 2") /* also P1 Button 2 */
+ PORT_START("IN1") // 0xa800
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Start 1 / P1 Button 1") // also P1 Button 1
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Start 2 / P1 Button 2") // also P1 Button 2
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
@@ -6108,7 +6110,7 @@ static INPUT_PORTS_START( scorpnmc )
PORT_DIPSETTING( 0x80, DEF_STR( Hard ) )
PORT_DIPSETTING( 0xc0, DEF_STR( Hardest ) )
- PORT_START("IN2") /* 0xb001 */
+ PORT_START("IN2") // 0xb001
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Lives ) ) // Check code at 0x00eb
@@ -6118,7 +6120,7 @@ static INPUT_PORTS_START( scorpnmc )
PORT_DIPSETTING( 0x0c, "5" )
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("IN3") /* 0xb002 */
+ PORT_START("IN3") // 0xb002
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) ) // Check code at 0x00fe
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x01, DEF_STR( Cocktail ) )
@@ -6132,7 +6134,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( aracnis )
- PORT_START("IN0") /* 0xa000 */
+ PORT_START("IN0") // 0xa000
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) // COIN2? (it ALWAYS adds 1 credit)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN1 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
@@ -6144,9 +6146,9 @@ static INPUT_PORTS_START( aracnis )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
- PORT_START("IN1") /* 0xa800 - needs verifying */
- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Start 1 / P1 Button 1") /* also P1 Button 1 */
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Start 2 / P1 Button 2") /* also P1 Button 2 */
+ PORT_START("IN1") // 0xa800 - needs verifying
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Start 1 / P1 Button 1") // also P1 Button 1
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Start 2 / P1 Button 2") // also P1 Button 2
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
@@ -6164,7 +6166,7 @@ static INPUT_PORTS_START( aracnis )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_START("IN2") /* 0xb001 */
+ PORT_START("IN2") // 0xb001
PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
@@ -6188,7 +6190,7 @@ static INPUT_PORTS_START( aracnis )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_START("IN3") /* 0xb002 */
+ PORT_START("IN3") // 0xb002
PORT_DIPNAME( 0x01, 0x01, "0xb002" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -6403,7 +6405,7 @@ INPUT_PORTS_END
// ckongs coinage DIPs are spread across two input ports
template <int Mask>
-READ_LINE_MEMBER(galaxian_state::ckongs_coinage_r)
+int galaxian_state::ckongs_coinage_r()
{
return (m_ckong_coinage->read() & Mask) ? 1 : 0;
}
@@ -6459,7 +6461,7 @@ static INPUT_PORTS_START( ckongs )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( bagmanmc )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 )
@@ -6478,7 +6480,7 @@ static INPUT_PORTS_START( bagmanmc )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* stored to 0x6163 bit 4 but not tested */
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) // stored to 0x6163 bit 4 but not tested
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x80, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
@@ -6500,8 +6502,8 @@ static INPUT_PORTS_START( bagmanmc )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Language ) )
PORT_DIPSETTING( 0x20, DEF_STR( English ) )
PORT_DIPSETTING( 0x00, DEF_STR( French ) )
- PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) /* see notes */
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) /* check code at 0x2d78 and 0x2e6b - affect initials entry */
+ PORT_DIPUNUSED( 0x40, IP_ACTIVE_LOW ) // see notes
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) // check code at 0x2d78 and 0x2e6b - affect initials entry
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@@ -6546,9 +6548,9 @@ static INPUT_PORTS_START( sfx )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x20, DEF_STR( On ) )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* unused */
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) // unused
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -6565,12 +6567,12 @@ static INPUT_PORTS_START( monsterz )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( scobra )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* see notes */
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) // see notes
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
@@ -6593,7 +6595,7 @@ static INPUT_PORTS_START( scobra )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
- PORT_DIPNAME( 0x06, 0x02, DEF_STR( Coinage ) ) PORT_DIPLOCATION("H2:4,5") /* see notes */
+ PORT_DIPNAME( 0x06, 0x02, DEF_STR( Coinage ) ) PORT_DIPLOCATION("H2:4,5") // see notes
PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x06, DEF_STR( 4C_3C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
@@ -6606,11 +6608,11 @@ static INPUT_PORTS_START( scobra )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( scobras )
PORT_INCLUDE(scobra)
@@ -6648,7 +6650,7 @@ CUSTOM_INPUT_MEMBER(moonwar_state::dial_r)
return ret;
}
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( moonwar )
PORT_START("IN0")
PORT_BIT( 0x1f, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_CUSTOM_MEMBER(moonwar_state, dial_r)
@@ -6661,7 +6663,7 @@ static INPUT_PORTS_START( moonwar )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x01, "4" )
PORT_DIPSETTING( 0x02, "5" )
- PORT_DIPSETTING( 0x03, DEF_STR( Free_Play ) ) /* see notes */
+ PORT_DIPSETTING( 0x03, DEF_STR( Free_Play ) ) // see notes
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_CONDITION("IN2", 0x08, EQUALS, 0x08) // cocktail: p2 thrust
@@ -6680,9 +6682,9 @@ static INPUT_PORTS_START( moonwar )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) )
- PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) /* output bits */
+ PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) // output bits
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("P1_DIAL")
@@ -6693,7 +6695,7 @@ static INPUT_PORTS_START( moonwar )
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(4) PORT_COCKTAIL PORT_REVERSE // cocktail: dial is reversed
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( moonwara )
PORT_INCLUDE(moonwar)
@@ -6707,12 +6709,12 @@ static INPUT_PORTS_START( moonwara )
PORT_MODIFY("P1_DIAL")
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(4) // both: p1 dial works normally, p2 dial is reversed, both share same port
- PORT_MODIFY("P2_DIAL") /* doesn't actually work due to bug in game code */
+ PORT_MODIFY("P2_DIAL") // doesn't actually work due to bug in game code
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(4) PORT_COCKTAIL
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( armorcar )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
@@ -6753,27 +6755,27 @@ static INPUT_PORTS_START( armorcar )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( armorcar2 )
PORT_INCLUDE(armorcar)
PORT_MODIFY("IN0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) /* see notes */
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) // see notes
PORT_MODIFY("IN1")
- PORT_BIT( 0x3c, IP_ACTIVE_LOW, IPT_UNUSED ) /* see notes */
+ PORT_BIT( 0x3c, IP_ACTIVE_LOW, IPT_UNUSED ) // see notes
PORT_MODIFY("IN2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) /* see notes */
- PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) /* see notes */
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) // see notes
+ PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) // see notes
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( tazmania )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 )
@@ -6814,7 +6816,7 @@ static INPUT_PORTS_START( tazmania )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
@@ -6862,11 +6864,11 @@ static INPUT_PORTS_START( mimonkey )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
-/* Same as 'mimonkey' but different "Lives" Dip Switch */
+// Same as 'mimonkey' but different "Lives" Dip Switch
static INPUT_PORTS_START( mimonsco )
PORT_INCLUDE( mimonkey )
@@ -6879,7 +6881,7 @@ static INPUT_PORTS_START( mimonsco )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( anteater )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
@@ -6903,7 +6905,7 @@ static INPUT_PORTS_START( anteater )
// PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
// PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
- PORT_BIT( 0x7c, IP_ACTIVE_LOW, IPT_UNUSED ) /* see notes */
+ PORT_BIT( 0x7c, IP_ACTIVE_LOW, IPT_UNUSED ) // see notes
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN2")
@@ -6916,11 +6918,11 @@ static INPUT_PORTS_START( anteater )
// PORT_DIPNAME( 0x08, 0x08, DEF_STR( Cabinet ) )
// PORT_DIPSETTING( 0x08, DEF_STR( Upright ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
- PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) /* see notes */
+ PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) // see notes
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0xb0, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
@@ -6975,7 +6977,7 @@ static INPUT_PORTS_START( anteateruk )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, 0x00, IPT_UNUSED )
INPUT_PORTS_END
@@ -7019,10 +7021,10 @@ static INPUT_PORTS_START( anteatergg )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( calipso )
PORT_START("IN0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) /* also START2 - see notes */
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) // also START2 - see notes
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
@@ -7046,7 +7048,7 @@ static INPUT_PORTS_START( calipso )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) /* also START1 - see notes */
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) // also START1 - see notes
PORT_DIPNAME( 0x06, 0x02, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x02, "A 1/1 B 1/1" )
PORT_DIPSETTING( 0x00, "A 1/2 B 2/1" )
@@ -7055,15 +7057,15 @@ static INPUT_PORTS_START( calipso )
// PORT_DIPNAME( 0x08, 0x08, DEF_STR( Cabinet ) )
// PORT_DIPSETTING( 0x08, DEF_STR( Upright ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
- PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) /* see notes */
+ PORT_DIPUNUSED( 0x08, IP_ACTIVE_LOW ) // see notes
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( losttomb )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START2 )
@@ -7079,13 +7081,13 @@ static INPUT_PORTS_START( losttomb )
PORT_DIPNAME( 0x03, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("H2:1,2")
PORT_DIPSETTING( 0x01, "3" )
PORT_DIPSETTING( 0x02, "5" )
- PORT_DIPSETTING( 0x03, DEF_STR( Free_Play ) ) /* see notes */
+ PORT_DIPSETTING( 0x03, DEF_STR( Free_Play ) ) // see notes
PORT_DIPSETTING( 0x00, "Invulnerability (Cheat)")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_UP ) PORT_8WAY
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_DOWN ) PORT_8WAY
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_8WAY
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_LEFT ) PORT_8WAY
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* "WHIP" */
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) // "WHIP"
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN2")
@@ -7095,17 +7097,17 @@ static INPUT_PORTS_START( losttomb )
PORT_DIPSETTING( 0x00, "A 1/2 B 2/1" )
PORT_DIPSETTING( 0x04, "A 1/3 B 3/1" )
PORT_DIPSETTING( 0x06, "A 1/4 B 4/1" )
- PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("H2:3") /* see notes */
+ PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("H2:3") // see notes
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
-/* verified from Z80 code - IN2 bit 1 still needs to be understood */
+// verified from Z80 code - IN2 bit 1 still needs to be understood
static INPUT_PORTS_START( spdcoin )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
@@ -7118,32 +7120,32 @@ static INPUT_PORTS_START( spdcoin )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_START("IN1")
- PORT_DIPNAME( 0x01, 0x00, "Freeze" ) /* Dip Sw #2 */
+ PORT_DIPNAME( 0x01, 0x00, "Freeze" ) // Dip Sw #2
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, DEF_STR( Free_Play ) ) /* Dip Sw #1 */
+ PORT_DIPNAME( 0x02, 0x00, DEF_STR( Free_Play ) ) // Dip Sw #1
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x02, DEF_STR( On ) )
PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) ) /* Dip Sw #5 - Check code at 0x0569 */
+ PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) ) // Dip Sw #5 - Check code at 0x0569
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x00, DEF_STR( Difficulty ) ) /* Dip Sw #4 */
+ PORT_DIPNAME( 0x04, 0x00, DEF_STR( Difficulty ) ) // Dip Sw #4
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) ) /* Dip Sw #3 */
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) ) // Dip Sw #3
PORT_DIPSETTING( 0x08, "3" )
PORT_DIPSETTING( 0x00, "5" )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN3") /* need for some PPI accesses */
+ PORT_START("IN3") // need for some PPI accesses
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
-/* verified from Z80 code */
+// verified from Z80 code
static INPUT_PORTS_START( superbon )
PORT_INCLUDE(losttomb)
@@ -7154,7 +7156,7 @@ static INPUT_PORTS_START( superbon )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_MODIFY("IN1")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* "HOLD" */
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) // "HOLD"
PORT_BIT( 0x34, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
@@ -7482,14 +7484,14 @@ void galaxian_state::konami_base(machine_config &config)
void galaxian_state::konami_sound_1x_ay8910(machine_config &config)
{
- /* 2nd CPU to drive sound */
+ // 2nd CPU to drive sound
Z80(config, m_audiocpu, KONAMI_SOUND_CLOCK/8);
m_audiocpu->set_addrmap(AS_PROGRAM, &galaxian_state::frogger_sound_map);
m_audiocpu->set_addrmap(AS_IO, &galaxian_state::frogger_sound_portmap);
GENERIC_LATCH_8(config, m_soundlatch);
- /* sound hardware */
+ // sound hardware
AY8910(config, m_ay8910[0], KONAMI_SOUND_CLOCK/8);
m_ay8910[0]->set_flags(AY8910_RESISTOR_OUTPUT);
m_ay8910[0]->set_resistors_load(1000.0, 1000.0, 1000.0);
@@ -7522,14 +7524,14 @@ void galaxian_state::konami_sound_1x_ay8910(machine_config &config)
void galaxian_state::konami_sound_2x_ay8910(machine_config &config)
{
- /* 2nd CPU to drive sound */
+ // 2nd CPU to drive sound
Z80(config, m_audiocpu, KONAMI_SOUND_CLOCK/8);
m_audiocpu->set_addrmap(AS_PROGRAM, &galaxian_state::konami_sound_map);
m_audiocpu->set_addrmap(AS_IO, &galaxian_state::konami_sound_portmap);
GENERIC_LATCH_8(config, m_soundlatch);
- /* sound hardware */
+ // sound hardware
AY8910(config, m_ay8910[0], KONAMI_SOUND_CLOCK/8);
m_ay8910[0]->set_flags(AY8910_RESISTOR_OUTPUT);
m_ay8910[0]->set_resistors_load(1000.0, 1000.0, 1000.0);
@@ -7582,7 +7584,7 @@ void galaxian_state::scramble_base(machine_config &config)
konami_base(config);
konami_sound_2x_ay8910(config);
- /* blinking frequency is determined by 555 counter with Ra=100k, Rb=10k, C=10uF */
+ // blinking frequency is determined by 555 counter with Ra=100k, Rb=10k, C=10uF
TIMER(config, "stars").configure_periodic(FUNC(galaxian_state::scramble_stars_blink_timer), PERIOD_OF_555_ASTABLE(100000, 10000, 0.00001));
}
@@ -7691,7 +7693,7 @@ void zigzagb_state::zigzag(machine_config &config)
m_maincpu->set_addrmap(AS_PROGRAM, &zigzagb_state::zigzag_map);
// sound hardware
- AY8910(config, m_ay8910[0], GALAXIAN_PIXEL_CLOCK/3/2).add_route(ALL_OUTPUTS, "speaker", 0.5); /* matches PCB video - unconfirmed */
+ AY8910(config, m_ay8910[0], GALAXIAN_PIXEL_CLOCK/3/2).add_route(ALL_OUTPUTS, "speaker", 0.5); // matches PCB video - unconfirmed
}
@@ -7701,7 +7703,7 @@ void gmgalax_state::gmgalax(machine_config &config)
m_maincpu->set_addrmap(AS_PROGRAM, &gmgalax_state::gmgalax_map);
- /* banked video hardware */
+ // banked video hardware
m_gfxdecode->set_info(gfx_gmgalax);
m_palette->set_entries(64);
m_palette->set_init(FUNC(gmgalax_state::galaxian_palette));
@@ -7898,15 +7900,15 @@ void galaxian_state::checkman(machine_config &config)
{
mooncrst(config);
- /* basic machine hardware */
- Z80(config, m_audiocpu, 1620000); /* 1.62 MHz */
+ // basic machine hardware
+ Z80(config, m_audiocpu, 1620000); // 1.62 MHz
m_audiocpu->set_addrmap(AS_PROGRAM, &galaxian_state::checkman_sound_map);
m_audiocpu->set_addrmap(AS_IO, &galaxian_state::checkman_sound_portmap);
- m_audiocpu->set_vblank_int("screen", FUNC(galaxian_state::irq0_line_hold)); /* NMIs are triggered by the main CPU */
+ m_audiocpu->set_vblank_int("screen", FUNC(galaxian_state::irq0_line_hold)); // NMIs are triggered by the main CPU
GENERIC_LATCH_8(config, m_soundlatch);
- /* sound hardware */
+ // sound hardware
AY8910(config, m_ay8910[0], 1789750).add_route(ALL_OUTPUTS, "speaker", 0.5);
}
@@ -8106,7 +8108,7 @@ void galaxian_state::jungsub(machine_config &config)
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set_inputline(m_audiocpu, INPUT_LINE_NMI);
- /* sound hardware */
+ // sound hardware
AY8910(config, m_ay8910[0], GALAXIAN_PIXEL_CLOCK / 3 / 2 / 2).add_route(ALL_OUTPUTS, "speaker", 0.5); // clock not verified
}
@@ -8117,19 +8119,19 @@ void galaxian_state::explorer(machine_config &config) // Sidam 10800
// alternate memory map
m_maincpu->set_addrmap(AS_PROGRAM, &galaxian_state::explorer_map);
- /* 2nd CPU to drive sound */
- Z80(config, m_audiocpu, 12_MHz_XTAL / 2 / 2 / 2); /* clock not verified */
+ // 2nd CPU to drive sound
+ Z80(config, m_audiocpu, 12_MHz_XTAL / 2 / 2 / 2); // clock not verified
m_audiocpu->set_addrmap(AS_PROGRAM, &galaxian_state::konami_sound_map);
m_audiocpu->set_addrmap(AS_IO, &galaxian_state::konami_sound_portmap);
GENERIC_LATCH_8(config, m_soundlatch);
- /* sound hardware is a pair of AY-3-8912 */
- AY8912(config, m_ay8910[0], 12_MHz_XTAL / 2 / 2 / 2); /* matches PCB, needs verification */
+ // sound hardware is a pair of AY-3-8912
+ AY8912(config, m_ay8910[0], 12_MHz_XTAL / 2 / 2 / 2); // matches PCB, needs verification
m_ay8910[0]->port_a_read_callback().set(FUNC(galaxian_state::explorer_sound_latch_r));
m_ay8910[0]->add_route(ALL_OUTPUTS, "speaker", 0.25);
- AY8912(config, m_ay8910[1], 12_MHz_XTAL / 2 / 2 / 2); /* matches PCB, needs verification */
+ AY8912(config, m_ay8910[1], 12_MHz_XTAL / 2 / 2 / 2); // matches PCB, needs verification
m_ay8910[0]->port_a_read_callback().set(FUNC(galaxian_state::konami_sound_timer_r));
m_ay8910[0]->add_route(ALL_OUTPUTS, "speaker", 0.25);
}
@@ -8138,11 +8140,11 @@ void galaxian_state::takeoff(machine_config &config) // Sidam 10900, with 1 x AY
{
explorer(config);
- /* 2nd CPU to drive sound */
+ // 2nd CPU to drive sound
m_audiocpu->set_addrmap(AS_PROGRAM, &galaxian_state::takeoff_sound_map);
m_audiocpu->set_addrmap(AS_IO, &galaxian_state::takeoff_sound_portmap);
- /* sound hardware */
+ // sound hardware
config.device_remove("8910.0");
config.device_remove("8910.1");
@@ -8174,13 +8176,13 @@ void galaxian_state::amigo2(machine_config &config) // marked "AMI", but similar
GENERIC_LATCH_8(config, m_soundlatch);
- /* sound hardware */
- AY8910(config, m_ay8910[0], 12_MHz_XTAL / 2 / 2 / 2); /* matches PCB, needs verification */
+ // sound hardware
+ AY8910(config, m_ay8910[0], 12_MHz_XTAL / 2 / 2 / 2); // matches PCB, needs verification
m_ay8910[0]->port_a_read_callback().set(m_soundlatch, FUNC(generic_latch_8_device::read));
m_ay8910[0]->port_b_read_callback().set(FUNC(galaxian_state::konami_sound_timer_r));
m_ay8910[0]->add_route(ALL_OUTPUTS, "speaker", 0.25);
- AY8910(config, m_ay8910[1], 12_MHz_XTAL / 2 / 2 / 2).add_route(ALL_OUTPUTS, "speaker", 0.25); /* matches PCB, needs verification */
+ AY8910(config, m_ay8910[1], 12_MHz_XTAL / 2 / 2 / 2).add_route(ALL_OUTPUTS, "speaker", 0.25); // matches PCB, needs verification
}
void zac_scorpion_state::scorpion(machine_config &config)
@@ -8223,7 +8225,7 @@ void nihon_sfx_state::sfx(machine_config &config)
// alternate memory map
m_maincpu->set_addrmap(AS_PROGRAM, &nihon_sfx_state::sfx_map);
- /* 3rd CPU for the sample player */
+ // 3rd CPU for the sample player
Z80(config, m_audio2, KONAMI_SOUND_CLOCK/8);
m_audio2->set_addrmap(AS_PROGRAM, &nihon_sfx_state::sfx_sample_map);
m_audio2->set_addrmap(AS_IO, &nihon_sfx_state::sfx_sample_portmap);
@@ -8233,14 +8235,14 @@ void nihon_sfx_state::sfx(machine_config &config)
GENERIC_LATCH_8(config, "soundlatch2");
- /* port on 2nd 8910 is used for communication */
+ // port on 2nd 8910 is used for communication
m_ay8910[1]->port_a_write_callback().set("soundlatch2", FUNC(generic_latch_8_device::write));
m_ay8910[1]->port_b_write_callback().set(FUNC(nihon_sfx_state::sample_control_w));
// cut screen edges
m_screen->set_raw(GALAXIAN_PIXEL_CLOCK, GALAXIAN_HTOTAL, GALAXIAN_HBEND + 3 * 8 * GALAXIAN_XSCALE, GALAXIAN_HBSTART - 2 * 8 * GALAXIAN_XSCALE, GALAXIAN_VTOTAL, GALAXIAN_VBEND, GALAXIAN_VBSTART);
- /* DAC for the sample player */
+ // DAC for the sample player
DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 1.0); // 16-pin IC (not identified by schematics)
}
@@ -8275,7 +8277,7 @@ void monsterz_state::monsterz(machine_config &config)
m_monsterz_sample_portc = data;
});
- /* DAC for the sample player */
+ // DAC for the sample player
DAC_8BIT_R2R(config, m_dac2, 0).add_route(ALL_OUTPUTS, "speaker", 1.0); // TODO: check dac type
}
@@ -8471,7 +8473,7 @@ void videight_state::videight(machine_config &config)
// basic machine hardware
m_maincpu->set_addrmap(AS_PROGRAM, &videight_state::videight_map);
- /* video hardware */
+ // video hardware
m_gfxdecode->set_info(gfx_videight);
m_palette->set_entries(8 * 32);
}
@@ -8571,12 +8573,12 @@ void galaxian_state::decode_dingoe()
{
uint8_t data = rombase[offs];
- /* XOR bit 4 with bit 2, and bit 0 with bit 5, and invert bit 1 */
+ // XOR bit 4 with bit 2, and bit 0 with bit 5, and invert bit 1
data ^= BIT(data, 2) << 4;
data ^= BIT(data, 5) << 0;
data ^= 0x02;
- /* Swap bit0 with bit4 */
+ // Swap bit0 with bit4
if (offs & 0x02)
data = bitswap<8>(data, 7,6,5,0,3,2,1,4);
rombase[offs] = data;
@@ -8589,7 +8591,7 @@ void galaxian_state::decode_frogger_sound()
uint8_t *rombase = memregion("audiocpu")->base();
uint32_t offs;
- /* the first ROM of the sound CPU has data lines D0 and D1 swapped */
+ // the first ROM of the sound CPU has data lines D0 and D1 swapped
for (offs = 0; offs < 0x800; offs++)
rombase[offs] = bitswap<8>(rombase[offs], 7,6,5,4,3,2,0,1);
}
@@ -8600,7 +8602,7 @@ void galaxian_state::decode_froggermc_sound()
uint8_t *rombase = memregion("audiocpu")->base();
uint32_t offs;
- /* the first ROM of the sound CPU has data lines D0 and D1 swapped */
+ // the first ROM of the sound CPU has data lines D0 and D1 swapped
for (offs = 0; offs < 0x1000; offs++)
rombase[offs] = bitswap<8>(rombase[offs], 7,6,5,4,3,2,0,1);
}
@@ -8611,7 +8613,7 @@ void galaxian_state::decode_frogger_gfx()
uint8_t *rombase = memregion("gfx1")->base();
uint32_t offs;
- /* the 2nd gfx ROM has data lines D0 and D1 swapped */
+ // the 2nd gfx ROM has data lines D0 and D1 swapped
for (offs = 0x0800; offs < 0x1000; offs++)
rombase[offs] = bitswap<8>(rombase[offs], 7,6,5,4,3,2,0,1);
}
@@ -8660,13 +8662,13 @@ void galaxian_state::decode_superbon()
offs_t i;
uint8_t *RAM;
- /* Decryption worked out by hand by Chris Hardy. */
+ // Decryption worked out by hand by Chris Hardy.
RAM = memregion("maincpu")->base();
for (i = 0;i < 0x1000;i++)
{
- /* Code is encrypted depending on bit 7 and 9 of the address */
+ // Code is encrypted depending on bit 7 and 9 of the address
switch (i & 0x0280)
{
case 0x0000:
@@ -8745,7 +8747,7 @@ void galaxian_state::init_highroll()
{
uint8_t x = rom[i];
- switch(i & 0x03)
+ switch (i & 0x03)
{
case 0x000: x = bitswap<8>(x, 1, 6, 7, 4, 5, 2, 3, 0); break;
case 0x001: x = bitswap<8>(x, 5, 6, 3, 4, 1, 2, 7, 0); break;
@@ -8760,7 +8762,7 @@ void galaxian_state::init_highroll()
{
uint8_t x = rom[i];
- switch(i & 0x01)
+ switch (i & 0x01)
{
case 0x000: x = bitswap<8>(x, 3, 6, 1, 4, 5, 2, 7, 0); break;
case 0x001: x = bitswap<8>(x, 1, 6, 7, 4, 3, 2, 5, 0); break;
@@ -8774,10 +8776,10 @@ void galaxian_state::init_nolock()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* same as galaxian... */
+ // same as galaxian...
init_galaxian();
- /* ...but coin lockout disabled/disconnected */
+ // ...but coin lockout disabled/disconnected
space.unmap_write(0x6002, 0x6002, 0x7f8);
}
@@ -8808,10 +8810,10 @@ void galaxian_state::init_azurian()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* yellow bullets instead of white ones */
+ // yellow bullets instead of white ones
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::galaxian_draw_background, nullptr, nullptr);
- /* coin lockout disabled */
+ // coin lockout disabled
space.unmap_write(0x6002, 0x6002, 0x7f8);
}
@@ -8827,7 +8829,7 @@ void gmgalax_state::init_gmgalax()
void pisces_state::init_pisces()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, nullptr, nullptr, nullptr);
m_extend_tile_info_ptr = extend_tile_info_delegate(&pisces_state::pisces_extend_tile_info, this);
m_extend_sprite_info_ptr = extend_sprite_info_delegate(&pisces_state::pisces_extend_sprite_info, this);
@@ -8836,7 +8838,7 @@ void pisces_state::init_pisces()
void galaxian_state::init_batman2()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::batman2_extend_tile_info, &galaxian_state::upper_extend_sprite_info);
}
@@ -8877,7 +8879,7 @@ void fourplay_state::init_fourplay()
m_rombank->configure_entries(0, 4, memregion("maincpu")->base(), 0x4000);
m_rombank->set_entry(0);
- /* video extensions */
+ // video extensions
common_init(nullptr, nullptr, nullptr, nullptr);
m_extend_tile_info_ptr = extend_tile_info_delegate(&fourplay_state::pisces_extend_tile_info, this);
m_extend_sprite_info_ptr = extend_sprite_info_delegate(&fourplay_state::pisces_extend_sprite_info, this);
@@ -8888,7 +8890,7 @@ void videight_state::init_videight()
m_rombank->configure_entries(0, 8, memregion("maincpu")->base(), 0x4000);
m_rombank->set_entry(0);
- /* video extensions */
+ // video extensions
common_init(nullptr, nullptr, nullptr, nullptr);
m_extend_tile_info_ptr = extend_tile_info_delegate(&videight_state::videight_extend_tile_info, this);
m_extend_sprite_info_ptr = extend_sprite_info_delegate(&videight_state::videight_extend_sprite_info, this);
@@ -8935,17 +8937,17 @@ void sbhoei_state::init_sbhoei()
void galaxian_state::init_mooncrst()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::mooncrst_extend_tile_info, &galaxian_state::mooncrst_extend_sprite_info);
- /* decrypt program code */
+ // decrypt program code
decode_mooncrst(0x4000, memregion("maincpu")->base());
}
void galaxian_state::init_mooncrsu()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::mooncrst_extend_tile_info, &galaxian_state::mooncrst_extend_sprite_info);
}
@@ -8954,20 +8956,20 @@ void galaxian_state::init_mooncrgx()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::mooncrst_extend_tile_info, &galaxian_state::mooncrst_extend_sprite_info);
- /* LEDs and coin lockout replaced by graphics banking */
+ // LEDs and coin lockout replaced by graphics banking
space.install_write_handler(0x6000, 0x6002, 0, 0x7f8, 0, write8sm_delegate(*this, FUNC(galaxian_state::galaxian_gfxbank_w)));
}
void galaxian_state::init_moonqsr()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::moonqsr_extend_tile_info, &galaxian_state::moonqsr_extend_sprite_info);
- /* decrypt program code */
+ // decrypt program code
decode_mooncrst(0x4000, m_decrypted_opcodes);
}
@@ -8980,10 +8982,10 @@ void galaxian_state::init_pacmanbl()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* same as galaxian... */
+ // same as galaxian...
init_galaxian();
- /* ...but coin lockout disabled/disconnected */
+ // ...but coin lockout disabled/disconnected
space.install_write_handler(0x6002, 0x6002, 0, 0x7f8, 0, write8smo_delegate(*this, FUNC(galaxian_state::artic_gfxbank_w)));
}
@@ -9049,10 +9051,10 @@ void tenspot_state::init_tenspot()
/* these are needed for batman part 2 to work properly, this banking is probably a property of the artic board,
which tenspot appears to have copied */
- /* video extensions */
+ // video extensions
//common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::batman2_extend_tile_info, &galaxian_state::upper_extend_sprite_info);
- /* coin lockout replaced by graphics bank */
+ // coin lockout replaced by graphics bank
//space.install_write_handler(0x6002, 0x6002, 0, 0x7f8, 0, write8sm_delegate(*this, FUNC(galaxian_state::galaxian_gfxbank_w)));
@@ -9062,7 +9064,7 @@ void tenspot_state::init_tenspot()
void bagmanmc_state::init_bagmanmc()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, nullptr, nullptr, nullptr);
m_extend_tile_info_ptr = extend_tile_info_delegate(&bagmanmc_state::bagmanmc_extend_tile_info, this);
m_extend_sprite_info_ptr = extend_sprite_info_delegate(&bagmanmc_state::bagmanmc_extend_sprite_info, this);
@@ -9079,7 +9081,7 @@ void zigzagb_state::init_zigzag()
void galaxian_state::init_jumpbug()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::jumpbug_draw_background, &galaxian_state::jumpbug_extend_tile_info, &galaxian_state::jumpbug_extend_sprite_info);
}
@@ -9089,17 +9091,17 @@ void galaxian_state::init_checkman()
address_space &space = m_maincpu->space(AS_PROGRAM);
address_space &iospace = m_maincpu->space(AS_IO);
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::mooncrst_extend_tile_info, &galaxian_state::mooncrst_extend_sprite_info);
- /* move the interrupt enable from $b000 to $b001 */
+ // move the interrupt enable from $b000 to $b001
space.unmap_write(0xb000, 0xb000, 0x7f8);
space.install_write_handler(0xb001, 0xb001, 0, 0x7f8, 0, write8smo_delegate(*this, FUNC(galaxian_state::irq_enable_w)));
- /* attach the sound command handler */
+ // attach the sound command handler
iospace.install_write_handler(0x00, 0x00, 0, 0xffff, 0, write8smo_delegate(*this, FUNC(galaxian_state::checkman_sound_command_w)));
- /* decrypt program code */
+ // decrypt program code
decode_checkman();
}
@@ -9108,13 +9110,13 @@ void galaxian_state::init_checkmaj()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, nullptr, nullptr);
- /* attach the sound command handler */
+ // attach the sound command handler
space.install_write_handler(0x7800, 0x7800, 0, 0x7ff, 0, write8smo_delegate(*this, FUNC(galaxian_state::checkman_sound_command_w)));
- /* for the title screen */
+ // for the title screen
space.install_read_handler(0x3800, 0x3800, read8smo_delegate(*this, FUNC(galaxian_state::checkmaj_protection_r)));
}
@@ -9123,10 +9125,10 @@ void galaxian_state::init_dingo()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, nullptr, nullptr);
- /* attach the sound command handler */
+ // attach the sound command handler
space.install_write_handler(0x7800, 0x7800, 0, 0x7ff, 0, write8smo_delegate(*this, FUNC(galaxian_state::checkman_sound_command_w)));
space.install_read_handler(0x3000, 0x3000, read8smo_delegate(*this, FUNC(galaxian_state::dingo_3000_r)));
@@ -9139,26 +9141,26 @@ void galaxian_state::init_dingoe()
address_space &space = m_maincpu->space(AS_PROGRAM);
address_space &iospace = m_maincpu->space(AS_IO);
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &galaxian_state::mooncrst_extend_tile_info, &galaxian_state::mooncrst_extend_sprite_info);
- /* move the interrupt enable from $b000 to $b001 */
+ // move the interrupt enable from $b000 to $b001
space.unmap_write(0xb000, 0xb000, 0x7f8);
space.install_write_handler(0xb001, 0xb001, 0, 0x7f8, 0, write8smo_delegate(*this, FUNC(galaxian_state::irq_enable_w)));
- /* attach the sound command handler */
+ // attach the sound command handler
iospace.install_write_handler(0x00, 0x00, 0, 0xffff, 0, write8smo_delegate(*this, FUNC(galaxian_state::checkman_sound_command_w)));
space.install_read_handler(0x3001, 0x3001, read8smo_delegate(*this, FUNC(galaxian_state::dingoe_3001_r))); // Protection check
- /* decrypt program code */
+ // decrypt program code
decode_dingoe();
}
void galaxian_state::init_kong()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, nullptr, &galaxian_state::upper_extend_sprite_info);
}
@@ -9230,10 +9232,10 @@ void mshuttle_state::init_mshuttlj()
void galaxian_state::init_fantastc()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, nullptr, &galaxian_state::upper_extend_sprite_info);
- /* decode code */
+ // decode code
static const uint16_t lut_am_unscramble[32] = {
0, 2, 4, 6, // ok!
7, 3, 5, 1, // ok!
@@ -9257,7 +9259,7 @@ void galaxian_state::init_fantastc()
void galaxian_state::init_timefgtr()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, nullptr, &galaxian_state::upper_extend_sprite_info);
}
@@ -9272,17 +9274,17 @@ void galaxian_state::init_theend()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::theend_draw_bullet, &galaxian_state::galaxian_draw_background, nullptr, nullptr);
- /* coin counter on the upper bit of port C */
+ // coin counter on the upper bit of port C
space.unmap_write(0x6802, 0x6802, 0x7f8);
}
void galaxian_state::init_scramble()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, nullptr);
}
@@ -9290,7 +9292,7 @@ void galaxian_state::init_mandingaeg()
{
init_scramble();
- /* watchdog is in a different location */
+ // watchdog is in a different location
address_space &space = m_maincpu->space(AS_PROGRAM);
watchdog_timer_device *wdog = subdevice<watchdog_timer_device>("watchdog");
space.install_read_handler(0x6800, 0x6800, 0, 0x7ff, 0, read8mo_delegate(*wdog, FUNC(watchdog_timer_device::reset_r)));
@@ -9324,10 +9326,10 @@ void galaxian_state::init_atlantis()
{
address_space &space = m_maincpu->space(AS_PROGRAM);
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, nullptr);
- /* watchdog is at $7800? (or is it just disabled?) */
+ // watchdog is at $7800? (or is it just disabled?)
watchdog_timer_device *wdog = subdevice<watchdog_timer_device>("watchdog");
space.unmap_read(0x7000, 0x77ff);
space.install_read_handler(0x7800, 0x7800, 0, 0x7ff, 0, read8mo_delegate(*wdog, FUNC(watchdog_timer_device::reset_r)));
@@ -9336,14 +9338,14 @@ void galaxian_state::init_atlantis()
void galaxian_state::init_explorer()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::null_draw_background, nullptr, nullptr); // no 555 timer; there might be no stars at all
}
void galaxian_state::init_scobra()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, nullptr);
}
@@ -9370,28 +9372,28 @@ void galaxian_state::init_scobrae()
rom[offs] = x ^ 0xff;
}
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, nullptr);
}
void galaxian_state::init_losttomb()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, nullptr);
- /* decrypt */
+ // decrypt
decode_losttomb_gfx();
}
void galaxian_state::init_frogger()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, &galaxian_state::frogger_draw_background, &galaxian_state::frogger_extend_tile_info, &galaxian_state::frogger_extend_sprite_info);
m_frogger_adjust = true;
- /* decrypt */
+ // decrypt
decode_frogger_sound();
decode_frogger_gfx();
}
@@ -9399,34 +9401,34 @@ void galaxian_state::init_frogger()
void galaxian_state::init_quaak()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, &galaxian_state::frogger_draw_background, &galaxian_state::frogger_extend_tile_info, &galaxian_state::frogger_extend_sprite_info);
}
void galaxian_state::init_froggermc()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, &galaxian_state::frogger_draw_background, &galaxian_state::frogger_extend_tile_info, &galaxian_state::frogger_extend_sprite_info);
- /* decrypt */
+ // decrypt
decode_froggermc_sound();
}
void galaxian_state::init_froggers()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, &galaxian_state::frogger_draw_background, &galaxian_state::frogger_extend_tile_info, &galaxian_state::frogger_extend_sprite_info);
- /* decrypt */
+ // decrypt
decode_frogger_sound();
}
void galaxian_state::init_turtles()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, &galaxian_state::turtles_draw_background, nullptr, nullptr);
}
@@ -9434,8 +9436,8 @@ void galaxian_state::init_turtles()
#ifdef UNUSED_FUNCTION
void galaxian_state::init_amidar()
{
- /* no existing amidar sets run on Amidar hardware as described by Amidar schematics! */
- /* video extensions */
+ // no existing amidar sets run on Amidar hardware as described by Amidar schematics!
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::amidar_draw_background, nullptr, nullptr);
}
#endif
@@ -9474,54 +9476,78 @@ void galaxian_state::init_ckongs()
void galaxian_state::init_anteater()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::anteater_draw_background, nullptr, nullptr);
- /* decode graphics */
+ // decode graphics
decode_anteater_gfx();
}
void galaxian_state::init_anteateruk()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::anteater_draw_background, nullptr, nullptr);
}
void galaxian_state::init_superbon()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, nullptr);
- /* decode code */
+ // decode code
decode_superbon();
}
void galaxian_state::init_calipso()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, &galaxian_state::calipso_extend_sprite_info);
}
void galaxian_state::init_ghostmun()
{
- /* same as Pacmanbl... */
+ // same as Pacmanbl...
init_pacmanbl();
- /* ...but sprite clip limits need to be adjusted */
+ // ...but sprite clip limits need to be adjusted
//galaxian_sprite_clip_start = 12; // this adjustment no longer exists
//galaxian_sprite_clip_end = 250;
}
+void galaxian_state::init_crazym()
+{
+ init_nolock();
+
+ m_extend_sprite_info_ptr = extend_sprite_info_delegate(&galaxian_state::upper_extend_sprite_info, this);
+
+ uint8_t *rom = memregion("maincpu")->base();
+
+ for (int i = 0; i < 0x4000; i++)
+ {
+ switch (rom[i] & 0x38)
+ {
+ case 0x00: (i & 0x01) ? rom[i] ^= 0x30 : rom[i] ^= 0x20; break;
+ case 0x08: (i & 0x01) ? rom[i] ^= 0x30 : rom[i] ^= 0x08; break;
+ case 0x10: (i & 0x01) ? rom[i] ^= 0x30 : rom[i] ^= 0x28; break;
+ case 0x18: (i & 0x01) ? rom[i] ^= 0x18 : rom[i] ^= 0x08; break;
+ case 0x20: (i & 0x01) ? rom[i] ^= 0x30 : rom[i] ^= 0x10; break;
+ case 0x28: (i & 0x01) ? rom[i] ^= 0x30 : rom[i] ^= 0x20; break;
+ case 0x30: (i & 0x01) ? rom[i] ^= 0x18 : rom[i] ^= 0x18; break;
+ case 0x38: (i & 0x01) ? rom[i] ^= 0x30 : rom[i] ^= 0x20; break;
+ }
+ }
+}
+
void galaxian_state::init_froggrs()
{
- /* video extensions */
+ // video extensions
common_init(nullptr, &galaxian_state::frogger_draw_background, &galaxian_state::frogger_extend_tile_info, &galaxian_state::frogger_extend_sprite_info);
- /* decrypt */
+ // decrypt
decode_frogger_sound();
decode_frogger_gfx();
}
@@ -9532,14 +9558,14 @@ void galaxian_state::init_jungsub()
{
decode_mooncrst(0x4000, memregion("maincpu")->base());
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, nullptr, nullptr);
}
void galaxian_state::init_mimonkeyb()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, &galaxian_state::mimonkey_extend_tile_info, &galaxian_state::mimonkey_extend_sprite_info);
}
@@ -9580,7 +9606,7 @@ void galaxian_state::init_mimonkey()
void namenayo_state::init_namenayo()
{
- /* video extensions */
+ // video extensions
common_init(&galaxian_state::scramble_draw_bullet, nullptr, nullptr, nullptr);
m_draw_background_ptr = draw_background_delegate(&namenayo_state::namenayo_draw_background, this);
m_extend_tile_info_ptr = extend_tile_info_delegate(&namenayo_state::namenayo_extend_tile_info, this);
@@ -9734,7 +9760,7 @@ ROM_START( galaxianrp )
ROM_LOAD( "1.1l", 0x0800, 0x0800, CRC(6d42351c) SHA1(2193deadcbee109c5c14b0c31d1e113f747744a3) )
ROM_REGION( 0x0020, "proms", 0 )
- ROM_LOAD( "6l.bpr", 0x0000, 0x0020, BAD_DUMP CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) ) // Taken from the parent set
+ ROM_LOAD( "6l.bpr", 0x0000, 0x0020, BAD_DUMP CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) ) // Taken from the parent set
ROM_END
// PCB is a bootleg Galaxian, with ROMs 1-4 on a large daughterboard mounted on PCB stilts. The game plays just like regular Galaxian, but the PCB
@@ -9755,6 +9781,62 @@ ROM_START( galaxyx )
ROM_LOAD( "sgprom.6l", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
ROM_END
+ROM_START( mcwars ) // 2-PCB stack, title comes from instructions. Code is identical to galaxyx but for hacked out 'We are the galaxy x" string.
+ ROM_REGION( 0x4000, "maincpu", 0 )
+ ROM_LOAD( "1.7f", 0x0000, 0x0800, CRC(d493cfd1) SHA1(a93e2aa7e179fb8adbc26f19f3319236b22f882f) )
+ ROM_LOAD( "2.7h", 0x0800, 0x0800, CRC(f58283e3) SHA1(edc6e72516c50fd3402281d9936574d276581ce9) )
+ ROM_LOAD( "3.7k", 0x1000, 0x0800, CRC(4c7031c0) SHA1(97f7ab0cedcd8eba1c8f6f516d84d672a2108258) )
+ ROM_LOAD( "4.7m", 0x1800, 0x0800, CRC(04329e33) SHA1(a85256a7fcfb84d8fdc4830171092c6061f8a979) )
+ ROM_LOAD( "5.8f", 0x2000, 0x0800, CRC(b71fc917) SHA1(a7c2f4d8df27b1828ed01b672d51365d1445a208) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "6.1h", 0x0000, 0x0800, CRC(39fb43a4) SHA1(4755609bd974976f04855d51e08ec0d62ab4bc07) )
+ ROM_LOAD( "7.1k", 0x0800, 0x0800, CRC(7e3f56a2) SHA1(a9795d8b7388f404f3b0e2c6ce15d713a4c5bafa) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "82s123.6l", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
+ROM_END
+
+/*
+Crazey Mazey PCB Info:
+
+PCB is a copy of the Galaxian/Moon Cresta two board style.
+
+"Manufactured in Great Britain by:
+SOUTHWEST RESEARCH LTD..
+2-12 Mill Lane, Bedminster, Bristol. TEL:632182"
+
+All EPROMs are 2732 size. (Hitachi HN462732G)
+PROM is 32 X 8 type. (Texas Instruments TBP18S030N)
+
+The CPU block was missing. It appears it only contains the decryption logic.
+
+Handwritten labels.
+
+The marquee says
+TM. EAGLE CONVERTIONS
+MADE UNDER LICENCE FROM EAGLE CONVERTIONS INC ©1982
+*/
+ROM_START( crazym )
+ ROM_REGION( 0x4000, "maincpu", 0 )
+ ROM_LOAD( "cm.7f", 0x0000, 0x0800, CRC(d1f2e906) SHA1(794d6a0816722973d6a782a3d8a3c52586525b39) )
+ ROM_CONTINUE( 0x2000, 0x0800 )
+ ROM_LOAD( "cm.7h", 0x0800, 0x0800, CRC(27aeff15) SHA1(de1e394901713ce6cfcb4dace86979217228162b) )
+ ROM_CONTINUE( 0x2800, 0x0800 )
+ ROM_LOAD( "cm.7k", 0x1000, 0x0800, CRC(0ae404f3) SHA1(12f093f8ebbd307db590aadb58a5c171df591233) )
+ ROM_CONTINUE( 0x3000, 0x0800 )
+ ROM_LOAD( "cm.7m", 0x1800, 0x0800, CRC(f553eca3) SHA1(d7ba242d078174d8a509d93ab491fbfcc6a21f71) )
+ ROM_CONTINUE( 0x3800, 0x0800 )
+ // 8f not populated
+
+ ROM_REGION( 0x2000, "gfx1", 0 )
+ ROM_LOAD( "cm.1h", 0x0000, 0x1000, CRC(5b347525) SHA1(d71375e9fbaf753d233fb018cd41bd5ee77465a1) )
+ ROM_LOAD( "cm.1k", 0x1000, 0x1000, CRC(30203318) SHA1(10ec18f260eab03f86e80a8be28ed64a0d809071) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "cm.6l", 0x0000, 0x0020, CRC(fbb00a71) SHA1(83be71f5370d45b1b7ff6b5645fc9fb564f52c24) )
+ROM_END
+
ROM_START( galaxrfgg )
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "gxrf.7f", 0x0000, 0x1000, CRC(c06eeb10) SHA1(cf1006a7ff02fe8b04a096d802fb8d8937dd913d) )
@@ -9909,6 +9991,22 @@ ROM_START( galap1 )
ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
ROM_END
+ROM_START( galap2 ) // PCB marked International Scientific, same code as galap4 but different GFX (shows GX Part II on screen)
+ ROM_REGION( 0x4000, "maincpu", 0 ) // on a daugther board, handwritten labels
+ ROM_LOAD( "p2-1.1", 0x0000, 0x0800, CRC(acfde501) SHA1(4b72c1ffecaccadc541da2367f3ef70a2a9aed64) )
+ ROM_LOAD( "p2-2.2", 0x0800, 0x0800, CRC(65cf3c77) SHA1(1c5249815816b395e1e04bf6a7dbb63e40faa0e3) )
+ ROM_LOAD( "p2-3.3", 0x1000, 0x0800, CRC(9eef9ae6) SHA1(b2282e4edb8911e6aabfa936c3526f90381e1320) )
+ ROM_LOAD( "p2-4.4", 0x1800, 0x0800, CRC(56a5ddd1) SHA1(1f87f647ebdffba28d5957f195448f6bce17f4d5) )
+ ROM_LOAD( "p2-5.5", 0x2000, 0x0800, CRC(f4bc7262) SHA1(c4b70e474d49f45cec96f7c250bd77e01e18601a) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 ) // handwritten labels, almost unreadable
+ ROM_LOAD( "galii.1j", 0x0000, 0x0800, CRC(3dcdb3d2) SHA1(60f7052a1b97adf035a7497e6204ca70651f4f11) )
+ ROM_LOAD( "galii.1k", 0x0800, 0x0800, CRC(25789c21) SHA1(d7c9d711c6bb7331ecde310c27c45a2626677223) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
+ROM_END
+
ROM_START( galap4 )
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "galnamco.u", 0x0000, 0x0800, CRC(acfde501) SHA1(4b72c1ffecaccadc541da2367f3ef70a2a9aed64) )
@@ -9941,6 +10039,22 @@ ROM_START( galartic )
ROM_LOAD( "mmi6331.6l", 0x0000, 0x0020, CRC(6a0c7d87) SHA1(140335d85c67c75b65689d4e76d29863c209cf32) )
ROM_END
+ROM_START( galaxianiii ) // this was found on a genuine Midway PCB
+ ROM_REGION( 0x4000, "maincpu", 0 ) // handwritten labels
+ ROM_LOAD( "galiii_u.u", 0x0000, 0x0800, CRC(e8f3aa67) SHA1(a0e9576784dbe602dd9780e667f01f31defd7c00) )
+ ROM_LOAD( "galiii_v.v", 0x0800, 0x0800, CRC(f58283e3) SHA1(edc6e72516c50fd3402281d9936574d276581ce9) )
+ ROM_LOAD( "galiii_x.x", 0x1000, 0x0800, CRC(ddeabdae) SHA1(daa5109a32c7c9a80bdb212dc3e4e3e3c104a731) )
+ ROM_LOAD( "galiii_y.y", 0x1800, 0x0800, CRC(87b24ab8) SHA1(f7202213b5c635a27041fc7ebb8f13a71b742d74) )
+ ROM_LOAD( "galiii_z.z", 0x2000, 0x0800, CRC(b960abbd) SHA1(0182dc84c93e02fa7c15db1dfdad638f33ec508f) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "1h", 0x0000, 0x0800, CRC(84decf98) SHA1(2e565cb6057b1816a6b4541e6dfadd3c3762fa36) )
+ ROM_LOAD( "1k", 0x0800, 0x0800, CRC(c31ada9e) SHA1(237ebb48549b34ca59a13cc2706512d957413ec4) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
+ROM_END
+
ROM_START( swarm )
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "swarm1.bin", 0x0000, 0x0800, CRC(21eba3d0) SHA1(d07f141d785c86faca8c40af034c26f2789e9346) )
@@ -10094,7 +10208,7 @@ ROM_START( starfght )
ROM_LOAD( "mmi6331.7f", 0x0000, 0x0020, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) ) // Compatible with 82s123 PROM
ROM_END
-/* was marked 'star fighter' but doesn't appear to be the above game */
+// was marked 'star fighter' but doesn't appear to be the above game
ROM_START( galaxbsf )
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "1.bn", 0x0000, 0x0400, CRC(cc37b774) SHA1(5b7d9e3c896a1f5b0353732806568d4ffead3ead) )
@@ -10140,6 +10254,26 @@ ROM_START( galaxbsf2 )
ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
ROM_END
+ROM_START( galaxiamv )
+ ROM_REGION( 0x4000, "maincpu", 0 )
+ ROM_LOAD( "1-2708.bin", 0x0000, 0x0400, CRC(7fa16c70) SHA1(4dcfe25deb822a4de5014e2c1e013405efde4612) )
+ ROM_LOAD( "2-2708.bin", 0x0400, 0x0400, CRC(afec8adb) SHA1(ca97a6919452958c8f33181e0be3f9c6f1bdf7ab) )
+ ROM_LOAD( "3-2708.bin", 0x0800, 0x0400, CRC(770988b5) SHA1(c347d5725d9eb089464022a4528a3fef86a1284f) )
+ ROM_LOAD( "4-2708.bin", 0x0c00, 0x0400, CRC(de7e7770) SHA1(b06043a1d898eb323ddabffd3d2a3b1f63df0e5e) )
+ ROM_LOAD( "5-2708.bin", 0x1000, 0x0400, CRC(a916c919) SHA1(b3e264ff92687022a0f2f551d5df36db848b48eb) )
+ ROM_LOAD( "6-2708.bin", 0x1400, 0x0400, CRC(9175882b) SHA1(d9943efcb9245af7f01aecc533a699bdefc7d283) )
+ ROM_LOAD( "7-2708.bin", 0x1800, 0x0400, CRC(6a57f9e8) SHA1(7970d059679384833083a99ea7f59d14417eccc3) )
+ ROM_LOAD( "8-2708.bin", 0x1c00, 0x0400, CRC(8eeb4c6f) SHA1(77140ea63677356624d12c399ea89f552a27bff1) )
+ ROM_LOAD( "9-2708.bin", 0x2000, 0x0400, CRC(de598114) SHA1(b74d1ce826274296ecb7cb8a327ea51f560521b9) )
+ ROM_LOAD( "10-2708.bin", 0x2400, 0x0400, CRC(9ec63321) SHA1(ee7c398529ad31ccf4b215ef923b8ff083ea47bf) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "11-tms2516.bin", 0x0000, 0x0800, CRC(977e37cf) SHA1(88ff1e4edadf5cfc83413a1fe999aecf4ba72232) )
+ ROM_LOAD( "12-tms2516.bin", 0x0800, 0x0800, CRC(d0ba22c9) SHA1(678b22d10e1ae7dcea068da838bf6bd648e9ee28) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "mmi6331.bin", 0x0000, 0x0020, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) )
+ROM_END
ROM_START( galaxianbl ) // looks to be a fairly plain set with modified bonus lives etc.
ROM_REGION( 0x4000, "maincpu", 0 )
@@ -10194,7 +10328,7 @@ ROM_START( galaxianbl3 ) // many similarities with zerotimemc
ROM_LOAD( "im8610.6l", 0x0000, 0x0020, CRC(4a3c88a5) SHA1(a7730b287c3f7b198722438db40722c78cccf845) )
ROM_END
-ROM_START( kamakazi3 ) /* Hack of Video Games (UK) Ltd. version???? flyer spells it Kamakaze III, also no year or (c) */
+ROM_START( kamakazi3 ) // Hack of Video Games (UK) Ltd. version???? flyer spells it Kamakaze III, also no year or (c)
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "f_r_a.bin", 0x0000, 0x0800, CRC(e8f3aa67) SHA1(a0e9576784dbe602dd9780e667f01f31defd7c00) )
ROM_LOAD( "f_a.bin", 0x0800, 0x0800, CRC(f58283e3) SHA1(edc6e72516c50fd3402281d9936574d276581ce9) )
@@ -10210,6 +10344,22 @@ ROM_START( kamakazi3 ) /* Hack of Video Games (UK) Ltd. version???? flyer spells
ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
ROM_END
+ROM_START( spacian2 )
+ ROM_REGION( 0x4000, "maincpu", 0 )
+ ROM_LOAD( "an1.7k", 0x0000, 0x0800, CRC(e8f3aa67) SHA1(a0e9576784dbe602dd9780e667f01f31defd7c00) )
+ ROM_LOAD( "an2.7j", 0x0800, 0x0800, CRC(f58283e3) SHA1(edc6e72516c50fd3402281d9936574d276581ce9) )
+ ROM_LOAD( "an3.7h", 0x1000, 0x0800, CRC(ddeabdae) SHA1(daa5109a32c7c9a80bdb212dc3e4e3e3c104a731) )
+ ROM_LOAD( "an4.7f", 0x1800, 0x0800, CRC(232dd045) SHA1(4f07538462a6cb8824571954438ccf28fda7e68f) )
+ ROM_LOAD( "an5.7l", 0x2000, 0x0800, CRC(e80fec29) SHA1(cdc1b2df14051f56bd8f55d5f379e5f60fc23d66) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "an-2g.1k", 0x0000, 0x0800, CRC(b4784fac) SHA1(9a8c398afdc72ac7b6af975f8d29e0757d6f14a6) )
+ ROM_LOAD( "an-1g.1h", 0x0800, 0x0800, CRC(a32b7270) SHA1(1cd160b71fa79329cd1116ded16a6ed594d19c56) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
+ROM_END
+
ROM_START( supergx )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "sg1", 0x0000, 0x0800, CRC(b83f4578) SHA1(9a5d5fc291839f7f1e0a52cca7bea29e99c13315) )
@@ -10231,7 +10381,7 @@ ROM_END
ROM_START( tst_galx )
ROM_REGION( 0x4000, "maincpu", 0 )
- ROM_LOAD( "test.u", 0x0000, 0x0800, CRC(0614cd7f) SHA1(12440678be8a27a6c3032b6e43c45e27905ffa83) ) /* The Test ROM */
+ ROM_LOAD( "test.u", 0x0000, 0x0800, CRC(0614cd7f) SHA1(12440678be8a27a6c3032b6e43c45e27905ffa83) ) // The Test ROM
ROM_LOAD( "galmidw.v", 0x0800, 0x0800, CRC(9c999a40) SHA1(02fdcd95d8511e64c0d2b007b874112d53e41045) )
ROM_LOAD( "galmidw.w", 0x1000, 0x0800, CRC(b5894925) SHA1(0046b9ed697a34d088de1aead8bd7cbe526a2396) )
ROM_LOAD( "galmidw.y", 0x1800, 0x0800, CRC(6b3ca10b) SHA1(18d8714e5ef52f63ba8888ecc5a25b17b3bf17d1) )
@@ -10363,7 +10513,7 @@ ROM_START( catacomb )
ROM_LOAD( "catacomb.u", 0x0000, 0x0800, CRC(35cc28d2) SHA1(e1dbd75fc21ec88b8119bf9508c87d78e1d5c4f6) )
ROM_LOAD( "catacomb.v", 0x0800, 0x0800, CRC(1d1ce133) SHA1(e22a169003a2238004bdf6c2558198216c2353b7) )
ROM_LOAD( "catacomb.w", 0x1000, 0x0800, CRC(479bbde7) SHA1(9981662cb6351de7c1730de45f645fb0e26ea467) )
- /* no .x */
+ // no .x
ROM_LOAD( "catacomb.y", 0x2000, 0x0800, CRC(5e3da534) SHA1(a9b960ae96c8ef0b2d590bc58b711aad949025e2) )
ROM_REGION( 0x1000, "gfx1", 0 )
@@ -10394,7 +10544,7 @@ ROM_START( omegab )
ROM_END
-ROM_START( warofbug ) /* Shows 20c as the base of currency. I know of no US games that used dimes - unless it's another country? */
+ROM_START( warofbug ) // Shows 20c as the base of currency. I know of no US games that used dimes - unless it's another country?
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "warofbug.u", 0x0000, 0x0800, CRC(b8dfb7e3) SHA1(c7c675b2638869a9cd7dbd554e6131d8c71b567a) )
ROM_LOAD( "warofbug.v", 0x0800, 0x0800, CRC(fd8854e0) SHA1(b39ab41b834f18341968dd780f0a3cd07d70c16c) )
@@ -10483,7 +10633,7 @@ ROM_START( warofbugu )
ROM_END
-ROM_START( redufo ) /* Galaxian bootleg hardware known as Artic Multi-System */
+ROM_START( redufo ) // Galaxian bootleg hardware known as Artic Multi-System
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "redufo.1", 0x0000, 0x0800, CRC(6a3b873c) SHA1(82f07921d8f1da3ed8b4f99b8052bd7e2cefcb6a) )
ROM_LOAD( "redufo.2", 0x0800, 0x0800, CRC(202eda3b) SHA1(5ca7b50fc510950cd6cce6f27573b5c491171bf0) )
@@ -10642,7 +10792,7 @@ ROM_START( piscesb )
ROM_LOAD( "g12.bin", 0x1800, 0x0800, CRC(7130e9eb) SHA1(e6bb7a9b4f2fc001296e1060d0671b7a88599c8b) )
ROM_REGION( 0x0020, "proms", 0 )
-// ROM_LOAD( "6331-1j.86", 0x0000, 0x0020, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) ) /* very close to Galaxian */
+// ROM_LOAD( "6331-1j.86", 0x0000, 0x0020, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) ) // very close to Galaxian
ROM_LOAD( "colour.bin", 0x0000, 0x0020, CRC(57a45057) SHA1(d4ec6a54f72640e5b485aa59e206c090e67ff640) ) // same as checkman.clr
ROM_END
@@ -10905,44 +11055,63 @@ ROM_START( pajaroes ) // VERY similar to the asideral set
ROM_LOAD( "uniwars.clr", 0x0000, 0x0020, CRC(25c79518) SHA1(e8f7e8b3d0cf1ed9d723948548f58abf0e2c6d1f) )
ROM_END
+ROM_START( vueloesp )
+ ROM_REGION( 0x4000, "maincpu", 0 )
+ ROM_LOAD( "01.bin", 0x0000, 0x0800, CRC(3edc642c) SHA1(6f336241e22bc159b7b239af25772ee02f3fd3b2) )
+ ROM_LOAD( "02.bin", 0x0800, 0x0800, BAD_DUMP CRC(cc59b49c) SHA1(13f6cb3a979f1b9baa4fd07c3e36c17ad8e69b5f) ) // Broken on this set, took from 'asideral'
+ ROM_LOAD( "03.bin", 0x1000, 0x0800, BAD_DUMP CRC(3bc5a165) SHA1(0ad0247f6499170a828bf343f7710c1036b241a7) ) // Broken on this set, took from 'asideral'
+ ROM_LOAD( "04.bin", 0x1800, 0x0800, CRC(c50149d0) SHA1(4007d7c07fe2742d67d2041b4b3c2f3fcaedbc8b) )
+ ROM_LOAD( "05.bin", 0x2000, 0x0800, BAD_DUMP CRC(55963ee8) SHA1(c850b728b4ad25a429c1c323eac0055cfdac9bb9) ) // Broken on this set, manually repaired
+ ROM_LOAD( "06.bin", 0x2800, 0x0800, CRC(f157a8db) SHA1(75fa76d5dad149502c25d191053041a52dd1562e) )
+ ROM_LOAD( "07.bin", 0x3000, 0x0800, CRC(75085cb6) SHA1(92c4f375352685ec670b0aa96becce064c5d9bce) )
+ ROM_LOAD( "08.bin", 0x3800, 0x0800, CRC(797d45c7) SHA1(76fb8b45fcce3622c59c04af32cfa001ef7bf71d) )
+ ROM_REGION( 0x2000, "gfx1", 0 )
+ ROM_LOAD( "4f.bin", 0x0000, 0x0800, CRC(8313c959) SHA1(b09157c6f824d6e94647728cbb329877fcb4e502) )
+ ROM_LOAD( "2f.bin", 0x0800, 0x0800, CRC(9c9c405a) SHA1(ab7d37f5747fbed9ba580e8c7f65ba2cd316eb59) )
+ ROM_LOAD( "3f.bin", 0x1000, 0x0800, CRC(c9d4537e) SHA1(65d27066ffec04b755d2f5d3f36f5ec6792e8d6c) )
+ ROM_LOAD( "1f.bin", 0x1800, 0x0800, CRC(dcc2b33b) SHA1(c3a5ac935c519400dfabb28909f7e460769d1837) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "prom.clr", 0x0000, 0x0020, BAD_DUMP CRC(25c79518) SHA1(e8f7e8b3d0cf1ed9d723948548f58abf0e2c6d1f) ) // Not dumped on this set
+ROM_END
ROM_START( spacbatt )
ROM_REGION( 0x4000, "maincpu", 0 )
- ROM_LOAD( "sb1", 0x0000, 0x0800, CRC(d975af10) SHA1(a2e2a36a75db8fd09441308b08b6ae073c68b8cf) ) /* Same as f07_1a.bin above */
- ROM_LOAD( "sb2", 0x0800, 0x0800, CRC(b2ed14c3) SHA1(7668df11f64b8e296eedfee53437777dc53a56d5) ) /* Same as h07_2a.bin above */
- ROM_LOAD( "sb3", 0x1000, 0x0800, CRC(945f4160) SHA1(5fbe879f51e14c4c7ae551e5b3089f8e148770a4) ) /* Same as k07_3a.bin above */
+ ROM_LOAD( "sb1", 0x0000, 0x0800, CRC(d975af10) SHA1(a2e2a36a75db8fd09441308b08b6ae073c68b8cf) ) // Same as f07_1a.bin above
+ ROM_LOAD( "sb2", 0x0800, 0x0800, CRC(b2ed14c3) SHA1(7668df11f64b8e296eedfee53437777dc53a56d5) ) // Same as h07_2a.bin above
+ ROM_LOAD( "sb3", 0x1000, 0x0800, CRC(945f4160) SHA1(5fbe879f51e14c4c7ae551e5b3089f8e148770a4) ) // Same as k07_3a.bin above
ROM_LOAD( "sb4", 0x1800, 0x0800, CRC(8229835c) SHA1(8cfd8f6cab6f80ca69645a184f7e841fc69f47f6) )
ROM_LOAD( "sb5", 0x2000, 0x0800, CRC(f51ef930) SHA1(213e68571a0c7d5ba33a7170d5fa4aea898ea0b9) )
- ROM_LOAD( "sb6", 0x2800, 0x0800, CRC(d915a389) SHA1(0e2ff6eec9453856a1276889946b463cfae58eba) ) /* Same as e08p_6a.bin above */
- ROM_LOAD( "sb7", 0x3000, 0x0800, CRC(c9245346) SHA1(239bad3fe64eaab2dfc3febd06d1124103a10504) ) /* Same as m08p_7a.bin above */
+ ROM_LOAD( "sb6", 0x2800, 0x0800, CRC(d915a389) SHA1(0e2ff6eec9453856a1276889946b463cfae58eba) ) // Same as e08p_6a.bin above
+ ROM_LOAD( "sb7", 0x3000, 0x0800, CRC(c9245346) SHA1(239bad3fe64eaab2dfc3febd06d1124103a10504) ) // Same as m08p_7a.bin above
ROM_LOAD( "sb8", 0x3800, 0x0800, CRC(e59ff1ae) SHA1(fef22885cbd3273882f8c7755dd04c28e843b9ea) )
ROM_REGION( 0x2000, "gfx1", 0 )
- ROM_LOAD( "sb12", 0x0000, 0x0800, CRC(8313c959) SHA1(b09157c6f824d6e94647728cbb329877fcb4e502) ) /* Same as h01_1.bin above */
- ROM_LOAD( "sb14", 0x0800, 0x0800, CRC(c26132af) SHA1(7ae125a911dfd47aeca4f129f580762ce4d8d91a) ) /* Same as h01_2.bin above */
- ROM_LOAD( "sb11", 0x1000, 0x0800, CRC(c9d4537e) SHA1(65d27066ffec04b755d2f5d3f36f5ec6792e8d6c) ) /* Same as k01_1.bin above */
+ ROM_LOAD( "sb12", 0x0000, 0x0800, CRC(8313c959) SHA1(b09157c6f824d6e94647728cbb329877fcb4e502) ) // Same as h01_1.bin above
+ ROM_LOAD( "sb14", 0x0800, 0x0800, CRC(c26132af) SHA1(7ae125a911dfd47aeca4f129f580762ce4d8d91a) ) // Same as h01_2.bin above
+ ROM_LOAD( "sb11", 0x1000, 0x0800, CRC(c9d4537e) SHA1(65d27066ffec04b755d2f5d3f36f5ec6792e8d6c) ) // Same as k01_1.bin above
ROM_LOAD( "sb13", 0x1800, 0x0800, CRC(92454380) SHA1(f0cd67b39c760c2b5ac549b27b0a5f83fbb3a86b) )
ROM_REGION( 0x0020, "proms", 0 )
- ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) ) /* MMI 6331 bp-prom, compatible with 82s123 */
+ ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) ) // MMI 6331 bp-prom, compatible with 82s123
ROM_END
ROM_START( spacbat2 )
ROM_REGION( 0x4000, "maincpu", 0 )
- ROM_LOAD( "sb1", 0x0000, 0x0800, CRC(d975af10) SHA1(a2e2a36a75db8fd09441308b08b6ae073c68b8cf) ) /* Same as f07_1a.bin above */
- ROM_LOAD( "sb2", 0x0800, 0x0800, CRC(b2ed14c3) SHA1(7668df11f64b8e296eedfee53437777dc53a56d5) ) /* Same as h07_2a.bin above */
+ ROM_LOAD( "sb1", 0x0000, 0x0800, CRC(d975af10) SHA1(a2e2a36a75db8fd09441308b08b6ae073c68b8cf) ) // Same as f07_1a.bin above
+ ROM_LOAD( "sb2", 0x0800, 0x0800, CRC(b2ed14c3) SHA1(7668df11f64b8e296eedfee53437777dc53a56d5) ) // Same as h07_2a.bin above
ROM_LOAD( "sb.3", 0x1000, 0x0800, CRC(c25ce4c1) SHA1(d7a5d435df7868155523d2fb90f331d4b6d9eaa1) )
ROM_LOAD( "sb4", 0x1800, 0x0800, CRC(8229835c) SHA1(8cfd8f6cab6f80ca69645a184f7e841fc69f47f6) )
ROM_LOAD( "sb5", 0x2000, 0x0800, CRC(f51ef930) SHA1(213e68571a0c7d5ba33a7170d5fa4aea898ea0b9) )
- ROM_LOAD( "sb6", 0x2800, 0x0800, CRC(d915a389) SHA1(0e2ff6eec9453856a1276889946b463cfae58eba) ) /* Same as e08p_6a.bin above */
- ROM_LOAD( "sb7", 0x3000, 0x0800, CRC(c9245346) SHA1(239bad3fe64eaab2dfc3febd06d1124103a10504) ) /* Same as m08p_7a.bin above */
+ ROM_LOAD( "sb6", 0x2800, 0x0800, CRC(d915a389) SHA1(0e2ff6eec9453856a1276889946b463cfae58eba) ) // Same as e08p_6a.bin above
+ ROM_LOAD( "sb7", 0x3000, 0x0800, CRC(c9245346) SHA1(239bad3fe64eaab2dfc3febd06d1124103a10504) ) // Same as m08p_7a.bin above
ROM_LOAD( "sb8", 0x3800, 0x0800, CRC(e59ff1ae) SHA1(fef22885cbd3273882f8c7755dd04c28e843b9ea) )
ROM_REGION( 0x2000, "gfx1", 0 )
- ROM_LOAD( "sb12", 0x0000, 0x0800, CRC(8313c959) SHA1(b09157c6f824d6e94647728cbb329877fcb4e502) ) /* Same as h01_1.bin above */
- ROM_LOAD( "sb14", 0x0800, 0x0800, CRC(c26132af) SHA1(7ae125a911dfd47aeca4f129f580762ce4d8d91a) ) /* Same as h01_2.bin above */
- ROM_LOAD( "sb11", 0x1000, 0x0800, CRC(c9d4537e) SHA1(65d27066ffec04b755d2f5d3f36f5ec6792e8d6c) ) /* Same as k01_1.bin above */
+ ROM_LOAD( "sb12", 0x0000, 0x0800, CRC(8313c959) SHA1(b09157c6f824d6e94647728cbb329877fcb4e502) ) // Same as h01_1.bin above
+ ROM_LOAD( "sb14", 0x0800, 0x0800, CRC(c26132af) SHA1(7ae125a911dfd47aeca4f129f580762ce4d8d91a) ) // Same as h01_2.bin above
+ ROM_LOAD( "sb11", 0x1000, 0x0800, CRC(c9d4537e) SHA1(65d27066ffec04b755d2f5d3f36f5ec6792e8d6c) ) // Same as k01_1.bin above
ROM_LOAD( "k01_2.bin", 0x1800, 0x0800, CRC(dcc2b33b) SHA1(c3a5ac935c519400dfabb28909f7e460769d1837) )
ROM_REGION( 0x0020, "proms", 0 )
@@ -11450,7 +11619,7 @@ ROM_START( tenspot )
ROM_REGION( 0x0020, "game_0_prom", 0 )
ROM_LOAD( "clr3.a7", 0x0000, 0x0020, CRC(aefcf6b1) SHA1(10cde93e23fe8720f5af9039c4f68999f7cfce67) )
- /* Game B - Moon Cresta */
+ // Game B - Moon Cresta
ROM_REGION( 0x4000, "game_1_cpu", 0 )
ROM_LOAD( "mct1-a.b1", 0x0000, 0x1000, CRC(90a74a0b) SHA1(a1fb24aa621611c18bf6188f380640e5576ac248) )
ROM_LOAD( "mct2-a.b2", 0x1000, 0x1000, CRC(9bb1e8e8) SHA1(0a8567c7efb6511360a786c18a09966966c253a2) )
@@ -11477,7 +11646,7 @@ ROM_START( tenspot )
ROM_REGION( 0x0020, "game_2_prom", 0 )
ROM_LOAD( "clr1.c7", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
- /* Game D - Mission Rescue (Black Hole) */
+ // Game D - Mission Rescue (Black Hole)
ROM_REGION( 0x4000, "game_3_cpu", 0 )
ROM_LOAD( "mrt1-a.d1", 0x0000, 0x1000, CRC(eb63c4e0) SHA1(29a59fa8616e36dd098ff9f6e520128db3b66ed9) )
ROM_LOAD( "mrt2-a.d2", 0x1000, 0x1000, CRC(e4ba463a) SHA1(b5370bc33275f6aa52c96304db4be086b5f6d18c) )
@@ -11504,7 +11673,7 @@ ROM_START( tenspot )
ROM_REGION( 0x0020, "game_4_prom", 0 )
ROM_LOAD( "clr1.e7", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
- /* Game F - Batman Pt.2 (Phoenix) - this needs custom video banking like the standalone version.... */
+ // Game F - Batman Pt.2 (Phoenix) - this needs custom video banking like the standalone version...
ROM_REGION( 0x4000, "game_5_cpu", 0 )
ROM_LOAD( "bmt1-a.f1", 0x0000, 0x1000, CRC(2aecaaa0) SHA1(07c35f34eebbe65247a412c828328a558936d03c) )
ROM_LOAD( "bmt2-a.f2", 0x1000, 0x1000, CRC(1972ff4c) SHA1(262db6caba201fa1f2f7b04f36f4d6084283d841) )
@@ -11532,7 +11701,7 @@ ROM_START( tenspot )
ROM_REGION( 0x0020, "game_6_prom", 0 )
ROM_LOAD( "clr1.h7", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
- /* Game J - King and Balloon */
+ // Game J - King and Balloon
ROM_REGION( 0x4000, "game_7_cpu", 0 )
ROM_LOAD( "kbt1-a.j1", 0x0000, 0x1000, CRC(6bcdfaef) SHA1(5f3d57a91d57c8758f1fa39a44be6082fff52406) )
ROM_LOAD( "kbt2-a.j2", 0x1000, 0x1000, CRC(3652c64b) SHA1(7cb2a51e1830d48d5d3a62d521dfef1779dd5222) )
@@ -11545,7 +11714,7 @@ ROM_START( tenspot )
ROM_REGION( 0x0020, "game_7_prom", 0 )
ROM_LOAD( "clr1.j7", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
- /* Game K - Omega (The End) */
+ // Game K - Omega (The End)
ROM_REGION( 0x4000, "game_8_cpu", 0 )
ROM_LOAD( "omt1-a.k1", 0x0000, 0x1000, CRC(8fc41a53) SHA1(c1bb4018bad12b83954cf8da8eba49f23618139a) )
ROM_LOAD( "omt2-a.k2", 0x1000, 0x1000, CRC(a3073430) SHA1(200b15c572d7cff9be39439a247c9be742f17a61) )
@@ -11803,8 +11972,8 @@ ROM_START( mooncrs2 )
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "1h_1_10.bin", 0x0000, 0x0800, CRC(528da705) SHA1(d726ee18b79774c982f88afb2a508eb5d5783193) )
ROM_LOAD( "12.chr", 0x0800, 0x0200, CRC(5a4b17ea) SHA1(8a879dc34fdecc8a121c4a87abb981212fb05945) )
- ROM_CONTINUE( 0x0c00, 0x0200 ) /* this version of the gfx ROMs has two */
- ROM_CONTINUE( 0x0a00, 0x0200 ) /* groups of 16 sprites swapped */
+ ROM_CONTINUE( 0x0c00, 0x0200 ) // this version of the gfx ROMs has two
+ ROM_CONTINUE( 0x0a00, 0x0200 ) // groups of 16 sprites swapped
ROM_CONTINUE( 0x0e00, 0x0200 )
ROM_LOAD( "1k_1_11.bin", 0x1000, 0x0800, CRC(4e79ff6b) SHA1(f72386a3766a7fcc7b4b8cedfa58b8d57f911f6f) )
ROM_LOAD( "11.chr", 0x1800, 0x0200, CRC(e0edccbd) SHA1(0839a4c9b6e863d12253ae8e1732e80e08702228) )
@@ -11816,7 +11985,7 @@ ROM_START( mooncrs2 )
ROM_LOAD( "mmi6331.6l", 0x0000, 0x0020, CRC(6a0c7d87) SHA1(140335d85c67c75b65689d4e76d29863c209cf32) ) // Compatible with 82s123 PROM
ROM_END
-ROM_START( mooncrs3 ) /* Bootleg by Jeutel, very similar to Moon Cresta (bootleg set 2) */
+ROM_START( mooncrs3 ) // Bootleg by Jeutel, very similar to Moon Cresta (bootleg set 2)
ROM_REGION( 0x8000, "maincpu", 0 )
ROM_LOAD( "b1.7f", 0x0000, 0x0800, CRC(0b28cd8a) SHA1(a1aa0ec63e1dddf4263aa39f6a5fda93108b6e98) )
ROM_CONTINUE( 0x2000, 0x0800 )
@@ -11830,8 +11999,8 @@ ROM_START( mooncrs3 ) /* Bootleg by Jeutel, very similar to Moon Cresta (bootleg
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "o.1h", 0x0000, 0x0800, CRC(528da705) SHA1(d726ee18b79774c982f88afb2a508eb5d5783193) )
ROM_LOAD( "q.1h", 0x0800, 0x0200, CRC(5a4b17ea) SHA1(8a879dc34fdecc8a121c4a87abb981212fb05945) )
- ROM_CONTINUE( 0x0c00, 0x0200 ) /* this version of the gfx ROMs has two */
- ROM_CONTINUE( 0x0a00, 0x0200 ) /* groups of 16 sprites swapped */
+ ROM_CONTINUE( 0x0c00, 0x0200 ) // this version of the gfx ROMs has two
+ ROM_CONTINUE( 0x0a00, 0x0200 ) // groups of 16 sprites swapped
ROM_CONTINUE( 0x0e00, 0x0200 )
ROM_LOAD( "p.1k", 0x1000, 0x0800, CRC(4e79ff6b) SHA1(f72386a3766a7fcc7b4b8cedfa58b8d57f911f6f) )
ROM_LOAD( "r.1k", 0x1800, 0x0200, CRC(e0edccbd) SHA1(0839a4c9b6e863d12253ae8e1732e80e08702228) )
@@ -11883,8 +12052,8 @@ ROM_START( mooncrs5 )
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "r_r_a.bin", 0x0000, 0x0800, CRC(528da705) SHA1(d726ee18b79774c982f88afb2a508eb5d5783193) )
ROM_LOAD( "r_f_a.bin", 0x0800, 0x0200, CRC(5a4b17ea) SHA1(8a879dc34fdecc8a121c4a87abb981212fb05945) )
- ROM_CONTINUE( 0x0c00, 0x0200 ) /* this version of the gfx ROMs has two */
- ROM_CONTINUE( 0x0a00, 0x0200 ) /* groups of 16 sprites swapped */
+ ROM_CONTINUE( 0x0c00, 0x0200 ) // this version of the gfx ROMs has two
+ ROM_CONTINUE( 0x0a00, 0x0200 ) // groups of 16 sprites swapped
ROM_CONTINUE( 0x0e00, 0x0200 )
ROM_LOAD( "r_r_b.bin", 0x1000, 0x0800, CRC(4e79ff6b) SHA1(f72386a3766a7fcc7b4b8cedfa58b8d57f911f6f) )
ROM_LOAD( "r_f_b.bin", 0x1800, 0x0200, CRC(e0edccbd) SHA1(0839a4c9b6e863d12253ae8e1732e80e08702228) )
@@ -11952,8 +12121,8 @@ ROM_START( eagle )
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "e10", 0x0000, 0x0800, CRC(40ce58bf) SHA1(67ea99e1afe4fff3e17252b22d11d3c96a416041) )
ROM_LOAD( "e12", 0x0800, 0x0200, CRC(628fdeed) SHA1(a798530c65e639fbf00ed3a4e8c428935bf5f38e) )
- ROM_CONTINUE( 0x0c00, 0x0200 ) /* this version of the gfx ROMs has two */
- ROM_CONTINUE( 0x0a00, 0x0200 ) /* groups of 16 sprites swapped */
+ ROM_CONTINUE( 0x0c00, 0x0200 ) // this version of the gfx ROMs has two
+ ROM_CONTINUE( 0x0a00, 0x0200 ) // groups of 16 sprites swapped
ROM_CONTINUE( 0x0e00, 0x0200 )
ROM_LOAD( "e9", 0x1000, 0x0800, CRC(ba664099) SHA1(9509123bed02a9d47f2c056e1562b80206da5579) )
ROM_LOAD( "e11", 0x1800, 0x0200, CRC(ee4ec5fd) SHA1(bf08b3f111f780dc8c81275e4e6247388183a8da) )
@@ -11979,8 +12148,8 @@ ROM_START( eagle2 )
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "e10.2", 0x0000, 0x0800, CRC(25b38ebd) SHA1(f679c2f2cb5892680fec102fafbdfeae156ce373) )
ROM_LOAD( "e12", 0x0800, 0x0200, CRC(628fdeed) SHA1(a798530c65e639fbf00ed3a4e8c428935bf5f38e) )
- ROM_CONTINUE( 0x0c00, 0x0200 ) /* this version of the gfx ROMs has two */
- ROM_CONTINUE( 0x0a00, 0x0200 ) /* groups of 16 sprites swapped */
+ ROM_CONTINUE( 0x0c00, 0x0200 ) // this version of the gfx ROMs has two
+ ROM_CONTINUE( 0x0a00, 0x0200 ) // groups of 16 sprites swapped
ROM_CONTINUE( 0x0e00, 0x0200 )
ROM_LOAD( "e9", 0x1000, 0x0800, CRC(ba664099) SHA1(9509123bed02a9d47f2c056e1562b80206da5579) )
ROM_LOAD( "e11", 0x1800, 0x0200, CRC(ee4ec5fd) SHA1(bf08b3f111f780dc8c81275e4e6247388183a8da) )
@@ -12006,8 +12175,8 @@ ROM_START( eagle3 )
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "e10a", 0x0000, 0x0800, CRC(e3c63d4c) SHA1(ad2b22e316da6bb819c58934d51cd4b2819b18f0) )
ROM_LOAD( "e12", 0x0800, 0x0200, CRC(628fdeed) SHA1(a798530c65e639fbf00ed3a4e8c428935bf5f38e) )
- ROM_CONTINUE( 0x0c00, 0x0200 ) /* this version of the gfx ROMs has two */
- ROM_CONTINUE( 0x0a00, 0x0200 ) /* groups of 16 sprites swapped */
+ ROM_CONTINUE( 0x0c00, 0x0200 ) // this version of the gfx ROMs has two
+ ROM_CONTINUE( 0x0a00, 0x0200 ) // groups of 16 sprites swapped
ROM_CONTINUE( 0x0e00, 0x0200 )
ROM_LOAD( "e9a", 0x1000, 0x0800, CRC(59429e47) SHA1(b7629c81d122fd1e4d390aa7abba44df898387d3) )
ROM_LOAD( "e11", 0x1800, 0x0200, CRC(ee4ec5fd) SHA1(bf08b3f111f780dc8c81275e4e6247388183a8da) )
@@ -12107,8 +12276,8 @@ ROM_START( mooncptc )
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "mc12.bin", 0x0000, 0x0800, CRC(528da705) SHA1(d726ee18b79774c982f88afb2a508eb5d5783193) ) // == 1h_1_10.bin
ROM_LOAD( "mc14.bin", 0x0800, 0x0200, CRC(5a4b17ea) SHA1(8a879dc34fdecc8a121c4a87abb981212fb05945) ) // == 12.chr
- ROM_CONTINUE( 0x0c00, 0x0200 ) /* this version of the gfx ROMs has two */
- ROM_CONTINUE( 0x0a00, 0x0200 ) /* groups of 16 sprites swapped */
+ ROM_CONTINUE( 0x0c00, 0x0200 ) // this version of the gfx ROMs has two
+ ROM_CONTINUE( 0x0a00, 0x0200 ) // groups of 16 sprites swapped
ROM_CONTINUE( 0x0e00, 0x0200 )
ROM_LOAD( "mc11.bin", 0x1000, 0x0800, CRC(4e79ff6b) SHA1(f72386a3766a7fcc7b4b8cedfa58b8d57f911f6f) ) // == 1k_1_11.bin
ROM_LOAD( "mc13.bin", 0x1800, 0x0200, CRC(e0edccbd) SHA1(0839a4c9b6e863d12253ae8e1732e80e08702228) ) // == 11.chr
@@ -12201,6 +12370,30 @@ ROM_START( ataqandr )
ROM_LOAD( "ataque_androide_p.bin", 0x0000, 0x0020, CRC(6a0c7d87) SHA1(140335d85c67c75b65689d4e76d29863c209cf32) )
ROM_END
+// Original Namco PCB. Program ROMs on a piggyback PCB from Bercle S.A.
+ROM_START( mutacion )
+ ROM_REGION( 0x8000, "maincpu", 0 )
+ ROM_LOAD( "mutacion_i.4", 0x0000, 0x1000, CRC(78290f7e) SHA1(20eb70f4c846873d178d55ef45a0add535891104) )
+ ROM_LOAD( "mutacion_i.3", 0x1000, 0x1000, BAD_DUMP CRC(c47a4d04) SHA1(4d2886de4b8644ff52f00f9e69c19deb951ad077) )
+ ROM_LOAD( "mutacion_i.2", 0x2000, 0x1000, CRC(f6121da2) SHA1(a6b3777989086290f8e5c49ed7643e7e86a694c2) )
+ ROM_LOAD( "mutacion_i.1", 0x3000, 0x1000, CRC(b622b601) SHA1(3bb006dd12239eb3a9fa45699b5cf1cc580d5668) )
+
+ ROM_REGION( 0x2000, "gfx1", 0 )
+ ROM_LOAD( "mutacion_i.f2", 0x0000, 0x0800, CRC(91664e98) SHA1(dbc192785bf35d0c45ee0f5a690d4c484f32330f) )
+ ROM_LOAD( "mutacion_i.f4", 0x0800, 0x0200, CRC(5a4b17ea) SHA1(8a879dc34fdecc8a121c4a87abb981212fb05945) )
+ ROM_CONTINUE( 0x0c00, 0x0200 )
+ ROM_CONTINUE( 0x0a00, 0x0200 )
+ ROM_CONTINUE( 0x0e00, 0x0200 )
+ ROM_LOAD( "mutacion_i.f1", 0x1000, 0x0800, CRC(4e79ff6b) SHA1(f72386a3766a7fcc7b4b8cedfa58b8d57f911f6f) )
+ ROM_LOAD( "mutacion_i.f3", 0x1800, 0x0200, CRC(e0edccbd) SHA1(0839a4c9b6e863d12253ae8e1732e80e08702228) )
+ ROM_CONTINUE( 0x1c00, 0x0200 )
+ ROM_CONTINUE( 0x1a00, 0x0200 )
+ ROM_CONTINUE( 0x1e00, 0x0200 )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "mmi6331.6l", 0x0000, 0x0020, CRC(6a0c7d87) SHA1(140335d85c67c75b65689d4e76d29863c209cf32) )
+ROM_END
+
ROM_START( sstarcrs )
ROM_REGION( 0x8000, "maincpu", 0 )
ROM_LOAD( "ss1", 0x0000, 0x0800, CRC(2ff72897) SHA1(c34c149ee32dd3318a04eda8928f0cd5f997d184) )
@@ -12311,6 +12504,23 @@ ROM_START( bongo )
ROM_LOAD( "b-clr.bin", 0x0000, 0x0020, CRC(c4761ada) SHA1(067d12b2d3635ffa6337ed234ba42717447bea00) )
ROM_END
+ROM_START( bongoa )
+ ROM_REGION( 0x6000, "maincpu", 0 )
+ ROM_LOAD( "1-2532.bin", 0x0000, 0x1000, CRC(ebcc50bb) SHA1(6d9deb561c3eb3e21abeda3180a29d21a2848e07) )
+ ROM_LOAD( "2-2532.bin", 0x1000, 0x1000, CRC(a19da662) SHA1(a2674392d489c5e5eeb9abc51572a37cc6045220) )
+ ROM_LOAD( "3-2532.bin", 0x2000, 0x1000, CRC(684db826) SHA1(753d9f0f9e1d047d567f47a9890f99ee72531b6e) )
+ ROM_LOAD( "4-2532.bin", 0x3000, 0x1000, CRC(f80372d2) SHA1(078e2c8b947103c168c0c85430f8ebc9d09f8ba7) )
+ ROM_LOAD( "5-2532.bin", 0x4000, 0x1000, BAD_DUMP CRC(fc92eade) SHA1(f4012a1c4631388a3e8109a8381bc4084ddc8757) ) // Bad on this set, taken from 'bongo'
+ ROM_LOAD( "6-2532.bin", 0x5000, 0x1000, CRC(561d9e5d) SHA1(68d7fab3cfb5b3360fe8064c70bf21bb1341032f) )
+
+ ROM_REGION( 0x2000, "gfx1", 0 )
+ ROM_LOAD( "2732.hj", 0x0000, 0x1000, CRC(fc79d103) SHA1(dac1152221ebdc4cd9bf353b4cc5d45021ca5d9e) )
+ ROM_LOAD( "2732.kl", 0x1000, 0x1000, CRC(94d17bf3) SHA1(2a70968249946de52c5a4cfabafbbf4ecda844a8) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "82s123.6l", 0x0000, 0x0020, CRC(c5f12bc3) SHA1(b746ba06b596d4227fdc730a23bdf495f84e6a72) )
+ROM_END
+
/*
@@ -12512,7 +12722,7 @@ void galaxian_state::init_ckonggx()
0x3400, 0x3500, 0x3600, 0x3700, 0x3800, 0x3900, 0x3a00, 0x3b00, 0x3c00, 0x3d00, 0x3e00, 0x3f00, 0x3000, 0x3100, 0x3200, 0x3300,
0x4400, 0x4500, 0x4600, 0x4700, 0x4800, 0x4900, 0x4a00, 0x4b00, 0x4c00, 0x4d00, 0x4e00, 0x4f00, 0x4000, 0x4100, 0x4200, 0x4300,
0x0000, 0x5100, 0x5200, 0x5300, 0x0000, 0x5100, 0x5200, 0x5300
- /*^ at 0x0000 there is alt startup code? does it get banked in? */
+ //^ at 0x0000 there is alt startup code? does it get banked in?
};
uint8_t *rom = memregion("maincpu")->base();
@@ -12617,10 +12827,10 @@ ROM_START( ckongcv )
ROM_LOAD( "c-k6.bin", 0x2000, 0x1000, CRC(184b9d7e) SHA1(80159ab19233ce95e9c74d039b6777d01b32e959) )
ROM_LOAD( "c-k5.bin", 0x3000, 0x1000, CRC(d8df2ec4) SHA1(bef1d4b404cddb8a5f9d4e3f30ee09915c602f56) )
ROM_LOAD( "c-k7.bin", 0x4000, 0x1000, CRC(9ddcc06f) SHA1(63bc77d8b3273681ca4e681105a117d19a0f23a5) )
- /* rom 8? */
+ // rom 8?
//ROM_LOAD( "kk8.bin", 0x5000, 0x0800, CRC(8cd4bc17) SHA1(43c3f2575182c8f5233b9c6160aa9f41d772bb9d) ) // works if you use this rom from ckonggx
- /* Crazy Kong gfx?! */
+ // Crazy Kong gfx?!
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "1h.bin", 0x0000, 0x1000, CRC(7866d2cb) SHA1(62dd8b80bc0459c7337d8a8cb83e53b999e7f4a9) )
ROM_LOAD( "1k.bin", 0x1000, 0x1000, CRC(7311a101) SHA1(49d54c8b94cae4ba81d7a7684eaa4e87815bb4da) )
@@ -12652,7 +12862,7 @@ ROM_START( ckongis )
ROM_REGION( 0x0020, "proms", 0 ) // wasn't in the dump
ROM_LOAD( "6l.bin", 0x0000, 0x0020, CRC(fd81e715) SHA1(eadafe88f26405e6540d4b248b940974e8c31145) )
- ROM_REGION( 0x0020, "proms2", 0 ) // NOT the colour prom?
+ ROM_REGION( 0x0020, "proms2", 0 ) // NOT the colour PROM?
ROM_LOAD( "dkp.bin", 0x0000, 0x0020, CRC(97c473cc) SHA1(1bbb7f17b8d6a3a621e8c22d473eb26d4c1a750b) )
ROM_END
@@ -12674,7 +12884,7 @@ ROM_START( bagmanmc )
ROM_COPY("gfx1",0x3800,0x2800,0x0800)
ROM_COPY("gfx1",0x1800,0x0800,0x0800)
- ROM_REGION( 0x0020, "proms", 0 ) // not dumped, but the standard moon cresta prom works
+ ROM_REGION( 0x0020, "proms", 0 ) // not dumped, but the standard Moon Cresta PROM works
ROM_LOAD( "bagmanmc.clr", 0x0000, 0x0020, BAD_DUMP CRC(6a0c7d87) SHA1(140335d85c67c75b65689d4e76d29863c209cf32) )
ROM_END
@@ -12692,6 +12902,33 @@ ROM_START( bagmanm2 )
ROM_LOAD( "bagmanmc.clr", 0x0000, 0x0020, BAD_DUMP CRC(6a0c7d87) SHA1(140335d85c67c75b65689d4e76d29863c209cf32) )
ROM_END
+// Found on a Moon Cresta PCB made by CIRSA
+ROM_START( bagmanm3 )
+ ROM_REGION( 0x6000, "maincpu", 0 )
+ ROM_LOAD( "1-2-tms2564.bin", 0x0000, 0x2000, CRC(90e5ae76) SHA1(d572eee43476c689d0d958ac23e2277a2ce077cb) )
+ ROM_LOAD( "3-4-tms2564.bin", 0x2000, 0x2000, CRC(f68fc60d) SHA1(c10aef39cf33c87974fefd347185ea7342470022) )
+ ROM_LOAD( "5a.bin", 0x4000, 0x0800, CRC(99992ffb) SHA1(33e34143bc515e645030fd3cf6e926225c1e6e00) )
+ ROM_LOAD( "5b.bin", 0x4800, 0x0800, CRC(838c1462) SHA1(e430b185c51b7b50fcf8ec1f56d46db21d4b1eb5) )
+ ROM_LOAD( "5c.bin", 0x5000, 0x0800, CRC(df4139fe) SHA1(840d3f15a667679ed7ba031fc8d0b0efee5bc382) )
+ ROM_LOAD( "5d.bin", 0x5800, 0x0800, CRC(d07a1fcb) SHA1(1cd4150eda53d164dacc0c6e9eb7bd30f646bd00) )
+
+ ROM_REGION( 0x4000, "gfx1", 0 )
+ ROM_LOAD( "bottom-tms2532.bin", 0x0000, 0x0800, CRC(c26409b5) SHA1(7d6a309f26ad6cd8790f6a4b383a00c2a06bbe05) )
+ ROM_IGNORE( 0x800 ) // Second half unused
+ ROM_LOAD( "top-tms2532.bin", 0x1000, 0x1000, CRC(a2790089) SHA1(7eb8634f26f6af52fb79bf90ec90b4e258c7c79f) )
+ ROM_LOAD( "c3-bottom-tms2532.bin", 0x2000, 0x0800, CRC(4fdd460f) SHA1(b3d69676be9cd60b201a1c0573eaa3d7121a68b9) )
+ ROM_IGNORE( 0x800 ) // Second half unused
+ ROM_LOAD( "c3-top-tms2532.bin", 0x3000, 0x1000, CRC(b63cfae4) SHA1(3e0cb3dbeec8ad790bc482176ca599721bac31ee) )
+
+ ROM_COPY( "gfx1", 0x3800, 0x2800, 0x0800 )
+ ROM_COPY( "gfx1", 0x1800, 0x0800, 0x0800 )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "82s123.bin", 0x0000, 0x0020, CRC(9fe412ff) SHA1(eea54dbf60f3661f24da732c4a479d552734a592) )
+
+ ROM_REGION( 0x0020, "proms2", 0 ) // Extra PROM attached to a 74157
+ ROM_LOAD( "82s123-74157.bin", 0x0000, 0x0020, CRC(66bb08a3) SHA1(f02700b651c3f840ad00844bb716d334f1f36637) )
+ROM_END
ROM_START( mooncmw )
ROM_REGION( 0x8000, "maincpu", 0 )
@@ -13033,6 +13270,24 @@ ROM_START( moonal2b )
ROM_LOAD( "6331.l6", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
ROM_END
+ROM_START( galactica2 ) // on a PCB silkscreend 'Cirsa'
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "a_2_galactica_cirsa", 0x0000, 0x0800, CRC(c561235e) SHA1(d960bc73a330a73b8c7bd8cce6a91ae180a59fe7) )
+ ROM_LOAD( "b_2_galactica_cirsa", 0x0800, 0x0800, CRC(0b3c3cae) SHA1(f0f03a9110bee1288ab042d963470f5a4b0903c6) )
+ ROM_LOAD( "c_2_galactica_cirsa", 0x1000, 0x0800, CRC(b2170d3b) SHA1(76e463f70de92663e672c54737de5471cd04ba7c) )
+ ROM_LOAD( "f_2_galactica_cirsa", 0x1800, 0x0800, CRC(51c95126) SHA1(c408cbd17a5207b3744fe0c7f2de51812e6fdc16) )
+ ROM_LOAD( "g_2_galactica_cirsa", 0x2000, 0x1000, CRC(16b9d56d) SHA1(238d007533754f1451920e9fc99ab23a60141159) )
+
+ ROM_REGION( 0x2000, "gfx1", 0 )
+ ROM_LOAD( "h_2_galactica_cirsa", 0x0000, 0x0800, CRC(6babd14e) SHA1(c8601803bc74c1089f767c4672376d4788dc4f49) )
+ ROM_RELOAD( 0x0800, 0x0800 )
+ ROM_LOAD( "i_2_galactica_cirsa", 0x1000, 0x0800, CRC(0997e81b) SHA1(a5c6b2b59f7a807b44e5d49c54c42d1abf2fc71a) )
+ ROM_RELOAD( 0x1800, 0x0800 )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "74s288n", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
+ROM_END
+
/*
@@ -13284,7 +13539,7 @@ ROM_START( dingo )
ROM_LOAD( "004.h7", 0x1000, 0x1000, CRC(a228446a) SHA1(4b7e611edd6bce308cc7b17caa068445f5438f4f) )
ROM_LOAD( "005.j7", 0x2000, 0x0800, CRC(14d680bb) SHA1(e9d84d1a62ed5300c390a7326c16cebd0aceae3b) )
- ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for sound code */
+ ROM_REGION( 0x10000, "audiocpu", 0 ) // 64k for sound code
ROM_LOAD( "6.7l", 0x0000, 0x1000, CRC(047092e0) SHA1(24014c999c904b4be571121b0f6808713d95add1) )
ROM_REGION( 0x1000, "gfx1", 0 )
@@ -13301,7 +13556,7 @@ ROM_START( dingoe )
ROM_LOAD( "unk.2d", 0x1000, 0x1000, BAD_DUMP CRC(0881e204) SHA1(4ba59d73e04b5337cfbd68d6a708e7321cb629f1) )
ROM_LOAD( "unk.3b", 0x2000, 0x1000, BAD_DUMP CRC(0b6aeab5) SHA1(ebfab3227dd23e3e1802b881a5662f634f86e382) )
- ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for sound code */
+ ROM_REGION( 0x10000, "audiocpu", 0 ) // 64k for sound code
ROM_LOAD( "unk.1c", 0x0000, 0x0800, CRC(8e354c38) SHA1(87608c1fa55e6fcf482f5d3bcc506a84673719cc) )
ROM_LOAD( "unk.1d", 0x0800, 0x0800, CRC(092878d6) SHA1(8a3b25e27df5aee2023a7e1a193ab152df171ede) )
@@ -13433,7 +13688,7 @@ ROM_START( kingball )
ROM_LOAD( "prg2.7j", 0x1000, 0x1000, CRC(c223b416) SHA1(ca2d9f6b8ef6db4f382089161f4147d9828c3554) )
ROM_LOAD( "prg3.7l", 0x2000, 0x0800, CRC(453634c0) SHA1(0025ccd91e165692092a37541e730010e85e37f2) )
- ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for sound code */
+ ROM_REGION( 0x10000, "audiocpu", 0 ) // 64k for sound code
ROM_LOAD( "kbe1.ic4", 0x0000, 0x0800, CRC(5be2c80a) SHA1(f719a80357bed3d66bce40569690f419740148c5) )
ROM_LOAD( "kbe2.ic5", 0x0800, 0x0800, CRC(bb59e965) SHA1(830e0c415f051e932d76df604025e4e33118a799) )
ROM_LOAD( "kbe3.ic6", 0x1000, 0x0800, CRC(fbc7d286) SHA1(11511028920d30f65859b80379b5aab94240a741) )
@@ -13455,7 +13710,7 @@ ROM_START( kingballj )
ROM_LOAD( "prg2.7j", 0x1000, 0x1000, CRC(c223b416) SHA1(ca2d9f6b8ef6db4f382089161f4147d9828c3554) )
ROM_LOAD( "prg3.7l", 0x2000, 0x0800, CRC(453634c0) SHA1(0025ccd91e165692092a37541e730010e85e37f2) )
- ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for sound code */
+ ROM_REGION( 0x10000, "audiocpu", 0 ) // 64k for sound code
ROM_LOAD( "kbj1.ic4", 0x0000, 0x0800, CRC(ba16beb7) SHA1(8c2c91a9e941d858a49edd6c0c8a912e1135653e) )
ROM_LOAD( "kbj2.ic5", 0x0800, 0x0800, CRC(56686a63) SHA1(8e624df57a63a556941fdbebcd886488799fad17) )
ROM_LOAD( "kbj3.ic6", 0x1000, 0x0800, CRC(fbc570a5) SHA1(d0dbaf86396bca65e067338a3b5b60b24990b8be) )
@@ -13750,6 +14005,24 @@ ROM_START( froggeram )
ROM_LOAD( "n82s123.bin", 0x0000, 0x0020, CRC(a35ec965) SHA1(ea5851f3e0e54f043347c7ae9869db8f6711d031) )
ROM_END
+ROM_START( froggereb ) // found on an original Sega/Gremlin PCB set with original ROMs, minimal differences include subtitle and updated copyright
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "epr-26.ic5", 0x0000, 0x1000, CRC(597696d6) SHA1(e7e021776cad00f095a1ebbef407b7c0a8f5d835) )
+ ROM_LOAD( "epr-27.ic6", 0x1000, 0x1000, CRC(b6e6fcc3) SHA1(5e8692f2b0c7f4b3642b3ee6670e1c3b20029cdc) )
+ ROM_LOAD( "ic7", 0x2000, 0x1000, CRC(a9947b9a) SHA1(059896afaad7c3cddb3cef727bf1dece4f6844cd) ) // blank label
+
+ ROM_REGION( 0x10000, "audiocpu", 0 )
+ ROM_LOAD( "epr-608.ic32", 0x0000, 0x0800, CRC(e8ab0256) SHA1(f090afcfacf5f13cdfa0dfda8e3feb868c6ce8bc) )
+ ROM_LOAD( "epr-609.ic33", 0x0800, 0x0800, CRC(7380a48f) SHA1(75582a94b696062cbdb66a4c5cf0bc0bb94f81ee) )
+ ROM_LOAD( "epr-610.ic34", 0x1000, 0x0800, CRC(31d7eb27) SHA1(2e1d34ae4da385fd7cac94707d25eeddf4604e1a) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "epr-607.ic101", 0x0000, 0x0800, CRC(05f7d883) SHA1(78831fd287da18928651a8adb7e578d291493eff) )
+ ROM_LOAD( "epr-606.ic102", 0x0800, 0x0800, CRC(f524ee30) SHA1(dd768967add61467baa08d5929001f157d6cd911) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "pr-91.6l", 0x0000, 0x0020, BAD_DUMP CRC(413703bf) SHA1(66648b2b28d3dcbda5bdb2605d1977428939dd3c) ) // not dumped for this set, should match
+ROM_END
ROM_START( turtles )
ROM_REGION( 0x10000, "maincpu", 0 )
@@ -14087,6 +14360,23 @@ ROM_START( mandingarf )
ROM_LOAD( "6e.bin", 0x0000, 0x0020, BAD_DUMP CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) ) // not present, using mandinga PROM
ROM_END
+ROM_START( amidarb2 )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "am1.k1", 0x0000, 0x0800, CRC(a2536585) SHA1(ab76370f79042c7387da22779056e00d9b7b4b5c) ) // 2716
+ ROM_LOAD( "am2.k2", 0x0800, 0x0800, CRC(f4038373) SHA1(8823b9816fc4ea03b92e08776c13610980f5ea7a) ) // 2716
+ ROM_LOAD( "am4.k4", 0x1000, 0x1000, BAD_DUMP CRC(9c82a4eb) SHA1(04052858d2bc605aac5ef2e42586097132585d04) ) // 2532, bitrotten
+ ROM_LOAD( "am5.k5", 0x2000, 0x1000, CRC(8ea9bd18) SHA1(78b327857d297d2b75bb5d4052ba579c8a792c49) ) // 2532
+ ROM_LOAD( "am6.k6", 0x3000, 0x1000, CRC(e5abe8ea) SHA1(a0e5bdef0a4e9feebb8ec4f0ad5fd2174a3f619e) ) // 2532
+ ROM_LOAD( "am3.k3", 0xc000, 0x0800, CRC(e4cbb827) SHA1(4efa49bd7486b4fa77d7faa130e842f4030f822b) ) // 2716
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "am.hj", 0x0000, 0x0800, CRC(2082ad0a) SHA1(c6014d9575e92adf09b0961c2158a779ebe940c4) ) // 2716
+ ROM_LOAD( "am.kl", 0x0800, 0x0800, CRC(3029f94f) SHA1(3b432b42e79f8b0a7d65e197f373a04e3c92ff20) ) // 2716
+
+ ROM_REGION( 0x020, "proms", 0 )
+ ROM_LOAD( "74s288.l6", 0x000, 0x020, CRC(aa1f7f5e) SHA1(311dd17aa11490a1173c76223e4ccccf8ea29850) )
+ROM_END
+
ROM_START( mandingac )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "2716-4.bin", 0x0000, 0x0800, CRC(a684a494) SHA1(76885bb3bdab09f46c7daa25164a2fdaa744742f) ) // 2716
@@ -14200,7 +14490,7 @@ RA3 13
The above example is for IC13
*/
-ROM_START( theends ) /* The Stern Electronics license */
+ROM_START( theends ) // The Stern Electronics license
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "the_end_ra3_13.ic13", 0x0000, 0x0800, CRC(90e5ab14) SHA1(b926801ab1cc1e2787a76ced6c7cffd6fce753d4) )
ROM_LOAD( "the_end_ra3_14.ic14", 0x0800, 0x0800, CRC(950f0a07) SHA1(bde9f3c6cf060dc6f5b7652287b94e04bed7bcf7) )
@@ -14218,7 +14508,7 @@ ROM_START( theends ) /* The Stern Electronics license */
ROM_LOAD( "the_end_ra3_31.ic31", 0x0800, 0x0800, CRC(af6d09b6) SHA1(f3ad51dc88aa58fd39195ead978b039e0b0b585c) )
ROM_REGION( 0x0020, "proms", 0 )
- ROM_LOAD( "6331-1j.86", 0x0000, 0x0020, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) ) /* no label for this chip */
+ ROM_LOAD( "6331-1j.86", 0x0000, 0x0020, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) ) // no label for this chip
ROM_END
ROM_START( theendss ) // The End (SegaSA / Sonic)
@@ -14548,7 +14838,7 @@ ROM_START( offensiv )
ROM_LOAD( "2716-6h.bin", 0x0800, 0x0800, CRC(11fd2887) SHA1(69844e48bb4d372cac7ae83c953df573c7ecbb7f) )
ROM_REGION( 0x0020, "proms", 0 )
- ROM_LOAD( "82s123-nmi6331-1j-5e.bin", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
+ ROM_LOAD( "82s123-nmi6331-1j-5e.bin", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
ROM_END
ROM_START( ncentury )
@@ -14742,7 +15032,7 @@ ROM_END
ROM_START( bomber )
// Bootleg of Scramble from Alca
- ROM_REGION( 0x10000, "maincpu", 0 ) /* 64k for code */
+ ROM_REGION( 0x10000, "maincpu", 0 ) // 64k for code
ROM_LOAD( "1.3l", 0x0000, 0x0800, CRC(8c30c7c3) SHA1(39e6244ac6b6c711ab83a6953d4b0585e035dfec) )
ROM_LOAD( "2.3k", 0x0800, 0x0800, CRC(1fca370c) SHA1(b48b67afe226b13656a1585a1d7ad4b6322c58a1) )
ROM_LOAD( "3.3h", 0x1000, 0x0800, CRC(8a714167) SHA1(34ed01fd9e9efa5cd9067284a2b66b72cafe3209) )
@@ -14752,7 +15042,7 @@ ROM_START( bomber )
ROM_LOAD( "7.3c", 0x3000, 0x0800, CRC(88ac07a0) SHA1(c57061db5984b472039356bf84a050b5b66e3813) )
ROM_LOAD( "8.3a", 0x3800, 0x0800, CRC(75232e09) SHA1(b0da201bf05c63031cdbe9f7059e3c710557f33d) )
- ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for the audio CPU */
+ ROM_REGION( 0x10000, "audiocpu", 0 ) // 64k for the audio CPU
ROM_LOAD( "11.8k", 0x0000, 0x0800, CRC(97ba15e8) SHA1(2729ccb156540ace2360b03c485865f7f97f5368) )
ROM_LOAD( "12.8l", 0x0800, 0x0800, CRC(6510761d) SHA1(0df92f9f123447d59a9106b2351d680cb04d1a9e) )
@@ -14822,7 +15112,7 @@ ROM_START( scorpion )
ROM_LOAD( "igr_scorpion_32_f5.ic72", 0x0000, 0x1000, CRC(1e5da9d6) SHA1(ca8b27e6dd40e4ca13e7e6b5f813bafca78b62f4) )
ROM_LOAD( "igr_scorpion_32_h5.ic73", 0x1000, 0x1000, CRC(a57adb0a) SHA1(d97c7dc4a6c5efb59cc0148e2498156c682c6714) )
- ROM_REGION( 0x3000, "digitalker", 0 ) /* Digitalker speech samples */
+ ROM_REGION( 0x3000, "digitalker", 0 ) // Digitalker speech samples
ROM_LOAD( "igr_scorpion_32_a3.ic25", 0x0000, 0x1000, CRC(04abf178) SHA1(2e7f231413d9ec461ca21840f31d1d6b8b17c4d5) )
ROM_LOAD( "igr_scorpion_32_a2.ic24", 0x1000, 0x1000, CRC(90352dd4) SHA1(62c261a2f2fbd8eff31d5c72cf532d5e43d86dd3) )
ROM_LOAD( "igr_scorpion_32_a1.ic23", 0x2000, 0x1000, CRC(3bf2452d) SHA1(7a163e0ef108dd40d3beab5e9805886e45be744b) )
@@ -14848,7 +15138,7 @@ ROM_START( scorpiona ) // Scorpion was developed by I.G.R. and original labels h
ROM_LOAD( "igr_scorpion_32_f5.ic72", 0x0000, 0x1000, CRC(1e5da9d6) SHA1(ca8b27e6dd40e4ca13e7e6b5f813bafca78b62f4) )
ROM_LOAD( "igr_scorpion_32_h5.ic73", 0x1000, 0x1000, CRC(a57adb0a) SHA1(d97c7dc4a6c5efb59cc0148e2498156c682c6714) )
- ROM_REGION( 0x3000, "digitalker", 0 ) /* Digitalker speech samples */
+ ROM_REGION( 0x3000, "digitalker", 0 ) // Digitalker speech samples
ROM_LOAD( "igr_scorpion_32_a3.ic25", 0x0000, 0x1000, CRC(04abf178) SHA1(2e7f231413d9ec461ca21840f31d1d6b8b17c4d5) )
ROM_LOAD( "igr_scorpion_32_a2.ic24", 0x1000, 0x1000, CRC(90352dd4) SHA1(62c261a2f2fbd8eff31d5c72cf532d5e43d86dd3) )
ROM_LOAD( "igr_scorpion_32_a1.ic23", 0x2000, 0x1000, CRC(3bf2452d) SHA1(7a163e0ef108dd40d3beab5e9805886e45be744b) )
@@ -14874,7 +15164,7 @@ ROM_START( scorpionb )
ROM_LOAD( "igr_scorpion_32_f5.ic72", 0x0000, 0x1000, CRC(1e5da9d6) SHA1(ca8b27e6dd40e4ca13e7e6b5f813bafca78b62f4) )
ROM_LOAD( "igr_scorpion_32_h5.ic73", 0x1000, 0x1000, CRC(a57adb0a) SHA1(d97c7dc4a6c5efb59cc0148e2498156c682c6714) )
- ROM_REGION( 0x3000, "digitalker", 0 ) /* Digitalker speech samples */
+ ROM_REGION( 0x3000, "digitalker", 0 ) // Digitalker speech samples
ROM_LOAD( "igr_scorpion_32_a3.ic25", 0x0000, 0x1000, CRC(04abf178) SHA1(2e7f231413d9ec461ca21840f31d1d6b8b17c4d5) )
ROM_LOAD( "igr_scorpion_32_a2.ic24", 0x1000, 0x1000, CRC(90352dd4) SHA1(62c261a2f2fbd8eff31d5c72cf532d5e43d86dd3) )
ROM_LOAD( "igr_scorpion_32_a1.ic23", 0x2000, 0x1000, CRC(3bf2452d) SHA1(7a163e0ef108dd40d3beab5e9805886e45be744b) )
@@ -14925,6 +15215,31 @@ ROM_START( aracnis )
ROM_LOAD( "mmi6331-1.6l", 0x0000, 0x0020, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) )
ROM_END
+ROM_START( aracnisa )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "scorpio-4-2732.bin", 0x0000, 0x0200, CRC(76eaae54) SHA1(51591d00e9711c82a917a97033d80be3e081fd86) )
+ ROM_CONTINUE( 0x3200, 0x0e00 )
+ ROM_LOAD( "scorpio-3-2732.bin", 0x1000, 0x0200, CRC(915223b2) SHA1(a3fb8a144b4a1b31912f0e421b6a030f4aecf221) )
+ ROM_CONTINUE( 0x2200, 0x0e00 )
+ ROM_LOAD( "scorpio-1-2732.bin", 0x2000, 0x0200, CRC(8ff99c15) SHA1(c5609c50810636567664479c9e3dbd2ee6d354a2) )
+ ROM_CONTINUE( 0x0200, 0x0e00 )
+ ROM_LOAD( "scorpio-2-2732.bin", 0x3000, 0x0200, CRC(8682b604) SHA1(fc1d032ffb143e315f89458f14c0a900078d97da) )
+ ROM_CONTINUE( 0x1200, 0x0e00 )
+ ROM_LOAD( "scorpio-5-2732.bin", 0x5000, 0x1000, CRC(f27ee3e4) SHA1(e034507b99705492b6a8aa34764a1e3222ba31b2) )
+ ROM_LOAD( "scorpio-6-2716.bin", 0x6000, 0x0800, CRC(fdfc2c82) SHA1(6b8914d6496c216de5bf160cd798b8f6facd44d2) )
+
+ ROM_REGION( 0x2000, "gfx1", 0 )
+ ROM_LOAD( "scorpio-c2-2732.bin", 0x0000, 0x1000, CRC(1e5da9d6) SHA1(ca8b27e6dd40e4ca13e7e6b5f813bafca78b62f4) )
+ ROM_LOAD( "scorpio-c1-2732.bin", 0x1000, 0x1000, CRC(a57adb0a) SHA1(d97c7dc4a6c5efb59cc0148e2498156c682c6714) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "82s123.bin", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
+
+ ROM_REGION( 0x0200, "extraproms", 0 ) // Separate small board with just two PROMs, connected to the program ROMs PCB
+ ROM_LOAD( "promboard-mmi6309.bin", 0x0000, 0x0100, CRC(62371a8f) SHA1(e6f3cba003705c694578c580a6cc426723e87624) )
+ ROM_LOAD( "promboard-tbp28l22n.bin", 0x0100, 0x0100, CRC(43105cb0) SHA1(b4adf1f2031386322f29f90e7c1e3be14374c7bc) )
+ROM_END
+
ROM_START( ckongs )
ROM_REGION( 0x6000, "maincpu", 0 )
ROM_LOAD( "vid_2c.bin", 0x0000, 0x1000, CRC(49a8c234) SHA1(91d8da03a76094b6fed4bf1d9a3943dee72bf039) )
@@ -15188,7 +15503,7 @@ SUPER COBRA RA1 5C 1981 STERN (black dot on label)
SUPER COBRA RA1 5D 1981 STERN (black dot on label)
SUPER COBRA RA1 5E 1981 STERN (black dot on label)
*/
-ROM_START( scobrae ) // main program is identical to the scobras set once decrypted
+ROM_START( scobrae ) // main program is identical to the scobras set once decrypted. L-1200-1B + L-1220-2B PCBs
ROM_REGION( 0x10000, "maincpu", 0 ) // all roms have STERN labels
ROM_LOAD( "super cobra ra1 2c 1981.2c", 0x0000, 0x1000, CRC(ba9d4152) SHA1(f1792c0049804ac956ab7f95f699559fca4df960) )
ROM_LOAD( "super cobra ra1 2e 1981.2e", 0x1000, 0x1000, CRC(f9b77b27) SHA1(7974761456aaabcf016158ee5f5c32c89e43c748) )
@@ -15201,14 +15516,13 @@ ROM_START( scobrae ) // main program is identical to the scobras set once decryp
ROM_LOAD( "super cobra ra1 5f 1981.5f", 0x0000, 0x0800, CRC(64d113b4) SHA1(7b439bb74d5ecc792e0ca8964bcca8c6b7a51262) )
ROM_LOAD( "super cobra ra1 5h 1981.5h", 0x0800, 0x0800, CRC(a96316d3) SHA1(9de0e94932e91dc34aea7c81880bde6a486d103b) )
- // ROMs below were missing, so not verified for this set but likely the same because the main program is.
ROM_REGION( 0x10000, "audiocpu", 0 )
- ROM_LOAD( "5c", 0x0000, 0x0800, BAD_DUMP CRC(deeb0dd3) SHA1(b815a586f05361b75078d58f1fddfdb36f9d8fae) )
- ROM_LOAD( "5d", 0x0800, 0x0800, BAD_DUMP CRC(872c1a74) SHA1(20f05bf398ad2690f5ba4e4158ad62aeec226413) )
- ROM_LOAD( "5e", 0x1000, 0x0800, BAD_DUMP CRC(ccd7a110) SHA1(5a247e360530be0f94c90fcc7d0ce628d460449f) )
+ ROM_LOAD( "super cobra ra1 5c 1981.5c", 0x0000, 0x0800, CRC(deeb0dd3) SHA1(b815a586f05361b75078d58f1fddfdb36f9d8fae) )
+ ROM_LOAD( "super cobra ra1 5d 1981.5d", 0x0800, 0x0800, CRC(872c1a74) SHA1(20f05bf398ad2690f5ba4e4158ad62aeec226413) )
+ ROM_LOAD( "super cobra ra1 5e 1981.5e", 0x1000, 0x0800, CRC(ccd7a110) SHA1(5a247e360530be0f94c90fcc7d0ce628d460449f) )
ROM_REGION( 0x0020, "proms", 0 )
- ROM_LOAD( "82s123.6e", 0x0000, 0x0020, BAD_DUMP CRC(9b87f90d) SHA1(d11ac5e4a6057301ea2a9cbb404c2b978eb4c1dc) )
+ ROM_LOAD( "ss1.6e", 0x0000, 0x0020, CRC(fd35c561) SHA1(590f60beb443dd689c890c37cc100e0b936bf8c9) )
ROM_END
@@ -15284,8 +15598,8 @@ ROM_START( scobraggi )
ROM_END
+// bootleg of Super Cobra
ROM_START( suprheli )
- /* this is a bootleg of Super Cobra */
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "1.2c", 0x0000, 0x1000, CRC(b25141d8) SHA1(9df638ad2c482cc7d8b8c8b61c9f8872bfaff4d5) )
ROM_LOAD( "scobra2e.bin", 0x1000, 0x1000, CRC(a270e44d) SHA1(8b7307af458b9cd3c45bb72b35e682d6d109ed01) ) // labeled "2"
@@ -15641,7 +15955,7 @@ ROM_START( calipso )
ROM_LOAD( "calipso.2j", 0x4000, 0x1000, CRC(fcbd7b9e) SHA1(5cc1edcc8b9867bb7849c8d97d1096bb6464f562) )
ROM_LOAD( "calipso.2l", 0x5000, 0x1000, CRC(f7630cab) SHA1(482ee91cccd8a7c5768a1d6a9772d797769fe2dc) )
- ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for sound code */
+ ROM_REGION( 0x10000, "audiocpu", 0 ) // 64k for sound code
ROM_LOAD( "calipso.5c", 0x0000, 0x0800, CRC(9cbc65ab) SHA1(b4ce04d18f9536c0ddd2f9c15edda75570e750e5) )
ROM_LOAD( "calipso.5d", 0x0800, 0x0800, CRC(a225ee3b) SHA1(dba111f89851c69fb6fce16219cb2b0cb3294c15) )
@@ -15724,7 +16038,7 @@ ROM_START( spdcoin )
ROM_END
-ROM_START( superbon )
+ROM_START( superbon ) // has no copyright and 'rent this space' in GFX
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "2d.cpu", 0x0000, 0x1000, CRC(60c0ba18) SHA1(6ad09e01dd3c86c8d9c465916227c9b00f38e025) )
ROM_LOAD( "2e.cpu", 0x1000, 0x1000, CRC(ddcf44bf) SHA1(b862622f4aa8af6da568b4f82ef043359ece530f) )
@@ -15742,16 +16056,38 @@ ROM_START( superbon )
ROM_LOAD( "5f.cpu", 0x0000, 0x0800, CRC(5b9d4686) SHA1(c7814aefaccab9c8a3a0b015447d366cd2e43c3a) )
ROM_LOAD( "5h.cpu", 0x0800, 0x0800, CRC(58c29927) SHA1(b88515d9c3108d2ad59f30fed5d74877b1636280) )
- /* The conversion instructions do not mention color proms:
- http://www.arcadeflyers.com/?page=flyer&db=videodb&id=5353&image=2
+ /* The conversion instructions do not mention color PROMs:
+ https://flyers.arcade-museum.com/?page=thumbs&db=videodb&id=5353
However, pages may be missing. In addition, it is mentioned that the
conversion kit may be used for Scramble, Amidar and Frogger as well.
- They all have different color proms. We use the prom from Super Cobra
+ They all have different color PROMs. We use the PROM from Super Cobra
for now and mark it as bad dump until we have more information. */
ROM_REGION( 0x0020, "proms", 0 )
ROM_LOAD( "82s123.6e", 0x0000, 0x0020, BAD_DUMP CRC(9b87f90d) SHA1(d11ac5e4a6057301ea2a9cbb404c2b978eb4c1dc) )
ROM_END
+ROM_START( superbona ) // MU-1A + MU-2A PCBs. Has 'Video Village @ 84' copyright and 'Video Village' in GFX
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "2c", 0x0000, 0x1000, CRC(5a8f69b5) SHA1(7c8b29731cf04f25f71c9a1d5b02b0298d78cf46) )
+ ROM_LOAD( "2e", 0x1000, 0x1000, CRC(5a126243) SHA1(4c3e560dee0722108770902c1e10e556263c554c) )
+ ROM_LOAD( "2f", 0x2000, 0x1000, CRC(bb66c2d5) SHA1(cbb7f4279ae48460790cb8abf976b978ae6a1a25) )
+ ROM_LOAD( "2h", 0x3000, 0x1000, CRC(74f4f04d) SHA1(d51c5d2c21453ee0dab60253c3124b6112d1f859) )
+ ROM_LOAD( "2j", 0x4000, 0x1000, CRC(78effb08) SHA1(64f211b34c2f37c25a36200b393f145b39ae67b5) )
+ ROM_LOAD( "2l", 0x5000, 0x1000, CRC(e9dcecbd) SHA1(ec61cec2b66c041872a2ca29cf724a89c73fc9a3) )
+ ROM_LOAD( "2m", 0x6000, 0x1000, CRC(3ed0337e) SHA1(975b93aee851867e335614419aa6db16fbf8063f) )
+
+ ROM_REGION( 0x10000, "audiocpu", 0 )
+ ROM_LOAD( "5c", 0x0000, 0x0800, CRC(b899be2a) SHA1(9b343a682531255104db61177a43ad933c3af34e) )
+ ROM_LOAD( "5d", 0x0800, 0x0800, CRC(f2ebd14c) SHA1(470811078d761714064d03e7dddb42a2ed1ed217) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "5f", 0x0000, 0x0800, CRC(d26f3fdc) SHA1(a2bf8de5260e85b4dccd29784b1b414f953e4350) )
+ ROM_LOAD( "5h", 0x0800, 0x0800, CRC(08e093ee) SHA1(3171f0c8423413bb9e562dba85b10163e24684e0) )
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "82s123.6e", 0x0000, 0x0020, BAD_DUMP CRC(9b87f90d) SHA1(d11ac5e4a6057301ea2a9cbb404c2b978eb4c1dc) ) // PROM is present but not dumped. Using Scramble's for now.
+ROM_END
+
ROM_START( jungsub )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "j1.2b", 0x0000, 0x1000, CRC(15735d45) SHA1(3546154dcd3cf9ce47e921b9b687c00b3b550ccb) )
@@ -15964,10 +16300,11 @@ GAME( 1979, galaxiant, galaxian, galaxian, superg, galaxian_state, init_
GAME( 1979, galaxiani, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "Namco (Irem license)", "Galaxian (Irem)", MACHINE_SUPPORTS_SAVE )
// Straight Galaxian ripoffs on basic galaxian hardware
-GAME( 1979, superg, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Super Galaxians ('Galaxian (Namco set 2)' hack)", MACHINE_SUPPORTS_SAVE )
+GAME( 1979, superg, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Super Galaxians (hack of 'Galaxian (Namco set 2)')", MACHINE_SUPPORTS_SAVE )
GAME( 1979, supergs, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Super Galaxians (Silver Systems)", MACHINE_SUPPORTS_SAVE )
-GAME( 1979, galturbo, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Galaxian Turbo ('Super Galaxians' hack)", MACHINE_SUPPORTS_SAVE ) // Hack of a hack (superg)
-GAME( 1979, galap1, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Space Invaders Galactica ('Galaxian (Namco set 2)' hack)", MACHINE_SUPPORTS_SAVE )
+GAME( 1979, galturbo, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Galaxian Turbo (hack of 'Super Galaxians')", MACHINE_SUPPORTS_SAVE ) // Hack of a hack (superg)
+GAME( 1979, galap1, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Space Invaders Galactica (hack of 'Galaxian (Namco set 2)')", MACHINE_SUPPORTS_SAVE )
+GAME( 1979, galap2, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack (International Scientific)", "GX Part 2 (hack of Galaxian)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galap4, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack (G.G.I)", "Galaxian Part 4 (hack)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, zerotime, galaxian, galaxian, zerotime, galaxian_state, init_galaxian, ROT90, "bootleg? (Petaco S.A.)", "Zero Time (Petaco S.A.)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galaktron, galaxian, galaxian, zerotime, galaxian_state, init_galaxian, ROT90, "bootleg (Petaco S.A.)", "Galaktron (Petaco S.A.)", MACHINE_SUPPORTS_SAVE )
@@ -15980,6 +16317,7 @@ GAME( 1979, starfght, galaxian, galaxian, swarm, galaxian_state, init_
GAME( 1979, galaxbsf, galaxian, galaxian, galaxian, galaxian_state, init_galaxian, ROT90, "bootleg", "Galaxian (bootleg, set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galaxianbl, galaxian, galaxian, galaxianbl, galaxian_state, init_galaxian, ROT90, "bootleg", "Galaxian (bootleg, set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galaxbsf2, galaxian, galaxian, galaxian, galaxian_state, init_galaxian, ROT90, "bootleg", "Galaxian (bootleg, set 3)", MACHINE_SUPPORTS_SAVE )
+GAME( 1979, galaxiamv, galaxian, galaxian, galaxian, galaxian_state, init_galaxian, ROT90, "bootleg (Multivideo)", "Diviertate Galaxia (Multivideo, Spanish bootleg of Galaxian)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galaxianbl2, galaxian, galaxian, galaxianbl, galaxian_state, init_galaxian, ROT90, "bootleg", "Galaxian (bootleg, set 4)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galaxianbl3, galaxian, galaxian, zerotime, galaxian_state, init_galaxian, ROT90, "bootleg", "Galaxian (Spanish bootleg)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // unique color PROM that gives strange colors. Unfortunately PCB doesn't work so it cannot be verified
GAME( 1980, galaxianem, galaxian, galaxian, galaxrf, galaxian_state, init_galaxian, ROT90, "bootleg (Electromar)", "Galaxian (Electromar Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
@@ -15988,23 +16326,25 @@ GAME( 1980, galaxrfgg, galaxian, galaxian, galaxrf, galaxian_state, init_
GAME( 1980, galaxrcgg, galaxian, galaxian, galaxrf, galaxian_state, init_galaxian, ROT90, "bootleg (Recreativos Covadonga)", "Galaxian Growing Galaxip / Galaxian Nave Creciente (Recreativos Covadonga Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galaxianrp, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "bootleg (Valadon Automation / Rene Pierre)", "Galaxian (Rene Pierre bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galaxyx, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "bootleg", "Galaxy X (bootleg of Galaxian)", MACHINE_SUPPORTS_SAVE )
+GAME( 1979, mcwars, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "bootleg", "Macro-Cosm Wars (bootleg of Galaxian)", MACHINE_SUPPORTS_SAVE )
GAME( 1979, galartic, galaxian, galartic, galartic, galaxian_state, init_galaxian, ROT270, "bootleg (Artic System)", "Galaxian (Artic System bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1979, galaxianiii, galaxian, galaxian, galaxian, galaxian_state, init_galaxian, ROT90, "bootleg", "Galaxian III (bootleg of Galaxian)", MACHINE_SUPPORTS_SAVE )
// These have the extra 'linescroll effect' title screens, like Moon Alien 2 but made out of a random tile, they lack an energy bar.
-GAME( 1979, moonaln, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu (Karateco license?)", "Moon Alien", MACHINE_SUPPORTS_SAVE ) // or bootleg?
-GAME( 1979, galapx, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Galaxian Part X ('Moon Alien' hack)", MACHINE_SUPPORTS_SAVE )
+GAME( 1979, moonaln, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu (Karateco license?)", "Moon Alien", MACHINE_SUPPORTS_SAVE ) // endorsed by Namco, or bootleg?
+GAME( 1979, galapx, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "hack", "Galaxian Part X (hack of 'Moon Alien')", MACHINE_SUPPORTS_SAVE )
// Like above but does have the energy bar, also GFX changed to planes.
GAME( 1979, kamikazp, galaxian, galaxian, kamikazp, galaxian_state, init_galaxian, ROT90, "bootleg (Potomac Games)", "Kamikaze (Potomac Games, bootleg of Galaxian)", MACHINE_SUPPORTS_SAVE )
// This has the tiles to display the energy bar, but use the flag gfx for the 'linescroll effect' title screen, also doesn't work due to bad rom.
-GAME( 1980, supergx, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu", "Super GX", MACHINE_NOT_WORKING | MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE )
+GAME( 1980, supergx, galaxian, galaxian, superg, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu", "Super GX", MACHINE_NOT_WORKING | MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // endorsed by Namco, or bootleg?
// These have the energy bar, and the tiles needed to display a less corrupt 'linescroll effect' title, but don't display one
GAME( 1979, swarm, galaxian, galaxian, swarm, galaxian_state, init_galaxian, ROT90, "bootleg? (Subelectro)", "Swarm (bootleg?)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, astrians, galaxian, galaxian, swarm, galaxian_state, init_galaxian, ROT90, "bootleg (BGV Ltd.)", "Astrians (clone of Swarm)", MACHINE_SUPPORTS_SAVE )
-GAME( 19??, tst_galx, galaxian, galaxian, galaxian, galaxian_state, init_galaxian, ROT90, "<unknown>", "Galaxian Test ROM", MACHINE_SUPPORTS_SAVE )
+GAME( 19??, tst_galx, galaxian, galaxian, galaxian, galaxian_state, init_galaxian, ROT90, "<unknown>", "Galaxian Test ROM", MACHINE_SUPPORTS_SAVE )
// Other games on basic galaxian hardware
GAME( 1981, blkhole, 0, galaxian, blkhole, galaxian_state, init_galaxian, ROT90, "TDS & MINTS", "Black Hole", MACHINE_SUPPORTS_SAVE )
@@ -16035,7 +16375,8 @@ GAME( 1981, redufob2, redufo, galaxian, redufob, galaxian_state, init_
GAME( 1981, redufob3, redufo, galaxian, redufob3, galaxian_state, init_nolock, ROT90, "bootleg", "Defend the Terra Attack on the Red UFO (bootleg, set 3)", MACHINE_SUPPORTS_SAVE )
GAME( 19??, exodus, redufo, galaxian, redufo, galaxian_state, init_nolock, ROT90, "bootleg? (Subelectro)", "Exodus (bootleg?)", MACHINE_SUPPORTS_SAVE )
GAME( 1983, tdpgal, 0, galaxian, tdpgal, galaxian_state, init_nolock, ROT90, "Design Labs / Thomas Automatics", "Triple Draw Poker", MACHINE_SUPPORTS_SAVE )
-GAME( 1979, kamakazi3, galaxian, galaxian, superg, galaxian_state, init_nolock, ROT90, "hack", "Kamakazi III ('Super Galaxians' hack)", MACHINE_SUPPORTS_SAVE ) // Hack of a hack (superg)
+GAME( 1979, kamakazi3, galaxian, galaxian, superg, galaxian_state, init_nolock, ROT90, "hack", "Kamakazi III (hack of 'Super Galaxians')", MACHINE_SUPPORTS_SAVE ) // Hack of a hack (superg)
+GAME( 1979, spacian2, galaxian, galaxian, superg, galaxian_state, init_nolock, ROT90, "Namco / Taito", "T.T Spacian Part-2", MACHINE_SUPPORTS_SAVE ) // endorsed by Namco, or bootleg?
// Different bullet color
GAME( 1982, azurian, 0, galaxian, azurian, galaxian_state, init_azurian, ROT90, "Rait Electronics Ltd", "Azurian Attack", MACHINE_SUPPORTS_SAVE )
@@ -16055,10 +16396,11 @@ GAME( 1980, gteikokub3, uniwars, pisces, superg, pisces_state, init_
GAME( 1980, spacbatt, uniwars, pisces, spacbatt, pisces_state, init_pisces, ROT90, "bootleg", "Space Battle (bootleg set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, spacbat2, uniwars, pisces, spacbatt, pisces_state, init_pisces, ROT90, "bootleg", "Space Battle (bootleg set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, spacempr, uniwars, pisces, spacempr, pisces_state, init_pisces, ROT90, "bootleg", "Space Empire (bootleg)", MACHINE_SUPPORTS_SAVE )
-GAME( 1980, skyraidr, uniwars, pisces, superg, pisces_state, init_pisces, ROT90, "bootleg", "Sky Raider (Uniwars bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, skyraidr, uniwars, pisces, superg, pisces_state, init_pisces, ROT90, "bootleg", "Sky Raider (bootleg of UniWar S)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, galemp, uniwars, pisces, superg, pisces_state, init_pisces, ROT90, "bootleg (Taito do Brasil)", "Galaxy Empire (bootleg?)", MACHINE_SUPPORTS_SAVE ) // Clearly a hack, but was it licensed?
GAME( 1980, asideral, uniwars, pisces, asideral, pisces_state, init_pisces, ROT90, "bootleg (Electrogame S.A.)", "Ataque Sideral (Spanish bootleg of UniWar S)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, pajaroes, uniwars, pisces, asideral, pisces_state, init_pisces, ROT90, "bootleg (PSV S.A.)", "Pajaro del Espacio (Spanish bootleg of UniWar S)", MACHINE_SUPPORTS_SAVE ) // Very similar to 'asideral'
+GAME( 1980, vueloesp, uniwars, pisces, asideral, pisces_state, init_pisces, ROT90, "bootleg (Centromatic)", "Vuelo Espacial (Spanish bootleg of UniWar S)", MACHINE_SUPPORTS_SAVE )
// Artic Multi-System games - separate tile/sprite ROMs
GAME( 1980, streakng, 0, pacmanbl, streakng, galaxian_state, init_galaxian, ROT90, "Shoei", "Streaking (set 1)", MACHINE_IMPERFECT_COLORS | MACHINE_SUPPORTS_SAVE )
@@ -16068,8 +16410,9 @@ GAME( 1981, pacmanbla, puckman, pacmanbl, pacmanbl, galaxian_state, init_
GAME( 1981, pacmanblb, puckman, pacmanbl, pacmanblb, galaxian_state, init_pacmanbl, ROT90, "bootleg", "Pac-Man (bootleg on Moon Alien 'AL-10A1' hardware)", MACHINE_SUPPORTS_SAVE ) // Doesn't have separate tile / sprite roms, probably should move it
GAME( 1981, pacmanblc, puckman, pacmanbl, pacmanbl, galaxian_state, init_pacmanbl, ROT270, "bootleg (Calfesa)", "Pac-Man (Calfesa, Spanish bootleg on Galaxian hardware)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // same PROM as Moon Cresta, gives very strange colors and sprites get cut
GAME( 1981, pacmanblci, puckman, pacmanbl, pacmanbl, galaxian_state, init_pacmanbl, ROT270, "bootleg (Cirsa)", "Pac-Man (Cirsa, Spanish bootleg on Galaxian hardware)", MACHINE_SUPPORTS_SAVE )
-GAME( 199?, komemokos, puckman, pacmanbl, pacmanbl, galaxian_state, init_pacmanbl, ROT270, "hack", "Komemokos ('Pac-Man (Cirsa, Spanish bootleg)' hack)", MACHINE_SUPPORTS_SAVE )
+GAME( 199?, komemokos, puckman, pacmanbl, pacmanbl, galaxian_state, init_pacmanbl, ROT270, "hack", "Komemokos (hack of 'Pac-Man (Cirsa, Spanish bootleg)')", MACHINE_SUPPORTS_SAVE )
GAME( 1981, pacmanblv, puckman, pacmanbl, pacmanbl, galaxian_state, init_pacmanbl, ROT270, "bootleg (Video Dens)", "Pac-Man (Video Dens, Spanish bootleg on Galaxian hardware)", MACHINE_SUPPORTS_SAVE )
+GAME( 1982, crazym, puckman, galaxian, pacmanblb, galaxian_state, init_crazym, ROT90, "bootleg (Game-A-Tron)", "Crazy Mazey", MACHINE_SUPPORTS_SAVE )
GAME( 1981, ghostmun, puckman, pacmanbl, streakng, galaxian_state, init_ghostmun, ROT90, "bootleg (Leisure and Allied)", "Ghost Muncher", MACHINE_SUPPORTS_SAVE )
GAME( 1981, phoenxp2, phoenix, pisces, phoenxp2, pisces_state, init_batman2, ROT270, "bootleg", "Phoenix Part 2", MACHINE_SUPPORTS_SAVE )
GAME( 1981, batman2, phoenix, pisces, batman2, pisces_state, init_batman2, ROT270, "bootleg", "Batman Part 2", MACHINE_SUPPORTS_SAVE ) // Similar to pisces, but with different video banking characteristics
@@ -16117,7 +16460,7 @@ GAME( 1980, eagle3, mooncrst, eagle, mooncrsa, galaxian_state, init_
GAME( 1980, mooncrsb, mooncrst, mooncrst, mooncrsa, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Moon Cresta (bootleg set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncrs2, mooncrst, mooncrst, mooncrsa, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Moon Cresta (bootleg set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncrs3, mooncrst, mooncrst, mooncrst, galaxian_state, init_mooncrsu, ROT90, "bootleg (Jeutel)", "Moon Cresta (bootleg set 3)", MACHINE_SUPPORTS_SAVE ) // Jeutel bootleg, similar to bootleg set 2
-GAME( 1980, mooncrs4, mooncrst, mooncrst, mooncrst, galaxian_state, init_mooncrsu, ROT90, "bootleg (SG-Florence)", "Moon Crest (Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, mooncrs4, mooncrst, mooncrst, mooncrst, galaxian_state, init_mooncrsu, ROT90, "bootleg (SG-Florence)", "Moon Crest (bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncrs5, mooncrst, mooncrst, mooncrst, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Moon Cresta (bootleg set 4)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
GAME( 1980, fantazia, mooncrst, mooncrst, fantazia, galaxian_state, init_mooncrsu, ROT90, "bootleg (Subelectro)", "Fantazia (bootleg?)", MACHINE_SUPPORTS_SAVE )
GAME( 1981?,spctbird, mooncrst, mooncrst, eagle2, galaxian_state, init_mooncrsu, ROT90, "bootleg (Fortrek)", "Space Thunderbird", MACHINE_SUPPORTS_SAVE )
@@ -16125,31 +16468,35 @@ GAME( 1980?,smooncrs, mooncrst, mooncrst, smooncrs, galaxian_state, init_
GAME( 1980?,meteora, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg (Alca)", "Meteor (Alca bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncrstso, mooncrst, mooncrst, mooncptc, galaxian_state, init_mooncrsu, ROT90, "bootleg (Sonic)", "Moon Cresta (SegaSA / Sonic)", MACHINE_SUPPORTS_SAVE )
GAME( 1980?,mooncptc, mooncrst, mooncrst, mooncptc, galaxian_state, init_mooncrsu, ROT90, "bootleg (Petaco S.A.)", "Moon Cresta (Petaco S.A. Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
-GAME( 1980?,mouncrst, mooncrst, mooncrst, mooncrst, galaxian_state, init_mooncrsu, ROT90, "bootleg (Jeutel)", "Moune Creste (Jeutel French Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
-GAME( 1980?,sirio2, mooncrst, mooncrst, mooncptc, galaxian_state, init_mooncrsu, ROT90, "bootleg (Calfesa S.L.)", "Sirio II (Calfesa S.L. Spanish Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980?,mouncrst, mooncrst, mooncrst, mooncrst, galaxian_state, init_mooncrsu, ROT90, "bootleg (Jeutel)", "Moune Creste (Jeutel French bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980?,sirio2, mooncrst, mooncrst, mooncptc, galaxian_state, init_mooncrsu, ROT90, "bootleg (Calfesa S.L.)", "Sirio II (Calfesa S.L. Spanish bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
GAME( 1980?,ataqandr, mooncrst, mooncrst, mooncptc, galaxian_state, init_mooncrsu, ROT90, "bootleg (FAR S.A.)", "Ataque Androide - Moon Cresta (FAR S.A. Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980?,mutacion, mooncrst, mooncrst, mooncptc, galaxian_state, init_mooncrsu, ROT90, "bootleg (Explomatic)", "Mutacion (Explomatic Spanish bootleg of Moon Cresta)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // Bad program ROM (bitrot)
GAME( 1980?,sstarcrs, mooncrst, mooncrst, mooncrsg, galaxian_state, init_mooncrsu, ROT90, "bootleg (Taito do Brasil)", "Super Star Crest", MACHINE_SUPPORTS_SAVE ) // There may be an alternate version called "Star Crest" according to flyers; is it the same?
-GAME( 198?, mooncmw, mooncrst, mooncrst, mooncrsa, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Moon War (Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
-GAME( 198?, starfgmc, mooncrst, mooncrst, mooncrsa, galaxian_state, init_mooncrsu, ROT90, "bootleg (Samyra Engineering)", "Starfighter (Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
-GAME( 1980, spcdrag, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Space Dragon (Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE ) // The boards were marked 'Space Dragon' although this doesn't appear in the games.
-GAME( 1980, floritas, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Floritas (Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
-GAME( 1980, floritasm, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg (Multivideo)", "Floritas (Multivideo Spanish Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 198?, mooncmw, mooncrst, mooncrst, mooncrsa, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Moon War (bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
+GAME( 198?, starfgmc, mooncrst, mooncrst, mooncrsa, galaxian_state, init_mooncrsu, ROT90, "bootleg (Samyra Engineering)", "Starfighter (bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, spcdrag, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Space Dragon (bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE ) // The boards were marked 'Space Dragon' although this doesn't appear in the games.
+GAME( 1980, floritas, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Floritas (bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, floritasm, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg (Multivideo)", "Floritas (Multivideo Spanish bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncreg, mooncrst, mooncrst, mooncreg, galaxian_state, init_mooncrsu, ROT90, "bootleg (Electrogame S.A.)", "Moon Cresta (Electrogame S.A. Spanish bootleg, set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncreg2, mooncrst, mooncrst, mooncrsl, galaxian_state, init_mooncrsu, ROT90, "bootleg (Electrogame S.A.)", "Moon Cresta (Electrogame S.A. Spanish bootleg, set 2)", MACHINE_SUPPORTS_SAVE )
-GAME( 1980, mooncrsl, mooncrst, mooncrst, mooncrsl, galaxian_state, init_mooncrsu, ROT90, "bootleg (Laguna S.A.)", "Cresta Mundo (Laguna S.A. Spanish Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, mooncrsl, mooncrst, mooncrst, mooncrsl, galaxian_state, init_mooncrsu, ROT90, "bootleg (Laguna S.A.)", "Cresta Mundo (Spanish bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncrecm, mooncrst, mooncrst, mooncrsl, galaxian_state, init_mooncrsu, ROT90, "bootleg (Centromatic)", "Moon Cresta (Centromatic Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
-GAME( 1980, stera, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Steraranger (Moon Cresta bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, stera, mooncrst, mooncrst, smooncrs, galaxian_state, init_mooncrsu, ROT90, "bootleg", "Steraranger (bootleg of Moon Cresta)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, mooncrgx, mooncrst, galaxian, mooncrgx, galaxian_state, init_mooncrgx, ROT270, "bootleg", "Moon Cresta (bootleg on Galaxian hardware)", MACHINE_SUPPORTS_SAVE )
GAME( 1980, moonqsr, 0, moonqsr, moonqsr, galaxian_state, init_moonqsr, ROT90, "Nichibutsu", "Moon Quasar", MACHINE_SUPPORTS_SAVE )
// These have an energy bar, and 'rowscroll effect' title made out of the energy bar tiles.
-GAME( 1980, moonal2, 0, mooncrst, moonal2, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu", "Moon Alien Part 2", MACHINE_SUPPORTS_SAVE )
-GAME( 1980, moonal2b, moonal2, mooncrst, moonal2, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu", "Moon Alien Part 2 (older version)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, moonal2, 0, mooncrst, moonal2, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu", "Moon Alien Part 2", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, moonal2b, moonal2, mooncrst, moonal2, galaxian_state, init_galaxian, ROT90, "Namco / Nichibutsu", "Moon Alien Part 2 (older version)", MACHINE_SUPPORTS_SAVE )
+GAME( 1980, galactica2, moonal2, mooncrst, moonal2, galaxian_state, init_galaxian, ROT90, "bootleg (Cirsa)", "Galactica-2 (bootleg of Moon Alien Part 2)", MACHINE_SUPPORTS_SAVE )
// Larger romspace, interrupt enable moved
GAME( 198?, thepitm, thepit, thepitm, thepitm, galaxian_state, init_mooncrsu, ROT90, "bootleg (KZH)", "The Pit (bootleg on Moon Quasar hardware)", MACHINE_SUPPORTS_SAVE ) // on an original MQ-2FJ PCB, even if the memory map appears closer to Moon Cresta
-GAME( 1983, bongo, 0, bongo, bongo, galaxian_state, init_kong, ROT90, "Jetsoft", "Bongo", MACHINE_SUPPORTS_SAVE )
+GAME( 1983, bongo, 0, bongo, bongo, galaxian_state, init_kong, ROT90, "Jetsoft", "Bongo (set 1)", MACHINE_SUPPORTS_SAVE )
+GAME( 1983, bongoa, bongo, bongo, bongo, galaxian_state, init_kong, ROT90, "Jetsoft", "Bongo (set 2)", MACHINE_SUPPORTS_SAVE ) // on an original Namco PCB
+
// Crazy Kong & Bagman bootlegs on galaxian/mooncrst hardware
GAME( 1981, ckongg, ckong, ckongg, ckongg, galaxian_state, init_ckongs, ROT90, "bootleg", "Crazy Kong (bootleg on Galaxian hardware)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
@@ -16158,13 +16505,15 @@ GAME( 1981, ckongmc2, ckong, ckongmc, ckongmc2, galaxian_state, init_
GAME( 1981, ckonggx, ckong, ckongg, ckonggx, galaxian_state, init_ckonggx, ROT90, "bootleg", "Crazy Kong (bootleg on Galaxian hardware, encrypted, set 1)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
GAME( 1982, ckongcv, ckong, ckongg, ckonggx, galaxian_state, init_ckonggx, ROT90, "bootleg", "Crazy Kong (bootleg on Galaxian hardware, encrypted, set 2)", MACHINE_NOT_WORKING )
GAME( 1982, ckongis, ckong, ckongg, ckonggx, galaxian_state, init_ckonggx, ROT90, "bootleg", "Crazy Kong (bootleg on Galaxian hardware, encrypted, set 3)", MACHINE_NOT_WORKING )
-GAME( 1981, bigkonggx, ckong, bigkonggx, ckongg, galaxian_state, init_bigkonggx, ROT90, "bootleg", "Big Kong (Crazy Kong bootleg on Galaxian hardware)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
+GAME( 1981, bigkonggx, ckong, bigkonggx, ckongg, galaxian_state, init_bigkonggx, ROT90, "bootleg", "Big Kong (bootleg of Crazy Kong on Galaxian hardware)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
GAME( 1982, bagmanmc, bagman, bagmanmc, bagmanmc, bagmanmc_state, init_bagmanmc, ROT90, "bootleg", "Bagman (bootleg on Moon Cresta hardware, set 1)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
GAME( 1984, bagmanm2, bagman, bagmanmc, bagmanmc, bagmanmc_state, init_bagmanmc, ROT90, "bootleg (GIB)", "Bagman (bootleg on Moon Cresta hardware, set 2)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
+GAME( 1982, bagmanm3, bagman, bagmanmc, bagmanmc, bagmanmc_state, init_bagmanmc, ROT90, "bootleg", "Bagman (bootleg on Moon Cresta hardware, set 3)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
+
// Other games on basic mooncrst hardware
GAME( 1982, porter, dockman, porter, porter, pisces_state, init_pisces, ROT90, "bootleg", "Port Man (bootleg on Moon Cresta hardware)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL )
-GAME( 1982, portera, dockman, porter, portera, pisces_state, init_pisces, ROT90, "bootleg", "El Estivador (Spanish bootleg of Port Man on Galaxian hardware)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL )
+GAME( 1982, portera, dockman, porter, portera, pisces_state, init_pisces, ROT90, "bootleg", "El Estivador (Spanish bootleg of Port Man on Galaxian hardware)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL ) // May be Portuguese, not Spanish
GAME( 1982, skybase, 0, skybase, skybase, pisces_state, init_pisces, ROT90, "Omori Electric Co., Ltd.", "Sky Base", MACHINE_SUPPORTS_SAVE )
GAME( 198?, kong, 0, kong, kong, galaxian_state, init_kong, ROT90, "Taito do Brasil", "Kong (Donkey Kong conversion on Galaxian hardware)", MACHINE_SUPPORTS_SAVE | MACHINE_WRONG_COLORS ) // rewrite of Donkey Kong (!) not a clone
@@ -16176,10 +16525,10 @@ GAME( 198?, fantastc, 0, fantastc, fantastc, galaxian_state, init_
GAME( 198?, timefgtr, 0, timefgtr, timefgtr, galaxian_state, init_timefgtr, ROT90, "Taito do Brasil", "Time Fighter (Time Pilot conversion on Galaxian hardware)", MACHINE_SUPPORTS_SAVE | MACHINE_WRONG_COLORS ) // rewrite of Time Pilot (!) not a clone
// Extra ROMs, protection, and sound hardware replaced with AY8910
-GAME( 1981, jumpbug, 0, jumpbug, jumpbug, galaxian_state, init_jumpbug, ROT90, "Hoei (Rock-Ola license)", "Jump Bug", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // or by Alpha Denshi Co. under contract from Hoei?
-GAME( 1981, jumpbugb, jumpbug, jumpbug, jumpbug, galaxian_state, init_jumpbug, ROT90, "bootleg", "Jump Bug (bootleg)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // bootleg of Sega license
-GAME( 1982, olibug, jumpbug, jumpbug, jumpbug, galaxian_state, init_jumpbug, ROT90, "bootleg", "Oli Bug (Jump Bug bootleg)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND | MACHINE_WRONG_COLORS | MACHINE_NOT_WORKING ) // one bad GFX ROM, uses Galaxian color PROM?
-GAME( 1983, levers, 0, jumpbug, levers, galaxian_state, init_jumpbug, ROT90, "Rock-Ola", "Levers", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, jumpbug, 0, jumpbug, jumpbug, galaxian_state, init_jumpbug, ROT90, "Hoei (Rock-Ola license)", "Jump Bug", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // or by Alpha Denshi Co. under contract from Hoei?
+GAME( 1981, jumpbugb, jumpbug, jumpbug, jumpbug, galaxian_state, init_jumpbug, ROT90, "bootleg", "Jump Bug (bootleg)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // bootleg of Sega license
+GAME( 1982, olibug, jumpbug, jumpbug, jumpbug, galaxian_state, init_jumpbug, ROT90, "bootleg", "Oli Bug (bootleg of Jump Bug)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND | MACHINE_WRONG_COLORS | MACHINE_NOT_WORKING ) // one bad GFX ROM, uses Galaxian color PROM?
+GAME( 1983, levers, 0, jumpbug, levers, galaxian_state, init_jumpbug, ROT90, "Rock-Ola", "Levers", MACHINE_SUPPORTS_SAVE )
// 2nd CPU driving AY8910 for sound
GAME( 1982, checkman, 0, checkman, checkman, galaxian_state, init_checkman, ROT90, "Zilec-Zenitone", "Check Man", MACHINE_SUPPORTS_SAVE )
@@ -16209,15 +16558,16 @@ GAME( 1980, kingballj, kingball, kingball, kingball, kingball_state, init_
// Frogger based hardware: 2nd Z80, AY-8910A, 2 8255 PPI for I/O, custom background
GAME( 1981, frogger, 0, frogger, frogger, galaxian_state, init_frogger, ROT90, "Konami", "Frogger", MACHINE_SUPPORTS_SAVE )
-GAME( 1981, froggers1, frogger, frogger, frogger, galaxian_state, init_frogger, ROT90, "Konami (Sega license)", "Frogger (Sega set 1)", MACHINE_SUPPORTS_SAVE )
-GAME( 1981, froggers2, frogger, frogger, frogger, galaxian_state, init_frogger, ROT90, "Konami (Sega license)", "Frogger (Sega set 2)", MACHINE_SUPPORTS_SAVE )
-GAME( 1981, froggers3, frogger, frogger, frogger, galaxian_state, init_frogger, ROT90, "Konami (Sega license)", "Frogger (Sega set 3)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, froggers1, frogger, frogger, frogger, galaxian_state, init_frogger, ROT90, "Konami (Sega license)", "Frogger (Sega, set 1)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, froggers2, frogger, frogger, frogger, galaxian_state, init_frogger, ROT90, "Konami (Sega license)", "Frogger (Sega, set 2)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, froggers3, frogger, frogger, frogger, galaxian_state, init_frogger, ROT90, "Konami (Sega license)", "Frogger (Sega, set 3)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, froggermc, frogger, froggermc, froggermc, galaxian_state, init_froggermc, ROT90, "Konami (Sega license)", "Frogger (Moon Cresta hardware)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, froggers, frogger, froggers, frogger, galaxian_state, init_froggers, ROT90, "bootleg", "Frog", MACHINE_SUPPORTS_SAVE )
GAME( 1981, frogf, frogger, frogf, frogger, galaxian_state, init_froggers, ROT90, "bootleg (Falcon)", "Frog (Falcon bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, frogg, frogger, frogg, frogg, galaxian_state, init_frogg, ROT90, "bootleg", "Frog (bootleg on Galaxian hardware)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, froggrs, frogger, froggers, frogger, galaxian_state, init_froggrs, ROT90, "bootleg (Coin Music)", "Frogger (Coin Music, bootleg on Scramble hardware)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, froggervd, frogger, froggervd, frogger, galaxian_state, init_quaak, ROT90, "bootleg (Hermatic)", "Frogger (Hermatic, bootleg on Scramble hardware from Video Dens)", MACHINE_SUPPORTS_SAVE )
+GAME( 1992, froggereb, frogger, frogger, frogger, galaxian_state, init_frogger, ROT90, "bootleg (Eurobed)", "Frogger - New Serie 92 (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, quaak, frogger, quaak, frogger, galaxian_state, init_quaak, ROT90, "bootleg", "Quaak (bootleg of Frogger)", MACHINE_SUPPORTS_SAVE ) // closest to Super Cobra hardware, presumably a bootleg from Germany (Quaak is the German frog sound)
GAME( 1981, froggeram, frogger, froggeram, froggeram, galaxian_state, init_quaak, ROT90, "bootleg", "Frogger (bootleg on Amigo? hardware)", MACHINE_SUPPORTS_SAVE ) // meant to be Amigo hardware, but maybe a different bootleg than the one we have?
@@ -16235,7 +16585,8 @@ GAME( 1982, amidar, 0, turtles, amidaru, galaxian_state, init_
GAME( 1981, amidar1, amidar, turtles, amidar, galaxian_state, init_turtles, ROT90, "Konami", "Amidar (older)", MACHINE_SUPPORTS_SAVE )
GAME( 1982, amidaru, amidar, turtles, amidaru, galaxian_state, init_turtles, ROT90, "Konami (Stern Electronics license)", "Amidar (Stern Electronics)", MACHINE_SUPPORTS_SAVE )
GAME( 1982, amidaro, amidar, turtles, amidaro, galaxian_state, init_turtles, ROT90, "Konami (Olympia license)", "Amidar (Olympia)", MACHINE_SUPPORTS_SAVE )
-GAME( 1982, amidarb, amidar, turtles, amidaru, galaxian_state, init_turtles, ROT90, "bootleg", "Amidar (bootleg)", MACHINE_SUPPORTS_SAVE ) // Similar to Amigo bootleg
+GAME( 1982, amidarb, amidar, turtles, amidaru, galaxian_state, init_turtles, ROT90, "bootleg", "Amidar (bootleg, set 1)", MACHINE_SUPPORTS_SAVE ) // Similar to Amigo bootleg
+GAME( 1982, amidarb2, amidar, mandingarf, olmandingo, galaxian_state, init_galaxian, ROT90, "bootleg", "Amidar (bootleg, set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 1982, amidarc, amidar, thepitm, mandingarf, galaxian_state, init_turtles, ROT90, "bootleg (Cirsa)", "Amidar (Cirsa bootleg)", MACHINE_IMPERFECT_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // resets when starting a game
GAME( 1982, amigo, amidar, turtles, amidaru, galaxian_state, init_turtles, ROT90, "bootleg", "Amigo (bootleg of Amidar, set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1982, amigo2, amidar, amigo2, amidaru, galaxian_state, init_turtles, ROT90, "bootleg", "Amigo (bootleg of Amidar, set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // sound timer might be different?
@@ -16255,8 +16606,8 @@ GAME( 1981, theendss, theend, theend, theend, galaxian_state, init_
GAME( 1981, takeoff, theend, takeoff, takeoff, galaxian_state, init_explorer, ROT90, "bootleg (Sidam)", "Take Off (bootleg of The End)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // colors likely need bitswap<8> somewhere; needs different sound timer. reference: https://www.youtube.com/watch?v=iPYX3yJORTE
GAME( 1981, scramble, 0, scramble, scramble, galaxian_state, init_scramble, ROT90, "Konami", "Scramble", MACHINE_SUPPORTS_SAVE )
-GAME( 1981, scrambles, scramble, scramble, scramble, galaxian_state, init_scramble, ROT90, "Konami (Stern Electronics license)", "Scramble (Stern Electronics set 1)", MACHINE_SUPPORTS_SAVE )
-GAME( 1981, scrambles2, scramble, scramble, scramble, galaxian_state, init_scramble, ROT90, "Konami (Stern Electronics license)", "Scramble (Stern Electronics set 2)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, scrambles, scramble, scramble, scramble, galaxian_state, init_scramble, ROT90, "Konami (Stern Electronics license)", "Scramble (Stern Electronics, set 1)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, scrambles2, scramble, scramble, scramble, galaxian_state, init_scramble, ROT90, "Konami (Stern Electronics license)", "Scramble (Stern Electronics, set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, strfbomb, scramble, scramble, strfbomb, galaxian_state, init_scramble, ROT90, "bootleg (Omni)", "Strafe Bomb (bootleg of Scramble)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, explorer, scramble, explorer, explorer, galaxian_state, init_explorer, ROT90, "bootleg (Sidam)", "Explorer (bootleg of Scramble)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // needs different sound timer
GAME( 1981, scramblebf, scramble, scramble, scramble, galaxian_state, init_scramble, ROT90, "bootleg (Karateco)", "Scramble (Karateco, French bootleg)", MACHINE_SUPPORTS_SAVE )
@@ -16283,14 +16634,15 @@ GAME( 1983, ozon1, 0, ozon1, ozon1, galaxian_state, init_
GAME( 1981, ckongs, ckong, ckongs, ckongs, galaxian_state, init_ckongs, ROT90, "bootleg", "Crazy Kong (bootleg on Scramble hardware)", MACHINE_SUPPORTS_SAVE )
// Konami L-1200-2 base board with custom Subelectro 113 rom board
-GAME( 1981, jungsub, jungler, jungsub, jungsub, galaxian_state, init_jungsub, ROT90, "bootleg (Subelectro)", "Jungler (Subelectro, bootleg on Scramble hardware)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // mostly works, bad GFX ROM causes lots of glitches
+GAME( 1981, jungsub, jungler, jungsub, jungsub, galaxian_state, init_jungsub, ROT90, "bootleg (Subelectro)", "Jungler (Subelectro, bootleg on Scramble hardware)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // mostly works, bad GFX ROM causes lots of glitches
// Scorpion hardware; based on Scramble but with a 3rd AY-8910 and a speech chip
-GAME( 1982, scorpion, 0, scorpion, scorpion, zac_scorpion_state, init_scorpion, ROT90, "Zaccaria", "Scorpion (set 1)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE)
-GAME( 1982, scorpiona, scorpion, scorpion, scorpion, zac_scorpion_state, init_scorpion, ROT90, "Zaccaria", "Scorpion (set 2)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE)
-GAME( 1982, scorpionb, scorpion, scorpion, scorpion, zac_scorpion_state, init_scorpion, ROT90, "Zaccaria", "Scorpion (set 3)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE)
-GAME( 19??, scorpionmc, scorpion, scorpnmc, scorpnmc, galaxian_state, init_batman2, ROT90, "bootleg? (Dorneer)", "Scorpion (Moon Cresta hardware)", MACHINE_SUPPORTS_SAVE )
-GAME( 19??, aracnis, scorpion, scorpnmc, aracnis, galaxian_state, init_batman2, ROT90, "bootleg", "Aracnis (bootleg of Scorpion on Moon Cresta hardware)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_GRAPHICS )
+GAME( 1982, scorpion, 0, scorpion, scorpion, zac_scorpion_state, init_scorpion, ROT90, "Zaccaria", "Scorpion (set 1)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE)
+GAME( 1982, scorpiona, scorpion, scorpion, scorpion, zac_scorpion_state, init_scorpion, ROT90, "Zaccaria", "Scorpion (set 2)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE)
+GAME( 1982, scorpionb, scorpion, scorpion, scorpion, zac_scorpion_state, init_scorpion, ROT90, "Zaccaria", "Scorpion (set 3)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE)
+GAME( 19??, scorpionmc, scorpion, scorpnmc, scorpnmc, galaxian_state, init_batman2, ROT90, "bootleg? (Dorneer)", "Scorpion (Moon Cresta hardware)", MACHINE_SUPPORTS_SAVE )
+GAME( 19??, aracnis, scorpion, scorpnmc, aracnis, galaxian_state, init_batman2, ROT90, "bootleg", "Aracnis (bootleg of Scorpion on Moon Cresta hardware, set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_GRAPHICS )
+GAME( 19??, aracnisa, scorpion, scorpnmc, aracnis, galaxian_state, init_batman2, ROT90, "bootleg", "Aracnis (bootleg of Scorpion on Moon Cresta hardware, set 2)", MACHINE_WRONG_COLORS | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // colors need verifying, resets soon (some protection?)
// SF-X hardware; based on Scramble with extra Z80 and 8255 driving a DAC-based sample player
GAME( 1983, sfx, 0, sfx, sfx, nihon_sfx_state, init_sfx, ORIENTATION_FLIP_X, "Nihon Game (Nichibutsu license)", "SF-X", MACHINE_SUPPORTS_SAVE )
@@ -16312,7 +16664,7 @@ GAME( 1981, scobrae2, scobra, scobra, scobras, galaxian_state, init_
GAME( 1981, scobrab, scobra, scobra, scobras, galaxian_state, init_scobra, ROT90, "bootleg (Karateco)", "Super Cobra (bootleg, set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, scobrag, scobra, scobra, scobras, galaxian_state, init_scobra, ROT90, "bootleg (A.V.G. by Zaccaria)", "Super Cobra (bootleg, set 2)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // uses the scramble color PROM
GAME( 1981, scobraggi, scobra, scobra, scobras, galaxian_state, init_scobra, ROT90, "bootleg (Cocamatic)", "Super Cobra (bootleg, set 3)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // uses the scramble color PROM
-GAME( 1981, suprheli, scobra, scobra, scobras, galaxian_state, init_scobra, ROT90, "bootleg", "Super Heli (Super Cobra bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, suprheli, scobra, scobra, scobras, galaxian_state, init_scobra, ROT90, "bootleg", "Super Heli (bootleg of Super Cobra)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, moonwar, 0, moonwar, moonwar, moonwar_state, init_scobra, ROT90, "Stern Electronics", "Moonwar", MACHINE_SUPPORTS_SAVE )
GAME( 1981, moonwara, moonwar, moonwar, moonwara, moonwar_state, init_scobra, ROT90, "Stern Electronics", "Moonwar (older)", MACHINE_SUPPORTS_SAVE )
@@ -16349,7 +16701,8 @@ GAME( 1982, losttombh, losttomb, scobra, losttomb, galaxian_state, init_
GAME( 1984, spdcoin, 0, scobra, spdcoin, galaxian_state, init_scobra, ROT90, "Stern Electronics", "Speed Coin (prototype)", MACHINE_SUPPORTS_SAVE )
-GAME( 1985, superbon, 0, scobra, superbon, galaxian_state, init_superbon, ROT90, "Signatron USA", "Agent Super Bond (Super Cobra conversion)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE )
+GAME( 1985, superbon, 0, scobra, superbon, galaxian_state, init_superbon, ROT90, "Signatron USA", "Agent Super Bond (Super Cobra conversion, encrypted)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE )
+GAME( 1984, superbona, superbon, scobra, superbon, galaxian_state, init_scobra, ROT90, "Video Village", "Agent Super Bond (Super Cobra conversion, not encrypted)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE )
// Namennayo - single player reference: https://www.nicovideo.jp/watch/sm16782405
GAME( 1982, namenayo, 0, namenayo, namenayo, namenayo_state, init_namenayo, ROT0, "Cat's", "Namennayo (Japan)", MACHINE_SUPPORTS_SAVE )