Post Reply 
Flags used by HP-82182A Time Module
06-25-2017, 04:35 PM
Post: #1
Flags used by HP-82182A Time Module
Someone recently pointed out to me that the HP-82182A Time Module uses flag 31 to for MDY/DMY mode (clear = MDY). This was relevant because Free42 used an invisible flag for that setting, which I then changed to flag 31 for better compatibility.

Of course there are a few other flags that are also used by peripherals: 12 and 13 by the printer (12 set = double width, 13 set = lowercase) and card reader (14 set = override write protect), but are there any other flags used by peripherals? Is this documented anywhere?

I'm specifically interested in whether the Time Module's CLK12/CLK24 and CLKT/CLKTD settings are reflected in any flags.
Visit this user's website Find all posts by this user
Quote this message in a reply
06-25-2017, 05:44 PM
Post: #2
RE: Flags used by HP-82182A Time Module
(06-25-2017 04:35 PM)Thomas Okken Wrote:  Someone recently pointed out to me that the HP-82182A Time Module uses flag 31 to for MDY/DMY mode (clear = MDY). This was relevant because Free42 used an invisible flag for that setting, which I then changed to flag 31 for better compatibility.

Of course there are a few other flags that are also used by peripherals: 12 and 13 by the printer (12 set = double width, 13 set = lowercase) and card reader (14 set = override write protect), but are there any other flags used by peripherals? Is this documented anywhere?

I'm specifically interested in whether the Time Module's CLK12/CLK24 and CLKT/CLKTD settings are reflected in any flags.

You could set all the flags then change CLK12 to CLK24 and see if any flag status has changed then change back to CLK24 and do the same.

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
06-25-2017, 06:01 PM (This post was last modified: 06-25-2017 06:04 PM by Dieter.)
Post: #3
RE: Flags used by HP-82182A Time Module
(06-25-2017 04:35 PM)Thomas Okken Wrote:  Of course there are a few other flags that are also used by peripherals: 12 and 13 by the printer (12 set = double width, 13 set = lowercase) and card reader (14 set = override write protect), but are there any other flags used by peripherals? Is this documented anywhere?

Yes, this additional flags usage is not documented in the HP41 manual, probably because most of the later peripherals were not yet available at the time the calculator was released.

But there is a book by J. S. Dearing with tricks, tips and routines for the 41 series (at least that's what the title of the German PDF version says). The appendix contains a flag overview with the following additional information:

Code:
flag#   use
----------------------------------------------------------------------
 15     printer mode on printers without mode switch:
 16     Man=00, Norm=01, Trace=10
 17     incomplete data record
 31     Time module: MDY=0, DMY=1
 32     IL-module: AUTOIO=0, MANIO=1
 33     for use with HP-IL development ROM
 34     Extended IO-ROM: ADRON=0, ADROFF=1
 35     for use with 00041-15042 ROM (autostart + cassette duplication)

(06-25-2017 04:35 PM)Thomas Okken Wrote:  I'm specifically interested in whether the Time Module's CLK12/CLK24 and CLKT/CLKTD settings are reflected in any flags.

Sorry, the book doesn't seem to have any information on this.

Dieter
Find all posts by this user
Quote this message in a reply
06-25-2017, 06:21 PM
Post: #4
RE: Flags used by HP-82182A Time Module
Sorry, the state of CLK12/CLK24 and CLKT/CLKTD are not stored in user-accessible flags. The CLK12/CLK24 status can be determined in a program if you have a CX (or an X Function module) in many ways, including this:

CLA CLX ATIME ANUM
--> 12 = CLK12
--> 0 = CLK24


Determining the CLKT/CLKTD status is left as an exercise for the student, because I can't think of any way of doing it. Smile

Including the 3 flags you already mentioned, flags 12-20 are allocated for "External device control". All are cleared each time the HP-41 is turned on. "The precise meaning of these flags depends on the particular devices that are present; refer to the appropriate manuals for details." [HP-41CX Owner's Manual Volume 2, pages 289-293]

For example, flags 15-16 control the IL printer's print mode (00=MAN, 01=NORM, 10=TRACE, 11=TR/STACK) [gleaned from Jeremy Smith's "HP-41 Synthetic Quick Reference Guide"].

Flag 11 is normally used for auto-execution at turn-on, but it can also be used by the card reader. If a program is recorded while flag 11 is set, then it will be automatically run (starting at line 1) when read by the card reader. [Card Reader Owner's Handbook, page 20-21]

Flag 17 is labeled as "(CR) record incomplete" in Jeremy's QRG. I assume CR means Card Reader, but I am not sure what "record incomplete" means.

Flag 18 is labeled as "enable TINTR" in Jeremy's QRG. I have no idea what that means. Timer Interrupt maybe?

If flags 19 and/or 20 are used by any other peripherals, you'll have to see their respective manuals for details (or read the postings below by other inveterate HP calculator enthusiasts).

Flag 53 is labeled as "I/O" in Jeremy's QRG. So I guess that has something to do with peripherals too?

Flag 55 of course is the "Printer existence" flag, which is mentioned in every flag list. There's also an entire appendix in the 41-CX manual (page 368-369) that discusses how to use fags 21 and 55 to control program execution and display.

<0|ΙΈ|0>
-Joe-
Visit this user's website Find all posts by this user
Quote this message in a reply
06-25-2017, 06:50 PM
Post: #5
RE: Flags used by HP-82182A Time Module
(06-25-2017 06:21 PM)Joe Horn Wrote:  If flags 19 and/or 20 are used by any other peripherals, you'll have to see their respective manuals for details

The Time Module manual doesn't mention flag 31, which is why I figured relying on the wisdom of the Forum crowd had a better chance of success. :-)

Still, interesting information, thanks!

I ended up taking Tom L's advice and ran a program in V41 to brute-force check all the flags before and after CLK12/CLK24 and CLKT/CLKTD mode toggles, and confirmed that these settings affect no flags.

Thanks to all for your replies!
Visit this user's website Find all posts by this user
Quote this message in a reply
06-25-2017, 10:16 PM
Post: #6
RE: Flags used by HP-82182A Time Module
(06-25-2017 06:21 PM)Joe Horn Wrote:  Flag 18 is labeled as "enable TINTR" in Jeremy's QRG. I have no idea what that means. Timer Interrupt maybe?
....
Flag 53 is labeled as "I/O" in Jeremy's QRG. So I guess that has something to do with peripherals too?

Darn it, you beat me, I was going to get my copy of Jeremy's QRG to check, as I recalled he had some great flag notes, but thought I'd read all replies first.

I'm not sure if anyone but you and I still have copies of Jeremy's guide! One of my fondest treasures from the Golden Days of old.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
06-26-2017, 01:20 AM (This post was last modified: 06-26-2017 01:48 AM by Sylvain Cote.)
Post: #7
RE: Flags used by HP-82182A Time Module
(06-25-2017 06:21 PM)Joe Horn Wrote:  Flag 17 is labeled as "(CR) record incomplete" in Jeremy's QRG. I assume CR means Card Reader, but I am not sure what "record incomplete" means.

CR = Carriage Return
Code:
IL:OUTA -> CF 17 : append a CR+LF at the end of the alpha transmission
IL:OUTA -> SF 17 : alpha is transmitted as is

IL:INA  -> CF 17 : wait until 24 char is received or until a CR+LF is received
IL:INA  -> SF 17 : wait until 24 char is received

XF:GETREC/ARCLREC -> sets   F:17 when the end of record is not reached
XF:GETREC/ARCLREC -> clears F:17 when the end of record is reached
You must set the flag 17 when controlling cursor position and/or doing text replacement on a video interface.

(06-25-2017 06:21 PM)Joe Horn Wrote:  Flag 18 is labeled as "enable TINTR" in Jeremy's QRG. I have no idea what that means. Timer Interrupt maybe?

When the flag 18 is set and the HP-IL Dev. module is plugged, the module will wakeup the HP-41 from idle mode (if needed) then call the "INTR" FOCAL program each time the calculator receives one of the HP-IL: IFCR, SRQR, FRAV or FRNS message.
Code:
IFCR : Interface Clear Received
SRQR : Service Request Received
FRAV : Frame Available
FRNS : Frame Received Not as Sent

(06-25-2017 10:16 PM)rprosperi Wrote:  I'm not sure if anyone but you and I still have copies of Jeremy's guide! One of my fondest treasures from the Golden Days of old.

There is two version of his great QRG that I know of: v1:1982 & v2:1983
I had a great talk with Jeremy at last year HHC and he was kind enough to signed my 1982 copy that I always travel with. Smile

edit: add F:18 info
Find all posts by this user
Quote this message in a reply
06-26-2017, 02:44 AM
Post: #8
RE: Flags used by HP-82182A Time Module
(06-26-2017 01:20 AM)Sylvain Cote Wrote:  There is two version of his great QRG that I know of: v1:1982 & v2:1983
I had a great talk with Jeremy at last year HHC and he was kind enough to signed my 1982 copy that I always travel with. Smile

Right! The original one was printed on paper, with the revised edition printed on a tyvek type of plastic paper; never rips or wears-out. I have both. I take the later one, as the original is more fragile (it's well-worn) safely packed away in the box of my original 41C from 1980. Having it signed by Jeremy was brilliant, wish I thought of that. Doesn't appear he will be in Nashville, so I'll have to wait 'til next year.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
06-26-2017, 04:27 AM
Post: #9
RE: Flags used by HP-82182A Time Module
(06-25-2017 04:35 PM)Thomas Okken Wrote:  Someone recently pointed out to me that the HP-82182A Time Module uses flag 31 to for MDY/DMY mode (clear = MDY). This was relevant because Free42 used an invisible flag for that setting, which I then changed to flag 31 for better compatibility.

Of course there are a few other flags that are also used by peripherals: 12 and 13 by the printer (12 set = double width, 13 set = lowercase) and card reader (14 set = override write protect), but are there any other flags used by peripherals? Is this documented anywhere?

I'm specifically interested in whether the Time Module's CLK12/CLK24 and CLKT/CLKTD settings are reflected in any flags.

The CLK12/CLK24 and CLKT/CLKTD status is stored in the Scratch register (register 4) in the Time Module itself. Bit 7 Low means CLKT, bit 6 Low means CLK12.
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 




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