diff options
author | hap <happppp@users.noreply.github.com> | 2017-09-05 17:39:30 +0200 |
---|---|---|
committer | hap <happppp@users.noreply.github.com> | 2017-09-05 17:39:49 +0200 |
commit | 72f0490bf1b50a30b8b4617665cff7cac3da831a (patch) | |
tree | de95adadaca7f6ec728c5e4e2db28054aace7e9b | |
parent | a0ffbe0762d84d60f318a28d5e2dc9250803da78 (diff) |
rzone: correct output_finder, add notes (nw)
-rw-r--r-- | src/mame/drivers/rzone.cpp | 26 | ||||
-rw-r--r-- | src/mame/layout/rzone.lay | 4 |
2 files changed, 22 insertions, 8 deletions
diff --git a/src/mame/drivers/rzone.cpp b/src/mame/drivers/rzone.cpp index caee1bdfe63..b9b86c5eb28 100644 --- a/src/mame/drivers/rzone.cpp +++ b/src/mame/drivers/rzone.cpp @@ -7,9 +7,23 @@ Tiger R-Zone driver This is a backwards console, the heart of the machine is the cartridge. + The console houses the controller, speaker, power, backlight, and a + polarizer filter for the screen. The cartridge has the MCU, optional + sound ROM, and the LCD screen in a translucent window. + + Console family: + + 1995: R-Zone HeadGear: Wearable headset, controller is separate, + red-on-black screen is reflected in front of the right eye. + 1996: R-Zone SuperScreen: Handheld console, inverted filter(aka black + LCD segments), optional background sheet as with standalone handhelds. + 1997: R-Zone X.P.G - Xtreme Pocket Game: Handheld version of HeadGear. + 1997: R-Zone DataZone: PDA with a built-in SuperScreen. TODO: - - x + - support for SuperScreen. SVG colors will need to be inverted, or maybe + with artwork or HLSL? + - add DataZone, will get its own driver ***************************************************************************/ @@ -27,18 +41,18 @@ class rzone_state : public hh_sm510_state public: rzone_state(const machine_config &mconfig, device_type type, const char *tag) : hh_sm510_state(mconfig, type, tag), - m_led_out(*this, "led%u", 0U), + m_led_out(*this, "led"), m_led_off(*this, "led_off") { } - output_finder<1> m_led_out; + output_finder<> m_led_out; required_device<timer_device> m_led_off; int m_led_pin; int m_sctrl; int m_sclock; - TIMER_DEVICE_CALLBACK_MEMBER(led_off_callback) { m_led_out[0] = m_led_pin ? 1 : 0; } + TIMER_DEVICE_CALLBACK_MEMBER(led_off_callback) { m_led_out = m_led_pin ? 1 : 0; } DECLARE_WRITE_LINE_MEMBER(led_w); DECLARE_WRITE_LINE_MEMBER(audio_w); DECLARE_WRITE_LINE_MEMBER(sctrl_w); @@ -87,7 +101,7 @@ WRITE_LINE_MEMBER(rzone_state::led_w) { // LED: enable backlight if (state) - m_led_out[0] = 1; + m_led_out = 1; // delay led off to prevent flickering if (!state && m_led_pin) @@ -128,7 +142,7 @@ READ_LINE_MEMBER(rzone_state::sdata_r) } -// cartridge type 1 +// cartridge type 1: simple SM510 WRITE8_MEMBER(rzone_state::t1_write_r) { diff --git a/src/mame/layout/rzone.lay b/src/mame/layout/rzone.lay index fc6c801753f..52645328e9d 100644 --- a/src/mame/layout/rzone.lay +++ b/src/mame/layout/rzone.lay @@ -5,7 +5,7 @@ <element name="static_red"><rect><color red="1.0" green="0.2" blue="0.23" /></rect></element> - <element name="led" defstate="0"> + <element name="dark" defstate="0"> <rect state="0"><color red="0" green="0" blue="0" /></rect> </element> @@ -15,7 +15,7 @@ <view name="Internal Layout"> <screen index="0"><bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" /></screen> <overlay element="static_red"><bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" /></overlay> - <bezel name="led0" element="led"><bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" /></bezel> + <bezel name="led" element="dark"><bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" /></bezel> </view> </mamelayout> |