Post Reply 
HP 71B FORTH/Assembler ROM
09-03-2022, 02:23 AM
Post: #17
RE: HP 71B FORTH/Assembler ROM
(09-03-2022 01:40 AM)Garth Wilson Wrote:  
Quote:Regarding Forth on the 71B, as you are exploring and learning it, you will encounter Memory Lost far more often

Well, it has been a long time since I started into Forth, which was on the 71; but I already was familiar with stacks from the 41 and microprocessor work, and I don't recall ever having a crash in Forth on the 71. I did in BASIC with a particular bug in TRANSFORM though, and it was so bad I couldn't even bring it back with INIT:3.

Duly noted.

The HP-71B FORTH/Assembler ROM manual has lots of warnings (emphasis is mine) about memory lost and system reset issues, which aren't reassuring:

FORTH is similar to assembly language in its lack of user protection. In most cases FORTH will attempt to perform the specified operation, even if the operation will cause a Memory Lost condition. For instance, it is easy to write a FORTH loop that pushes a value onto the data stack 1,000,000 times. Execution of this loop will overwrite the user dictionary, the FORTH system variables, and the BASIC O/S variables. Eventually the machine will be too confused to continue and will perform a cold start. In other cases you might need to perform an INIT 3 to recover normal HP-71 operation.

Because of the complete access to the HP-71 memory space provided by FORTH, it is quite possible for a FORTH program to store inappropriate data into HP-71 operating system RAM. In many cases, this will cause a memory lost condition. Following a memory loss, the HP-71 will return to the BASIC environment.

Subroutine Return Stack. Return addresses are stored on an eight-level LIFO hardware stack. Subroutine call and return instructions automatically push and pop addresses on this stack. If a ninth address is pushed onto the stack, the oldest address will be lost and will be replaced by zero when it is eventually popped from the stack. Because the memory-reset code of the operating system resides at address 00000, excessive nesting of subroutine calls will cause a memory reset.

Anyway, still a great machine and ROM to learn Forth Smile

- Rob

"I count on old friends" -- HP 71B,Prime|Ti VOY200,Nspire CXII CAS|Casio fx-CG50...|Sharp PC-G850,E500,2500,1500,14xx,13xx,12xx...
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
HP 71B FORTH/Assembler ROM - kuzibro - 09-02-2022, 03:59 AM
RE: HP 71B FORTH/Assembler ROM - KimH - 09-02-2022, 09:16 AM
RE: HP 71B FORTH/Assembler ROM - robve - 09-02-2022, 08:42 PM
RE: HP 71B FORTH/Assembler ROM - KeithB - 09-02-2022, 12:09 PM
RE: HP 71B FORTH/Assembler ROM - rprosperi - 09-02-2022, 12:18 PM
RE: HP 71B FORTH/Assembler ROM - robve - 09-02-2022, 07:06 PM
RE: HP 71B FORTH/Assembler ROM - mfleming - 09-02-2022, 02:44 PM
RE: HP 71B FORTH/Assembler ROM - rprosperi - 09-02-2022, 06:52 PM
RE: HP 71B FORTH/Assembler ROM - rprosperi - 09-02-2022, 10:50 PM
RE: HP 71B FORTH/Assembler ROM - robve - 09-03-2022, 12:11 AM
RE: HP 71B FORTH/Assembler ROM - robve - 09-03-2022 02:23 AM
RE: HP 71B FORTH/Assembler ROM - rprosperi - 09-03-2022, 12:57 PM
RE: HP 71B FORTH/Assembler ROM - robve - 09-03-2022, 12:25 AM



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