From 22b43f25b32c4851b5ed292460aacbeeea6c6dc6 Mon Sep 17 00:00:00 2001 From: folkert van heusden Date: Tue, 30 Apr 2024 10:28:46 +0200 Subject: [PATCH] line number calculation --- dc11.cpp | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/dc11.cpp b/dc11.cpp index b0ba9dd..94c8e1d 100644 --- a/dc11.cpp +++ b/dc11.cpp @@ -33,7 +33,8 @@ dc11::~dc11() void dc11::trigger_interrupt(const int line_nr) { - b->getCpu()->queue_interrupt(4, 0300 + line_nr * 4); + printf("Interrupt %d\r\n", line_nr); + b->getCpu()->queue_interrupt(5, 0300 + line_nr * 4); } void dc11::operator()() @@ -116,7 +117,7 @@ void dc11::operator()() char buffer[32] { }; int rc = read(pfds[i].fd, buffer, sizeof buffer); if (rc <= 0) { // closed or error? - DOLOG(info, false, "Failed reading on port %d", base_port + i + 1); + DOLOG(info, false, "Failed reading on port %d", i - dc11_n_lines + 1); close(pfds[i].fd); pfds[i].fd = -1; } @@ -134,6 +135,19 @@ void dc11::operator()() trigger_interrupt(line_nr); } } + + // emulate DTR, CTS & READY + for(int i=0; i