Re: DREM Drive Emulator on HP9133H


Ansgar
 

Guess the problem is twofold. First, the processor or microcontroller needs to handle certain DIO lines fast enough which requires a certain processor speed. Second, the program flow has to be deterministic with respect to timing. You may achieve deterministic timing with alomst any processor or controller as long as interrupts and time sharing/multitasking are deactivated (e.g. via interrupt masking). But of course the processor or controller still needs to keep up with the speed requirements of the bus. Linux GPIB as the name says has been designed to run under an operating system with non deterministic timings. Same applies to MS Windows. So any deterministic tasks have to be done by a dedicated controller, the GPIB controller.

Using a bitbang driver shifts the deterministic tasks back to the main processor, which has diffculties achieving that deterministic behavior in a multitasking operating system. Which can be difficult, but is not completely impossible. IIRC, the floppy drivers built into Windows 9x stopped any other system activity during some floppy operations (which however could lock up the system under certain conditions). I guess it is much easier to bitbang DIO lines with a microcontroller with the proper timing without multitasking OS. Just like the firmware in the vintage devices.

-Ansgar

Join VintHPcom@groups.io to automatically receive all group messages.