Skip to content

Commit cdc3cd7

Browse files
committed
Don't send command on EOI, wait for unlisten.
1 parent 34dcdf6 commit cdc3cd7

File tree

3 files changed

+4
-7
lines changed

3 files changed

+4
-7
lines changed

include/cbm_defines.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ typedef enum
161161

162162
#define TIMING_Ts 70 // BIT SET-UP TALKER 71us 20us 70us -
163163
#define TIMING_Ts0 40 // BIT SET-UP LISTENER PRE 57us 47us
164-
#define TIMING_Ts1 35 // BIT SET-UP LISTENER POST 18us 24us
164+
#define TIMING_Ts1 30 // BIT SET-UP LISTENER POST 18us 24us
165165
#define TIMING_Tv 20 // DATA VALID VIC20 76us 26us 20us 20us - (Tv and Tpr minimum must be 60μ s for external device to be a talker. )
166166
#define TIMING_Tv64 80 // DATA VALID C64
167167

lib/bus/iec/iec.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,11 +123,8 @@ void IRAM_ATTR systemBus::cbm_on_clk_isr_handler()
123123
break;
124124
}
125125
}
126-
else if (iec_curCommand) {
126+
else if (iec_curCommand)
127127
iec_curCommand->payload += val & 0xff;
128-
if (flags & EOI_RECVD)
129-
sendInput();
130-
}
131128

132129
done:
133130
gpio_intr_enable(PIN_IEC_CLK_IN);

lib/bus/iec/protocol/cpbstandardserial.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -284,12 +284,12 @@ bool CPBStandardSerial::sendByte(uint8_t data, bool eoi)
284284

285285
// Wait for EOI ACK
286286
// This will happen after appx 250us
287-
if ((abort = waitForSignals(PIN_IEC_DATA_IN, IEC_ASSERTED, PIN_IEC_ATN, IEC_ASSERTED, FOREVER))) {
287+
if ((abort = waitForSignals(PIN_IEC_DATA_IN, IEC_ASSERTED, PIN_IEC_ATN, IEC_ASSERTED, TIMEOUT_Tf))) {
288288
Debug_printv("EOI ack abort");
289289
}
290290

291291
if (!abort &&
292-
(abort = waitForSignals(PIN_IEC_DATA_IN, IEC_RELEASED, PIN_IEC_ATN, IEC_ASSERTED, FOREVER))) {
292+
(abort = waitForSignals(PIN_IEC_DATA_IN, IEC_RELEASED, PIN_IEC_ATN, IEC_ASSERTED, TIMEOUT_Tne))) {
293293
Debug_printv("EOI ackack abort");
294294
}
295295
}

0 commit comments

Comments
 (0)