The Museum of HP Calculators

HP Forum Archive 03

[ Return to Index | Top of Index ]

WPRV COMMAND..Need to reverse the flag
Message #1 Posted by Paul on 20 June 2000, 4:44 p.m.

Hello. I have been using the 41CX since it first came out. I am a Land Surveyor in California, and have written programs that were specific to my field of expertise. Quite a few surveyors were using the programs, and over the course of time, a few individuals in their offices would hit the PRGM key, a few other keystrokes, and Wa La!, you have a corrupt program.

So, to avoid having to go back and manually delete the offending instructions, or having to re-load the programs back into the instruments via the **HP 82104A Card Reader**, I wrote a set of cards using the WPRV command (write private) to stop people from inserting bogus instructions.

Now, I am in need to get into my programs again. I am looking for information on how to bypass the flag that is set within, that causes the message PRIVATE to appear on the calculators display when I press the PRGM key.

Please keep in mind that I have been using the same programs for close to 16 years now, and some of the cards that were of a non-private nature have either been lost over the years or the media has become corrputed overtime.

I have a call into tech. support at Hewlett Packard, and Im sure that my question to the individual has stirred some interest :)

Please respond to me at L4722S @ AOL.COM, or here, or both.

Looking forward to hearing from you all...Thank you

Paul

      
Re: WPRV COMMAND..Need to reverse the flag
Message #2 Posted by Steve on 20 June 2000, 8:27 p.m.,
in response to message #1 by Paul

Are you familiar with synthetic programming?

From vague memory, the procedure used to step into the key assignment registers to add the byte grabber can also be used to jump back past an end instruction (which you then delete).

This may be too vague, but at least you have the programs on cards so you can try a few times.

I don't have my calculator on me at the moment, so I can't try it. I'm sure someone else will :-)

I think you need an un-private program either before or after the private one to do this. Just something like LBL "AA" END.

            
Re: WPRV COMMAND..Need to reverse the flag
Message #3 Posted by Paul on 20 June 2000, 10:47 p.m.,
in response to message #2 by Steve

If I had a card reader that was not filled with gunk, I would be in fine shape as far as being able to re-load the WPRV Programs (yes, I have read the file about cleaning the reader, but I am not the type of guy that loves small little things that like to jump out of electronic items to be forever lost :)

I need to hack into my own private programs so I can have an archive to edit and re-key into another 41CX. Eventually I will get the reader fixed, but not before I have to use the calculator for my work.

I wrote the program you suggested , but how do I get past the end instruction into my private area? I believe there is a sequence of keys to be held down when the machine turns on that will re-set the private flag. I cant think of any other way this could be accomplished. I do have the WPRV programs dropped down into extended memory, but the reload into main still brings the WPRV flag up.

Since the manual for the Card Reader makes the statement that the WPRV programs are not accessible by ' Normal methods', they is an answer to the dilemma I am in.

Thanks for your response

                  
How to UN-Private a program
Message #4 Posted by Steve on 21 June 2000, 7:03 a.m.,
in response to message #3 by Paul

This assumes that the private program is the last in memory. This procedure worked on my HP 41, but NO WARRANTIES ARE EXPRESSED OR IMPLIED. If your card reader turns into a potato, it's your own fault!

GTO..

(to put calc into Program mode)

LBL "XXX" (Enter this)

GTO..

CAT 1 (Stop when LBL XXX shows in display

SST

SST (Displays .END. REG XX)

(Place calculator in Alpha mode)

(out of alpha mode)

GTO ..

And that's it.

However HP calculators must have inbuilt defence mechanisms. My calculator crashed before I started to try this, and afterward my internet connection failed, then my computer crashed as I reconnected. This is the second (and hopefully last) time I write this procedure :-)

                        
Re: How to UN-Private a program
Message #5 Posted by Paul on 21 June 2000, 1:00 p.m.,
in response to message #4 by Steve

Doesn't seem to work. Did you omit a few steps?

                              
Re: How to UN-Private a program
Message #6 Posted by Steve on 21 June 2000, 6:01 p.m.,
in response to message #5 by Paul

No, it appears that if you use the greaster than o less than characters, they (and text between them) disappears!

Try this

This assumes that the private program is the last in memory. This procedure worked on my HP 41, but NO WARRANTIES ARE EXPRESSED OR IMPLIED. If your card reader turns into a potato, it's your own fault!

GTO..

PRGM (to put calc into Program mode)

LBL "XXX" (Enter this)

GTO..

CAT 1 (Stop when LBL XXX shows in display)

SST

SST (Displays .END. REG XX)

ALPHA (Place calculator in Alpha mode)

CLX (display is 4094 END)

BST (display is 4093 LBL"XXX")

BST (display is 4092 END)

CLX (display is 4091 xxxxxx -- last line of private program)

SST (display is 4092 LBL"XXX")

CLX (removes label)

ALPHA (out of alpha mode)

GTO ..

And that's it.

However HP calculators must have inbuilt defence mechanisms. My calculator crashed before I started to try this, and afterward my internet connection failed, then my computer crashed as I reconnected. This is the second (and hopefully last) time I write this procedure :-)

And now that's three times. The HP defence mechanism is _really_ strong!

                                    
Re: How to UN-Private a program
Message #7 Posted by Paul on 21 June 2000, 6:54 p.m.,
in response to message #6 by Steve

Refreshing tid bits :) 1. I am using a 41CX 2. The programs were loaded via the 82014A Card Reader ============================================================

Now, I'll list your steps and my results in brackets[RESULT]

GTO.. [0.00]

PRGM (to put calc into Program mode) [00 REG 210]

LBL "XXX" (Enter this) [01 LBL'XXX]

GTO.. [00 REG 209]

CAT 1 (Stop when LBL XXX shows in display) [LBL'XXX]

SST [END 10]

SST (Displays .END. REG XX) [.END. REG 209]

ALPHA (Place calculator in Alpha mode)

CLX (display is 4094 END) [4094 END]

BST (display is 4093 LBL"XXX") [4093 LBL' XXX]

BST (display is 4092 END) [4092 END]

CLX (display is 4091 xxxxxx -- last line of private program) [4091 PASN]

SST (display is 4092 LBL"XXX") [4092 LBL'XXX]

CLX (removes label) [4091 PASN]

ALPHA (out of alpha mode) [4091 PASN]

GTO .. [4092 GTO _ _]

This is **BEAUTIFUL** Steve, I had more success as I was placing my output in brackets, this is definately one for the books!

Thanks a lot :)

BTW, I havent seen my code in close to 10 years I would say, was so neat to see PASN in the display!!

                                    
Re: How to UN-Private a program
Message #8 Posted by Mark Hardman on 21 June 2000, 11:41 p.m.,
in response to message #6 by Steve

Why not make it FOUR times?

Because, this bit of work really ought to have a permanent place in the "HP Articles Forum."

Mark Hardman

                                          
Re: How to UN-Private a program
Message #9 Posted by Paul on 22 June 2000, 2:24 a.m.,
in response to message #8 by Mark Hardman

I agree 100%...Good suggestion Mark

                                                
Re: How to UN-Private a program
Message #10 Posted by Reinhard Breuer on 24 July 2000, 7:43 a.m.,
in response to message #9 by Paul

Hello,

if one owns a CCD-MODULE, here is an other fine solution, which works on all programs anywhere in the usual program-memory, but not in the extended memory area. This program makes no use of any kind of bugs or synthetic programming features.

Title: Change Programs Privateflag (CPP)

Description: Execute CPP. On prompt key in a name of a global label plus R/S. CPP will change this program from being private or vice-versa.

01 LBL "CPP"

02 CF 25

03 'NAME:

04 PMTA

05 PHD

06 PPLNG

07 1

08 -

09 CHS

10 A+B

11 PEEKB

12 64

13 XOR

14 POKEB

15 CLA

16 CLX

17 STO Y

18 STO L

19 END

43 Bytes used

The code is fully commented in my article about the CCD-Module.

Have fun forever with your HP's.

Reinhard

      
When you fix the reader
Message #11 Posted by Joe Panico on 21 June 2000, 10:39 a.m.,
in response to message #1 by Paul

Paul, When the card readers fixed you can try. I think you copy the programs with flag 14 set. I sold my card reader a long time ago so don't remember exactly. And - this will get everyone going - prefer my 48 to the 41 !! So my early 41C just sits in a dark drawer.

Joe

            
Re: When you fix the reader
Message #12 Posted by Steve on 21 June 2000, 6:04 p.m.,
in response to message #11 by Joe Panico

Yeah, the HP41's are rubbish.

Too rubbishy even for land fill.

Send me the calculator, along with $100 and I will dispose of it in the most undignified manner.

Then we'll both feel better! :-)

                  
Re: When you fix the reader
Message #13 Posted by Paul on 21 June 2000, 7:10 p.m.,
in response to message #12 by Steve

I doubt if I'll even bother fixing the reader now. Steve has gotten me into both of my main programs, of which I have made text copies of in my PC. Any other programs I could possibly use in my work I can write on the job as conditions dictate, though I doubt that will happen since I have stopped doing construction surveys.

Oh Steve! Since I have (4) 41 CX's, I guess you should be getting $400.00 and an EPA Application for dumping hazardous material...Go to the mailbox and DONT LEAVE until you get the afore mentioned items :)

                        
Re: When you fix the reader
Message #14 Posted by Viktor Toth on 21 June 2000, 9:24 p.m.,
in response to message #13 by Paul

Paul,

Not fixing a reader is one thing; just don't throw it out please! That's a mortal sin. Many of us here love fixing up old card readers and make use of them for many more years to come :-)

Viktor

                              
Re: When you fix the reader
Message #15 Posted by Paul on 21 June 2000, 9:52 p.m.,
in response to message #14 by Viktor Toth

I have no intention on trashing it. Eventually I will give it a go and try and clean all the goo out of it.

                                    
Re: When you fix the reader
Message #16 Posted by Viktor Toth on 21 June 2000, 10:17 p.m.,
in response to message #15 by Paul

Paul,

Glad to hear you aren't planning to trash the reader. As for the 'goo', sadly, it's not just goo; it is (or rather, used to be) a rubber wheel that transports the card through the reader. In other words, you need to do more than cleaning it out; you also need to fashion a new wheel out of some suitable material (such as O-rings or model airplane fuel lines.)

Viktor

                                          
Re: When you fix the reader
Message #17 Posted by Erwin on 22 June 2000, 2:32 p.m.,
in response to message #16 by Viktor Toth

Check the artical by "the lost Rabbit" posted, i think, at the articles side here at HPmuseum. I used his guidance and repaired the cardreader in less then two hour. My cardreader work's great now. The 'goo' is indeed the remains of the cardtransport wheel. Just get the right material as discribed, and do the job.

BTW Thank's Dave (lost rabbit). I tried to sent you mails but the message's kept returning. What happend to you email adress?

Erwin

                  
Old 41's
Message #18 Posted by Joe Panico on 22 June 2000, 1:36 p.m.,
in response to message #12 by Steve

Steve, It could be that my 41 is gathering value, not dust. Seeing as I paid $150 to replace the slide rule I bought for $35 in 1973 (my brother lost it), my 41 should do alright some day. I used it for 10 years, wrote lots of programs, thought it great but, hey, the new ones suite me better. But don't worry, it has my brothers 41 to keep it company.

Joe

PS: If you run across any 48's, 49's, TI89's, I'll see each gets an appropriate send off!

      
WPRV, how to reverse
Message #19 Posted by Andrés C. Rodríguez on 21 June 2000, 6:10 p.m.,
in response to message #1 by Paul

If memory helps, you need to use synthetic programming techniques in order to alter the END instruction at the end of your program. The PRIVATE status is encoded there. So, if your program is the only one in the calculator, you have something like this (formatting is not very good):

LBL "Myprog" ;main label

...

RCL 18 -----;just as an

ENTER ------;example of

SIN --------;user code

LOG --------;functions

...

...

...

END --------;this END codes the Private status

.END. ------;this is the last .END.

Then you need to erase or modify the END instruction.

I am afraid I do not have details on how to achieve this, other than these ideas. I think the Card reader, or Flag 14 have nothing to do with this (except when writing the cards). Good luck.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall