|The perfect functional layout of the HP-15C|
Message #17 Posted by Karl Schneider on 10 June 2006, 1:41 a.m.,
in response to message #9 by Karl Schneider
Recently, a few contributors have developed images of faceplates for conceptual scientific calculators, based on the Voyager and Pioneer platforms. Anyone who undertakes such an effort ought first to fully appreciate the careful thought and attention to detail encomapassed in the organization of its functionality on the HP-15C keyboard, and try to match that in his own concept.
While the cohesiveness and completeness of that functionality alone is impressive (as documented by Valentin Albillo in "Long Live the HP-15C" and short essays in the MoHPC Forum), I will describe how meticulously crafted the keyboard arrangement really was. Its impeccable organization adds value by making any function easy to find, thus saving time and effort. Thoughtful layout was very important, because the lack of an alphanumeric capability to allow softkey menus and named commands dictated a direct placement of every function on the keyboard.
The HP-15C was developed from the fine HP-11C, augmented by extensive amounts of advanced functionality in the same compact package. HP even managed to slightly improve the layout while "shoe-horning" the new functions. An article in the May 1983 Hewlett-Packard Journal, "Scientific Pocket Calculator Extends Range of Built-in Functions", describes the engineering effort. (A scan of this article is available for purchase on CD #3 or DVD from the MoHPC.)
This is a case where annotated pictures would certainly help to illustrate, but I'll just provide links to two unmodified photographs against which to verify my descriptions:
One thing that stands out in these photos: The keyboard and faceplate do not look cluttered, despite the abundance of functions. This is because the two shift colors (yellow and blue) contrast well with both the faceplate and each other. Also, the beveled keys allow the blue shift functions to be printed directly on the keys, right below the primary key legends. Thus, everything is neatly arranged, with plenty of space between rows. (Compare that with an HP-33S!)
Here are the compact and coherent functional groupings I've identified on the HP-15C keyboard layout, which can readily be seen in the photo:
- Data entry: Keyboard rows 1-4, columns 6-9.
This category includes the numbers 0-9, decimal point, CHS, pi, EEX, ENTER, LASTx, Sigma+, and Sigma-. The handy backarrow for error-correction and deletion is in column 5, near but outside the group of "constructive" data-entry keys.
- Arithmetic: Keyboard rows 1-4, column 10.
This category includes /, *, -, and +. The four functions perform different operations based upon the types of the two input arguments -- real scalar, complex scalar, or matrix.
- Probability and Statistics: Keyboard row 4, columns 6-10.
This category includes Sigma+ and Sigma-, factorial and gamma function (x!), mean, standard deviation, linear regression, y-estimator, correlation coefficient, permutation, combination, and random number.
- Transcedental functions: Keyboard rows 1-2, columns 1-5.
This category includes trigonometrics, hyperbolics, logarithmic and exponential functions, reciprocal, square and square root, percent and delta-percent. All inverse functions are blue-shifted. 1/x is adjacent to yx to calculate general roots.
- Stack manipulation: Keyboard row 3, columns 3-5.
This category includes x<>y, roll down, roll up, and CLx.
- Storage-register access: Keyboard row 4, columns 4-5.
This category includes STO and RCL, which are used with A-E, I, (i), 0-9 and .0-.9, MATRIX, RESULT, and RAN#. Arithmetic operations are permitted in conjunction with virtually all of these identifiers.
- Program entry, navigation, and execution: Keyboard rows 2-3, columns 1-2.
This category includes P/R, GSB, GTO, R/S, LBL, SST, BST, and PSE.
- Display and angular mode: Keyboard row 1, columns 7-9.
This category includes FIX, SCI, ENG, DEG, RAD, and GRD.
- Conversions: Keyboard row 3, columns 7-9.
This category includes ->R, ->H.MS, ->RAD and their respective inverses ->P, ->H, and ->DEG.
- Flag and looping control: Keyboard row 2, columns 7-9.
This category includes DSE, ISG, SF, CF, and F?.
- Conditional testing: Keyboard rows 1-3, column 10.
This category includes x<=y, x=0, and the TEST command.
- Scalar parts and values: Keyboard rows 3-4, column 4.
This category includes FRAC, INT, and RND. (ABS is in row 1 -- a carryover from the HP-11C.)
- Matrix operations: Keyboard rows 1-2, column 6.
This category includes MATRIX and RESULT. Either of these would be used with a matrix identifier A-E, which are nearby. MATRIX can be used with a one-digit code 0-9, which are also nearby.
- Advanced functions: Keyboard rows 1-2, column 10.
This category includes SOLVE and INTEG, which would be used with labels A-E, 0-9, or .0-.9. The numerical labels are nearby.
- Clearing operations: Keyboard row 3, columns 2-5.
As indicated in yellow on the faceplate.
The HP-15C functions DIM, MATRIX, RESULT, x<>, SOLVE, INTEG, TEST, and Re<->Im replaced six conditional-test operations along with x<>I and x<>(i) from the HP-11C. This provided the following new functionality and improvements:
- The open-ended x<> replaced both x<>I, and x<>(i), and is also much more flexible: x<> can be used with I, (i), and with any directly-accessible numbered storage register (0-9 and .0-.9) or matrix identifier (A-E).
- DIM serves double-duty to dimension matrices and to manaully allocate the number of storage registers. This manual allocation -- which replaced the automatic allocation of the HP-11C -- was absolutely essential. It allowed the user to specify the amount of free memory available for matrices, complex number stack, SOLVE, and INTEG -- all of which were lacking on the HP-11C.
- The I and (i) functions serve double-duty on the HP-15C for complex-number operations, as well for indirect memory access. The I register can also be used for indirect access of matrices and with FIX/SCI/ENG (not supported in the HP-11C).
- TEST is used in conjunction with a single-digit code 0-9 that provides the remaining ten of the complete set of 12 conditional tests. (The HP-11C had only eight of the 12 tests.)
- All functions in the categories of "Conversions" and "Probability and Statistics" are adjacent to one another in the same row on the HP-15C. This is not true of the HP-11C.
- The Pi-entry function is closer to its shift key on the HP-15C than on the HP-11C.
- ABS is more useful on the HP-15C than on the HP-11C -- it can calculate the magnitude of a complex number, also.
- As a bonus, the HP-15C offers more flags than the HP-11C, as well as recall arithmetic (lacking on the HP-11C). The HP-15C also offers more than twice as much RAM, in order to make the matrix functions useful.
- MATRIX and RESULT -- instead of SOLVE and INTEG -- are placed next to the letters A-E, because MATRIX and RESULT would be used repeatedly when needed, whereas SOLVE and INTEG might be invoked only once or twice when used with A-E.
This excellence of design was made possible only by the careful thought and concerted effort that went into the HP-15C and its immediate predecessors, the HP-11C and HP-34C. These attributes are not particularly evident in the calculators and consumer-electronics products of today -- most of which are not intended to be enduring devices for long-term use. But, we should keep them in mind when using Photoshop or other software for our own concepts.
Edited: 11 June 2006, 8:00 p.m.