Post Reply 
HP-IL protocol questions
12-27-2019, 01:03 PM
Post: #1
HP-IL protocol questions
Hi all,

I've recently acquired a PILBox to use with my HP-71B and 41C machines. It opens up a whole new world of possibilities!

Before going any further, I *do* have Kane, Harper and Ushijima's excellent "The HP-IL System: An Introductory Guide to the Hewlett-Packard Interface Loop" which has enabled me to progress significantly in developing a virtual HP-IL device but the questions I have here don't appear to be covered in the book and online searches reveal virtually nothing about HP-IL at all.

Question 1: There would appear to be a convention whereby the Accessory ID returned by a device in response to an SAI frame is just a byte of which the upper 4 bits represent the type of accessory (mass storage, printer etc.) and the lower 4 bits a sub-type. Is there any convention regarding what values of the accessory type portion of the AID represent which type of accessory? From what I can gather, accessory IDs in the range 0x10 to 0x1f would be mass storage devices with 0x10 being the default that the HP-71B at least looks for and uses absent any order to the contrary. As for any others, I'm drawing a blank.

Question 2: When a talker is sending a series of DAB frames to a listener, the controller can interrupt this process by sending an NRD frame to the talker in place of the echoed DAB frame. The talker acknowledges this interruption by forwarding the NRD frame back to the controller, which subsequently forwards the DAB frame that it had substituted originally for the NRD frame and the listener acknowledges by sending an ETO or ETE frame even though the transmission is not necessarily complete. The controller can then do whatever urgent stuff it needed the loop for and then reconfigure the talker and listener as before the interruption and send out an SDA frame. The talker sees this frame and completes the transmission by sending out the remaining data bytes followed by an ETO/ETE frame. What happens after the SDA frame if the controller interrupted the process when the talker was sending out the final byte? The controller had no way of knowing that it was the last byte so as far as it knows, the talker still has pending data to send. The talker seeing the SDA frame is going to be in a position where it's supposed to resume sending data but it has no more to send. Does it send another ETO/ETE frame to indicate the end of the transmission or does it just forward the SDA frame back to the controller?

There are only 10 types of people in this world. Those who understand binary and those who don't.
Find all posts by this user
Quote this message in a reply
Post Reply 

Messages In This Thread
HP-IL protocol questions - grsbanks - 12-27-2019 01:03 PM
RE: HP-IL protocol questions - grsbanks - 12-27-2019, 01:27 PM
RE: HP-IL protocol questions - J-F Garnier - 12-27-2019, 05:50 PM
RE: HP-IL protocol questions - grsbanks - 12-27-2019, 07:33 PM
RE: HP-IL protocol questions - J-F Garnier - 12-27-2019, 08:38 PM
RE: HP-IL protocol questions - grsbanks - 12-27-2019, 09:21 PM

User(s) browsing this thread: 1 Guest(s)