All,
I got a preliminary version of code that lights the Data Break lamps on the PiDP-8/I front panel. It appears to be working for both TC08/TU55 DECtape and RK8E/RK05 DECpack disks.
TC01/TU55 is a 3-cycle data break so all three lamps--Word Count, Current Address, and Break--will light whenever the PiDP-8/I is reading or writing blocks of data on a DECtape.
RK8E/RK05 is a 1-cycle data break so only Break will light when the PiDP-8/I is reading or writing blocks on a disk.
I'm working with Warren to restore my Fossil access (again, sorry Warren) but in the mean time I'm attaching the source code in case you want to try it out.
These three files go into the .../pidp8i source code directory:
pidp8i.h
main.c
These four files go into the .../SIMH/PDP8 source code directory
pdp8_defs.h
pdp8_cpu.c
pdp8_dt.c
pdp8_rk.c
Once this code is in there, trigger a rebuild and re-install then it should come up running with the Data Break lamps flashing when appropriate.
Do please keep in mind that the TD8E/TU56 DECtape is not a data break device so if you're using that kind of DECtape the Data Break lamps won't flash at all. Ever.
I'm confident that the TC01/TU55 code is solid. I'm not quite as sure about the RK8E/RK05 code in terms of what happens on reading a partial disk block and zero-filling the remainder in memory. The behavior of SIMH's fxread() function is a bit unclear to me, in particular what the meaning of the return value is. I need to do some research on that. Nonetheless, the code does appear to work fine but at some point I'll need to run the diagnostics to make sure it works 100%.
There are other PDP-8 Data Break devices: RF08, DF32, RL01, TU10, and maybe one or two others. Having figured it out for TU55 and RK05, the others should likely follow the same pattern and not be overly difficult. TSS/8 does use RF08 so I should probably attack that one next. I don't know if anyone uses any of the other data break devices so they could end up being pretty low priority.
Do let me know if you try this new code and either have any questions or run into any problems.
Happy blinkenlights,
-- steve