not NOT WORKING (plug and play / handhelds) (#6051)

* new NOT WORKING
----
Lexibook Compact Cyber Arcade - Star Wars [Team Europe]
Unknown M&D Handheld [zhongtiao1]

- hooked up controls for shredmjr, now runs the ame as taikeegr [David Haywood]

* new NOT WORKING
----
BBL380 - 180 in 1 [zhongtiao1]

* (nw)

* unkmandd contains some unsp code (nw)

* same hardware these are not (nw)

* tidy unused (nw)

* comment (nw)

* (nw)
This commit is contained in:
David Haywood 2019-12-16 04:34:35 +00:00 committed by ajrhacker
parent 40823998fa
commit 033e54d938
7 changed files with 263 additions and 166 deletions

View File

@ -3774,6 +3774,8 @@ files {
MAME_DIR .. "src/mame/drivers/xavix2.cpp",
MAME_DIR .. "src/mame/drivers/titan_soc.cpp",
MAME_DIR .. "src/mame/drivers/lexibook_jg7425.cpp",
MAME_DIR .. "src/mame/drivers/unkmandd.cpp",
MAME_DIR .. "src/mame/drivers/bbl380.cpp",
}
createMESSProjects(_target, _subtarget, "ultimachine")

View File

@ -0,0 +1,72 @@
// license:BSD-3-Clause
// copyright-holders:David Haywood
// the BBL 380 - 180 in 1 features similar menus / presentation / games to the 'ORB Gaming Retro Arcade Pocket Handheld Games Console with 153 Games' (eg has Matchstick Man, Gang Tie III etc.)
// https://www.youtube.com/watch?v=NacY2WHd-CY
// contains 6502 code
#include "emu.h"
#include "screen.h"
#include "emupal.h"
#include "speaker.h"
class bbl380_state : public driver_device
{
public:
bbl380_state(const machine_config &mconfig, device_type type, const char *tag) :
driver_device(mconfig, type, tag),
m_palette(*this, "palette"),
m_screen(*this, "screen")
{ }
void bbl380(machine_config &config);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<palette_device> m_palette;
required_device<screen_device> m_screen;
};
uint32_t bbl380_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
return 0;
}
void bbl380_state::machine_start()
{
}
void bbl380_state::machine_reset()
{
}
static INPUT_PORTS_START( bbl380 )
INPUT_PORTS_END
void bbl380_state::bbl380(machine_config &config)
{
// unknown CPU, 6502 based
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(64*8, 32*8);
m_screen->set_visarea(0*8, 40*8-1, 0*8, 30*8-1);
m_screen->set_screen_update(FUNC(bbl380_state::screen_update));
m_screen->set_palette(m_palette);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 0x200);
}
ROM_START( bbl380 )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
ROM_LOAD( "bbl 380 180 in 1.bin", 0x000000, 0x400000, CRC(146c88da) SHA1(7f18526a6d8cf991f86febce3418d35aac9f49ad) )
ROM_END
CONS( 200?, bbl380, 0, 0, bbl380, bbl380, bbl380_state, empty_init, "BaoBaoLong", "BBL380 - 180 in 1", MACHINE_IS_SKELETON )

View File

@ -49,7 +49,6 @@ public:
{ }
void c2_color(machine_config &config);
void leapfrog_mfleappad(machine_config &config);
private:
virtual void machine_start() override;

View File

@ -25,7 +25,7 @@
Adds scrambled opcodes (XORed with 0xA1) and RGB444 palette mode,
and more advanced PCM modes (CPU and video working, sound NYI)
VT368 (?) - used in DGUN2561, lexcyber
VT368 (?) - used in DGUN2561, lxcmcy
Various enhancements not yet emulated. Different banking, possibly an ALU,
larger palette space
@ -48,7 +48,7 @@
todo (newer VTxx):
new PCM audio in FC Pocket and DGUN-2573
add support for VT368 (?) in DGUN-2561 and lexcyber
add support for VT368 (?) in DGUN-2561 and lxcmcy
add support for the VT369 (?) featurs used by the MOGIS M320
todo (general)
@ -2019,9 +2019,17 @@ ROM_START( dgun2561 )
ROM_LOAD( "dgun2561.bin", 0x00000, 0x4000000, CRC(a6e627b4) SHA1(2667d2feb02de349387f9dcfa5418e7ed3afeef6) )
ROM_END
ROM_START( lexcyber )
// The maximum address space a VT chip can see is 32MB, so these 64MB roms are actually 2 programs (there are vectors in the first half and the 2nd half)
// there must be a bankswitch bit that switches the whole 32MB space. Loading the 2nd half in Star Wars does actually boot straight to a game.
ROM_START( lxcmcy )
ROM_REGION( 0x4000000, "mainrom", 0 )
ROM_LOAD( "lexcyber.bin", 0x00000, 0x4000000, CRC(3f3af72c) SHA1(76127054291568fcce1431d21af71f775cfb05a6) )
ROM_LOAD( "lxcmcy.bin", 0x00000, 0x4000000, CRC(3f3af72c) SHA1(76127054291568fcce1431d21af71f775cfb05a6) )
ROM_END
ROM_START( lxcmcysw )
ROM_REGION( 0x4000000, "mainrom", 0 )
ROM_LOAD( "jl2365swr-1.u2", 0x00000, 0x4000000, CRC(60ece391) SHA1(655de6b36ba596d873de2839522b948ccf45e006) )
ROM_END
ROM_START( cybar120 )
@ -2333,7 +2341,16 @@ CONS( 200?, dgun2500, 0, 0, nes_vt_dg, nes_vt, nes_vt_dg_state, empty_init, "
// don't even get to menu. very enhanced chipset, VT368/9?
CONS( 2012, dgun2561, 0, 0, nes_vt_cy, nes_vt, nes_vt_cy_state, empty_init, "dreamGEAR", "dreamGEAR My Arcade Portable Gaming System (DGUN-2561)", MACHINE_NOT_WORKING )
CONS( 200?, lexcyber, 0, 0, nes_vt_cy, nes_vt, nes_vt_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade", MACHINE_NOT_WORKING )
CONS( 200?, lxcmcy, 0, 0, nes_vt_cy, nes_vt, nes_vt_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade", MACHINE_NOT_WORKING )
CONS( 200?, lxcmcysw, 0, 0, nes_vt_cy, nes_vt, nes_vt_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - Star Wars Rebels", MACHINE_NOT_WORKING )
// Also Lexibook Compact Cyber Arcade - Disney Princesses
// Lexibook Compact Cyber Arcade - Cars
// Lexibook Compact Cyber Arcade - Frozen
// Lexibook Compact Cyber Arcade - Paw Patrol
// Lexibook Compact Cyber Arcade - Barbie
// Lexibook Compact Cyber Arcade - Finding Dory
// more?
// boots, same platform with scrambled opcodes as FC pocket
// palette issues in some games because they actually use the old VT style palette

View File

@ -0,0 +1,72 @@
// license:BSD-3-Clause
// copyright-holders:David Haywood
// unkmandd contains unsp code, but no obvious startup code / vectors, so it's probably booting from another device / bootstrapped
#include "emu.h"
#include "screen.h"
#include "emupal.h"
#include "speaker.h"
class unkmandd_state : public driver_device
{
public:
unkmandd_state(const machine_config &mconfig, device_type type, const char *tag) :
driver_device(mconfig, type, tag),
m_palette(*this, "palette"),
m_screen(*this, "screen")
{ }
void unkmandd(machine_config &config);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<palette_device> m_palette;
required_device<screen_device> m_screen;
};
uint32_t unkmandd_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
return 0;
}
void unkmandd_state::machine_start()
{
}
void unkmandd_state::machine_reset()
{
}
static INPUT_PORTS_START( unkmandd )
INPUT_PORTS_END
void unkmandd_state::unkmandd(machine_config &config)
{
// unknown CPU, unsp based
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(64*8, 32*8);
m_screen->set_visarea(0*8, 40*8-1, 0*8, 30*8-1);
m_screen->set_screen_update(FUNC(unkmandd_state::screen_update));
m_screen->set_palette(m_palette);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 0x200);
}
ROM_START( unkmandd )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
ROM_LOAD( "8718_en25f32.bin", 0x000000, 0x400000, CRC(cc138db4) SHA1(379af3d94ae840f52c06416d6cf32e25923af5ae) )
ROM_END
CONS( 200?, unkmandd, 0, 0, unkmandd, unkmandd, unkmandd_state, empty_init, "M&D", "Unknown M&D Handheld", MACHINE_IS_SKELETON )

View File

@ -191,7 +191,6 @@ public:
void non_spg_base(machine_config &config);
void lexizeus(machine_config &config);
void taikeegr(machine_config &config);
void shredmjr(machine_config &config);
void init_crc();
void init_zeus();
@ -611,6 +610,26 @@ private:
required_device<eeprom_serial_93cxx_device> m_eeprom;
};
class shredmjr_game_state : public spg2xx_game_state
{
public:
shredmjr_game_state(const machine_config &mconfig, device_type type, const char *tag) :
spg2xx_game_state(mconfig, type, tag),
m_porta_data(0x0000),
m_shiftamount(0)
{ }
void shredmjr(machine_config &config);
protected:
DECLARE_READ16_MEMBER(porta_r);
DECLARE_WRITE16_MEMBER(porta_w);
private:
uint16_t m_porta_data;
int m_shiftamount;
};
/*************************
@ -2078,158 +2097,6 @@ static INPUT_PORTS_START( taikeegr )
PORT_BIT( 0xffff, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END
static INPUT_PORTS_START( shredmjr )
PORT_START("P1")
PORT_DIPNAME( 0x0001, 0x0001, "0" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START("P2")
PORT_DIPNAME( 0x0001, 0x0001, "1" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START("P3")
PORT_DIPNAME( 0x0001, 0x0001, "2" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
INPUT_PORTS_END
static INPUT_PORTS_START( sentx6p )
PORT_START("P1")
@ -3202,16 +3069,77 @@ void spg2xx_game_state::taikeegr(machine_config &config)
// m_maincpu->portc_in().set_ioport("P3");
}
void spg2xx_game_state::shredmjr(machine_config &config)
// Shredmaster Jr uses the same input order as the regular Taikee Guitar, but reads all inputs through a single multplexed bit
WRITE16_MEMBER(shredmjr_game_state::porta_w)
{
if (data != m_porta_data)
{
if ((data & 0x0800) != (m_porta_data & 0x0800))
{
if (data & 0x0800)
{
//logerror("0x0800 low -> high\n");
}
else
{
//logerror("0x0800 high -> low\n");
}
}
if ((data & 0x0200) != (m_porta_data & 0x0200))
{
if (data & 0x0200)
{
//logerror("0x0200 low -> high\n");
m_shiftamount++;
}
else
{
//logerror("0x0200 high -> low\n");
}
}
if ((data & 0x0100) != (m_porta_data & 0x0100))
{
if (data & 0x0100)
{
//logerror("0x0100 low -> high\n");
m_shiftamount = 0;
}
else
{
//logerror("0x0100 high -> low\n");
}
}
}
m_porta_data = data;
}
READ16_MEMBER(shredmjr_game_state::porta_r)
{
//logerror("porta_r with shift amount %d \n", m_shiftamount);
uint16_t ret = 0x0000;
uint16_t portdata = m_io_p1->read();
portdata = (portdata >> m_shiftamount) & 0x1;
if (portdata)
ret |= 0x0400;
return ret;
}
void shredmjr_game_state::shredmjr(machine_config &config)
{
SPG24X(config, m_maincpu, XTAL(27'000'000), m_screen);
m_maincpu->set_addrmap(AS_PROGRAM, &spg2xx_game_state::mem_map_4m);
m_maincpu->set_addrmap(AS_PROGRAM, &shredmjr_game_state::mem_map_4m);
spg2xx_base(config);
m_maincpu->porta_in().set_ioport("P1");
m_maincpu->portb_in().set_ioport("P2");
m_maincpu->portc_in().set_ioport("P3");
m_maincpu->porta_in().set(FUNC(shredmjr_game_state::porta_r));
m_maincpu->porta_out().set(FUNC(shredmjr_game_state::porta_w));
}
@ -4012,7 +3940,7 @@ CONS( 2006, pvmil, 0, 0, pvmil, pvmil, pvmil_state, e
// for the UK version the title screen always shows "Guitar Rock", however there are multiple boxes with different titles and song selections.
// ROM is glued on the underside and soldered to the PCB, very difficult to remove without damaging.
CONS( 2007, taikeegr, 0, 0, taikeegr, taikeegr, spg2xx_game_state, init_taikeegr, "TaiKee", "Rockstar Guitar / Guitar Rock (PAL)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // bad music timings (too slow)
CONS( 2007, shredmjr, taikeegr, 0, shredmjr, shredmjr, spg2xx_game_state, init_taikeegr, "DreamGear", "Shredmaster Jr (NTSC)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // bad music timings (too slow), input reading different to above
CONS( 2007, shredmjr, taikeegr, 0, shredmjr, taikeegr, shredmjr_game_state, init_taikeegr, "dreamGEAR", "Shredmaster Jr (NTSC)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // bad music timings (too slow)
// "go 02d1d0" "do r1 = ff" to get past initial screen (currently bypassed by setting controller sense in RAM earlier, see hack in machine_reset)
// a 'deluxe' version of this also exists with extra game modes

View File

@ -3184,6 +3184,9 @@ mechattj // A8002 'MA' (c) 1989
mechattu // A8002 'MA' (c) 1989
mechattu1 // A8002 'MA' (c) 1989
@source:bbl380.cpp
bbl380
@source:bcs3.cpp
bcs3 //
bcs3a //
@ -31133,7 +31136,8 @@ ablpinb
mc_dgear
dgun2500
dgun2561
lexcyber
lxcmcy
lxcmcysw
cybar120
mc_dg101
mc_aa2
@ -39319,6 +39323,9 @@ uts20 //
@source:unkhorse.cpp
unkhorse //
@source:unkmandd.cpp
unkmandd
@source:unkpoker.cpp
unkpoker //