The FORTH/Assembler ROM is 48KB ROM extension of the HP-71B. It provides a FORTH implementation dedicated to the HP-71B specificities and, maybe more interesting, a resident assembler to develop LEX and BIN files on the HP-71B itself.
This revision provides updated versions of the soft-configured 16K ROM and hard-configured 32K ROM for use in emulators.
Although the soft-configured part can be installed alone in a physical HP-71B,
it has little interest without the hard-configured part.
The hard-configured part can only be used with software emulators and in ROM emulators.
Soft-configured ROM part
Content:
FORTH1B LEX 3460 12/19/20 17:46 Updated version 1B
EDTEXT BASIC 6790 02/23/84 12:00 Unchanged
EDKEYS KEY 54 02/23/84 12:00 Unchanged
EDLEX LEX 2384 02/23/84 12:00 Shrink version w/o SCROLL/MSG$
DBGLEX LEX 141 02/23/84 12:00 Unchanged
KEYBOARD LEX 1401 06/25/86 14:44 Updated to version C
STRUTIL LEX 1856 05/05/86 18:18 Combined STRINGLX & CUSTUTIL LEX
The FORTH1B LEX corrects the problem of HP-71B crash if the hard-configured part of the FORTH/Assembler is missing.
Now, a "XWORD Not Found" error is generated when executing FORTH or FORTHX without the hard-configured part installed.
The STRUTIL LEX provides the following utility keywords (part of the User Library 1):
52/01 KEYWAIT$
52/02 SCROLL
52/03 MSG$(#)
52/04 INLINE
52/05 KEYNAM$(#)
52/06 KEYNUM($)
52/07 STD$(#)
52/08 LTRIM$($,?$)
52/09 RTRIM$($,?$)
52/0A TRIM$($,?$)
52/0B RPT$($,#)
52/0C REV$($)
52/0D LWRC$($)
52/0E LWC$($)
52/0F ROT$($,#)
52/10 SPAN($,$,?#)
52/11 MEMBER($,$,?#)
52/12 SBIT$($,#,?#,?#)
52/13 SBIT($,#,#)
Only the two keywords SCROLL and MSG$ were previously provided by EDLEX in the FORTH Pac A.
Hard-configured part
The hard-configured part includes the corrections of the two main bugs of the assembler:
the B=B+B A opcode now has the correct opcode class,
the D1=AS opcode is now correctly assembled.
Version B - Dec. 2020:
Please contact me if you have any suggestions, bug fixes or enhancements to propose!
If you
want to modify and re-assemble the FORTH LEXs, you may need the following
tools:
(these are 16-bit DOS applications, use DOSBox on 64-bit systems)
You can also refer to this updated Entry Point List:
If you have more information on the FORTH/Assembler ROM history, or if you have bug reports or suggestions for improvement, please contact me:
J-F Garnier, 2020