mirror of
https://github.com/holub/mame
synced 2025-07-05 18:08:04 +03:00
fidel*: added revesic inputs and notes, still need to do internal artwork
This commit is contained in:
parent
dcc93232db
commit
ae4611a068
@ -142,11 +142,16 @@ All three of the above are called "segment H".
|
|||||||
******************************************************************************
|
******************************************************************************
|
||||||
|
|
||||||
Reversi Sensory Challenger (RSC)
|
Reversi Sensory Challenger (RSC)
|
||||||
The 1st version was out in 1980, a program revision was released in 1981.
|
The 1st version came out in 1980, a program revision was released in 1981.
|
||||||
Another distinction is the board color: 1980 version is light brown, 1981 version is green.
|
Another distinction is the board color and layout, the 1981 version is green.
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
x
|
8*(8+1) buttons, 8*8+1 LEDs
|
||||||
|
1KB RAM(2*2114), 4KB ROM
|
||||||
|
MOS MPS 6502B CPU, frequency unknown
|
||||||
|
MOS MPS 6520 PIA, I/O is nearly same as CSC's PIA 1
|
||||||
|
PCB label 510-1035A01
|
||||||
|
|
||||||
|
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
|
|
||||||
@ -296,6 +301,7 @@ Z80 D6 to W: (model 6092, tied to VCC otherwise)
|
|||||||
// internal artwork
|
// internal artwork
|
||||||
#include "fidel_csc.lh" // clickable
|
#include "fidel_csc.lh" // clickable
|
||||||
#include "fidel_fev.lh" // clickable
|
#include "fidel_fev.lh" // clickable
|
||||||
|
#include "fidel_rsc_v2.lh" // clickable
|
||||||
#include "fidel_sc9.lh" // clickable
|
#include "fidel_sc9.lh" // clickable
|
||||||
#include "fidel_sc12.lh" // clickable
|
#include "fidel_sc12.lh" // clickable
|
||||||
|
|
||||||
@ -369,11 +375,11 @@ void fidel6502_state::csc_prepare_display()
|
|||||||
for (int i = 0; i < 4; i++)
|
for (int i = 0; i < 4; i++)
|
||||||
m_display_state[i] = (m_inp_mux >> i & 1) ? m_7seg_data : 0;
|
m_display_state[i] = (m_inp_mux >> i & 1) ? m_7seg_data : 0;
|
||||||
|
|
||||||
// 8*8 chessboard leds
|
// 8*8(+1) chessboard leds
|
||||||
for (int i = 0; i < 8; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
m_display_state[i+4] = (m_inp_mux >> i & 1) ? m_led_data : 0;
|
m_display_state[i+4] = (m_inp_mux >> i & 1) ? m_led_data : 0;
|
||||||
|
|
||||||
set_display_size(8, 4+8);
|
set_display_size(8, 4+9);
|
||||||
set_display_segmask(0xf, 0x7f);
|
set_display_segmask(0xf, 0x7f);
|
||||||
display_update();
|
display_update();
|
||||||
}
|
}
|
||||||
@ -879,6 +885,99 @@ static INPUT_PORTS_START( cscg )
|
|||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
|
|
||||||
|
static INPUT_PORTS_START( rsc )
|
||||||
|
PORT_START("IN.0")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square a1")
|
||||||
|
|
||||||
|
PORT_START("IN.1")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square b1")
|
||||||
|
|
||||||
|
PORT_START("IN.2")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square c1")
|
||||||
|
|
||||||
|
PORT_START("IN.3")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square d1")
|
||||||
|
|
||||||
|
PORT_START("IN.4")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square e1")
|
||||||
|
|
||||||
|
PORT_START("IN.5")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square f1")
|
||||||
|
|
||||||
|
PORT_START("IN.6")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square g1")
|
||||||
|
|
||||||
|
PORT_START("IN.7")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h8")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h7")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h6")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h5")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h4")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h3")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h2")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Square h1")
|
||||||
|
|
||||||
|
PORT_START("IN.8")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("ST")
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("RV")
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("DM")
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("CL")
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("LV")
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("PV")
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Speaker")
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_R) PORT_NAME("RE")
|
||||||
|
INPUT_PORTS_END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
Machine Drivers
|
Machine Drivers
|
||||||
@ -901,7 +1000,7 @@ static MACHINE_CONFIG_START( rsc, fidel6502_state )
|
|||||||
MCFG_PIA_CB2_HANDLER(WRITELINE(fidel6502_state, csc_pia1_cb2_w))
|
MCFG_PIA_CB2_HANDLER(WRITELINE(fidel6502_state, csc_pia1_cb2_w))
|
||||||
|
|
||||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", fidelz80base_state, display_decay_tick, attotime::from_msec(1))
|
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", fidelz80base_state, display_decay_tick, attotime::from_msec(1))
|
||||||
MCFG_DEFAULT_LAYOUT(layout_fidel_csc)
|
MCFG_DEFAULT_LAYOUT(layout_fidel_rsc_v2)
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||||
@ -1113,7 +1212,7 @@ ROM_END
|
|||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
/* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY, FULLNAME, FLAGS */
|
/* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY, FULLNAME, FLAGS */
|
||||||
CONS( 1981, reversic, 0, 0, rsc, csc, driver_device, 0, "Fidelity Electronics", "Reversi Sensory Challenger (green version)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
CONS( 1981, reversic, 0, 0, rsc, rsc, driver_device, 0, "Fidelity Electronics", "Reversi Sensory Challenger (1981 version)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||||
|
|
||||||
CONS( 1981, csc, 0, 0, csc, csc, driver_device, 0, "Fidelity Electronics", "Champion Sensory Chess Challenger (English)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
CONS( 1981, csc, 0, 0, csc, csc, driver_device, 0, "Fidelity Electronics", "Champion Sensory Chess Challenger (English)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||||
CONS( 1981, cscsp, csc, 0, csc, cscg, driver_device, 0, "Fidelity Electronics", "Champion Sensory Chess Challenger (Spanish)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
CONS( 1981, cscsp, csc, 0, csc, cscg, driver_device, 0, "Fidelity Electronics", "Champion Sensory Chess Challenger (Spanish)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||||
|
20
src/mame/layout/fidel_rsc_v2.lay
Normal file
20
src/mame/layout/fidel_rsc_v2.lay
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<mamelayout version="2">
|
||||||
|
|
||||||
|
<!-- define elements -->
|
||||||
|
|
||||||
|
<element name="led" defstate="0">
|
||||||
|
<disk state="0"><color red="0.2" green="0.04" blue="0.046" /></disk>
|
||||||
|
<disk state="1"><color red="1.0" green="0.2" blue="0.23" /></disk>
|
||||||
|
</element>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- build screen -->
|
||||||
|
|
||||||
|
<view name="Internal Layout">
|
||||||
|
<bounds left="0" right="100" top="0" bottom="100" />
|
||||||
|
|
||||||
|
<bezel name="0.0" element="led"><bounds x="1" y="1" width="1" height="1" /></bezel>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</mamelayout>
|
Loading…
Reference in New Issue
Block a user