fin@norge.unet.umn.edu (Craig A. Finseth) (03/28/90)
Here is a partial emulator for a "traditional HP" 4-level stack machine. I only did the operations that I thought worthwhile (but I did do % !). ------------------------------------------------------------ Written by: Craig Finseth, University of Minnesota From: 24 Mar 1990 What: 4-Level Stack Emulator ( R4KEYS This contains the key definitions list for use in USER mode. R4INIT Saves the value in the Last X register. R4FINI Cleans up the stack, duplicating the 4th item, if present. R4LAST The Last X register. Keys Affected: key does /> SWAP Roll Down SQRT saves LASTX ^ saves LASTX INV saves LASTX /> DEL % properly / saves LASTX x saves LASTX /> 2 (Last Arg) recall LASTX - saves LASTX + saves LASTX Checksum: #14d Size: 528 ------------------------------------------------------------ %%HP: T(3)A(D)F(.); DIR R4KEYS { S \<< 4 ROLL \>> 36.3 \<< R4INIT \v/ \>> 44.1 \<< R4INIT ^ R4FINI \>> 45.1 \<< R4INIT INV \>> 46.1 \<< R4INIT OVER % \>> 54.3 \<< R4INIT / R4FINI \>> 65.1 \<< R4INIT * R4FINI \>> 75.1 \<< 'R4LASTX' RCL \>> 83.3 \<< R4INIT - R4FINI \>> 85.1 \<< R4INIT + R4FINI \>> 95.1 } R4INIT \<< DUP 'R4LASTX' STO \>> R4FINI \<< IF DEPTH 3 \>= THEN 3 ROLL DUP 4 ROLLD 4 ROLLD END \>> R4LASTX 7 END