Tandy Pocket Computer
Encyclopedia
A Tandy Pocket Computer is one of a line of 1980s small pocket computer
s—calculator-sized programmable computing devices—sold primarily under the Tandy
or Radio Shack
brands, but were actually rebadged Sharp
and Casio
devices with different model names. They were given designations from PC-1 to PC-8. The PC-1, PC-2, PC-3 and PC-8 are Sharp devices, while the PC-4, PC-5, PC-6 and PC-7 were designed by Casio.
keyboard
, of either rubber capacitive
or membrane type
, to use for entering the names of scientific functions and programming commands, in addition to a traditional numeric keypad
. (The exception was the PC-7, which had a rectangular and alphabetically ordered keyboard, like most scientific calculators.) On some models, the alphanumeric
keypad had a different type, form factor, and location than the numeric keypad.
. Character widths in these models varied from 12 characters in the PC-4 and PC-7 to 24 characters on most of the rest. The displays also included some way of indicating operational mode, scientific mode, and other states and conditions.
The Casio models included lower-case characters. These were only for use in PRINT
statements, as lower-case commands and variables
were not accepted as with almost all BASIC programming machines.
In general, the two specific lines were not cross compatible, but there were compatibilities between lines. PC-1 programs would work unmodified on the PC-3 and on the PC-8 with changes for screen size, and PC-4 (26-3650B) programs would run unmodified on the PC-5, PC-6 and PC-7. The PC-2 was a completely unique architecture and was the only unit in the line allowing direct memory access with POKE, PEEK and CALL.
s could be entered to receive results. The Run mode also allowed the execution
of the BASIC programs stored in the device.
Instead of an "equals" key to initiate calculation evaluation, an "EXE" (execute) key was provided. This caused confusion with those who were used to traditional calculators. The = character was used only for variable assignment
, and evaluation tests in programs.
The input of simple calculations would be aggregated on the command line, and no results would be displayed until the EXE key was pressed. In some models, a special ANS variable was provided to reuse the results of the previous calculation; in others, the previous calculation was automatically included if the next calculation began with an operator.
Some valid calculation input examples (PC-8):
SIN40
10+2+(8*1)/7
TAN (LOG (√(4/3)))
On the Sharp models, there was only one line number
ing space. In order for multiple programs to exist on the device, they had to be written in different ranges of line numbers. For example, it was common to insert one program starting with line 100, and another program starting at line 200, etc. Valid line numbers in most models were from 1 to 999. To prevent run-on execution, each program had to finish with the END command, unless run-on execution was desired. On Sharp-derived units, labels could be inserted into the program, usually single characters such that in Run mode, that program could be executed by depressing a special DEF key followed by the key of that character. This was equivalent to an explicit GOTO
command to the first line number of that section of program, which was also a valid way to execute programs from Run mode.
In the Casio-derived models, the BASIC space was subdivided into segmented program spaces which could be numbered, cleared and executed manually, or could call each other.
Many of the devices included a special modifier key
to expedite the entry of BASIC commands as well as scientific function names. The most common commands would each be associated with a key, and the full command could be entered by depressing the special modifier key, followed by the associated key for the command.
In some models, BASIC and other commands would be converted into one-character tokens (converted to strings upon display) instead of being stored as whole strings.
An example of the BASIC programming accepted by the PC-x would be:
10 PRINT "Tandy Pocket Computers";
20 GOTO 10
30 END
This would endlessly scroll the message "Tandy Pocket Computers" across the screen repeatedly until the program was stopped.
to 12 KB
and up as far as 16KB
with the use of an available RAM card (only for some models). The option RAM cards varied in sizes from 1KB, 4KB and 8KB.
All user storage was taken from the same space, so allocation of arrays using DIM would decrease the available memory for program instructions, and vice versa. However, the storage space for one-character alphabetical variables was pre-allocated, and as a result the A array had special significance in many units. For example, in the PC-8, the A array actually pointed to the locations of the alphabetical variables, so A(2) pointed to the value of B, and so on. As a result, published programs for the device avoided the use of A as either an array or an alphabetical variable. On some models the entire variable space could be manipulated in this fashion.
function commands for use in Run mode. However, on many Sharp derived models, a special AREAD command was added to BASIC which would assign the current value on the display line to a given variable, which could then be used in a program. Combined with a defined key, this allowed very quick custom operation.
The program interpreter on the models did not provide human-readable error
information. Errors encountered either in program execution or calculation evaluation would be returned as one of 9 error codes, usually indicated by replacing the display with text such as "ERROR 4". On the PC-7 model the list of error codes was printed above the text keypad, and was included on the case of the PC-8, but with other models users not familiar with the meaning of each code would have to refer to the manual. Like other characteristics of this line, the meanings of the error codes were not necessarily equivalent from model to model.
Pocket computer
A pocket computer is a small calculator-sized handheld programmable computer.This specific category of computers existed primarily in the 1980s. Manufacturers included Casio, Hewlett-Packard, Sharp, Tandy/Radio Shack and many more.The programming language was usually BASIC, but some devices...
s—calculator-sized programmable computing devices—sold primarily under the Tandy
Tandy Corporation
Tandy Corporation was a family-owned leather goods company based in Fort Worth, Texas. Tandy was founded in 1919 as a leather supply store, and acquired RadioShack in 1963. The Tandy name was dropped in May 2000, when RadioShack Corporation was made the official name.-History:Tandy began in 1919...
or Radio Shack
Radio shack
Radio shack is a slang term for a room or structure for housing radio equipment.-History:In the early days of radio, equipment was experimental and home-built. The first radio transmitters used a noisy spark to generate radio waves and were often housed in a garage or shed. When radio was first...
brands, but were actually rebadged Sharp
Sharp Corporation
is a Japanese multinational corporation that designs and manufactures electronic products. Headquartered in Abeno-ku, Osaka, Japan, Sharp employs more than 55,580 people worldwide as of June 2011. The company was founded in September 1912 and takes its name from one of its founder's first...
and Casio
Casio
is a multinational electronic devices manufacturing company founded in 1946, with its headquarters in Shibuya, Tokyo, Japan. Casio is best known for its electronic products, such as calculators, audio equipment, PDAs, cameras, musical instruments, and watches...
devices with different model names. They were given designations from PC-1 to PC-8. The PC-1, PC-2, PC-3 and PC-8 are Sharp devices, while the PC-4, PC-5, PC-6 and PC-7 were designed by Casio.
Purpose
Pocket computers were an advancement over early programmable calculator designs. In addition to providing users with scientific math functions in a small portable package, the devices also understood a form of the BASIC programming language. They included a QWERTYQWERTY
QWERTY is the most common modern-day keyboard layout. The name comes from the first six letters appearing in the topleft letter row of the keyboard, read left to right: Q-W-E-R-T-Y. The QWERTY design is based on a layout created for the Sholes and Glidden typewriter and sold to Remington in the...
keyboard
Computer keyboard
In computing, a keyboard is a typewriter-style keyboard, which uses an arrangement of buttons or keys, to act as mechanical levers or electronic switches...
, of either rubber capacitive
Chiclet keyboard
A chiclet keyboard or island-style keyboard is a computer keyboard built with an array of small, flat rectangular or lozenge-shaped rubber or plastic keys that look like erasers or "Chiclets", a brand of chewing gum manufactured in the shape of small squares with rounded corners...
or membrane type
Membrane keyboard
A membrane keyboard is a computer keyboard whose "keys" are not separate, moving parts, as with the majority of other keyboards, but rather are pressure pads that have only outlines and symbols printed on a flat, flexible surface...
, to use for entering the names of scientific functions and programming commands, in addition to a traditional numeric keypad
Numeric keypad
A numeric keypad, numpad or tenkey for short, is the small, palm-sized, seventeen key section of a computer keyboard, usually on the very far right. The numeric keypad features digits 0 to 9, addition , subtraction , multiplication and division symbols, a decimal point and Num Lock and Enter keys...
. (The exception was the PC-7, which had a rectangular and alphabetically ordered keyboard, like most scientific calculators.) On some models, the alphanumeric
Alphanumeric
Alphanumeric is a combination of alphabetic and numeric characters, and is used to describe the collection of Latin letters and Arabic digits or a text constructed from this collection. There are either 36 or 62 alphanumeric characters. The alphanumeric character set consists of the numbers 0 to...
keypad had a different type, form factor, and location than the numeric keypad.
Design
The models provided a short one-line dot-matrix LCD display, to show the current line of input text, or a segment of it containing the cursorCursor (computers)
In computing, a cursor is an indicator used to show the position on a computer monitor or other display device that will respond to input from a text input or pointing device. The flashing text cursor may be referred to as a caret in some cases...
. Character widths in these models varied from 12 characters in the PC-4 and PC-7 to 24 characters on most of the rest. The displays also included some way of indicating operational mode, scientific mode, and other states and conditions.
The Casio models included lower-case characters. These were only for use in PRINT
Print
Print may refer to:*Printing, mostly using a printing press, but a process which may also refer to other methods of printmaking**Printing press, printing with moveable metal type, see also letterpress printing...
statements, as lower-case commands and variables
Variable (programming)
In computer programming, a variable is a symbolic name given to some known or unknown quantity or information, for the purpose of allowing the name to be used independently of the information it represents...
were not accepted as with almost all BASIC programming machines.
In general, the two specific lines were not cross compatible, but there were compatibilities between lines. PC-1 programs would work unmodified on the PC-3 and on the PC-8 with changes for screen size, and PC-4 (26-3650B) programs would run unmodified on the PC-5, PC-6 and PC-7. The PC-2 was a completely unique architecture and was the only unit in the line allowing direct memory access with POKE, PEEK and CALL.
Run
In Run mode, the command line could be openly used to execute one-line, non-BASIC operations. This is the normal mode used, from where arbitrary calculationCalculation
A calculation is a deliberate process for transforming one or more inputs into one or more results, with variable change.The term is used in a variety of senses, from the very definite arithmetical calculation of using an algorithm to the vague heuristics of calculating a strategy in a competition...
s could be entered to receive results. The Run mode also allowed the execution
Execution (computers)
Execution in computer and software engineering is the process by which a computer or a virtual machine carries out the instructions of a computer program. The instructions in the program trigger sequences of simple actions on the executing machine...
of the BASIC programs stored in the device.
Instead of an "equals" key to initiate calculation evaluation, an "EXE" (execute) key was provided. This caused confusion with those who were used to traditional calculators. The = character was used only for variable assignment
Assignment (computer science)
In computer programming, an assignment statement sets or re-sets the value stored in the storage location denoted by a variable name. In most imperative computer programming languages, assignment statements are one of the basic statements...
, and evaluation tests in programs.
The input of simple calculations would be aggregated on the command line, and no results would be displayed until the EXE key was pressed. In some models, a special ANS variable was provided to reuse the results of the previous calculation; in others, the previous calculation was automatically included if the next calculation began with an operator.
Some valid calculation input examples (PC-8):
SIN40
10+2+(8*1)/7
TAN (LOG (√(4/3)))
Prog
The Prog mode changed the input from a command line to a program editor. In this mode, BASIC programs could be entered one line at a time. Up and down arrow buttons were provided to scroll up and down through the program space. On most models, free calculations could not be entered in the Prog mode. Certain models, especially the Casio-derived ones, called this mode WRiTe mode.On the Sharp models, there was only one line number
Line number
In computing, a line number is a method used to specify a particular sequence of characters in a text file. The most common method of assigning numbers to lines is to assign every line a unique number, starting at 1 for the first line, and incrementing by 1 for each successive line.In the C...
ing space. In order for multiple programs to exist on the device, they had to be written in different ranges of line numbers. For example, it was common to insert one program starting with line 100, and another program starting at line 200, etc. Valid line numbers in most models were from 1 to 999. To prevent run-on execution, each program had to finish with the END command, unless run-on execution was desired. On Sharp-derived units, labels could be inserted into the program, usually single characters such that in Run mode, that program could be executed by depressing a special DEF key followed by the key of that character. This was equivalent to an explicit GOTO
Goto
goto is a statement found in many computer programming languages. It is a combination of the English words go and to. It performs a one-way transfer of control to another line of code; in contrast a function call normally returns control...
command to the first line number of that section of program, which was also a valid way to execute programs from Run mode.
In the Casio-derived models, the BASIC space was subdivided into segmented program spaces which could be numbered, cleared and executed manually, or could call each other.
Many of the devices included a special modifier key
Modifier key
In computing, a modifier key is a special key on a computer keyboard that modifies the normal action of another key when the two are pressed in combination....
to expedite the entry of BASIC commands as well as scientific function names. The most common commands would each be associated with a key, and the full command could be entered by depressing the special modifier key, followed by the associated key for the command.
In some models, BASIC and other commands would be converted into one-character tokens (converted to strings upon display) instead of being stored as whole strings.
An example of the BASIC programming accepted by the PC-x would be:
10 PRINT "Tandy Pocket Computers";
20 GOTO 10
30 END
This would endlessly scroll the message "Tandy Pocket Computers" across the screen repeatedly until the program was stopped.
Memory
The total memory capacity of the devices varied from 1 KBKilobyte
The kilobyte is a multiple of the unit byte for digital information. Although the prefix kilo- means 1000, the term kilobyte and symbol KB have historically been used to refer to either 1024 bytes or 1000 bytes, dependent upon context, in the fields of computer science and information...
to 12 KB
Kilobyte
The kilobyte is a multiple of the unit byte for digital information. Although the prefix kilo- means 1000, the term kilobyte and symbol KB have historically been used to refer to either 1024 bytes or 1000 bytes, dependent upon context, in the fields of computer science and information...
and up as far as 16KB
Kilobyte
The kilobyte is a multiple of the unit byte for digital information. Although the prefix kilo- means 1000, the term kilobyte and symbol KB have historically been used to refer to either 1024 bytes or 1000 bytes, dependent upon context, in the fields of computer science and information...
with the use of an available RAM card (only for some models). The option RAM cards varied in sizes from 1KB, 4KB and 8KB.
All user storage was taken from the same space, so allocation of arrays using DIM would decrease the available memory for program instructions, and vice versa. However, the storage space for one-character alphabetical variables was pre-allocated, and as a result the A array had special significance in many units. For example, in the PC-8, the A array actually pointed to the locations of the alphabetical variables, so A(2) pointed to the value of B, and so on. As a result, published programs for the device avoided the use of A as either an array or an alphabetical variable. On some models the entire variable space could be manipulated in this fashion.
Other notes
It was not possible to define new mathematicalMathematics
Mathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...
function commands for use in Run mode. However, on many Sharp derived models, a special AREAD command was added to BASIC which would assign the current value on the display line to a given variable, which could then be used in a program. Combined with a defined key, this allowed very quick custom operation.
The program interpreter on the models did not provide human-readable error
Error
The word error entails different meanings and usages relative to how it is conceptually applied. The concrete meaning of the Latin word "error" is "wandering" or "straying". Unlike an illusion, an error or a mistake can sometimes be dispelled through knowledge...
information. Errors encountered either in program execution or calculation evaluation would be returned as one of 9 error codes, usually indicated by replacing the display with text such as "ERROR 4". On the PC-7 model the list of error codes was printed above the text keypad, and was included on the case of the PC-8, but with other models users not familiar with the meaning of each code would have to refer to the manual. Like other characteristics of this line, the meanings of the error codes were not necessarily equivalent from model to model.