summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author David Haywood <mamehaze@gmail.com>2018-12-13 03:31:54 +0000
committer Robert <Robbbert@users.noreply.github.com>2018-12-13 14:31:54 +1100
commit4baa80d5db0c7479e31d5830f9a8b4d9fb417202 (patch)
tree7a518e66ea15197bfd592fb54eb397467f0162f3
parent6f9d0129e0043d3ab180d34d0a2f9812fc965ebe (diff)
basic Monon Color skeleton + Software List [zhongtiao1] (#4390)
* basic monon skeleton + swl * c+p error (nw) * use skeleton flag (nw) * significantly improved metadata in Monon Color software list [zhongtiao1] * whitespace (nw) * whitespace (nw)
-rw-r--r--hash/monon_color.xml216
-rw-r--r--scripts/target/mame/mess.lua1
-rw-r--r--src/mame/drivers/monon_color.cpp121
-rw-r--r--src/mame/mame.lst3
4 files changed, 341 insertions, 0 deletions
diff --git a/hash/monon_color.xml b/hash/monon_color.xml
new file mode 100644
index 00000000000..485e8c649b2
--- /dev/null
+++ b/hash/monon_color.xml
@@ -0,0 +1,216 @@
+<?xml version="1.0"?>
+<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
+<softwarelist name="monon_color" description="M&amp;D Monon Color cartridges">
+
+ <!-- Known games list
+
+ English Translation Romanization Dumped? Released? Item # Type? Full name
+ Purcell: Ares Fighting Spirit Sài ěr hào: Zhànshén dòu hún Y Y NO. 101 RPG 赛尔号:战神斗魂
+ Locke Kingdom: Magic Array Luòkè wángguó-mófǎ zhèn Y Y NO. 102 PUZ/EDU 洛克王国-魔法阵
+ Mech Cyclone: Fighting Masters Jī jiǎ xuànfēng-gédòu dàshī Y Y NO. 103 FTG 机甲旋风-格斗大师
+ Zinba! : The lost relics Shén pò-shīluò de yíjī Y Y NO. 104 RPG 神魄-失落的遗迹
+ Purcell: Energy Battle Sài ěr hào-néngyuán dà zuòzhàn Y Y NO. 105 PUZ 赛尔号-能源大作战
+ Iron Man: Hero Strike Gāngtiě xiá-yīngxióng fǎnjí zhàn Y Y No. 106 ACT 钢铁侠-英雄反击战
+ Zombie Hunter Jiāngshī lièrén Y Y NO. 107 ACT 僵尸猎人
+ IELTS Adventure Yǎsī tǎ dà màoxiǎn N Y NO. 108 PUZ/EDU 雅思塔大冒险
+ Ultimate Brain Power Nǎolì liánlián kàn N Y NO. 109 PUZ/EDU 脑力连连看
+ Locke Kingdom: Big Adventure Luòkè wángguó-dà màoxiǎn Y Y NO. 201 ACT 洛克王国-大冒险
+ Locke Kingdom RPG: Ice Blue Luòkè wángguó-bīng zhī lán Y Y NO. 202 RPG 洛克王国-冰之蓝
+ Locke Kingdom RPG: Black Fire Luòkè wángguó-hēi zhī yán Y Y NO. 203 RPG 洛克王国-黑之炎
+ Locke Kingdom: Card Wars Luòkè wángguó-kǎ pái zhàn jì Y Y NO. 204 RPG 洛克王国-卡牌战纪
+ Armor Warrior Kǎijiǎ yǒngshì dàluàn dòu Y Y NO. 205 ACT 铠甲勇士大乱斗
+ Locke Kingdom: The King's Badge Luòkè wángguó-wángzhě huīzhāng N Y NO. 206 RPG 洛克王国-王者徽章
+ Laboratory Mathematica Olympiad Àoshù shíyàn shì N Y NO. 207 PUZ/EDU 奥数实验室
+ Logic Fight Luójí pīn yī pīn Y Y NO. 301 PUZ/EDU 逻辑拼一拼
+ Pleasant goat and big big wolf's comet battle Xǐyángyáng yǔ huītàiláng-juézhàn miē xīng N Y NO. 302 PUZ/EDU 喜羊羊与灰太狼-决战咩星
+ Dragon Ball: The Martial Arts Conference Lóngzhū-wǔdào dàhuì Y Y NO. 303 ACT 龙珠-武道大会
+ League of Legends: The Ultimate Fight Yīngxióng liánméng-zhōngjí gédòu Y Y NO. 304 FTG 英雄联盟-终极格斗
+ Ben 10: alien force .. N N? ACT BEN 10: ALIEN FORCE
+ DIGIMON .. N N? RPG DIGIMON
+ Jackie Chan fighting? (1) (unknown) N Y? NO. 308? FTG (unknown)
+
+
+ (1) (Note: One known to exist in the wild, was supposedly bought at a thrift store. Based around Jackie Chan fighting)
+-->
+
+ <software name="purcfs"> <!-- 101 - Purcell: Ares Fighting Spirit -->
+ <description>Sài ěr hào: Zhànshén dòu hún</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="赛尔号:战神斗魂"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="101.bin" size="0x0800000" crc="7eced0cf" sha1="3e34abbaf1259094099f1587302dfbd84ffb8384" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="lockmagi"> <!-- 102 - Locke Kingdom: Magic Array -->
+ <description>Luòkè wángguó-mófǎ zhèn</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="洛克王国-魔法阵"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="102.bin" size="0x0800000" crc="15ed170d" sha1="ce4832f57459acf01deae688c62d444cffaa271a" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="mechcycl"> <!-- 103 - Mech Cyclone: Fighting Masters -->
+ <description>Jī jiǎ xuànfēng-gédòu dàshī</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="机甲旋风-格斗大师"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="103.bin" size="0x0800000" crc="441d5f9d" sha1="2ec85c5225b7ed0291b13f5d3bc57a9ef0153b5e" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="zinba"> <!-- 104 - Zinba! : The lost relics -->
+ <description>Shén pò-shīluò de yíjī</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="神魄-失落的遗迹"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="104.bin" size="0x0800000" crc="e7fd791a" sha1="7572d11ce5fae30a01ebe1053d8632329249fba8" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="purceb"> <!-- 105 - Purcell: Energy Battle -->
+ <description>Sài ěr hào-néngyuán dà zuòzhàn</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="赛尔号-能源大作战"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="105.bin" size="0x0400000" crc="47b4a312" sha1="c4600ce39fd2301df3778afe896936d510cbbd5b" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="ironmnhs"> <!-- 106 - Iron Man: Hero Strike -->
+ <description>Gāngtiě xiá-yīngxióng fǎnjí zhàn</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="钢铁侠-英雄反击战"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="106.bin" size="0x0800000" crc="68517eea" sha1="e262f5ac691d8a3e30232a6b51d9428b73b9e8e2" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="zombhunt"> <!-- 107 - Zombie Hunter -->
+ <description>Jiāngshī lièrén</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="僵尸猎人"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="107.bin" size="0x1000000" crc="cd9d372d" sha1="71b09bf181a5565e7cca4281def59364b270767e" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="lockba"> <!-- 201 - Locke Kingdom: Big Adventure -->
+ <description>Luòkè wángguó-dà màoxiǎn</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="洛克王国-大冒险"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="201.bin" size="0x1000000" crc="cf52653e" sha1="96aa826821d20af3edfe0f8058e6158841b7bf08" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="lockice"> <!-- 202 - Locke Kingdom RPG: Ice Blue -->
+ <description>Luòkè wángguó-bīng zhī lán</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="冰之蓝"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="202.bin" size="0x1000000" crc="554af334" sha1="94c54a7ad4828e95074ec341eef9278b552f655e" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="lockfire"> <!-- 203 - Locke Kingdom RPG: Black Fire -->
+ <description>Luòkè wángguó-hēi zhī yán</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="洛克王国-黑之炎"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="203.bin" size="0x1000000" crc="8541d04e" sha1="5fa6edc852622f6c2cca07ec9c7f377bea020f9b" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="lockcard"> <!-- 204 - Locke Kingdom: Card Wars -->
+ <description>Luòkè wángguó-kǎ pái zhàn jì</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="卡牌战纪"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="204.bin" size="0x1000000" crc="0015d25c" sha1="50de7d969bead2df60e8ea4051f8518dd8989633" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="armorwr"> <!-- 205 - Armor Warrior -->
+ <description>Kǎijiǎ yǒngshì dàluàn dòu</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="铠甲勇士大乱斗"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="205.bin" size="0x1000000" crc="84d1224c" sha1="9c427031221dc69034275a359e87c0dda82ae295" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="logicft"> <!-- 301 - Logic Fight -->
+ <description>Luójí pīn yī pīn</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="逻辑拼一拼"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="301.bin" size="0x0400000" crc="e8f19fdc" sha1="330980c975e3fafea9b3dda1b010fdd469100919" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="drgnbma"> <!-- 303 - Dragon Ball: The Martial Arts Conference -->
+ <description>Lóngzhū-wǔdào dàhuì</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="龙珠-武道大会"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="303.bin" size="0x1000000" crc="d5bd966e" sha1="792b22444a329d08520591e80599835d77f38b3c" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="lolfight"> <!-- 304 - League of Legends: The Ultimate Fight -->
+ <description>Yīngxióng liánméng-zhōngjí gédòu</description>
+ <year>2011</year>
+ <publisher>M&amp;D</publisher>
+ <info name="alt_title" value="英雄联盟"/>
+ <part name="cart" interface="monon_color_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="304.bin" size="0x1000000" crc="e4833f82" sha1="877c28d188d19b882909b4b0934ce2f900d2ce30" offset="0" />
+ </dataarea>
+ </part>
+ </software>
+
+</softwarelist>
diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua
index e789ce7c779..05aa1008507 100644
--- a/scripts/target/mame/mess.lua
+++ b/scripts/target/mame/mess.lua
@@ -3813,6 +3813,7 @@ files {
MAME_DIR .. "src/mame/drivers/mod8.cpp",
MAME_DIR .. "src/mame/drivers/modellot.cpp",
MAME_DIR .. "src/mame/drivers/molecular.cpp",
+ MAME_DIR .. "src/mame/drivers/monon_color.cpp",
MAME_DIR .. "src/mame/drivers/ms0515.cpp",
MAME_DIR .. "src/mame/drivers/ms9540.cpp",
MAME_DIR .. "src/mame/drivers/mstation.cpp",
diff --git a/src/mame/drivers/monon_color.cpp b/src/mame/drivers/monon_color.cpp
new file mode 100644
index 00000000000..4e8b760fb09
--- /dev/null
+++ b/src/mame/drivers/monon_color.cpp
@@ -0,0 +1,121 @@
+// license:BSD-3-Clause
+// copyright-holders:David Haywood
+/***************************************************************************
+ Monon Color - Chinese handheld
+
+ see
+ https://gbatemp.net/threads/the-monon-color-a-new-video-game-console-from-china.467788/
+ https://twitter.com/Splatoon2weird/status/1072182093206052864
+
+ uses AX208 CPU (8051 @ 96Mhz with single cycle instructions + integrated video, jpeg decoder etc.)
+ https://docplayer.net/52724058-Ax208-product-specification.html
+
+***************************************************************************/
+
+#include "emu.h"
+#include "cpu/mcs51/mcs51.h"
+#include "emupal.h"
+#include "screen.h"
+#include "speaker.h"
+#include "bus/generic/slot.h"
+#include "bus/generic/carts.h"
+
+class monon_color_state : public driver_device
+{
+public:
+ monon_color_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag),
+ m_cart(*this, "cartslot"),
+ m_maincpu(*this, "maincpu"),
+ m_screen(*this, "screen"),
+ m_palette(*this, "palette")
+ { }
+
+ void monon_color(machine_config &config);
+protected:
+ // driver_device overrides
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
+ virtual void video_start() override;
+
+ // screen updates
+ uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+private:
+ required_device<generic_slot_device> m_cart;
+ required_device<cpu_device> m_maincpu;
+ required_device<screen_device> m_screen;
+ required_device<palette_device> m_palette;
+
+ DECLARE_DEVICE_IMAGE_LOAD_MEMBER(monon_color_cart);
+};
+
+void monon_color_state::machine_start()
+{
+}
+
+void monon_color_state::machine_reset()
+{
+}
+
+void monon_color_state::video_start()
+{
+}
+
+
+uint32_t monon_color_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
+{
+ return 0;
+}
+
+static INPUT_PORTS_START( monon_color )
+INPUT_PORTS_END
+
+
+MACHINE_CONFIG_START(monon_color_state::monon_color)
+
+ /* basic machine hardware */
+ MCFG_DEVICE_ADD("maincpu", I8051, 96000000) // AX208! (needs custom core)
+
+ /* video hardware */
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
+ MCFG_SCREEN_UPDATE_DRIVER(monon_color_state, screen_update)
+ MCFG_SCREEN_SIZE(32*8, 32*8)
+ MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
+ MCFG_PALETTE_ADD("palette", 256)
+
+ /* sound hardware */
+ SPEAKER(config, "mono").front_center();
+
+ MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "monon_color_cart")
+ MCFG_GENERIC_EXTENSIONS("bin")
+ MCFG_GENERIC_WIDTH(GENERIC_ROM8_WIDTH)
+ MCFG_GENERIC_LOAD(monon_color_state, monon_color_cart)
+ MCFG_GENERIC_MANDATORY
+
+ /* software lists */
+ MCFG_SOFTWARE_LIST_ADD("cart_list","monon_color")
+MACHINE_CONFIG_END
+
+DEVICE_IMAGE_LOAD_MEMBER( monon_color_state, monon_color_cart )
+{
+ uint32_t size = m_cart->common_get_size("rom");
+ std::vector<uint8_t> temp;
+ temp.resize(size);
+ m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
+ m_cart->common_load_rom(&temp[0], size, "rom");
+
+ memcpy(memregion("maincpu")->base(), &temp[0], size);
+
+ return image_init_result::PASS;
+}
+
+ROM_START( mononcol )
+ ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASE00 )
+ROM_END
+
+CONS( 2011, mononcol, 0, 0, monon_color, monon_color, monon_color_state, empty_init, "M&D", "Monon Color", MACHINE_IS_SKELETON )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index f4434d0ac32..626ed129098 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -21798,6 +21798,9 @@ momokoe // (c) 1986 Jaleco (English text)
monacogp // (c) 1980 Sega
monacogpa // (c) 1980 Sega
+@source:monon_color.cpp
+mononcol // (c) 2011 M&D
+
@source:monty.cpp
mmonty // Ritam
monty // Ritam