Commit Graph

11 Commits

Author SHA1 Message Date
Joshua Bell
01175cf573 Prevent hang probing for The Cricket! in MAME on IIc/IIc+
In MAME, for the SSC in Slot 2, the STATUS flag never comes back with
ready-to-send, so the probe would hang. Introduce a timer, same as on
the receiving side, and timeout instead of hanging.

Similar to 14e72b7384
2023-10-22 17:08:34 -04:00
Joshua Bell
18a73004c4 The Cricket!: Fix SSC reset for Laser 128EX
The change in b182a53d made resetting/detecting The Cricket! fail on
my Laser 128EX, likely due to startup config of the SSC not being
the same as on an Apple //c. This should be a superset of the change,
but compat testing will be needed.
2023-10-14 19:40:09 -07:00
frankmilliron
b182a53dfa
The Cricket!: fix hang on Total Replay (#19)
* The Cricket!: fix hang on Total Replay

The Cricket reset command sends Total Replay into an endless loop when launched, presumably because of an interrupt situation (TR just does RTI on an interrupt). Toggling the COMMAND and CONTROL settings seems to allow TR to function properly, while also allowing the Cricket initialization code to silence any playing notes.

* The Cricket!: Reset Cricket before probing

Finds the Cricket every single time this way. Occasionally the driver would miss finding it due to it being in a wait state. Sending a reset first fixes that.

* The Cricket!: make sure registers are toggled for TR
2023-07-17 08:11:30 -07:00
frankmilliron
9401723f0d
The Cricket!: further refinements to 'SSC init' (#18)
//c technical reference includes a 'hardware reset' for three of the ACIA registers. Here we reset all three.
2023-07-16 13:30:04 -07:00
Joshua Bell
ec4a0eeb1e The Cricket!: Issue "Reset Cricket" sequence when detecting
This stops any active music playback, which is handy if you did a warm
boot in the middle of playback, and your The Cricket! is stuck playing
the same note constantly but you don't want to power-cycle the device
which will unset the RTC.

c/o @frankmilliron
2023-06-25 21:08:08 -07:00
Joshua Bell
caeb237321 The Cricket!: Reset SSC ACIA before probing/setting
... and don't bother saving/restoring registers during install,
as this will only follow a boot or OS restart.

Suggested by @frankmilliron

Also inhibit interrupts in the SET.XXX utilities for good measure.
2023-06-25 12:06:40 -07:00
frankmilliron
774889ec2e
Improve Cricket! detection on ROM4 //c (#17)
* Improve Cricket! detection on ROM4 //c

* Add PHP/PLP
2023-05-15 18:21:31 -07:00
Joshua Bell
5211dc6296 Add build options to suppress success and/or failure logging 2023-05-01 19:47:10 -07:00
Joshua Bell
d37691dead Jumbo clock driver: Include success logging 2023-01-31 20:01:05 -08:00
Joshua Bell
f2ea11fcde Add "jumbo" clock driver, an amalgamation of the others
This one driver pulls in the installers for each other clock driver,
and invokes each in turn:

* No-Slot Clock
* ROMX
* FujiNet
* DClock
* Cricket!

This requires adding `.ifndef JUMBO` guards in the other drivers for
when they pull in include files (symbols, macros, etc). The other
drivers are adjusted to return with carry clear on successful install,
failure otherwise.
2022-11-26 20:29:38 -08:00
Joshua Bell
8f658437ab Move clock driver sources into clocks/ subdir to tidy top level 2022-11-18 18:23:03 -08:00