Re: Merged Steps? Message #28 Posted by Andrés C. Rodríguez (Argentina) on 1 Aug 2011, 3:55 p.m., in response to message #1 by Tim Wessman
Merged steps were introduced in the HP25, IIRC. Around November 1975, HP published a 2page ad in Popular Electronics magazine (that's the one I had, perhaps there were other similar in other magazines) in which the HP25 was introduced. The HP25 was shown as a new programmable, with the HP65 and HP55 behind it in the main photo.
The HP 25 has only 49 program steps, but introduced what was then called "key phrases", meaning something similar to the "merged steps" of our time. As the possible commands were less than 256, each operation used just one byte, but this was not the main concern. Nobody was counting bytes, but we were surely counting the very scarce steps (or program lines).
I never had a 65 or 55, so this is not from direct experience, but I understand that a command like "GTO 33", "FIX 9" or "STO + 5" needed more than one program line (or step) on those models. In the HP 25, such operations take just one program step each.
The display showed the program line number on the left side and up to three keycodes (row and column, except for digits). For instance, if program step # 18 contains "GTO 10", the diaplay will show "18 13 10".
It's interesting to see how the available 256 opcodes were assigned to the possible operations on the HP25.
We had:
10 digits
10 FIX
10 SCI
10 ENG
08 conditionals
50 GO TO (GTO 00 was a special case)
06 trigs
02 >Rect & >Polar
01 Pi
04 logs
02 square and square root
01 power
02 1/x and %
02 INT and FRAC
01 ABS
03 Sigma +, and clear sums
02 Mean and Sdev
04 Basic Math
08 RCL
08 STO
32 STO arithmetic
03 Programming (STOP, PAUSE and NOP)
07 Stack & registers (Enter, x<>y, Roll Down, CLx, CHS, EEX, LASTx)
02 Clear Stack and Clear Regs
01 Decimal point
02 HMS and HR
03 Angular modes (DEG, RAD, GRAD)
194 in total.
Such an arrangement leaves some opcode space free, which was put to use on the HP29, but with many differences. For instance, having more registers and 98 program steps would not permit keeping the same scheme. Label addressing (instead of step number addressing) and secondary registers were some of the measures taken to keep opcode space. On the HP 67, the usage of register bank switching via the "P<>S" operation, and the separation of display mode and numberofdigits choice also were measures to keep opcode space (DSP 09 and FIXSCIEND consumed only 13 opcodes, instead of the 30 needed before).
Disclaimer: These data are just from my memory as I'm writing this answer, and are believed to be true; but I'm not doing research to fully support them, so there may be some inaccuracies. Detailed and precise information about opcodes in those old models are to be found in Eric Smith's works and also in articles in his web site.
[/pre]
