mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
microvsn: make connect4(8021) the clone set since it's older revision (nw)
This commit is contained in:
parent
768c686633
commit
ebaac99491
@ -6,7 +6,8 @@ license:CC0
|
||||
|
||||
<!--
|
||||
|
||||
All known games are dumped, see below for list (chronological order)
|
||||
All known games are dumped, see below for list in chronological order.
|
||||
But, 1st revisions of Block Buster and Bowling (I8021 MCU) are not yet dumped.
|
||||
One more game "Barrage" was announced but not released.
|
||||
|
||||
4952 - Block Buster
|
||||
@ -20,11 +21,12 @@ One more game "Barrage" was announced but not released.
|
||||
4064 - Sea Duel
|
||||
4176 - Alien Raiders (aka Space Blitz or Blitz in Europe)
|
||||
4177 - Cosmic Hunter
|
||||
4241 - Super Block Buster
|
||||
4241 - Super Blockbuster
|
||||
|
||||
The "clock" feature is used to indicate MCU clock frequency
|
||||
The "pla" feature is for TMS1100 output PLA type
|
||||
The "paddle" feature is used to indicate whether there is paddle circuitry on the PCB
|
||||
The "overlay" feature indicates screen/keypad overlay
|
||||
-->
|
||||
|
||||
<softwarelist name="microvision" description="Milton Bradley MicroVision cartridges">
|
||||
@ -39,6 +41,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- RC = 100pf/23.2K -->
|
||||
<feature name="pla" value="1" />
|
||||
<feature name="paddle" value="1" />
|
||||
<feature name="overlay" value="10" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="m34009-n1" size="0x800" crc="b1632712" sha1="515040a3bf6386590c025e12a9512c98efdd7e1e"/>
|
||||
</dataarea>
|
||||
@ -55,6 +58,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- RC = 100pf/23.2K -->
|
||||
<feature name="pla" value="0" />
|
||||
<feature name="paddle" value="1" />
|
||||
<feature name="overlay" value="8" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="mp3479-n1nll_4063" size="0x800" crc="40e3327a" sha1="c1b52a081c7fe6a51c5cfe41a4d446f1f8cfe24e"/>
|
||||
</dataarea>
|
||||
@ -71,6 +75,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- RC = 100pf/23.2K -->
|
||||
<feature name="pla" value="0" />
|
||||
<feature name="paddle" value="1" />
|
||||
<feature name="overlay" value="1" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU, die label 1100B, MP3450A -->
|
||||
<rom name="mp3450a" size="0x800" crc="fd18ea6d" sha1="30203278d7f2b0817e59bdf7e451be2d64a90f5a"/>
|
||||
</dataarea>
|
||||
@ -87,6 +92,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- RC = 100pf/23.2K -->
|
||||
<feature name="pla" value="1" />
|
||||
<feature name="paddle" value="0" />
|
||||
<feature name="overlay" value="3" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU, die label 1100E, MP3475 -->
|
||||
<rom name="mp3475nll_4972" size="0x800" crc="460ac30e" sha1="93ffb75b82d1f48f451e0e1158d5a8d1cd465fe5"/>
|
||||
</dataarea>
|
||||
@ -94,21 +100,6 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
</software>
|
||||
|
||||
<software name="connect4">
|
||||
<description>Connect Four (8021 version)</description>
|
||||
<year>1979</year>
|
||||
<publisher>Milton Bradley</publisher>
|
||||
<info name="pcb" value="4971-REV-C" />
|
||||
<info name="serial" value="4971" />
|
||||
<part name="cart" interface="microvision_cart">
|
||||
<feature name="clock" value="2000000" /> <!-- LC -->
|
||||
<feature name="paddle" value="1" />
|
||||
<dataarea name="rom" size="0x400"> <!-- I8021 MCU -->
|
||||
<rom name="4971" size="0x400" crc="bdd8660b" sha1="971f9117dc809f7b9796134208b47ea34990ae71"/>
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="connect4t" cloneof="connect4">
|
||||
<description>Connect Four (TMS1100 version)</description>
|
||||
<year>1979</year>
|
||||
<publisher>Milton Bradley</publisher>
|
||||
@ -118,12 +109,29 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- correct? -->
|
||||
<feature name="pla" value="1" />
|
||||
<feature name="paddle" value="1" />
|
||||
<feature name="overlay" value="2" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="mp3481" size="0x800" crc="6a4cf60b" sha1="e93d848784205ab49234ad26718e04d267b776ed"/>
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="connect4o" cloneof="connect4">
|
||||
<description>Connect Four (8021 version)</description>
|
||||
<year>1979</year>
|
||||
<publisher>Milton Bradley</publisher>
|
||||
<info name="pcb" value="4971-REV-C" />
|
||||
<info name="serial" value="4971" />
|
||||
<part name="cart" interface="microvision_cart">
|
||||
<feature name="clock" value="2000000" /> <!-- LC circuit -->
|
||||
<feature name="paddle" value="1" />
|
||||
<feature name="overlay" value="2" />
|
||||
<dataarea name="rom" size="0x400"> <!-- I8021 MCU -->
|
||||
<rom name="4971" size="0x400" crc="bdd8660b" sha1="971f9117dc809f7b9796134208b47ea34990ae71"/>
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="cosmichu">
|
||||
<description>Cosmic hunter</description>
|
||||
<year>1981</year>
|
||||
@ -134,6 +142,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- RC = 100pf/23.2K -->
|
||||
<feature name="pla" value="1" />
|
||||
<feature name="paddle" value="0" />
|
||||
<feature name="overlay" value="11" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="m34017-n1" size="0x800" crc="d8ba1377" sha1="a8dabd296aefc46849db2b7d2d8e0de7c77b5b38"/>
|
||||
</dataarea>
|
||||
@ -150,6 +159,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="550000" /> <!-- RC = 100pf/21.0K -->
|
||||
<feature name="pla" value="0" />
|
||||
<feature name="paddle" value="0" />
|
||||
<feature name="overlay" value="7" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="mp3457nll_4976" size="0x800" crc="d5dc1f7d" sha1="9e53bd7e9b718ced3bffbdd50cf9ea1547183ea3"/>
|
||||
</dataarea>
|
||||
@ -166,6 +176,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="550000" /> <!-- RC = 100pf/21.0K -->
|
||||
<feature name="pla" value="0" />
|
||||
<feature name="paddle" value="0" />
|
||||
<feature name="overlay" value="4" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="mp3454" size="0x800" crc="c7768d04" sha1="e477d49fc835649164cff5ed158ee31dcf244efc"/>
|
||||
</dataarea>
|
||||
@ -182,6 +193,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="550000" /> <!-- RC = 100pf/21.0K -->
|
||||
<feature name="pla" value="0" />
|
||||
<feature name="paddle" value="1" />
|
||||
<feature name="overlay" value="5" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU, die label 1100E, MP3455 -->
|
||||
<rom name="mp3455nll_4974" size="0x800" crc="906544ea" sha1="7ba8460369e1bb0708b0ef076342774059fd03d2"/>
|
||||
</dataarea>
|
||||
@ -198,6 +210,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="300000" /> <!-- RC = 100pf/39.4K -->
|
||||
<feature name="pla" value="1" />
|
||||
<feature name="paddle" value="0" />
|
||||
<feature name="overlay" value="9" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="mp3496-n1_4064" size="0x800" crc="77a8f71b" sha1="1f95ecf3b1ec6a17db92e1ae903be269aa0b47d8"/>
|
||||
</dataarea>
|
||||
@ -205,7 +218,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
</software>
|
||||
|
||||
<software name="sprblock">
|
||||
<description>Super Block Buster</description>
|
||||
<description>Super Blockbuster</description>
|
||||
<year>1982</year>
|
||||
<publisher>Milton Bradley</publisher>
|
||||
<info name="pcb" value="7924952D02" />
|
||||
@ -214,6 +227,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- RC = 100pf/23.2K -->
|
||||
<feature name="pla" value="1" />
|
||||
<feature name="paddle" value="1" />
|
||||
<feature name="overlay" value="12" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU -->
|
||||
<rom name="m34047-n2ll_4241" size="0x800" crc="796660e3" sha1="1b758369849cc7dea3918774244f747895607377"/>
|
||||
</dataarea>
|
||||
@ -230,6 +244,7 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<feature name="clock" value="500000" /> <!-- RC = 100pf/23.2K -->
|
||||
<feature name="pla" value="1" />
|
||||
<feature name="paddle" value="0" />
|
||||
<feature name="overlay" value="6" />
|
||||
<dataarea name="rom" size="0x800"> <!-- TMS1100 MCU, die label 1100E, MP3474 -->
|
||||
<rom name="mp3474nll_4975" size="0x800" crc="4500c1d9" sha1="d49522dbe265e71b86488b5533d01bc9050811c9"/>
|
||||
</dataarea>
|
||||
@ -244,7 +259,6 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<year>2014</year>
|
||||
<publisher>Paul Robson</publisher>
|
||||
<part name="cart" interface="microvision_cart">
|
||||
<feature name="clock" value="500000" />
|
||||
<dataarea name="rom" size="0x800">
|
||||
<rom name="bomber.bin" size="0x800" crc="badbd0f8" sha1="3c31c24b58b1d6ac1c7313b690ec796cc5010cb7"/>
|
||||
</dataarea>
|
||||
@ -256,7 +270,6 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<year>2013</year>
|
||||
<publisher>Paul Robson</publisher>
|
||||
<part name="cart" interface="microvision_cart">
|
||||
<feature name="clock" value="500000" />
|
||||
<dataarea name="rom" size="0x800">
|
||||
<rom name="demo.bin" size="0x800" crc="54f1b288" sha1="9fcd930dff5f09979d3ed1278a928330b7000068"/>
|
||||
</dataarea>
|
||||
@ -268,7 +281,6 @@ The "paddle" feature is used to indicate whether there is paddle circuitry on th
|
||||
<year>2014</year>
|
||||
<publisher>Paul Robson</publisher>
|
||||
<part name="cart" interface="microvision_cart">
|
||||
<feature name="clock" value="500000" />
|
||||
<dataarea name="rom" size="0x800">
|
||||
<rom name="invaders.bin" size="0x800" crc="d520ff6e" sha1="c979d7004fc205ee050045f13e2d6f2c31e2083e"/>
|
||||
</dataarea>
|
||||
|
@ -7,11 +7,11 @@ Milton Bradley MicroVision, handheld game console
|
||||
|
||||
Hardware notes:
|
||||
- SCUS0488(Hughes HLCD0488) LCD, 16*16 screen
|
||||
- piezo, 12 buttons under membrane + analog dial
|
||||
- piezo, 12 buttons under membrane + analog paddle(MB calls it the Control Knob)
|
||||
- no CPU on console, it is on the cartridge
|
||||
|
||||
12 games were released, all of them have a TMS1100 MCU, with the exception
|
||||
of Connect Four which has a TMS1100 version and I8021 version.
|
||||
12 games were released, all of them have a TMS1100 MCU. The first couple of
|
||||
games had an I8021 MCU at first, but Milton Bradley switched to TMS1100.
|
||||
|
||||
Since the microcontrollers were on the cartridges it was possible to have
|
||||
different clocks on different games.
|
||||
@ -107,8 +107,9 @@ private:
|
||||
// generic variables
|
||||
void update_lcd();
|
||||
void lcd_write(uint8_t control, uint8_t data);
|
||||
int m_pla;
|
||||
bool m_paddle;
|
||||
u8 m_pla_auto;
|
||||
u8 m_overlay_auto;
|
||||
bool m_paddle_auto;
|
||||
|
||||
uint8_t m_lcd_latch[8];
|
||||
uint8_t m_lcd_holding_latch[8];
|
||||
@ -152,7 +153,6 @@ void microvision_state::machine_start()
|
||||
save_item(NAME(m_lcd_latch_index));
|
||||
save_item(NAME(m_lcd));
|
||||
save_item(NAME(m_lcd_control_old));
|
||||
save_item(NAME(m_pla));
|
||||
save_item(NAME(m_lcd_holding_latch));
|
||||
}
|
||||
|
||||
@ -507,21 +507,19 @@ DEVICE_IMAGE_LOAD_MEMBER(microvision_state::cart_load)
|
||||
|
||||
// set default settings
|
||||
u32 clock = (size == 0x400) ? 2000000 : 500000;
|
||||
m_pla = 0;
|
||||
m_paddle = false;
|
||||
m_pla_auto = 0;
|
||||
m_overlay_auto = 0;
|
||||
m_paddle_auto = false;
|
||||
|
||||
if (image.loaded_through_softlist())
|
||||
{
|
||||
// MCU clock
|
||||
u32 sclock = strtoul(image.get_feature("clock"), nullptr, 0);
|
||||
if (sclock != 0)
|
||||
clock = sclock;
|
||||
|
||||
// output PLA type (TMS1100 only)
|
||||
m_pla = strtoul(image.get_feature("pla"), nullptr, 0) ? 1 : 0;
|
||||
|
||||
// PCB has paddle circuit
|
||||
m_paddle = bool(strtoul(image.get_feature("paddle"), nullptr, 0) ? 1 : 0);
|
||||
m_overlay_auto = strtoul(image.get_feature("overlay"), nullptr, 0);
|
||||
m_pla_auto = strtoul(image.get_feature("pla"), nullptr, 0) ? 1 : 0;
|
||||
m_paddle_auto = bool(strtoul(image.get_feature("paddle"), nullptr, 0) ? 1 : 0);
|
||||
}
|
||||
|
||||
// detect MCU on file size
|
||||
@ -536,7 +534,7 @@ DEVICE_IMAGE_LOAD_MEMBER(microvision_state::cart_load)
|
||||
// TMS1100 MCU
|
||||
memcpy(memregion("tms1100_cpu")->base(), m_cart->get_rom_base(), size);
|
||||
m_tms1100->set_clock(clock);
|
||||
m_tms1100->set_output_pla(microvision_output_pla[m_pla]);
|
||||
m_tms1100->set_output_pla(microvision_output_pla[m_pla_auto]);
|
||||
}
|
||||
|
||||
return image_init_result::PASS;
|
||||
|
Loading…
Reference in New Issue
Block a user