Files
open-roms/src/kernal
chris 729a410079 Serial bus: UNLSN, UNTLK, and a missing device leave the bus released
UNLSN ended through iec_set_idle, which pulls CLK, so the C64 kept
holding CLK after UNLISTEN. UNTLK waited for the talker to pull CLK,
which no device does after UNTALK, timed out, and left CLK pulled with
carry set. And a serial routine that found no device also left CLK
pulled. A fastloader that waits for the drive to pull CLK after the
KERNAL's UNLSN (Turrican's) then went on too early.

The contract (Michael Steil, "Commodore Peripheral Bus: Part 4",
https://www.pagetable.com/?p=1135): at the end of a transmission the
sender releases CLK and the receivers release DATA, so the bus is idle
again, and the controller releases ATN after each command; after
UNTALK "the current talker will then release the bus" (Part 2,
https://www.pagetable.com/?p=1031). UNLSN and UNTLK now share their end
and release CLK and DATA; the device-not-present exit releases ATN, CLK,
and DATA. Commodore's ROMs leave the same lines in the same scenarios,
as differential tests in arnitech show.

Not reported upstream (https://github.com/MEGA65/open-roms).
2026-10-15 14:21:36 +02:00
..
2020-09-20 20:22:36 +02:00
2020-09-20 20:22:36 +02:00
2020-12-04 21:55:50 +01:00
2020-10-22 20:13:53 +02:00
2020-09-20 20:22:36 +02:00
2020-09-20 20:22:36 +02:00
2020-12-04 21:55:50 +01:00
2020-12-04 21:55:50 +01:00
2020-09-20 20:22:36 +02:00
2020-12-15 23:01:40 +01:00
2020-09-20 20:22:36 +02:00
2020-09-20 20:22:36 +02:00
2025-02-05 18:40:56 +01:00
2021-02-24 21:11:41 +01:00
2020-09-20 20:22:36 +02:00
2020-09-20 20:22:36 +02:00