The Museum of HP Calculators

HP Forum Archive 18

[ Return to Index | Top of Index ]

HP-41 system question
Message #1 Posted by Monte Dalrymple on 4 July 2008, 12:09 p.m.

Does anyone know if any other peripheral select addresses

beside the ones that I know about (FB - timer, FC - card

reader, FD - display, FE - wand, 10 - halfnut display)

are used? In particular, what about the HP-IL adapter

or any of the printers? I want to avoid any potential

conflicts with something that I am thinking about designing.

Thanks, Monte

      
Re: HP-41 system question
Message #2 Posted by Raymond Del Tondo on 4 July 2008, 1:47 p.m.,
in response to message #1 by Monte Dalrymple

Have you checked the SDK41 manual on TOS?

HTH

Raymond

(TOS = Warren Furlow's calculator site, linked from here;-)

            
Re: HP-41 system question
Message #3 Posted by Monte Dalrymple on 4 July 2008, 2:17 p.m.,
in response to message #2 by Raymond Del Tondo

Yes, that's the first place I checked.

Thanks, Monte

      
Re: HP-41 system question
Message #4 Posted by Eric Smith on 4 July 2008, 3:30 p.m.,
in response to message #1 by Monte Dalrymple

HP-IL, the 82143A, and the 82442A don't use peripheral select.

HP originally chose addresses Fx because they could do an "ldi 3fx" followed by a ram slct and a perf slct, in order to disable RAM and enable the peripheral. This worked because there wasn't RAM at addresses 3Fx. As a result when they introduced the Extended Memory modules, they had to omit addresses 2Fx/3Fx from those modules.

With the halfnut LCD controller, they apparently decided that the same idea would work for addresses 010 through 03f.

If you don't need to use the same constant for both disabling RAM and enabling your peripheral, you could use almost anything other than 10 and fb through fe.

            
Re: HP-41 system question
Message #5 Posted by Monte Dalrymple on 4 July 2008, 10:50 p.m.,
in response to message #4 by Eric Smith

Okay, I just wanted to make sure that I didn't step on something that already existed.

So that means that the peripheral flags are dedicated to a specific function and are not conditioned by the peripheral select. In the SDK41 documentation it implies that only peripheral flags 0, 3, 4, and 5 are not committed? But perhaps 0 and 5 are used for something with the zenrom since these two have mnemonics in the "zencode" column?

I was hoping to use a pair of peripheral flags to signal status for my design, but perhaps I'll have to use a data read instead.

Thanks, Monte

                  
Re: HP-41 system question
Message #6 Posted by Eric Smith on 6 July 2008, 12:33 a.m.,
in response to message #5 by Monte Dalrymple

Of the 14 possible peripheral flags, only flags 3 and 4 were not assigned to any released HP product. Here's a table from my working notes:

flag    test
num     opcode  device  mnem    expansion
----    ------  ------  -----   ------------------------
0       3ac     82143A  ?PBSY   Printer BuSY
1       32c     82104A  ?CRDR   CaRD Reader
2       22c     82153A  ?WNDB   WaND Byte available
3       02c     none    ?PF 3
4       06c     none    ?PF 4
5       0ac     82242A  ?EDAV   Emitter Diode AVailable
6       16c     82160A  ?IFCR   InterFace Clear Received
7       2ac     82160A  ?SRQR   Service ReQuest Received
8       12c     82160A  ?FRAV   FRame AVailable
9       26c     82160A  ?FRNS   Frame Received Not as Sent
10      0ec     82160A  ?ORAV   Output Register AVailable
11      1ac     82182A  ?TFAIL
12      36c     82182A  ?ALM    ALarM
13      2ec     all     ?SERV   SERVice

I would strongly advise against using more than one flag for a new device. These flags are only intended to be used to quickly identify conditions that awaken a 41 from light sleep, so it is reasonable for a device to use one of them, but to further distinguish which condition of that device resulted in the wakeup, data should be read from the device.

HP chose to use up five of the scarce flags for HP-IL, but that probably seemed like a reasonable use of the scarce resource because it was expected that almost all further peripherals would use HP-IL rather than dedicated interface modules.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall