prschess: rename driver (nw)
This commit is contained in:
parent
03976ca6d9
commit
43cfc779a8
@ -3292,7 +3292,7 @@ files {
|
|||||||
MAME_DIR .. "src/mame/drivers/saitek_cp2000.cpp",
|
MAME_DIR .. "src/mame/drivers/saitek_cp2000.cpp",
|
||||||
MAME_DIR .. "src/mame/drivers/saitek_delta1.cpp",
|
MAME_DIR .. "src/mame/drivers/saitek_delta1.cpp",
|
||||||
MAME_DIR .. "src/mame/drivers/saitek_mark5.cpp",
|
MAME_DIR .. "src/mame/drivers/saitek_mark5.cpp",
|
||||||
MAME_DIR .. "src/mame/drivers/saitek_president.cpp",
|
MAME_DIR .. "src/mame/drivers/saitek_prschess.cpp",
|
||||||
MAME_DIR .. "src/mame/drivers/saitek_risc2500.cpp",
|
MAME_DIR .. "src/mame/drivers/saitek_risc2500.cpp",
|
||||||
MAME_DIR .. "src/mame/includes/saitek_stratos.h",
|
MAME_DIR .. "src/mame/includes/saitek_stratos.h",
|
||||||
MAME_DIR .. "src/mame/drivers/saitek_ssystem3.cpp",
|
MAME_DIR .. "src/mame/drivers/saitek_ssystem3.cpp",
|
||||||
|
@ -424,4 +424,4 @@ ROM_END
|
|||||||
CONS( 1977, cmpchess, 0, 0, cmpchess, cmpchess, cmpchess_state, empty_init, "Data Cash Systems / Staid", "CompuChess", MACHINE_NO_SOUND_HW | MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
CONS( 1977, cmpchess, 0, 0, cmpchess, cmpchess, cmpchess_state, empty_init, "Data Cash Systems / Staid", "CompuChess", MACHINE_NO_SOUND_HW | MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||||
CONS( 1978, ccmk1, cmpchess, 0, mk1, cmpchess, cmpchess_state, empty_init, "Novag", "Chess Champion: MK I", MACHINE_NO_SOUND_HW | MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
CONS( 1978, ccmk1, cmpchess, 0, mk1, cmpchess, cmpchess_state, empty_init, "Novag", "Chess Champion: MK I", MACHINE_NO_SOUND_HW | MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||||
|
|
||||||
CONS( 1979, cncchess, 0, 0, cnc, cncchess, cmpchess_state, empty_init, "Conic", "Computer Chess (Conic)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
CONS( 1979, cncchess, 0, 0, cnc, cncchess, cmpchess_state, empty_init, "Conic", "Computer Chess (Conic, model 7011)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
|
|
||||||
SciSys President Chess (model 231)
|
SciSys President Chess (model 231)
|
||||||
|
(not to be confused with Saitek Kasparov President)
|
||||||
|
|
||||||
The ROMs are inside a module, at the top-right. No known upgrades were released.
|
The ROMs are inside a module, at the top-right. No known upgrades were released.
|
||||||
Apparently the chessboard was not that reliable. The manual even says to flip the
|
Apparently the chessboard was not that reliable. The manual even says to flip the
|
||||||
@ -31,15 +32,15 @@ TODO:
|
|||||||
#include "speaker.h"
|
#include "speaker.h"
|
||||||
|
|
||||||
// internal artwork
|
// internal artwork
|
||||||
#include "saitek_president.lh" // clickable
|
#include "saitek_prschess.lh" // clickable
|
||||||
|
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
class president_state : public driver_device
|
class prschess_state : public driver_device
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
president_state(const machine_config &mconfig, device_type type, const char *tag) :
|
prschess_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||||
driver_device(mconfig, type, tag),
|
driver_device(mconfig, type, tag),
|
||||||
m_maincpu(*this, "maincpu"),
|
m_maincpu(*this, "maincpu"),
|
||||||
m_board(*this, "board"),
|
m_board(*this, "board"),
|
||||||
@ -75,7 +76,7 @@ private:
|
|||||||
u8 m_led_data[2] = { 0, 0 };
|
u8 m_led_data[2] = { 0, 0 };
|
||||||
};
|
};
|
||||||
|
|
||||||
void president_state::machine_start()
|
void prschess_state::machine_start()
|
||||||
{
|
{
|
||||||
save_item(NAME(m_inp_mux));
|
save_item(NAME(m_inp_mux));
|
||||||
save_item(NAME(m_led_data));
|
save_item(NAME(m_led_data));
|
||||||
@ -87,20 +88,20 @@ void president_state::machine_start()
|
|||||||
I/O
|
I/O
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
void president_state::update_display()
|
void prschess_state::update_display()
|
||||||
{
|
{
|
||||||
u16 led_data = m_led_data[1] << 8 | m_led_data[0];
|
u16 led_data = m_led_data[1] << 8 | m_led_data[0];
|
||||||
led_data = bitswap<16>(led_data, 15,14,5,4,3,2,1,0,7,6,13,12,11,10,9,8);
|
led_data = bitswap<16>(led_data, 15,14,5,4,3,2,1,0,7,6,13,12,11,10,9,8);
|
||||||
m_display->matrix(1 << m_inp_mux, led_data);
|
m_display->matrix(1 << m_inp_mux, led_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(president_state::leds_w)
|
WRITE8_MEMBER(prschess_state::leds_w)
|
||||||
{
|
{
|
||||||
m_led_data[offset >> 8] = ~data;
|
m_led_data[offset >> 8] = ~data;
|
||||||
update_display();
|
update_display();
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(president_state::control_w)
|
WRITE8_MEMBER(prschess_state::control_w)
|
||||||
{
|
{
|
||||||
// d0-d3: input mux, led select
|
// d0-d3: input mux, led select
|
||||||
m_inp_mux = data & 0xf;
|
m_inp_mux = data & 0xf;
|
||||||
@ -112,7 +113,7 @@ WRITE8_MEMBER(president_state::control_w)
|
|||||||
// other: ?
|
// other: ?
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(president_state::input_r)
|
READ8_MEMBER(prschess_state::input_r)
|
||||||
{
|
{
|
||||||
u8 data = 0;
|
u8 data = 0;
|
||||||
|
|
||||||
@ -133,12 +134,12 @@ READ8_MEMBER(president_state::input_r)
|
|||||||
Address Maps
|
Address Maps
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
void president_state::main_map(address_map &map)
|
void prschess_state::main_map(address_map &map)
|
||||||
{
|
{
|
||||||
map(0x0000, 0x07ff).ram();
|
map(0x0000, 0x07ff).ram();
|
||||||
map(0x4000, 0x4000).select(0x0100).w(FUNC(president_state::leds_w));
|
map(0x4000, 0x4000).select(0x0100).w(FUNC(prschess_state::leds_w));
|
||||||
map(0x4200, 0x4200).w(FUNC(president_state::control_w));
|
map(0x4200, 0x4200).w(FUNC(prschess_state::control_w));
|
||||||
map(0x4300, 0x4300).r(FUNC(president_state::input_r));
|
map(0x4300, 0x4300).r(FUNC(prschess_state::input_r));
|
||||||
map(0xc000, 0xffff).rom();
|
map(0xc000, 0xffff).rom();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -184,12 +185,12 @@ INPUT_PORTS_END
|
|||||||
Machine Configs
|
Machine Configs
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
void president_state::prschess(machine_config &config)
|
void prschess_state::prschess(machine_config &config)
|
||||||
{
|
{
|
||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
M6502(config, m_maincpu, 2000000);
|
M6502(config, m_maincpu, 2000000);
|
||||||
m_maincpu->set_addrmap(AS_PROGRAM, &president_state::main_map);
|
m_maincpu->set_addrmap(AS_PROGRAM, &prschess_state::main_map);
|
||||||
m_maincpu->set_periodic_int(FUNC(president_state::nmi_line_pulse), attotime::from_hz(100)); // guessed
|
m_maincpu->set_periodic_int(FUNC(prschess_state::nmi_line_pulse), attotime::from_hz(100)); // guessed
|
||||||
|
|
||||||
SENSORBOARD(config, m_board).set_type(sensorboard_device::MAGNETS);
|
SENSORBOARD(config, m_board).set_type(sensorboard_device::MAGNETS);
|
||||||
m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess));
|
m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess));
|
||||||
@ -197,7 +198,7 @@ void president_state::prschess(machine_config &config)
|
|||||||
|
|
||||||
/* video hardware */
|
/* video hardware */
|
||||||
PWM_DISPLAY(config, m_display).set_size(8+1, 16);
|
PWM_DISPLAY(config, m_display).set_size(8+1, 16);
|
||||||
config.set_default_layout(layout_saitek_president);
|
config.set_default_layout(layout_saitek_prschess);
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
SPEAKER(config, "speaker").front_center();
|
SPEAKER(config, "speaker").front_center();
|
||||||
@ -225,5 +226,5 @@ ROM_END
|
|||||||
Drivers
|
Drivers
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
|
// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
|
||||||
CONS( 1982, prschess, 0, 0, prschess, prschess, president_state, empty_init, "SciSys", "President Chess", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
CONS( 1982, prschess, 0, 0, prschess, prschess, prschess_state, empty_init, "SciSys", "President Chess", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
@ -35027,7 +35027,7 @@ ccdelta1 //
|
|||||||
ccmk5
|
ccmk5
|
||||||
ccmk6
|
ccmk6
|
||||||
|
|
||||||
@source:saitek_president.cpp
|
@source:saitek_prschess.cpp
|
||||||
prschess
|
prschess
|
||||||
|
|
||||||
@source:saitek_risc2500.cpp
|
@source:saitek_risc2500.cpp
|
||||||
|
@ -777,7 +777,7 @@ saitek_corona.cpp
|
|||||||
saitek_cp2000.cpp
|
saitek_cp2000.cpp
|
||||||
saitek_delta1.cpp
|
saitek_delta1.cpp
|
||||||
saitek_mark5.cpp
|
saitek_mark5.cpp
|
||||||
saitek_president.cpp
|
saitek_prschess.cpp
|
||||||
saitek_risc2500.cpp
|
saitek_risc2500.cpp
|
||||||
saitek_ssystem3.cpp
|
saitek_ssystem3.cpp
|
||||||
saitek_stratos.cpp
|
saitek_stratos.cpp
|
||||||
|
Loading…
Reference in New Issue
Block a user