x68k: added keyboard LEDs to layout display. Now you can watch the 'dancing keyboard' when running Cotton.

This commit is contained in:
mahlemiut 2016-11-22 13:44:02 +13:00
parent a0d48005d5
commit d8d7bf88a1
2 changed files with 85 additions and 8 deletions

View File

@ -38,8 +38,43 @@
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<element name="kana">
<text string="Kana">
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<element name="romaji">
<text string="Romaji">
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<element name="code">
<text string="Code">
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<element name="caps">
<text string="Caps">
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<element name="insert">
<text string="Insert">
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<element name="hiragana">
<text string="Hiragana">
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<element name="fullsize">
<text string="Fullsize">
<color red="1.0" green="1.0" blue="1.0" />
</text>
</element>
<view name="Disk Drive LEDs">
<view name="Disk Drive and Keyboard LEDs">
<bezel name="drv0text" element="drv0">
<bounds left="0" right="59" top="0" bottom="30" />
</bezel>
@ -91,6 +126,48 @@
<screen index="0">
<bounds x="61" y="0" width="1024" height="768" />
</screen>
<bezel name="kana_text" element="kana">
<bounds left="0" right="40" top="300" bottom="314" />
</bezel>
<bezel name="key_led_kana" element="access_led">
<bounds left="40" right="54" top="300" bottom="314" />
</bezel>
<bezel name="romaji_text" element="romaji">
<bounds left="0" right="40" top="330" bottom="344" />
</bezel>
<bezel name="key_led_romaji" element="access_led">
<bounds left="40" right="54" top="330" bottom="344" />
</bezel>
<bezel name="code_text" element="code">
<bounds left="0" right="40" top="360" bottom="374" />
</bezel>
<bezel name="key_led_code" element="access_led">
<bounds left="40" right="54" top="360" bottom="374" />
</bezel>
<bezel name="caps_text" element="caps">
<bounds left="0" right="40" top="390" bottom="404" />
</bezel>
<bezel name="key_led_caps" element="access_led">
<bounds left="40" right="54" top="390" bottom="404" />
</bezel>
<bezel name="insert_text" element="insert">
<bounds left="0" right="40" top="420" bottom="434" />
</bezel>
<bezel name="key_led_insert" element="access_led">
<bounds left="40" right="54" top="420" bottom="434" />
</bezel>
<bezel name="hiragana_text" element="hiragana">
<bounds left="0" right="40" top="450" bottom="464" />
</bezel>
<bezel name="key_led_hiragana" element="access_led">
<bounds left="40" right="54" top="450" bottom="464" />
</bezel>
<bezel name="fullsize_text" element="fullsize">
<bounds left="0" right="40" top="480" bottom="494" />
</bezel>
<bezel name="key_led_fullsize" element="access_led">
<bounds left="40" right="54" top="480" bottom="494" />
</bezel>
</view>
</mamelayout>

View File

@ -48,13 +48,13 @@ void x68k_keyboard_device::received_byte(uint8_t data)
if (data & 0x80) // LED status
{
machine().output().set_value("key_led_kana", (data & 0x01) ? 0 : 1);
machine().output().set_value("key_led_romaji", (data & 0x02) ? 0 : 1);
machine().output().set_value("key_led_code", (data & 0x04) ? 0 : 1);
machine().output().set_value("key_led_caps", (data & 0x08) ? 0 : 1);
machine().output().set_value("key_led_insert", (data & 0x10) ? 0 : 1);
machine().output().set_value("key_led_hiragana", (data & 0x20) ? 0 : 1);
machine().output().set_value("key_led_fullsize", (data & 0x40) ? 0 : 1);
machine().output().set_value("key_led_kana", data & 0x01);
machine().output().set_value("key_led_romaji", data & 0x02);
machine().output().set_value("key_led_code", data & 0x04);
machine().output().set_value("key_led_caps", data & 0x08);
machine().output().set_value("key_led_insert", data & 0x10);
machine().output().set_value("key_led_hiragana", data & 0x20);
machine().output().set_value("key_led_fullsize", data & 0x40);
logerror("KB: LED status set to %02x\n", data & 0x7f);
}