fidelz80: improved CC10/VCC internal artwork

This commit is contained in:
hap 2016-01-15 17:36:58 +01:00
parent c4fbf0ed11
commit 92de34be04
5 changed files with 133 additions and 111 deletions

View File

@ -632,7 +632,6 @@ public:
UINT16 m_led_select; // 5 bit selects for 7 seg leds and for common other leds, bits are (7seg leds are 0 1 2 3, common other leds are C) 0bxx3210xc
UINT16 m_7seg_data; // data for seg leds
UINT16 m_led_data;
UINT8 m_digit_line_status[4]; // prevent overwrite of m_7seg_data
UINT16 read_inputs(int columns);
DECLARE_INPUT_CHANGED_MEMBER(reset_button);
@ -671,7 +670,6 @@ public:
DECLARE_READ8_MEMBER(vsc_pio_porta_r);
DECLARE_READ8_MEMBER(vsc_pio_portb_r);
DECLARE_WRITE8_MEMBER(vsc_pio_portb_w);
DECLARE_INPUT_CHANGED_MEMBER(fidelz80_trigger_reset);
// model 7014 and VBC
DECLARE_WRITE8_MEMBER(bridgec_speech_w);
@ -684,7 +682,6 @@ public:
DECLARE_WRITE8_MEMBER(mcu_command_w);
DECLARE_READ8_MEMBER(mcu_data_r);
DECLARE_READ8_MEMBER(mcu_status_r);
DECLARE_INPUT_CHANGED_MEMBER(bridgec_trigger_reset);
DECLARE_WRITE8_MEMBER(digit_w);
protected:
@ -707,7 +704,6 @@ void fidelz80_state::machine_start()
m_led_select = 0;
m_led_data = 0;
m_7seg_data = 0;
memset(m_digit_line_status, 0, sizeof(m_digit_line_status));
// register for savestates
save_item(NAME(m_display_maxy));
@ -723,7 +719,6 @@ void fidelz80_state::machine_start()
save_item(NAME(m_led_select));
save_item(NAME(m_led_data));
save_item(NAME(m_7seg_data));
save_item(NAME(m_digit_line_status));
}
void fidelz80_state::machine_reset()
@ -912,8 +907,8 @@ WRITE8_MEMBER(fidelz80_state::vcc_ppi_portc_w)
WRITE8_MEMBER(fidelz80_state::cc10_ppi_porta_w)
{
// d0-d6: digit segment data
m_7seg_data = data;
// d0-d6: digit segment data (same as VCC)
m_7seg_data = BITSWAP8(data,7,0,1,2,3,4,5,6) & 0x7f;
vcc_prepare_display();
// d7: beeper output
@ -970,7 +965,7 @@ WRITE8_MEMBER(fidelz80_state::vsc_ppi_portc_w)
/******************************************************************************
PIO Device, for VSC
Z80 PIO Device, for VSC
******************************************************************************/
READ8_MEMBER(fidelz80_state::vsc_pio_porta_r)
@ -1003,6 +998,35 @@ WRITE8_MEMBER(fidelz80_state::vsc_pio_portb_w)
}
/******************************************************************************
I8243 I/O Expander Device, for VBRC
******************************************************************************/
WRITE8_MEMBER(fidelz80_state::digit_w)
{
// if (m_digit_line_status[offset])
// return;
// m_digit_line_status[offset&3] = 1;
switch (offset)
{
case 0:
m_7seg_data = (m_7seg_data&(~0x000f)) | ((data<<0)&0x000f);
break;
case 1:
m_7seg_data = (m_7seg_data&(~0x00f0)) | ((data<<4)&0x00f0);
break;
case 2:
m_7seg_data = (m_7seg_data&(~0x0f00)) | ((data<<8)&0x0f00);
break;
case 3:
m_7seg_data = (m_7seg_data&(~0xf000)) | ((data<<12)&0xf000);
break;
}
}
/******************************************************************************
I8041 MCU, for VBRC
******************************************************************************/
@ -1055,7 +1079,7 @@ WRITE8_MEMBER(fidelz80_state::kp_matrix_w)
output().set_led_value(1, out_led);
}
memset(m_digit_line_status, 0, sizeof(m_digit_line_status));
// memset(m_digit_line_status, 0, sizeof(m_digit_line_status));
m_inp_mux = data;
}
@ -1087,34 +1111,6 @@ READ8_MEMBER(fidelz80_state::unknown2_r)
return machine().rand();
}
/******************************************************************************
I8243 expander
******************************************************************************/
WRITE8_MEMBER(fidelz80_state::digit_w)
{
if (m_digit_line_status[offset])
return;
m_digit_line_status[offset&3] = 1;
switch (offset)
{
case 0:
m_7seg_data = (m_7seg_data&(~0x000f)) | ((data<<0)&0x000f);
break;
case 1:
m_7seg_data = (m_7seg_data&(~0x00f0)) | ((data<<4)&0x00f0);
break;
case 2:
m_7seg_data = (m_7seg_data&(~0x0f00)) | ((data<<8)&0x0f00);
break;
case 3:
m_7seg_data = (m_7seg_data&(~0xf000)) | ((data<<12)&0xf000);
break;
}
}
/******************************************************************************
basic machine
******************************************************************************/

View File

@ -1,62 +1,69 @@
<?xml version="1.0"?>
<mamelayout version="2">
<!-- define elements -->
<element name="digit" defstate="0">
<led7seg>
<color red="0.75" green="0.0" blue="0.0" />
</led7seg>
</element>
<element name="led" defstate="0">
<disk state="1">
<color red="0.75" green="0.0" blue="0.0" />
</disk>
<disk state="0">
<color red="0.09375" green="0.0" blue="0.0" />
</disk>
</element>
<element name="check">
<text string="CHECK">
<color red="1.0" green="1.0" blue="1.0" /></text>
</element>
<element name="lose">
<text string="I LOSE">
<color red="1.0" green="1.0" blue="1.0" /></text>
</element>
<element name="background">
<rect>
<bounds left="0" top="0" right="1" bottom="1" />
<color red="0.0" green="0.0" blue="0.0" />
</rect>
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<view name="Default Layout">
<!-- Black background -->
<bezel element="background">
<bounds left="00" top="00" right="240" bottom="95" />
<element name="led" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.1" green="0.01" blue="0.015" /></disk>
</element>
<element name="txt_check">
<text string="CHECK"><color red="0.6" green="0.6" blue="0.6" /></text>
</element>
<element name="txt_lose">
<text string="I LOSE"><color red="0.6" green="0.6" blue="0.6" /></text>
</element>
<element name="txt_from">
<text string="FROM"><color red="0.6" green="0.6" blue="0.6" /></text>
</element>
<element name="txt_to">
<text string="TO"><color red="0.6" green="0.6" blue="0.6" /></text>
</element>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="0" right="47" top="0" bottom="25" />
<bezel element="txt_check">
<bounds x="1" y="1" width="20" height="3" />
</bezel>
<bezel element="txt_lose">
<bounds x="26" y="1" width="20" height="3" />
</bezel>
<bezel name="1.7" element="led">
<bounds x="2" y="1" width="3" height="3" />
</bezel>
<bezel name="0.7" element="led">
<bounds x="27" y="1" width="3" height="3" />
</bezel>
<bezel element="txt_from">
<bounds x="1" y="21" width="20" height="3" />
</bezel>
<bezel element="txt_to">
<bounds x="26" y="21" width="20" height="3" />
</bezel>
<bezel name="digit0" element="digit">
<bounds x="10" y="15" width="50" height="80" />
<bounds x="1" y="5" width="10" height="15" />
</bezel>
<bezel name="digit1" element="digit">
<bounds x="70" y="15" width="50" height="80" />
<bounds x="11" y="5" width="10" height="15" />
</bezel>
<bezel name="digit2" element="digit">
<bounds x="130" y="15" width="50" height="80" />
<bounds x="26" y="5" width="10" height="15" />
</bezel>
<bezel name="digit3" element="digit">
<bounds x="190" y="15" width="50" height="80" />
</bezel>
<bezel name="1.7" element="led">
<bounds x="10" y="00" width="10" height="10" />
</bezel>
<bezel name="0.7" element="led">
<bounds x="130" y="00" width="10" height="10" />
</bezel>
<bezel name="check_str" element="check">
<bounds x="20" y="00" width="40" height="10" />
</bezel>
<bezel name="lose_str" element="lose">
<bounds x="140" y="00" width="40" height="10" />
<bounds x="36" y="5" width="10" height="15" />
</bezel>
</view>
</mamelayout>

View File

@ -30,7 +30,7 @@
</rect>
</element>
<view name="Default Layout">
<view name="Internal Layout">
<!-- Black background -->
<bezel element="background">
<bounds left="00" top="00" right="430" bottom="90" />

View File

@ -1,48 +1,67 @@
<?xml version="1.0"?>
<mamelayout version="2">
<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
<element name="static_bg"><rect><color red="0.5" green="0.5" blue="0.5" /></rect></element>
<element name="digit" defstate="0">
<led7seg>
<color red="0.75" green="0.0" blue="0.0" />
</led7seg>
</element>
<element name="led" defstate="0">
<disk state="1">
<color red="0.75" green="0.0" blue="0.0" />
</disk>
<disk state="0">
<color red="0.09375" green="0.0" blue="0.0" />
</disk>
</element>
<element name="background">
<rect>
<bounds left="0" top="0" right="1" bottom="1" />
<color red="0.0" green="0.0" blue="0.0" />
</rect>
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<view name="Default Layout">
<!-- Black background -->
<bezel element="background">
<bounds left="00" top="00" right="250" bottom="80" />
<element name="led" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.1" green="0.01" blue="0.015" /></disk>
</element>
<element name="txt_from">
<rect><color red="0.5" green="0.5" blue="0.5" /></rect>
<text string="FROM"><color red="0.03" green="0.03" blue="0.03" /></text>
</element>
<element name="txt_to">
<rect><color red="0.5" green="0.5" blue="0.5" /></rect>
<text string="TO"><color red="0.03" green="0.03" blue="0.03" /></text>
</element>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="0" right="47" top="0" bottom="25" />
<bezel element="static_bg">
<bounds left="-1" right="48" top="-1" bottom="26" />
</bezel>
<bezel element="txt_from">
<bounds x="1" y="21" width="20" height="3" />
</bezel>
<bezel element="txt_to">
<bounds x="26" y="21" width="20" height="3" />
</bezel>
<bezel element="static_black">
<bounds left="-2" right="49" top="4" bottom="21" />
</bezel>
<bezel name="digit0" element="digit">
<bounds x="10" y="0" width="50" height="80" />
<bounds x="1" y="5" width="10" height="15" />
</bezel>
<bezel name="digit1" element="digit">
<bounds x="70" y="0" width="50" height="80" />
<bounds x="11" y="5" width="10" height="15" />
</bezel>
<bezel name="digit2" element="digit">
<bounds x="140" y="0" width="50" height="80" />
<bounds x="26" y="5" width="10" height="15" />
</bezel>
<bezel name="digit3" element="digit">
<bounds x="200" y="0" width="50" height="80" />
<bounds x="36" y="5" width="10" height="15" />
</bezel>
<bezel name="1.7" element="led">
<bounds x="130" y="10" width="10" height="10" />
<bounds x="23.25" y="6.5" width="1.5" height="1.5" />
</bezel>
<bezel name="0.7" element="led">
<bounds x="130" y="60" width="10" height="10" />
<bounds x="22.25" y="17" width="1.5" height="1.5" />
</bezel>
</view>
</mamelayout>

View File

@ -20,7 +20,7 @@
</rect>
</element>
<view name="Default Layout">
<view name="Internal Layout">
<!-- background -->
<bezel element="background">
<bounds left="00" top="00" right="82" bottom="90" />