Merge pull request #6562 from DavidHaywood/160420_2

new NOT WORKING software list entries
This commit is contained in:
ajrhacker 2020-04-17 12:01:00 -04:00 committed by GitHub
commit af21e47ae2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 143 additions and 0 deletions

View File

@ -0,0 +1,20 @@
<?xml version="1.0"?>
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
<!--
license:CC0
-->
<softwarelist name="leapfrog_didj_cart" description="LeapFrog Didj Cartridges">
<!-- NAND ROMs, dumps not yet verified as good, although they do contain a filesystem -->
<software name="nickandi" supported="no">
<description>Nicktoon Android Invasion (US, 500-13290-B)</description>
<year>200?</year>
<publisher>LeapFrog</publisher>
<part name="cart" interface="leapfrog_didj_cart">
<dataarea name="rom" size="0x4200000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="500-13290-B - Nicktoons Android Invasion (US).bin" size="0x4200000" crc="1bdd1865" sha1="a500858c6e701617c5f6e1d0b23b058956a834ee" />
</dataarea>
</part>
</software>
</softwarelist>

View File

@ -3971,6 +3971,7 @@ files {
MAME_DIR .. "src/mame/drivers/bbl380.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",
}
createMESSProjects(_target, _subtarget, "ultimachine")

View File

@ -0,0 +1,118 @@
// license:BSD-3-Clause
// copyright-holders:David Haywood
/******************************************************************************
https://elinux.org/Pollux
"The Pollux is a System on a Chip (SoC) that was manufactured by MagicEyes,
whose intellectual property is now owned by Core Logic. Originally designed
for LeapFrog as the LF1000, the 533MHz ARM926EJ core VR3520F has now made
its way into several products running WinCE and Linux."
(there are also links to datasheets etc.)
used by
Leapfrog Didj (as LF1000)
GP2X Wiz (as VR3520F)
GP2X Caanoo (as VR3520F)
+ more?
*******************************************************************************/
#include "emu.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#include "cpu/arm7/arm7.h"
#include "softlist.h"
#include "speaker.h"
#include "screen.h"
class magiceyes_vr3520f_game_state : public driver_device
{
public:
magiceyes_vr3520f_game_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
, m_maincpu(*this, "arm9")
, m_cart(*this, "cartslot")
{ }
void leapfrog_didj(machine_config &config);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(cart_load);
void didj_arm9_map(address_map &map);
required_device<arm9_cpu_device> m_maincpu;
optional_device<generic_slot_device> m_cart;
};
void magiceyes_vr3520f_game_state::didj_arm9_map(address_map &map)
{
}
void magiceyes_vr3520f_game_state::machine_start()
{
}
void magiceyes_vr3520f_game_state::machine_reset()
{
}
DEVICE_IMAGE_LOAD_MEMBER(magiceyes_vr3520f_game_state::cart_load)
{
uint32_t size = m_cart->common_get_size("rom");
m_cart->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
return image_init_result::PASS;
}
static INPUT_PORTS_START( leapfrog_didj )
INPUT_PORTS_END
uint32_t magiceyes_vr3520f_game_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{
return 0;
}
void magiceyes_vr3520f_game_state::leapfrog_didj(machine_config &config)
{
ARM9(config, m_maincpu, 533000000); // 533 MHz ARM926TEJ (clocked at @ 393 MHz for the Didj?)
m_maincpu->set_addrmap(AS_PROGRAM, &magiceyes_vr3520f_game_state::didj_arm9_map);
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(640, 480);
screen.set_visarea(0, 640-1, 0, 480-1);
screen.set_screen_update(FUNC(magiceyes_vr3520f_game_state::screen_update));
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "leapfrog_didj_cart");
m_cart->set_width(GENERIC_ROM16_WIDTH);
m_cart->set_device_load(FUNC(magiceyes_vr3520f_game_state::cart_load));
m_cart->set_must_be_loaded(true);
SOFTWARE_LIST(config, "cart_list").set_original("leapfrog_didj_cart");
}
ROM_START( didj )
ROM_REGION32_BE( 0x200000, "bios", 0 ) // external BIOS, undumped
ROM_LOAD16_WORD_SWAP( "didjbios.bin", 0x000000, 0x200000, NO_DUMP )
ROM_END
CONS( 2008, didj, 0, 0, leapfrog_didj, leapfrog_didj, magiceyes_vr3520f_game_state, empty_init, "LeapFrog", "Didj", MACHINE_IS_SKELETON )

View File

@ -19671,6 +19671,9 @@ quingo // (c) 1999 Impera
belslots // (c) 1999 Impera
bigdeal0 // (c) 2001 Impera
@source:magiceyes_pollux_vr3520f.cpp
didj // (c) 2008 Leapfrog
@source:magicfly.cpp
7mezzo // 198? Unknown
bchance // 198? Unknown

View File

@ -489,6 +489,7 @@ m79152pc.cpp
mac.cpp
mac128.cpp
macpci.cpp
magiceyes_pollux_vr3520f.cpp
magnum.cpp
mattelchess.cpp
mbc200.cpp