mirror of
https://github.com/holub/mame
synced 2025-04-16 13:34:55 +03:00
new NOT WORKING machines (#7049)
* new NOT WORKING machines ----- PCP 8728 - 788 in 1 [David Shah] unknown unSP based handheld [unknown] * new NOT WORKING machines ------ Virtual Ping Pong (Protocol) [Sean Riddle, David Haywood] My Arcade Gamer Mini 160-in-1 (DGUN-2953) [Sean Riddle, David Haywood]
This commit is contained in:
parent
1e1e12523d
commit
bcb1d091c2
@ -4004,6 +4004,7 @@ files {
|
||||
MAME_DIR .. "src/mame/machine/generalplus_gpl16250.cpp",
|
||||
MAME_DIR .. "src/mame/machine/generalplus_gpl16250.h",
|
||||
MAME_DIR .. "src/mame/drivers/generalplus_gpl32612.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/generalplus_gpl_unknown.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/xavix.cpp",
|
||||
MAME_DIR .. "src/mame/includes/xavix.h",
|
||||
MAME_DIR .. "src/mame/drivers/xavix_2000.cpp",
|
||||
@ -4029,8 +4030,7 @@ files {
|
||||
MAME_DIR .. "src/mame/machine/xavix2002_io.h",
|
||||
MAME_DIR .. "src/mame/drivers/xavix2.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/titan_soc.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/unkmandd.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/bbl380.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/unk6502_st2xxx.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/actions_atj2279b.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/pubint_storyreader.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/magiceyes_pollux_vr3520f.cpp",
|
||||
|
192
src/mame/drivers/generalplus_gpl_unknown.cpp
Normal file
192
src/mame/drivers/generalplus_gpl_unknown.cpp
Normal file
@ -0,0 +1,192 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:David Haywood
|
||||
|
||||
// pcp8718 contains unsp code, but no obvious startup code / vectors, so it's probably booting from another device / bootstrapped
|
||||
// these contain the same game selection as the games in unk6502_st2xxx.cpp but on updated hardware
|
||||
|
||||
// These use SPI ROMs and unSP2.0 instructions, so will be GeneralPlus branded parts, not SunPlus
|
||||
// possibly the framebuffer based video ones rather than the ones with tile layers
|
||||
|
||||
/*
|
||||
|
||||
for pcp8728 long jumps are done indirect via a call to RAM
|
||||
|
||||
990c 20ec r4 = 20ec
|
||||
d9dd [1d] = r4
|
||||
990c 0007 r4 = 0007
|
||||
d9de [1e] = r4
|
||||
fe80 28f7 goto 0028f7
|
||||
|
||||
this suggests the ROM gets copied to RAM at 0x20000, as all offsets need to be adjusted by that (or the device can see SPI directly at 0x20000)
|
||||
this is logical for unSP2.0 based devices as the CS area typically starts at 0x20000 with everything below that being internal space for internal RAM/ROM/peripherals
|
||||
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
|
||||
#include "screen.h"
|
||||
#include "emupal.h"
|
||||
#include "speaker.h"
|
||||
#include "cpu/unsp/unsp.h"
|
||||
|
||||
|
||||
class pcp8718_state : public driver_device
|
||||
{
|
||||
public:
|
||||
pcp8718_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_mainram(*this, "mainram"),
|
||||
m_palette(*this, "palette"),
|
||||
m_screen(*this, "screen")
|
||||
{ }
|
||||
|
||||
void pcp8718(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<unsp_20_device> m_maincpu;
|
||||
required_shared_ptr<uint16_t> m_mainram;
|
||||
|
||||
required_device<palette_device> m_palette;
|
||||
required_device<screen_device> m_screen;
|
||||
|
||||
void map(address_map &map);
|
||||
|
||||
uint16_t simulate_28f7_r();
|
||||
};
|
||||
|
||||
uint32_t pcp8718_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void pcp8718_state::machine_start()
|
||||
{
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START( pcp8718 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
void pcp8718_state::map(address_map &map)
|
||||
{
|
||||
// there are calls to 01xxx and 02xxx regions
|
||||
// (RAM populated by internal ROM?, TODO: check to make sure code copied there isn't from SPI ROM like the GPL16250 bootstrap
|
||||
// does from NAND, it doesn't seem to have a header in the same format at least)
|
||||
map(0x000000, 0x006fff).ram().share("mainram");
|
||||
|
||||
// registers at 7xxx are similar to GPL16250, but not identical? (different video system?)
|
||||
|
||||
// there are calls to 0x0f000 (internal ROM?)
|
||||
map(0x008000, 0x00ffff).rom().region("maincpu", 0x00000);
|
||||
|
||||
// seems to have same memory config registers etc. as GPL16250 so CS Space starts at 0x020000 and the 'bank' is likely at 0x200000 too
|
||||
map(0x020000, 0x3fffff).rom().region("spi", 0x00000);
|
||||
}
|
||||
|
||||
uint16_t pcp8718_state::simulate_28f7_r()
|
||||
{
|
||||
// jumps to 28f7 act as a long jump to the address stored in 1d/1e
|
||||
// (or possibly a data copy + execute??)
|
||||
|
||||
if (!machine().side_effects_disabled())
|
||||
{
|
||||
uint16_t pc = m_maincpu->state_int(UNSP_PC);
|
||||
uint16_t sr = m_maincpu->state_int(UNSP_SR);
|
||||
|
||||
int realpc = (pc | (sr << 16)) & 0x003fffff;
|
||||
if (realpc == 0x28f7)
|
||||
{
|
||||
address_space& mem = m_maincpu->space(AS_PROGRAM);
|
||||
int newpc = mem.read_word(0x001d);
|
||||
int newds = mem.read_word(0x001e);
|
||||
|
||||
sr &= 0xfff0;
|
||||
sr |= (newds & 0x003f);
|
||||
|
||||
m_maincpu->set_state_int(UNSP_PC, newpc);
|
||||
m_maincpu->set_state_int(UNSP_SR, sr);
|
||||
}
|
||||
}
|
||||
return m_mainram[0x28f7];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void pcp8718_state::machine_reset()
|
||||
{
|
||||
// this looks like it might actually be part of the IRQ handler (increase counter at 00 at the very start) rather than where we should end up after startup
|
||||
// it also looks like (from the pc = 2xxx opcodes) that maybe this code should be being executed in RAM as those don't give correct offsets in the data segment.
|
||||
m_maincpu->set_state_int(UNSP_PC, 0x0042);
|
||||
m_maincpu->set_state_int(UNSP_SR, 0x0002);
|
||||
|
||||
uint16_t* ROM = (uint16_t*)memregion("maincpu")->base();
|
||||
ROM[0x7000] = 0x9a90; // retf from internal ROM call to 0xf000 (unknown purpose)
|
||||
|
||||
// there doesn't appear to be any code to set the SP, so it must be done by the internal ROM
|
||||
m_maincpu->set_state_int(UNSP_SP, 0x5fff);
|
||||
|
||||
address_space& mem = m_maincpu->space(AS_PROGRAM);
|
||||
mem.write_word(0x2a46, 0x9a90); // retf from RAM call (unknown purpose)
|
||||
|
||||
mem.write_word(0x28f7, 0xf165); // goto to RAM, for long jump / call (simulated), could also be 'copy code at this address into RAM to execute'
|
||||
|
||||
m_maincpu->space(AS_PROGRAM).install_read_handler(0x28f7, 0x28f7, read16smo_delegate(*this, FUNC(pcp8718_state::simulate_28f7_r)));
|
||||
|
||||
}
|
||||
|
||||
void pcp8718_state::pcp8718(machine_config &config)
|
||||
{
|
||||
|
||||
UNSP_20(config, m_maincpu, 20000000); // unknown CPU, unsp20 based
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &pcp8718_state::map);
|
||||
|
||||
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(pcp8718_state::screen_update));
|
||||
m_screen->set_palette(m_palette);
|
||||
|
||||
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 0x200);
|
||||
}
|
||||
|
||||
ROM_START( pcp8718 )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "internal.rom", 0x000000, 0x10000, NO_DUMP ) // exact size unknown
|
||||
|
||||
ROM_REGION16_BE( 0x800000, "spi", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "8718_en25f32.bin", 0x000000, 0x400000, CRC(cc138db4) SHA1(379af3d94ae840f52c06416d6cf32e25923af5ae) ) // dump needs verifying, dumper mentioned it was possibly bad (unit failed in process)
|
||||
ROM_END
|
||||
|
||||
ROM_START( pcp8728 )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "internal.rom", 0x000000, 0x10000, NO_DUMP ) // exact size unknown
|
||||
|
||||
ROM_REGION16_BE( 0x800000, "spi", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "pcp 8728 788 in 1.bin", 0x000000, 0x400000, CRC(60115f21) SHA1(e15c39f11e442a76fae3823b6d510178f6166926) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( unkunsp )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "internal.rom", 0x000000, 0x10000, NO_DUMP ) // exact size unknown
|
||||
|
||||
ROM_REGION16_BE( 0x800000, "spi", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "fm25q16a.bin", 0x000000, 0x200000, CRC(aeb472ac) SHA1(500c24b725f6d3308ef8cbdf4259f5be556c7c92) )
|
||||
ROM_END
|
||||
|
||||
|
||||
|
||||
|
||||
CONS( 200?, pcp8718, 0, 0, pcp8718, pcp8718, pcp8718_state, empty_init, "PCP", "PCP 8718 - 788 in 1", MACHINE_IS_SKELETON ) // "HD 360 degrees rocker palm eyecare console"
|
||||
CONS( 200?, pcp8728, 0, 0, pcp8718, pcp8718, pcp8718_state, empty_init, "PCP", "PCP 8728 - 788 in 1", MACHINE_IS_SKELETON )
|
||||
CONS( 200?, unkunsp, 0, 0, pcp8718, pcp8718, pcp8718_state, empty_init, "<unknown>", "unknown unSP based handheld", MACHINE_IS_SKELETON )
|
@ -120,6 +120,8 @@ public:
|
||||
void vt_external_space_map_1mbyte(address_map& map);
|
||||
void vt_external_space_map_512kbyte(address_map& map);
|
||||
|
||||
void init_protpp();
|
||||
|
||||
protected:
|
||||
required_device<nes_vt_soc_device> m_soc;
|
||||
|
||||
@ -135,6 +137,7 @@ public:
|
||||
{ }
|
||||
|
||||
void nes_vt_vh2009(machine_config& config);
|
||||
void nes_vt_vh2009_1mb(machine_config& config);
|
||||
void nes_vt_vh2009_4mb(machine_config& config);
|
||||
void nes_vt_vh2009_8mb(machine_config& config);
|
||||
|
||||
@ -1298,6 +1301,12 @@ void nes_vt_swap_op_d5_d6_state::nes_vt_vh2009(machine_config &config)
|
||||
//m_soc->set_default_palette_mode(PAL_MODE_NEW_VG); // gives better title screens, but worse ingame, must be able to switch
|
||||
}
|
||||
|
||||
void nes_vt_swap_op_d5_d6_state::nes_vt_vh2009_1mb(machine_config& config)
|
||||
{
|
||||
nes_vt_vh2009(config);
|
||||
m_soc->set_addrmap(AS_PROGRAM, &nes_vt_swap_op_d5_d6_state::vt_external_space_map_1mbyte);
|
||||
}
|
||||
|
||||
void nes_vt_swap_op_d5_d6_state::nes_vt_vh2009_4mb(machine_config& config)
|
||||
{
|
||||
nes_vt_vh2009(config);
|
||||
@ -1835,6 +1844,7 @@ ROM_END
|
||||
|
||||
|
||||
|
||||
|
||||
ROM_START( dgun2573 ) // this one lacked a DreamGear logo but was otherwise physically identical, is it a clone product or did DreamGear drop the logo in favor of just using the 'My Arcade' brand?
|
||||
ROM_REGION( 0x2000000, "mainrom", 0 )
|
||||
ROM_LOAD( "myarcadegamerportable_s29gl256p10tfi01_0001227e.bin", 0x00000, 0x2000000, CRC(8f8c8da7) SHA1(76a18458922e39abe1982f05f184babb5e65acf2) )
|
||||
@ -1905,6 +1915,12 @@ ROM_START( techni4 )
|
||||
ROM_LOAD( "technigame.bin", 0x00000, 0x200000, CRC(3c96b1b1) SHA1(1acc81b26e740327bd6d9faa5a96ab027a48dd77) )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( protpp )
|
||||
ROM_REGION( 0x100000, "mainrom", 0 )
|
||||
ROM_LOAD( "vpingpong_s29al008d70tfi02_0001225b.bin", 0x00000, 0x100000, CRC(8cf46272) SHA1(298a6341d26712ec1f282e7514e995a7af5ac012) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( unkra200 ) // "Winbond 25Q64FVSIG 1324" SPI ROM
|
||||
ROM_REGION( 0x800000, "mainrom", 0 )
|
||||
ROM_LOAD( "retro_machine_rom", 0x00000, 0x800000, CRC(0e824aa7) SHA1(957e98868559ecc22b3fa42c76692417b76bf132) )
|
||||
@ -1972,6 +1988,26 @@ void nes_vt_cy_lexibook_state::init_lxcmcypp()
|
||||
}
|
||||
}
|
||||
|
||||
void nes_vt_state::init_protpp()
|
||||
{
|
||||
// this gets the tiles correct
|
||||
u8 *src = memregion("mainrom")->base();
|
||||
int len = memregion("mainrom")->bytes();
|
||||
|
||||
std::vector<u8> buffer(len);
|
||||
{
|
||||
for (int i = 0; i < len; i++)
|
||||
{
|
||||
buffer[i] = bitswap<8>(src[i],3,1,2,0,7,5,6,4);
|
||||
}
|
||||
|
||||
std::copy(buffer.begin(), buffer.end(), &src[0]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// earlier version of vdogdemo
|
||||
CONS( 200?, vdogdeme, 0, 0, nes_vt_1mb, nes_vt, nes_vt_state, empty_init, "VRT", "V-Dog (prototype, earlier)", MACHINE_NOT_WORKING )
|
||||
|
||||
@ -2104,6 +2140,8 @@ CONS( 200?, silv35, 0, 0, nes_vt_vh2009_4mb, nes_vt, nes_vt_swap_op_
|
||||
// die is marked as VH2009, as above, but no scrambled opcodes here
|
||||
CONS( 201?, techni4, 0, 0, nes_vt_pal_2mb, nes_vt, nes_vt_state, empty_init, "Technigame", "Technigame Super 4-in-1 Sports (PAL)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
|
||||
// seems to use PCM for all sound, some garbage at bottom of screen, needs correct inputs (seems to respond to start, and any direction input for 'hit' - check if they're power related)
|
||||
CONS( 200?, protpp, 0, 0, nes_vt_vh2009_1mb, nes_vt, nes_vt_swap_op_d5_d6_state, init_protpp, "Protocol", "Virtual Ping Pong (Protocol)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
|
||||
// same encryption as above, but seems like newer hardware (or the above aren't using most of the features)
|
||||
CONS( 200?, lpgm240, 0, 0, nes_vt_vh2009_8mb, nes_vt, nes_vt_swap_op_d5_d6_state, empty_init, "<unknown>", "Let's Play! Game Machine 240 in 1", MACHINE_NOT_WORKING ) // mini 'retro-arcade' style cabinet
|
||||
|
@ -1655,7 +1655,6 @@ ROM_END
|
||||
ROM_START( ablkickb )
|
||||
ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASE00 )
|
||||
ROM_LOAD16_WORD_SWAP( "ablkickboxing.bin", 0x000000, 0x800000, CRC(61394c45) SHA1(291d28a39edcb32a8f5d776a5e5c05e6fd0abece) )
|
||||
ROM_LOAD16_WORD_SWAP( "fm25q16a.bin", 0x800000, 0x200000, CRC(aeb472ac) SHA1(500c24b725f6d3308ef8cbdf4259f5be556c7c92) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( lxspidaj )
|
||||
|
@ -1,9 +1,13 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:David Haywood
|
||||
|
||||
// unknown 6502 based handhelds, possibly ST2205U architecture
|
||||
|
||||
// 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
|
||||
|
||||
// these games were ported to unSP hardware at some point, see generaplus_gpl_unknown.cpp
|
||||
|
||||
// BIOS calls are made very frequently to the undumped firmware.
|
||||
// The most common call ($6058 in bbl380, $6062 in ragc153 & dphh8630) seems to involve downloading a snippet of code from Flash and executing it from RAM.
|
||||
// A variant of this call ($60d2 in bbl380, $60e3 in ragc153 & dphh8630) is invoked with jsr.
|
||||
@ -127,6 +131,12 @@ ROM_START( dphh8630 )
|
||||
ROM_LOAD( "bg25q16.bin", 0x000000, 0x200000, CRC(277850d5) SHA1(740087842e1e63bf99b4ca9c1b2053361f267269) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( dgun2953 )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "dgun2953_st2205u.bin", 0x000000, 0x004000, NO_DUMP ) // internal OTPROM BIOS
|
||||
ROM_LOAD( "dg160_25x32v_ef3016.bin", 0x000000, 0x400000, CRC(2e993bac) SHA1(4b310e326a47df1980aeef38aa9a59018d7fe76f) )
|
||||
ROM_END
|
||||
|
||||
|
||||
|
||||
void bbl380_state::init_ragc153()
|
||||
@ -142,4 +152,6 @@ void bbl380_state::init_ragc153()
|
||||
|
||||
CONS( 200?, bbl380, 0, 0, bbl380, bbl380, bbl380_state, empty_init, "BaoBaoLong", "BBL380 - 180 in 1", MACHINE_IS_SKELETON )
|
||||
CONS( 200?, ragc153, 0, 0, bbl380, bbl380, bbl380_state, init_ragc153, "Orb", "Retro Arcade Game Controller 153-in-1", MACHINE_IS_SKELETON )
|
||||
CONS( 200?, dphh8630, 0, 0, bbl380, bbl380, bbl380_state, init_ragc153, "<unknown>", "Digital Pocket Hand Held System Model: 8630 - 230-in-1", MACHINE_IS_SKELETON )
|
||||
CONS( 200?, dphh8630, 0, 0, bbl380, bbl380, bbl380_state, init_ragc153, "PCP", "PCP 8630 - 230-in-1 - Digital Pocket Hand Held System", MACHINE_IS_SKELETON ) // PCP isn't mentioned on packaging
|
||||
CONS( 200?, dgun2953, 0, 0, bbl380, bbl380, bbl380_state, init_ragc153, "dreamGEAR", "My Arcade Gamer Mini 160-in-1 (DGUN-2953)", MACHINE_IS_SKELETON )
|
||||
|
@ -1,72 +0,0 @@
|
||||
// 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 )
|
@ -3302,11 +3302,6 @@ mechattj // A8002 'MA' (c) 1989
|
||||
mechattu // A8002 'MA' (c) 1989
|
||||
mechattu1 // A8002 'MA' (c) 1989
|
||||
|
||||
@source:bbl380.cpp
|
||||
bbl380
|
||||
ragc153
|
||||
dphh8630
|
||||
|
||||
@source:bcs3.cpp
|
||||
bcs3 //
|
||||
bcs3a //
|
||||
@ -14777,6 +14772,11 @@ suprpokr // (c) 1986 Grayhound Electronics
|
||||
suprpokra // (c) 1986 Grayhound Electronics
|
||||
suprpokrb // (c) 1986 Grayhound Electronics
|
||||
|
||||
@source:generalplus_gpl_unknown.cpp
|
||||
pcp8718
|
||||
pcp8728
|
||||
unkunsp
|
||||
|
||||
@source:generalplus_gpl16250_mobigo.cpp
|
||||
mobigo
|
||||
mobigos
|
||||
@ -32149,6 +32149,7 @@ majgnc
|
||||
sudopptv
|
||||
zudugo
|
||||
ablping
|
||||
protpp
|
||||
vgpocket
|
||||
vgpmini
|
||||
sy889
|
||||
@ -40773,12 +40774,15 @@ uts20 //
|
||||
@source:unixpc.cpp
|
||||
3b1 // 3B1 "Unix PC"
|
||||
|
||||
@source:unk6502_st2xxx.cpp
|
||||
bbl380
|
||||
ragc153
|
||||
dphh8630
|
||||
dgun2953
|
||||
|
||||
@source:unkhorse.cpp
|
||||
unkhorse //
|
||||
|
||||
@source:unkmandd.cpp
|
||||
unkmandd
|
||||
|
||||
@source:unkpoker.cpp
|
||||
unkpoker //
|
||||
|
||||
|
@ -107,7 +107,6 @@ basic52.cpp
|
||||
basssta.cpp
|
||||
bbc.cpp
|
||||
bbcbc.cpp
|
||||
bbl380.cpp
|
||||
bcs3.cpp
|
||||
bebox.cpp
|
||||
bert.cpp
|
||||
@ -330,6 +329,7 @@ gamemachine.cpp
|
||||
gamepock.cpp
|
||||
gb.cpp
|
||||
gba.cpp
|
||||
generalplus_gpl_unknown.cpp
|
||||
generalplus_gpl16250.cpp
|
||||
generalplus_gpl16250_mobigo.cpp
|
||||
generalplus_gpl16250_nand.cpp
|
||||
@ -1037,7 +1037,7 @@ unior.cpp
|
||||
unistar.cpp
|
||||
univac.cpp
|
||||
unixpc.cpp
|
||||
unkmandd.cpp
|
||||
unk6502_st2xxx.cpp
|
||||
ut88.cpp
|
||||
uzebox.cpp
|
||||
v100.cpp
|
||||
|
Loading…
Reference in New Issue
Block a user