key41

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
FILES
REFERENCES
EXAMPLES
BUGS
AUTHOR

NAME

key41 - a filter to list an HP-41 key assignment file

SYNOPSIS

key41 [-h] [-x xrom_file ] [-x xrom_file ] ... < Input file > Output file

key41 -?

DESCRIPTION

key41 is a filter which produces a listing of an HP-41 key assignment file. The key definitions are read from standard input, and a human-readable listing is produced on standard output.

In general, assignments are displayed based on how they behave when stored in the HP-41 program memory (and to a lesser extent when they are executed in RUN mode), rather than how they are previewed on the HP-41 display.

By default, functions contained in plug-in modules are displayed as XROM rr,nn where rr is the number of the plug-in ROM and nn is the number of the function within that ROM. This can be overridden by loading xrom_files, see the -x option below.

OPTIONS

-h

Display the bytes (in hexadecimal) that comprise the key definition, rather than attempting to decode it.

-x xrom_file

Use xrom_file to define names for functions in plug-in modules. This option may be repeated to load multiple xrom_files.

-?

Print a message giving the program usage to standard error.

FILES

xroms/*

xrom function definition files. The format of these files is given in the prog41(1) manpage. Use the environment variable LIFUTILSXROMDIR to point to the location of this directory. On Linux the default location is /usr/share/lifutils/xroms, if the variable is not specified.

REFERENCES

The format of an HP41C key assignment register is documented in many books. Amongst the most useful references are Extend Your HP41 (W. A. C. Mier-Jedrzejowicz) and The HP41 Synthetic Programming Quick Reference Guide (Jeremy Smith)

EXAMPLES

If disk1.dat is a LIF disk image containing an HP41 key assignment file called KEYS then

lifget -r disk1.dat KEYS | key41 -x hpil -x time

will produce a listing of the keys to standard output, with the standard names for the functions in the HPIL module and time module.

BUGS

Some of the more exotic synthetic assignments may not be displayed correctly, although an attempt has been made to handle synthetic programming. The common synthetic assignments, such as 2-byte standard functions, byte grabbers and eG0BEEP should be correctly displayed. If in doubt, use the -h option to display the assignments in hexadecimal.

AUTHOR

key41 was written by Tony Duell, ard@p850ug1.demon.co.uk and has been placed under the GNU Public License version 2.0