Machine promoted to working

-----------
Chess Champion: Super System III [hap, Berger, MikeChess]
This commit is contained in:
hap 2019-08-24 02:35:25 +02:00
parent b5c757facc
commit 62de17f1ef
3 changed files with 170 additions and 16 deletions

View File

@ -50,9 +50,9 @@ TODO:
Should be doable to add, but 6522 device doesn't support live clock changes.
- LCD TC pin? connects to the display, source is a 50hz timer(from power supply),
probably to keep refreshing the LCD when inactive, there is no need to emulate it
- add chessboard lcd and printer unit
- dump/add chessboard lcd and printer unit
- dump/add 1980 program revision
- add memory unit
- internal artwork
******************************************************************************/
@ -69,7 +69,7 @@ TODO:
#include "speaker.h"
// internal artwork
//#include "saitek_ssystem3.lh" // clickable
#include "saitek_ssystem3.lh" // clickable
namespace {
@ -250,6 +250,12 @@ static INPUT_PORTS_START( ssystem3 )
PORT_CONFNAME( 0x01, 0x01, "Sound" )
PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
PORT_CONFSETTING( 0x01, DEF_STR( On ) )
PORT_CONFNAME( 0x02, 0x02, "Light" )
PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
PORT_CONFSETTING( 0x02, DEF_STR( On ) )
PORT_START("DUMMY")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_UNUSED)
INPUT_PORTS_END
@ -278,12 +284,12 @@ void ssystem3_state::ssystem3(machine_config &config)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_SVG));
screen.set_refresh_hz(60);
screen.set_size(1920, 729);
screen.set_size(1920/2, 729/2);
screen.set_visarea_full();
PWM_DISPLAY(config, m_display).set_size(1, 32+8+1);
m_display->set_bri_levels(0.25);
//config.set_default_layout(layout_saitek_ssystem3);
config.set_default_layout(layout_saitek_ssystem3);
/* sound hardware */
SPEAKER(config, "speaker").front_center();
@ -318,4 +324,4 @@ ROM_END
******************************************************************************/
// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
CONS( 1979, ssystem3, 0, 0, ssystem3, ssystem3, ssystem3_state, empty_init, "SciSys / Novag", "Chess Champion: Super System III", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
CONS( 1979, ssystem3, 0, 0, ssystem3, ssystem3, ssystem3_state, empty_init, "SciSys / Novag", "Chess Champion: Super System III", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )

View File

@ -124,11 +124,11 @@
</element>
<element name="text_l07"><text string="SOUND"><color red="0.65" green="0.65" blue="0.65" /></text></element>
<element name="text_pp"><text string="[P]"><color red="0.65" green="0.65" blue="0.65" /></text></element>
<element name="text_pn"><text string="[N]"><color red="0.65" green="0.65" blue="0.65" /></text></element>
<element name="text_pb"><text string="[B]"><color red="0.65" green="0.65" blue="0.65" /></text></element>
<element name="text_pr"><text string="[R]"><color red="0.65" green="0.65" blue="0.65" /></text></element>
<element name="text_pq"><text string="[Q]"><color red="0.65" green="0.65" blue="0.65" /></text></element>
<element name="text_pp"><image file="chess/wp.png"><color alpha="0.8" /></image></element>
<element name="text_pn"><image file="chess/wn.png"><color alpha="0.8" /></image></element>
<element name="text_pb"><image file="chess/wb.png"><color alpha="0.8" /></image></element>
<element name="text_pr"><image file="chess/wr.png"><color alpha="0.8" /></image></element>
<element name="text_pq"><image file="chess/wq.png"><color alpha="0.8" /></image></element>
<element name="text_l2a"><text string="BOARD"><color red="0.65" green="0.65" blue="0.65" /></text></element>
<element name="text_l2b"><text string="VERIFY"><color red="0.65" green="0.65" blue="0.65" /></text></element>
@ -204,11 +204,11 @@
<bezel element="hl" inputtag="IN.1" inputmask="0x40"><bounds x="36" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.1" inputmask="0x20"><bounds x="42" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="text_pp"><bounds x="0" y="18.1" width="4" height="1.5" /></bezel>
<bezel element="text_pn"><bounds x="6" y="18.1" width="4" height="1.5" /></bezel>
<bezel element="text_pb"><bounds x="12" y="18.1" width="4" height="1.5" /></bezel>
<bezel element="text_pr"><bounds x="24" y="18.1" width="4" height="1.5" /></bezel>
<bezel element="text_pq"><bounds x="42" y="18.1" width="4" height="1.5" /></bezel>
<bezel element="text_pp"><bounds x="1" y="17.9" width="2" height="2" /></bezel>
<bezel element="text_pn"><bounds x="7" y="17.9" width="2" height="2" /></bezel>
<bezel element="text_pb"><bounds x="13" y="17.9" width="2" height="2" /></bezel>
<bezel element="text_pr"><bounds x="25" y="17.9" width="2" height="2" /></bezel>
<bezel element="text_pq"><bounds x="43" y="17.9" width="2" height="2" /></bezel>
<repeat count="6">
<param name="x" start="5" increment="6" />

View File

@ -0,0 +1,148 @@
<?xml version="1.0"?>
<mamelayout version="2">
<!-- define elements -->
<element name="white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="brown"><rect><color red="0.4" green="0.2" blue="0.1" /></rect></element>
<element name="lcd_bg" defstate="1">
<rect state="1"><color red="0.58" green="0.59" blue="0.57" /></rect>
<rect state="0"><color red="0.40" green="0.42" blue="0.43" /></rect>
</element>
<element name="hl" defstate="0">
<text string=" "/>
<rect state="1"><color red="0" green="0" blue="0" /></rect>
</element>
<element name="nothing" defstate="0">
<text string=" "/>
</element>
<element name="text_n1">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="1" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n2">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="2" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n3">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="3" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n4">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="4" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n5">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="5" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n6">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="6" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n7">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="7" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n8">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="8" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n9">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="9" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_n0">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="0" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l1">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="A" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l2">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="B" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l3">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="C" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l4">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="D" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l5">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="E" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l6">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="F" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l7">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="G" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l8">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="H" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-2" right="48" top="2" bottom="32" />
<screen index="0"><bounds x="0" y="4" width="15.8" height="6" /></screen>
<overlay element="nothing" inputtag="DUMMY" inputmask="0x01"><bounds x="-1" y="3" width="18" height="8" /></overlay>
<overlay element="lcd_bg" inputtag="IN.4" inputmask="0x02" inputraw="1"><bounds x="-1" y="3" width="18" height="8" /></overlay>
<bezel element="brown"><bounds x="-2" y="12" width="52" height="6" /></bezel>
<repeat count="8">
<param name="x" start="0" increment="6" />
<bezel element="white"><bounds x="~x~" y="20" width="4" height="4" /></bezel>
</repeat>
<repeat count="8">
<param name="x" start="0.4" increment="6" />
<param name="i" start="1" increment="1" />
<bezel element="text_n~i~"><bounds x="~x~" y="20.1" width="1.5" height="2" /></bezel>
</repeat>
<repeat count="8">
<param name="x" start="2.1" increment="6" />
<param name="i" start="1" increment="1" />
<bezel element="text_l~i~"><bounds x="~x~" y="21.9" width="1.5" height="2" /></bezel>
</repeat>
<bezel element="white"><bounds x="0" y="26" width="4" height="4" /></bezel>
<bezel element="white"><bounds x="6" y="26" width="4" height="4" /></bezel>
<bezel element="white"><bounds x="18" y="26" width="10" height="4" /></bezel>
<bezel element="white"><bounds x="36" y="26" width="4" height="4" /></bezel>
<bezel element="white"><bounds x="42" y="26" width="4" height="4" /></bezel>
<bezel element="text_n0"><bounds x="0.4" y="26.1" width="1.5" height="2" /></bezel>
<bezel element="text_n9"><bounds x="42.4" y="26.1" width="1.5" height="2" /></bezel>
<bezel element="hl" inputtag="IN.2" inputmask="0x08"><bounds x="0" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.3" inputmask="0x08"><bounds x="6" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.3" inputmask="0x04"><bounds x="12" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.2" inputmask="0x04"><bounds x="18" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.1" inputmask="0x04"><bounds x="24" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.1" inputmask="0x02"><bounds x="30" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.2" inputmask="0x02"><bounds x="36" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.3" inputmask="0x02"><bounds x="42" y="20" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.0" inputmask="0x08"><bounds x="0" y="26" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.1" inputmask="0x08"><bounds x="6" y="26" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.0" inputmask="0x04"><bounds x="18" y="26" width="10" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.2" inputmask="0x01"><bounds x="36" y="26" width="4" height="4" /><color alpha="0.2" /></bezel>
<bezel element="hl" inputtag="IN.0" inputmask="0x02"><bounds x="42" y="26" width="4" height="4" /><color alpha="0.2" /></bezel>
</view>
</mamelayout>