summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/compuchess.cpp8
-rw-r--r--src/mame/drivers/saitek_cp2000.cpp13
2 files changed, 15 insertions, 6 deletions
diff --git a/src/mame/drivers/compuchess.cpp b/src/mame/drivers/compuchess.cpp
index 7ea300bc805..c83e642d0aa 100644
--- a/src/mame/drivers/compuchess.cpp
+++ b/src/mame/drivers/compuchess.cpp
@@ -368,18 +368,20 @@ void cmpchess_state::mk1(machine_config &config)
cmpchess(config);
/* basic machine hardware */
- m_maincpu->set_clock(2000000); // JS&A version measured 2.18MHz on average
- subdevice<f3853_device>("smi")->set_clock(2000000);
+ m_maincpu->set_clock(2200000); // JS&A version measured 2.18MHz on average
+ subdevice<f3853_device>("smi")->set_clock(2200000);
config.set_default_layout(layout_novag_mk1);
}
void cmpchess_state::cnc(machine_config &config)
{
- mk1(config);
+ cmpchess(config);
/* basic machine hardware */
m_maincpu->set_addrmap(AS_IO, &cmpchess_state::cnc_io);
+ m_maincpu->set_clock(2000000); // LC circuit, measured 2MHz
+ subdevice<f3853_device>("smi")->set_clock(2000000);
config.set_default_layout(layout_cncchess);
diff --git a/src/mame/drivers/saitek_cp2000.cpp b/src/mame/drivers/saitek_cp2000.cpp
index c8f31d5127d..8d63aaabcfc 100644
--- a/src/mame/drivers/saitek_cp2000.cpp
+++ b/src/mame/drivers/saitek_cp2000.cpp
@@ -6,10 +6,17 @@
SciSys Chess Partner 2000, also sold by Novag with the same name.
It's probably the last SciSys / Novag collaboration.
-- 3850PK CPU at ~2MHz, 3853PK memory interface
+Hardware notes:
+- 3850PK CPU at ~2.8MHz, 3853PK memory interface
- 4KB ROM, 256 bytes RAM(2*2111N)
- 4-digit 7seg panel, sensory chessboard
+3850 is officially rated 2MHz, and even the CP2000 manual says it runs at 2MHz,
+but tests show that the chesscomputer runs at a much higher speed. Three individual
+CP2000 were measured, by timing move calculation, and one recording to verify
+beeper pitch and display blinking rate. Real CP2000 CPU frequency is in the
+2.63MHz to 2.91MHz range.
+
Entering moves is not as friendly as newer sensory games. The player is expected
to press ENTER after their own move, but if they (accidentally) press it after
doing the computer's move, the computer takes your turn.
@@ -213,12 +220,12 @@ INPUT_PORTS_END
void cp2000_state::cp2000(machine_config &config)
{
/* basic machine hardware */
- F8(config, m_maincpu, 2000000);
+ F8(config, m_maincpu, 2800000); // see driver notes
m_maincpu->set_addrmap(AS_PROGRAM, &cp2000_state::main_map);
m_maincpu->set_addrmap(AS_IO, &cp2000_state::main_io);
m_maincpu->set_irq_acknowledge_callback("f3853", FUNC(f3853_device::int_acknowledge));
- f3853_device &f3853(F3853(config, "f3853", 2000000));
+ f3853_device &f3853(F3853(config, "f3853", 2800000));
f3853.int_req_callback().set_inputline("maincpu", F8_INPUT_LINE_INT_REQ);
SENSORBOARD(config, m_board).set_type(sensorboard_device::BUTTONS);