[comp.sys.handhelds] GATEWAY-48 codelock program

erikmb@etek.chalmers.se (Erik Bryntse) (02/18/91)

After many months and hours of work on my codelock program
GATEWAY-48, I have finally decided to post it. It is still not
quite perfect (some problems have been reported when using control
alarms) but my nerves and my studies do not allow any more work on
this one. I hope you will find it useful!


GATEWAY-48 Codelock Program ver 2.6
===================================

GATEWAY-48 is a codelock program for HP48SX. When your HP48SX is
turned on, it displays a startup message (for example your name
and phone number) and prompts you for a 4-digit code. If you key
in the correct code, your 48 is turned on just like usual. Other-
wise it is turned off again.

With GATEWAY-48 you have complete software protection and enough
hardware protection to keep people from messing with your calcu-
lator. If you know how, you CAN get in without knowing the right
code, but the memory will be cleared in the process. All normal
stuff such as ON-C and ON-A-F will not work.

A lot of work has been spent on the user interface and ruggedness
of GATEWAY-48. This means that

- You can easily change the code.
- There is a built-in program to redefine the OFF key.
- You can provide a startup message like "Owned by XXYY".
- All is contained in one library, which cannot be modified. 
- The code cannot be accidentally changed, since it is stored with
  a checksum.
- Alarms are allowed to execute even if the codelock is enabled,
  but when the execution finishes, the calculator is turned off
  again.
- There is a built-in program to remove GATEWAY-48 from your 48.


INSTRUCTIONS
============
If you have something you do not wish to lose in your calculator,
make a backup.

Download the string at the end of this message to your 48. Compile
it using ASC->. Store the resulting library with 0 STO. Turn off 
your 48, then on again. You will see a short message when the lib-
rary installs.

Now press the LIBRARY menu key. There will now be a menu named
GATEWAY-48. In this menu you will find the following programs:

ASSIGN
------
Assigns the off key to the new off program OFFC. Turns on USER
mode.

NEWCODE
-------
Enables you to enter or change the code. Run this after installing
GATEWAY-48. The first time you run it, it will only prompt you for
the new code, but normally you must key in the old code as well.

REMOVE
------
Uninstalls the GATEWAY-48 library and clears key definitions. Also
removes the hidden code.

OFFC
----
The main code program. Turns off your 48 enabling the codelock.
When you turn it back on, you have to key in a four-digit code to
gain access to your 48. Note that it will not work if you haven't
selected a code using NEWCODE.


ADDITIONAL INFORMATION
======================
You can display a message of your own when you turn your 48 on by
storing a string under the name 'OWNER' in the home directory.

The codelock is not activated when the HP48 turns itself off to
preserve battery.

The OFFC user key assignment is sometimes cleared by other pro-
grams or actions. Pressing the USR key once or twice (depending on
the state of flag -61) or running the ASSIGN program will restore
it. 

The program ASC->, written by William C Wickes, has been posted at
Comp.sys.handhelds several times and is available from many FTP-
sites.

I will not provide source code.

----------------------------------------------------------------
GATEWAY-48 is Copyright Erik Bryntse 1991. Non-commercial distri-
bution allowed. I take no responsibility for any damages caused by
this program.
----------------------------------------------------------------

This program has been tested by people with different calculator
versions and different software and hardware. Much work have been
spent on correcting the reported bugs. Thank you all who helped me
with this!


Please send bug reports, questions, or suggestions to

Erik Bryntse
SHPRF (the HP User Club of Sweden)
Box 15061
S-700 15  OREBRO
SWEDEN

erikmb@cd.chalmers.se


DOWNLOAD FILE IN ASC-FORMAT
----------------------------------------------------------------
%%HP: T(3)A(D)F(.);
"04B201FD00A074144554751495D24383A096381D00000003CC006C7008963300
D9D20E1632521A129E2096380084E206034341323334378BF14563284E205034
3495543597632DCC02CFA20100384E2050343495543578BF1EFE02DCC02EB3A1
29E2096390093632B21308963200D9D20E1632041A1339202000000000003780
C741229E2096380047A2084E206034341323334384E20503434955435B2130EF
E02041A1339201000000000003190845223392010000000000002695D2C12189
17F791339206990000000000010E5FB1C9432D9D20E163227991CFA201003339
20200000000000378078BF1EFE02EFE0293632B21303F2A2387C1EF8918DBF19
3632B21308963400D9D20E1632858A1C2A20F700002020202020274144554751
495D24383A082369202542796B602242797E64737560213939313A0E7E7E7E7E
7E7E7E7E723E263E7E7E7E7E7E7E7E7E7E79C2A2485A193632B21308963500D9
D20E1632C2A20110007527F6E67612743A2485A1339209990000000000080F17
A193632B21308963100D9D20E163229E20963400521A129E209638003CE2284E
206034341323334378BF168BC1339201000000000000020279E1AFE22D9D20C2
A2051000F4C6460234F64656803A2485A129E209636003CE22167E1AFE2229E2
0963C005BF2229E209635005DF22B21305BF22D9D208DBF129E20963C00B2130
5DF22EB3A193632B2130CCD20FF0008FB97608FE316084F8F51110808F050408
AF0AF1AF2AF320134135AF320F37240A87816B432390BAE20813DBDA1FB01001
4F8088514D8F5E0103453721CA8DC75302030AD1A85CD43FD9761090A2FD97B0
090E7FE5D901C681B4CA3423000C2134D215608018F06110DAD280116015E00E
F201182824224844428884828963000D9D20E1632C9432D9D20E163229E20963
30093632B21303392010000000000031904F422339201000000000000269472C
193632B21308963700D9D20E1632218917F791339205990000000000010E5FB1
C9432D9D20E16322799129E2096390093632B21303F2A2387C1EF8918DBF1936
32B21308963800D9D20E1632C2A2050000E4A205100051B5000000000000E25A
1EB3A193632B21308963900D9D20E1632916C147A20E4A20510000FF00000000
00000E4A20510000000000000000000B2130F76C129E209634003CE224563284
E2050F475E4542597632FD33204B02F1732D9D20B21305DF2278BF168BC1ED2A
2167E1AFE22D9D20803A2485A1B21305BF228DBF15DF2229E20963B003CE22E4
A2051000FEF3000000000000E25A1167E1AFE2229E209637005BF22D9D20521A
129E209638004563284E2050343495543597632EFE02EB3A1CFA20100384E205
0343495543578BF1EFE02EFE02B21305DF22F76C193632B21308963A00D9D20E
1632916C147A20E4A20510000FF0000000000000E4A205100000000000000000
00B2130F76C129E209638003CE2284E206034341323334368BC1339201000000
000000020D9AE1AFE22D9D20FD332D9D20CFA20100384E2050343495543504B0
2B2130F17328DBF15BF22D9D2078BF14563284E2050343495543597632DCC024
563284E206034341323334397632DCC02B21305DF22B21305DF22041A1339202
00000000000378084412F76C129E2096390093632B21308963B00D9D20CCD207
920084F8FB9760D2066E20CCD20B720084F174E730F068FB976075F1580D26DC
08F51110808F200834712007D81412132102347220073814D0078AEA067B0678
02014234119208A6DE1641468082453721E2068082130AE1A01F690A5CA6C52F
A0190D7B808203814AF3F37670465A87A4C50F2307F69136194BD32033617123
917E220D2E61091FB010014F8088514D8F5E0101118DC7530208F2D760132340
8200EA1308D2F14034000100607CE4000630BD1A85CD4CED9742054FD97B1049
F0731A096590B4760CFE5D903C681B4CA3433000C2134D215608018F06110DAD
280116015E0902000318282422484442888482131B2950714210180824B0200E
281B4CA1008D3C87000603434132333435034349554358FCF110AF71BBA50714
61348F419E04341648F3F8E05008F67CE04C2B7B561BFAAF08082300039F6001
6C16A8F598E051C8D0F510B21308963C00D9D20E1632C2A2051000E456770234
F64656D13A2485A129E20963600C2A20F000014761696E6233A2485A129E2096
36003CE2292CF1167E1AFE22D9D204563284E206034341323334397632DCC02B
21305BF22D9D208DBF129E20963500B21305DF2293632B2130E4A2064000328F
F216FF6D3FF533FF005FF9A5FFAF6FF378FFAE8FFE29FFCCAFF24CFFAEEFFE4A
200B000000000000000000640000000094000660000000000000000000000000
000000000000000000000007400040F4646434300601435359474E4000602554
D4F4655420070E4547534F444541005300081000E200015000493DF63D"
----------------------------------------------------------------

d0mo@dtek.chalmers.se (Mats Olsson) (02/18/91)

The following article is written by I friend of mine. As he is not
able to post to comp.sys.handhelds, I'll do it for him. Please send
your questions and credits directly to erikmb@cd.chalmers.se !

------------------------------------------------------------------



After many months and hours of work on my codelock program
GATEWAY-48, I have finally decided to post it. It is still not
quite perfect (some problems have been reported when using control
alarms) but my nerves and my studies do not allow any more work on
this one. I hope you will find it useful!


GATEWAY-48 Codelock Program ver 2.6
===================================

GATEWAY-48 is a codelock program for HP48SX. When your HP48SX is
turned on, it displays a startup message (for example your name
and phone number) and prompts you for a 4-digit code. If you key
in the correct code, your 48 is turned on just like usual. Other-
wise it is turned off again.

With GATEWAY-48 you have complete software protection and enough
hardware protection to keep people from messing with your calcu-
lator. If you know how, you CAN get in without knowing the right
code, but the memory will be cleared in the process. All normal
stuff such as ON-C and ON-A-F will not work.

A lot of work has been spent on the user interface and ruggedness
of GATEWAY-48. This means that

- You can easily change the code.
- There is a built-in program to redefine the OFF key.
- You can provide a startup message like "Owned by XXYY".
- All is contained in one library, which cannot be modified. 
- The code cannot be accidentally changed, since it is stored with
  a checksum.
- Alarms are allowed to execute even if the codelock is enabled,
  but when the execution finishes, the calculator is turned off
  again.
- There is a built-in program to remove GATEWAY-48 from your 48.


INSTRUCTIONS
============
If you have something you do not wish to lose in your calculator,
make a backup.

Download the string at the end of this message to your 48. Compile
it using ASC->. Store the resulting library with 0 STO. Turn off 
your 48, then on again. You will see a short message when the lib-
rary installs.

Now press the LIBRARY menu key. There will now be a menu named
GATEWAY-48. In this menu you will find the following programs:

ASSIGN
------
Assigns the off key to the new off program OFFC. Turns on USER
mode.

NEWCODE
-------
Enables you to enter or change the code. Run this after installing
GATEWAY-48. The first time you run it, it will only prompt you for
the new code, but normally you must key in the old code as well.

REMOVE
------
Uninstalls the GATEWAY-48 library and clears key definitions. Also
removes the hidden code.

OFFC
----
The main code program. Turns off your 48 enabling the codelock.
When you turn it back on, you have to key in a four-digit code to
gain access to your 48. Note that it will not work if you haven't
selected a code using NEWCODE.


ADDITIONAL INFORMATION
======================
You can display a message of your own when you turn your 48 on by
storing a string under the name 'OWNER' in the home directory.

The codelock is not activated when the HP48 turns itself off to
preserve battery.

The OFFC user key assignment is sometimes cleared by other pro-
grams or actions. Pressing the USR key once or twice (depending on
the state of flag -61) or running the ASSIGN program will restore
it. 

The program ASC->, written by William C Wickes, has been posted at
Comp.sys.handhelds several times and is available from many FTP-
sites.

I will not provide source code.

----------------------------------------------------------------
GATEWAY-48 is Copyright Erik Bryntse 1991. Non-commercial distri-
bution allowed. I take no responsibility for any damages caused by
this program.
----------------------------------------------------------------

This program has been tested by people with different calculator
versions and different software and hardware. Much work have been
spent on correcting the reported bugs. Thank you all who helped me
with this!


Please send bug reports, questions, or suggestions to

Erik Bryntse
SHPRF (the HP User Club of Sweden)
Box 15061
S-700 15  OREBRO
SWEDEN

erikmb@cd.chalmers.se


DOWNLOAD FILE IN ASC-FORMAT
----------------------------------------------------------------
%%HP: T(3)A(D)F(.);
"04B201FD00A074144554751495D24383A096381D00000003CC006C7008963300
D9D20E1632521A129E2096380084E206034341323334378BF14563284E205034
3495543597632DCC02CFA20100384E2050343495543578BF1EFE02DCC02EB3A1
29E2096390093632B21308963200D9D20E1632041A1339202000000000003780
C741229E2096380047A2084E206034341323334384E20503434955435B2130EF
E02041A1339201000000000003190845223392010000000000002695D2C12189
17F791339206990000000000010E5FB1C9432D9D20E163227991CFA201003339
20200000000000378078BF1EFE02EFE0293632B21303F2A2387C1EF8918DBF19
3632B21308963400D9D20E1632858A1C2A20F700002020202020274144554751
495D24383A082369202542796B602242797E64737560213939313A0E7E7E7E7E
7E7E7E7E723E263E7E7E7E7E7E7E7E7E7E79C2A2485A193632B21308963500D9
D20E1632C2A20110007527F6E67612743A2485A1339209990000000000080F17
A193632B21308963100D9D20E163229E20963400521A129E209638003CE2284E
206034341323334378BF168BC1339201000000000000020279E1AFE22D9D20C2
A2051000F4C6460234F64656803A2485A129E209636003CE22167E1AFE2229E2
0963C005BF2229E209635005DF22B21305BF22D9D208DBF129E20963C00B2130
5DF22EB3A193632B2130CCD20FF0008FB97608FE316084F8F51110808F050408
AF0AF1AF2AF320134135AF320F37240A87816B432390BAE20813DBDA1FB01001
4F8088514D8F5E0103453721CA8DC75302030AD1A85CD43FD9761090A2FD97B0
090E7FE5D901C681B4CA3423000C2134D215608018F06110DAD280116015E00E
F201182824224844428884828963000D9D20E1632C9432D9D20E163229E20963
30093632B21303392010000000000031904F422339201000000000000269472C
193632B21308963700D9D20E1632218917F791339205990000000000010E5FB1
C9432D9D20E16322799129E2096390093632B21303F2A2387C1EF8918DBF1936
32B21308963800D9D20E1632C2A2050000E4A205100051B5000000000000E25A
1EB3A193632B21308963900D9D20E1632916C147A20E4A20510000FF00000000
00000E4A20510000000000000000000B2130F76C129E209634003CE224563284
E2050F475E4542597632FD33204B02F1732D9D20B21305DF2278BF168BC1ED2A
2167E1AFE22D9D20803A2485A1B21305BF228DBF15DF2229E20963B003CE22E4
A2051000FEF3000000000000E25A1167E1AFE2229E209637005BF22D9D20521A
129E209638004563284E2050343495543597632EFE02EB3A1CFA20100384E205
0343495543578BF1EFE02EFE02B21305DF22F76C193632B21308963A00D9D20E
1632916C147A20E4A20510000FF0000000000000E4A205100000000000000000
00B2130F76C129E209638003CE2284E206034341323334368BC1339201000000
000000020D9AE1AFE22D9D20FD332D9D20CFA20100384E2050343495543504B0
2B2130F17328DBF15BF22D9D2078BF14563284E2050343495543597632DCC024
563284E206034341323334397632DCC02B21305DF22B21305DF22041A1339202
00000000000378084412F76C129E2096390093632B21308963B00D9D20CCD207
920084F8FB9760D2066E20CCD20B720084F174E730F068FB976075F1580D26DC
08F51110808F200834712007D81412132102347220073814D0078AEA067B0678
02014234119208A6DE1641468082453721E2068082130AE1A01F690A5CA6C52F
A0190D7B808203814AF3F37670465A87A4C50F2307F69136194BD32033617123
917E220D2E61091FB010014F8088514D8F5E0101118DC7530208F2D760132340
8200EA1308D2F14034000100607CE4000630BD1A85CD4CED9742054FD97B1049
F0731A096590B4760CFE5D903C681B4CA3433000C2134D215608018F06110DAD
280116015E0902000318282422484442888482131B2950714210180824B0200E
281B4CA1008D3C87000603434132333435034349554358FCF110AF71BBA50714
61348F419E04341648F3F8E05008F67CE04C2B7B561BFAAF08082300039F6001
6C16A8F598E051C8D0F510B21308963C00D9D20E1632C2A2051000E456770234
F64656D13A2485A129E20963600C2A20F000014761696E6233A2485A129E2096
36003CE2292CF1167E1AFE22D9D204563284E206034341323334397632DCC02B
21305BF22D9D208DBF129E20963500B21305DF2293632B2130E4A2064000328F
F216FF6D3FF533FF005FF9A5FFAF6FF378FFAE8FFE29FFCCAFF24CFFAEEFFE4A
200B000000000000000000640000000094000660000000000000000000000000
000000000000000000000007400040F4646434300601435359474E4000602554
D4F4655420070E4547534F444541005300081000E200015000493DF63D"
----------------------------------------------------------------

   

bgribble@jarthur.Claremont.EDU (Bill Gribble) (02/21/91)

In article <9102181325.AA00534@quarl0.etek.chalmers.se> erikmb@etek.chalmers.se (Erik Bryntse) writes:

>After many months and hours of work on my codelock program
>GATEWAY-48, I have finally decided to post it. It is still not
>quite perfect (some problems have been reported when using control
>alarms) but my nerves and my studies do not allow any more work on
>this one. I hope you will find it useful!

Well, I installed it, and ran the assighn program.  The calc asked me for 
  a code. I entered one.  nothing happened.  Nothing continued to
  happen.  I hit on-C (realizing with a growing sense of dread that this
  woudn't work) Nothing stubbornly persisted in taknig place.  I hit
  the reset button.  nada.  I took the batteries out.. waited.. put 
 them back in.. the hourglass came on, but it was a funny color.  Nothing
  else.  Took the batteries back out.. and I'm waiting still.  If this
  doesn't work, we may have the first victim of the `may damage the hardware'
  warning...

                                   Bill Gribble
                               

cloos@acsu.buffalo.edu (James H. Cloos) (02/21/91)

In article <10897@jarthur.Claremont.EDU> bgribble@jarthur.Claremont.EDU (Bill Gribble) writes:
|In article <9102181325.AA00534@quarl0.etek.chalmers.se> erikmb@etek.chalmers.se (Erik Bryntse) writes:
|
|>After many months and hours of work on my codelock program
|>GATEWAY-48, I have finally decided to post it. It is still not
|>quite perfect (some problems have been reported when using control
|>alarms) but my nerves and my studies do not allow any more work on
|>this one. I hope you will find it useful!
|
|Well, I installed it, and ran the assighn program.  The calc asked me for 
|  a code. I entered one.  nothing happened.  Nothing continued to
|  happen.  I hit on-C (realizing with a growing sense of dread that this
|  woudn't work) Nothing stubbornly persisted in taknig place.  I hit
|  the reset button.  nada.  I took the batteries out.. waited.. put 
| them back in.. the hourglass came on, but it was a funny color.  Nothing
|  else.  Took the batteries back out.. and I'm waiting still.  If this
|  doesn't work, we may have the first victim of the `may damage the hardware'
|  warning...
|
|                                   Bill Gribble
|                               


Gateway crashed onmy version A as well.  ASSIGN worked OK, but when I went
to enter a code into the machine, it locked up after painting the "Enter a
code, please" screen.  ON-C failed, but the reset button did work for me.
(I should point out that I loaded it into an empty calc on my way into
recovering from another crash that led me to get a new battery for my RAM
card--everything's OK again, so far.)  The only thing that I lost in this
process was the gateway library.  Somehow, it got erased.  (Presumeably it
was corupted and since the crc wasn't right, the 48 gobbled it at the post
reset system halt.)

Is anyone else getting it to work.  (Or did Erik get bitten by the 'posting
an old, buggy version to the net' bug that I know has bitten me more times
than I care to recount! ;)

Happy hunting.

-JimC
--
James H. Cloos, Jr.		Phone:  +1 716 673-1250
cloos@ACSU.Buffalo.EDU		Snail:  PersonalZipCode:  14048-0772, USA
cloos@ub.UUCP			Quote:  <>

kenr@peabody.iusb.indiana.edu (Ken Rawlings) (02/21/91)

In article <60867@eerie.acsu.Buffalo.EDU> cloos@acsu.buffalo.edu (James H. Cloos) writes:
>In article <10897@jarthur.Claremont.EDU> bgribble@jarthur.Claremont.EDU (Bill Gribble) writes:
>|Well, I installed it, and ran the assighn program.  The calc asked me for 
>|  a code. I entered one.  nothing happened.  Nothing continued to
>| . . .
>|  else.  Took the batteries back out.. and I'm waiting still.  If this
>|  doesn't work, we may have the first victim of the `may damage the hardware'
>|  warning...
>|
>
>Gateway crashed onmy version A as well.  ASSIGN worked OK, but when I went
> . . .
>Is anyone else getting it to work.  (Or did Erik get bitten by the 'posting
>an old, buggy version to the net' bug that I know has bitten me more times
>than I care to recount! ;)


	Sorry to be a non-conformist, but yesterday I downloaded the file,
ran ASC-> on it, installed the library as instructed, ran ASSIGN, then ran
OFFC. Worked like a charm, and the addition of being able to have your 
name and number come up is really nice. 

	My setup is:

		48SX Revision E
		Equation Library Card

	Do you have any other libraries installed? Perhaps there is some 
type of conflict?


>|                                   Bill Gribble
>-JimC


			Ken Rawlings
--
-------------------------------------------------------------------------------
 Ken Rawlings / kenr@peabody.iusb.indiana.edu / Indiana University, South Bend
-------------------------------------------------------------------------------

am42+@andrew.cmu.edu (Alexander Paul Morris) (02/23/91)

I have the EQ library card in my HP48sx(E) and the Gateway library
loadedfine and works great!

    Alexander Morris                  "People die, things change...
    Carnegie Mellon                             It's sad."

degen@bnlux0.bnl.gov (christopher degen) (02/25/91)

In article <60867@eerie.acsu.Buffalo.EDU> cloos@acsu.buffalo.edu (James H. Cloos) writes:
>
>Is anyone else getting it to work.  (Or did Erik get bitten by the 'posting
>an old, buggy version to the net' bug that I know has bitten me more times
>than I care to recount! ;)
>

It works just fine on my REV. A, and seems quite robust. I tried quite
hard to defeat or crash it.

-Chris

    *******************************************************************
    *                                                                 *
    *   Christopher M. Degen             Phone:(516) 282-2492         *
    *   Brookhaven National Laboratory   FTS: 666-2492                *
    *   Building 923  Room 42            E-Mail:degen@bnlux0.bnl.gov  *
    *   Upton NY 11973                                                *
    *                                                                 *
    *******************************************************************