The TI-59 Programmable Pocket Calculator


This page is dedicated to the Texas Instruments TI-59 programmable pocket calculator - for me it is, was and will always be the best programmable pocket calculator ever and not even HP developed anything comparable to it (please note, this is my oppinion - I know there are many HP calculator enthusiasts out there who are sure that there is nothing which can beat an HP calculator - it is just a matter of personal preference :-) ).

The TI-59 was developed by Texas Instruments and introduced to the market on May 24th, 1977, so this year (2007) is the 30th anniversary of this wonderful gadget.

Happy birthday, dear TI-59, happy birthday to you!

In the following I will try to give some background information concerning the hardware and architecture of the machine as well as programming information, links to other TI-59 pages on the net, etc. Please use the following links to navigate through this page:

  • Basics: Description of the basics of the machine.
  • TI vs. HP or AOS vs. RPN: The ever lasting fight between TI and HP enthusiasts about the particular advantages of "their" machines.
  • Programming the TI-59: A short introduction to programming.
  • Technology and packaging: Some background information about the technology, circuitry and packaging of the TI-59.
  • Replacing battery packs: Over the years nearly all of the original battery packs have become defective, so some way to replace these modules is necessary. This part shows how old battery packs may be replaced by more recent accumulators.
  • Buying a TI-59: From time to time TI-59 calculators can be found at flea markets or online auctions. This section will give some tips and tricks which may be useful.
  • Other TI-59 resources on the net: Some useful links to other pages dedicated to the TI-59.


When the TI-59 was introduced in 1977 it was an instant hit and a very strong (in some vital points even superior) competitor to HP's flagship model of 1976/1977, the HP-67. Its price tag showed a remarkable 299.95 USD (remember, this was 1977, so although a reasonable price for a calculator like the TI-59, this was a lot of money).

Display and keyboard:

The TI-59 is the most powerful calculator having a LED seven segment display - all of its more powerful successors came with LC displays. The display of the TI-59 consists of 12 digits of which 10 are used to display a number (the internal precision is 13 digits). The leftmost digit displays a stylized "C" (as an abbreviation for "Calculating") when the calculator is actually performing a calculation.
The keyboard of the TI-59, shown in the picture on the right, contains 45 keys which allow access to way more than 100 different functions by using a shift key "2nd" and an inverse function key "INV". The latter proves to be very useful during actual calculations since it helps to avoid a cluttered keyboard with four and more functions per key as was not unusual on HP calculators.

When you have a look at the keyboard you will notice that there are keys for LN and LOG, but no keys denoted EXP or 10**X. These functions can be accessed using the corresponding LN/LOG keys by preceding those with the INV key, since EXP is the inverse function of LN, etc.

ROM modules:

In addition to the extreme number of built-in functions, the TI-59 featured so called solid-state modules - exchangeable ROM modules which were placed in a special socket under a cover on the rear of the calculator.

Every calculator came with the so called "Master Library Module" which contained 25 preprogrammed programs for performing such different tasks as calculator diagnostics, complex number arithmetic, trigonometry, random number generation, statistical operations, calculation of days between dates, simple games, etc.

These solid-state modules proved to be a key to the success of the TI-59 since there was quite a wide variety of modules - even some OEMs and other companies produced their own solid-state modules to make the TI-59 fit into their application niche. A wonderful example is the special ROM module developed for the United States Marine Corps to calculate takeoff, landing, etc.

In addition to that wealth of built-in functions and additional functions provided by exchangeable ROM modules, the TI-59 is a fully programmable calculator and supports conditional jumps, subroutine calls, indirect addressing, etc. ...everything a full fledged computer needs, so the possibilities of this calculator are nearly endless and only limited by your imagination, your creativity and the amount of available memory of the calculator.


The main memory of the TI-59 consists of four integrated RAM circuits TMC0598 containing 1920 bits each, resulting in a total amount of memory of 960 bytes which was an incredible amount of RAM for a pocket calculator in 1977 and was about four times more than its competitor device, the HP-67 offered. (Its smaller cousin, the TI-58 had only half of this memory capacity.)

The main memory is divided between an area reserved for program steps and an area for data memory cells. The initial setup of the calculator is 480 program steps and 60 data memories.

One program step occupies one byte (or two nibbles which is more appropriate since the CPU of the TI-59 is a four bit processor TMC0501) while a single data memory occupies eight bytes (or 16 nibbles) - 13 digits for the mantissa, two digits for the exponent and one digit for the sign.

Magnetic cards:

One of the most important features of the TI-59 is its built-in magnetic card (strip) reader/writer which allows to store 240 bytes on each of its two sides, so the total memory of a TI-59 can be stored on two magnetic cards and reread whenever necessary. This allows permanent program storage and encouraged a lot of people and companies to develop specialized programs and distribute them by means of prerecorded magnetic cards.

Power supply and batteries:

Like most of its high priced competitors, the TI-59 got its electrical power from a custom rechargeable battery pack which mounted on the back of the calculator. Normally these battery packs allowed several hours of operation (depending on the number of card read/write operations), but due to the high power consumption of the calculator which exceeds 200 mA during card operations the battery packs normally degraded quite fast.

Today it is nearly impossible to find a vintage battery pack in an operational state. If you find a calculator with a dead battery pack, remove it immediately but do not throw it away! You will need the custom plastic enclosure to build a replacement pack as will be shown in a following section.

The rechargeable batteries required the use of an AC adapter - it is possible to run the calculator with the AC adapter only, but not recommended (the batteries are used to filter the ripple from the simple Graetz rectifier bridge in the calculator). If you have to do this, it is recommended to replace the batteries by a large electrolytic capacitor (about 1000 uF). (Please note that I do not take any responsibility for damage to your calculator, the AC adapter or yourself!)

When running with AC adapter power only (i.e. the batteries are completely empty or have been removed) you can not read or write magnetic cards reliably or at all since the maximum output current of the AC adapter is too small for the rather huge currents drawn by the card reader. Such operations are only possible with charged batteries in place!

Basic operations:

The TI-59 features an input method called AOS (algebraic operating system) which allows the user to enter most calculations in the very same way they are normally written down. The TI-59 knows about operator precedence rules as well as it supports parentheses (up to six levels deep). So it is possible to enter
( 2 + 3 ) * 4 - 5 * 6 + 7 =
to get the correct answer -3.

Some calculations require a value to be entered several times as in the following, simple example:
2 + 1.234567 * 1.234567 =
Unlike other calculators the TI-59 allows to repeat the last number by pressing the CE key, so the formula above may be entered conveniently as
2 + 1.234567 * CE =
Please note that the CE key only repeats the last value entered. In other circumstances it acts like every CE key on a calculator.

Some problems can be simplified by storing and retrieving values during a lengthy calculation. This can be done by using the STO and RCL functions of the TI-59. Both operations expect an address as their postfix operand (remember that the standard memory partition yields 60 data registers, numbered from 00 to 59).

Typing STO 00 will store the value currently being displayed in the data register 00, while RCL 02 will recall the value previously stored in data register 02, etc.

Using programs from library modules:

As mentioned already, there is a plethora of useable programs stored in solid state modules which can be plugged into the calculator. Most (all?) of these programs can be used as stand alone programs although it is possible to use parts of these programs in user written programs (this will not be covered in the following).

To run a program from an installed solid-state module you have to know its program number. Activating the program is then simply performed by entering
2nd PGM xx
where xx denotes the desired program number. As an example, we will calculate the factorial of 10 using program #16 from the master library module:
2nd PGM 16
10 A
This will yield the correct answer 3628800. The possible entry points of such ROM based programs can be found in the module's documentation. Here A is used to enter the number itself, while C yields the corresponding factorial.

TI vs. HP or AOS vs. RPN

There is an ongoing and probably never ending debate between TI and HP proponents about the "ideal" way of operating a calculator. While TI people favor an algebraic input method like AOS, the HP fraction proposes the use of RPN (reverse polish notation). Both techniques have particular benefits and drawbacks and it is just a question of your personal liking which method you, personally, prefer.

Although I have used HP calculators for many years and I even own quite a few of them (HP-25/28S/35/45/48GX) I still prefer the TI way of communicating with my calculator. It is not that I dislike HP or that I can not think the RPN-way (I did quite a lot of Forth when I was younger :-) ), it is just that the TI-59 is nearer to a conventional computer when it comes to programming than a HP calculator (this does not hold true when you think of old Burroughs mainframes or funny Forth processors as conventional computers).

Let us have a look at a simple example: To calculate (2+3)*4 on a TI-59 all you have to do is to type in
( 2 + 3 ) * 4 =
while solving the very same problem on a typical HP pocket calculator (the HP-71B and HP-75 would be different!) would require you to enter the following sequence of keys:
2 ENTER 3 + 4 *
OK - it is not too difficult (it is not difficult at all) and when you are used to RPN you do not even have to think about transforming an equation from infix notation to RPN. But for people thinking in a very traditional arithmetic way, the TI-59 is still more convenient to use than a RPN based calculator. You just have to decide for yourself whether you prefer the TI way of entering equations or the HP way. Do not make a religios war out of this! :-)


Programming the TI-59 is very simple and straight forward: A TI-59 program consists of a number of steps you enter on the keyboard which will be repeated automatically at every program run. In addition to the normal keyboard functions found on more or less every advanced pocket calculator, the TI-59 has provisions for conditional and unconditional branching and subroutine calling, etc.

Entering programs:

To write a program you have to enter the learn mode by pressing the LRN key. This will result in a display as shown on the left. The three leftmost digits show the current address where the instruction to be entered will be stored while the two rightmost digits show the decimal instruction code currently stored at this memory location.

Let us write a simple example program which will increment a given number by 1 in an endless loop and display the resulting values. If this problem had to be solved manually you might enter a command sequence like
+ 1 =
over and over again, so this will be the main part of our program. After storing a result value in the display register by using the = operation we will have to pause the calculation for a short moment to display this particular value which is done by the PAUSE instruction. After this the loop should start all over again. Putting everything together yields the following simple program (press LRN to enter the program and leave the learn mode by pressing LRN again after you entered the final RST instruction):
000 +       Add one to the value currently being displayed
001 1
002 =
003 PAUSE   Display the new value
004 RST     Reset the program counter, thus continuing at location 00
As you will have noticed, the program counter displayed in the three rightmost digits of the LRN mode display has been incremented automatically after every instruction entered. After leaving the learn mode by pressing LRN again after finishing program input, the program counter has to be reset in order to start the program beginning at location 000. This is done by pressing RST.

Now the stage is set to run the counting program. After pressing RST the program counter contains 000 and execution of the program can be started by pressing R/S (run/stop). The programm will now run until you press R/S again.

Of course, this program is very crude. The main objection is the use of the RST instruction to repeat the loop. If this were the only way to affect the program counter, the programming capabilities of the TI-59 would be severely restricted. Normally RST is not used to control the overall program flow, instead unconditional and conditional jumps (GTO) are used to implement loops, etc.

Using GTO an enhanced version of the program may look like this:
000 +       Add one to the value currently being displayed
001 1
002 =
003 PAUSE   Display the new value
004 GTO 000 Jump to location 00
Referencing an address like this is called absolute addressing. Its advantage is that it is very fast, but using it in a complex program - especially during the development of the program itself - is rather cumbersome since addresses may not be known exactly in advance. To circumvent this the TI-59 supports so called labels which may be used instead of absolute destination addresses in GTOs, etc. A version of the above program using a label might look like this:
000 LBL A   Define a label called A
002 +       Add one to the value currently being displayed
003 1
004 =
005 PAUSE   Display the new value
006 GTO A   Jump to the location of label A
The disadvantage of this technique is the lack of speed - the TI-59 has to scan its program memory beginning by address 000 for every label referenced by a GTO or equivalent operation. So labels placed at the top of a program will be reached quite fast while referring to labels placed at the end of the available memory can take up to two seconds! Please note that labels are not restricted to A-E and A'-E' - a lot of other symbols and operations can be used as labels - even something like LBL = is possible!

A production program will normally not use labels as the destination of GTO or SBR (subroutine call) instructions. But labels can still be very useful to control a program:

The top row of keys on the TI-59 is denoted by the letters A to E and A' to E' - these can be used to jump to a label with a corresponding name by merely pressing the desired key! So a program containing more than one entry point does not have to be started by pressing R/S (which will continue operation at the location the program pointer currently points to) - instead its different entry points can be activated by using the aforementioned keys. All programs in the master library module make frequent use of this technique.

Working with magnetic cards

Using the built-in card reader/writer it is possible to store programs on magnetic cards with the option of reading them into memory anytime they will be needed. A magnetic card has two sides each capable of storing 240 bytes while the complete main memory of the TI-59 is 960 bytes in size. So two cards are necessary to backup the complete memory contents of the calculator. Shorter programs will only require half of a card or one card, depending on their size.

To write a card, you have to enter the number of the memory bank to be written to the card (ranging from 1 to 4) and press 2nd WRITE. The calculator will then display a faint "C" in the left most digit and wait for a card being inserted into the card reader/writer. After writing the card, the display will either show the number of the memory bank (in this case the write operation was successful) or display a blinking value indicating an unsuccessful write operation.

Reading a card is simpler - just make sure that the display register contains the value 0 and insert a prerecorded card into the card reader/writer. After reading the card successfully the display will show the number of the bank which was copied to memory. (It is possible to redirect card contents to different banks than they were recorded from - more information about this can be found in the user manual of the TI-59).

Example programs

The following section contains some example programs (only one, currently), most of which have been written by me. Please do not expect works of art - there are always ways to save time or program space - these programs were written just for fun and mostly at very late night. :-)

  • The (N/2, 3N+1)-problem: Many years ago Stanislaw Ulam developed the following simple algorithm: Take a number, if it is even, divide it by two, if it is odd, multiply it by 3 and add 1. Continue this process and watch the values changing. Due to my knowledge, it is still unknown how this sequence of numbers behaves for arbitrary initial values. It is not known if all numbers will eventually end in a short cycle (1, 4, 2), etc. The following program (written by me on 17-MAR-2007) will help you to explore the behaviour of this algorithm - it takes about 1 second for one iteration on a TI-59. To display the sequence following a particular number, enter the number and press A. When the program halts you will see the sequence length (until reaching 1) in the display.

    000 LBL A    Entry point
    002 STO 00   Store start value in register 0
    004 CP       Clear X register
    005 0
    006 STO 02   Store 0 in register 2, the sequence length counter
    008 RCL 00   Begin of loop - get next iteration value
    010 /        Divide by 2
    011 2
    012 =
    013 STO 01   And remember the result in case the number was even
    015 INV INT  Have a look at the decimal places of the result
    017 X=T 041  If the decimal part is zero, the number was even, jump to 041
    020 RCL 00   If the number was not even we will end here
    022 *        Get the iteration value again and multiply by three
    023 3
    024 +        Add one
    025 1
    026 =
    027 STO 00   And remember the result for the next iteration
    029 OP 22    Increment the sequence length counter held in register 2
    031 PAUSE    Display the current iteration value
    032 -        Subtract one
    033 1
    034 =
    035 X=T 046  And test for zero, if zero, the sequence is terminated
    038 GTO 008  If it is not zero start the next iteration
    041 RCL 01   This is the part for even values, we already divided by two!
    043 GTO 027  Just remember the result and continue with printout and count
    046 RCL 02   The sequence has finally reached one, so we print the counter
    048 R/S      And stop
  • The following program is quite unelegant, I wrote it last night at about 2:30 AM when I was really tired but could not stop playing with my beloved TI-59. :-) It performs decimal to binary conversion and vice versa. To convert a given decimal value smaller than 1024 to binary, just enter the value and press A. To convert a binary value of up to 10 bits to decimal, enter the binary value followed by B.

    000 LBL A    Entry point for decimal -> binary conversion
    002 STO 00   Store the value to be converted
    004 0
    005 STO 01   Initialize the result register
    007 1
    008 STO 02   Initialize working register
    010 CP       Clear T register
    011 RCL 00   Begin of loop
    013 INT      Remove trailing decimal digits
    014 X=T 046  Jump to end if there is nothing to convert any more
    017 /        Divide the current value by 2
    018 2
    019 =
    020 STO 00
    022 INV INT  Get fractional part
    024 X=T 035  If even skip the following part
    027 RCL 02   Add a one on the right hand side of register 01
    029 +
    030 RCL 01
    032 =
    033 STO 01
    035 RCL 02   We will end here in both cases, even and odd
    037 *        Shift the 1 in register 2 one place to the left
    038 10
    040 =
    041 STO 02
    043 GTO 011  Next iteration
    046 RCL 01   The routine ends here
    048 R/S      Halt the program
    049 LBL B    Entry point for binary -> decimal conversion
    051 STO 00   Remember value to be converted, as before
    053 0
    054 STO 01
    056 1
    057 STO 02
    059 CP       Clear T register
    060 RCL 00   Begin of conversion loop
    062 INT      Remove fractional part
    063 X=T 046  We are finished if register 0 contains a zero
    066 /        Divide by ten to shift one place to the right
    067 10
    069 =
    070 STO 00
    072 INV INT  Get fractional part
    074 X=0 085  Even - nothing to do
    077 RCL 02   Odd - accumulate the contents of register 2 in register 1
    079 +
    080 RCL 01
    082 =
    083 STO 01
    085 RCL 02   We will end here in both cases, even and odd
    087 *        Multiply the contents of register 2 by two
    088 2
    089 =
    090 STO 02
    092 GTO 060  Next iteration of conversion loop
  • Maybe you like prime numbers as well as I do, and maybe you try to factor even numbers on car plates when you are bored. At least when it comes to divide by 17 in my head I always wish I had a pocket calculator handy who would do the factoring for me. :-) When I could not get to sleep a couple of days ago I decided to write a short factoring program for my TI-59 which you can find here in all its glory.

    To factor a number you just enter the number (after the program has been loaded) and press the A-key. After a short while the first (and only factor different from one if the number is prime) will be displayed. To get all of the remaining factors just press R/S until 1 will be displayed.

    000         LBL A               ! Start of program
    002         STO 00              ! Store number to be factored
    004         SQRT                ! Calculate the end of the division loop
    005         INT
    006         STO 02              ! Store this upper limit
    008         RCL 00              ! Get the number to be factored
    010 LP2     /                   ! Divide 
    011         2                   ! by 2
    012         =
    013         STO 01              ! Save the result
    015         INV INT             ! Get the fractional part
    017         CP
    018         INV X=T? 036 (NEXT) ! Two is not a prime factor
    022         2
    023         R/S                 ! Display 2 as a factor
    024         X<->T               ! Prepare compare for end of loop detection
    025         RCL 01              ! Is the result of the division smaller than 2?
    027         INV X>=T? 082 (END) ! Yes - that's it
    031         STO 00              ! No - store new, diminished number
    033         GTO 010             ! Next division by 2
    036 NEXT    3                   ! Now begin division by odd numbers
    037         STO 03              ! Store the next possible divisor
    039 LOOP    RCL 00              ! Recall number to be tested
    041         /                   ! Divide
    042         RCL 03              ! by next possible divisor
    044         =
    045         STO 01              ! Store result for future use
    047         INV INT             ! Get fractional part
    049         CP                  ! Clear T register
    050         INV X=T? 069 (SKIP) ! No divisor
    054         RCL 03              ! Recall the divisor
    056         R/S                 ! Stop to display it
    057         X<->T               ! Prepare test for end of loop
    058         RCL 01              ! Compare with the result of the division
    060         INV X>=T? 082 (END) ! Is it less than the divisor?
    064         STO 00              ! No - use it for the next loop
    066         GTO 039 LOOP        ! Next trial division
    069 SKIP    OP 23               ! Increment divisor
    071         OP 23               ! by two
    073         RCL 02              ! Check for end of loop
    075         X<->T               ! Store end value in T register
    076         RCL 03              ! Recall the current loop variable
    078         INV X>=T? 039 (LOOP)! End not reached - begin next iteration
    082 END     1
    083         R/S
    084         GTO 082             ! END

Technology and packaging

System overview

The picture on the left is copied from the "TI58/59 Service Manual", page 2 and gives an impression of the overall architecture of the calculator.

The heart of the machine is a 4 bit TMC0501 processor surrounded by four RAM ICs of 1920 bits each, two ROM and support logic chips, an interface chip for the card reader/writer, the necessary clock circuitry and a switching power supply generating three MOS compatible voltages.

Dissecting a TI-59

The following pictures show the dissection of a TI-59 which was performed on a rather battered unit I acquired at an online auction. It had a battery pack which was leaking for many years resulting in severe deposits of battery chemicals on the printed circuit board, etc.

Should you ever attempt to repair a TI-59 please keep in mind that it is based on very sensitive MOS devices, so be sure to work in an ESD safe place! Always wear an earthed wrist strap and use a conductive work mat connected to earth, too. Do not attempt to open your calculator unless you are experienced with working with MOS devices!

The picture on the left shows the back of the TI-59 with its battery pack and the solid state ROM module already removed - both steps are necessary prior to opening the case. To open the calculator remove boths screws on top of the back side, then slide the back gently down towards the ROM module socket until it comes free.

The picture on the right shows the interior of the calculator. (Note the blue discoloration due to debris from the deteriorated battery pack! These residues can be conductive and can cause all kind of trouble, so you have to carefully remove them.)

  • On the left the card reader/writer can be seen - this module also contains the power switch and is connected to the main printed circuit board by means of two flexible ribbon cables.
  • Next to the card reader/writer the two display driver circuits can be seen - the LM324 sitting right to them is the read amplifier for the card reader. The two metal pads once held the contact strips connecting the battery pack - they were already broken (please note that the right most connector of those two is marked with + denoting the positive supply voltage input).
  • The multi contact strip in the middle of the picture routes the eleven signal and supply lines between the calculator and the optional PC100A printer (by the way - I would love to get a PC100A - do you have one to sell or swap?).
  • Next to this from top to bottom are the clock generator with the ceramic filter (used instead of a quartz), the card read/write control IC, two stacked TMC0582 ROMs, the TMC0501 4 bit CPU and the switched power supply converting the single supply voltage from the batteries to the multitude of supply voltages necessary to power the MOS circuits.
  • The rightmost part contains four 1920 bit RAM ICs (top and bottom), an additional ROM and the socket for the solid-state module.

All in all there are 13 integrated circuits in the TI-59 - I doubt that any other pocket calculator can top this - not to mention the quite large amount of discrete electronics for the card reader/writer etc.

The picture on the left shows the interior of the calculator with the card reader/writer removed. Be careful not to bend the flexible connection wires when disconnecting them - this is a delicate procedure and requires some patience. :-) The row of soldering points on the far left connects the 12 digit display with the main printed circuit board.

On the right the card reader/writer module can be seen. On the bottom left is the power switch, in the middle of the picture the four track read/write head is visible. The other contacts belong to the two card sense switches.

The two following pictures show the back of the keys after removing the main printed circuit board with the keyboard attached to it. Be very (very!) careful not to shuffle the keys or even loose a key. Removing the foam rubber pad is delicate since the keys will stick to it! When you encounter bad key response you can try to replace this foam rubber pad.

The picture on the left shows the extracted main board with the keyboard attached. Do not attempt to remove the plastic sheet from the keyboard (do not even think about it). The whole contraption is quite fragile, so be very careful.

When you have severe keyboard problems, i.e. the keys do not really "click" but feel like marmelade instead when pressing them, you can try to insert a thin sheet of (slightly conductive) rubber foam between the printed circuit board and the keyboard. This is a delicate procedure but worked fine for me in two instances.

Replacing old battery packs

Most vintage battery packs have deteriorated during the last up to 30 years. The pack shown on the left is an actual example from a TI-59 I acquired at an online auction. I already removed it from its custom plastic enclosure. (Be careful at operations like these since the residue on the batteries is toxic and corrosive!)

Please note that (as always) I will not take any responsibility for any damage or injury which might result from attempts to perform any repairs and/or changes on your calculator, battery pack, etc.!

The picture on the right shows the now empty plastic battery holder without the two center restrainers which I had to cut to remove the original batteries. This enclosure will be used as a housing for a more modern NiMH battery pack with 2300 mA/h thus making up to ten hours and more of continuous operation of the TI-59 possible.

The replacement batteries are shown on the left - when you join these batteries be careful not to short them! 2300 mA/h is quite a lot of energy and you will at least need a new battery after such an accident. Be sure to tape the ends of the wires to avoid accidentally touching anything you would not like to touch (other batteries, your calculator's internals, etc.).

The picture on the right finally shows the new battery set installed in the custom enclosure. Since the TI-59 I bought had already broken contact fingers I decided to solder the wires directly to the appropriate contacts on the printed circuit board. A more careful restauration approach would require to salvage the contact pads from the original battery pack!

Using this battery pack my TI-59 can run for more than 10 hours on a continuous base - even at the end of this time span the batteries can supply enough current to reliably power the card reader/writer. Due to the very simple charging circuit (which, in effect, consists only of a series resistor) it takes about 15 hours to load this battery pack from a nearly empty state to full capacity!

Buying a TI-59

From time to time a TI-59 turns up at local flea markets or at online auctions. There might be some things to keep in mind before and while buying such a calculator:

  • When the calculator can be powered up and the master library module is installed, you can perform a quite thorough check of operation using program #1 from this library in the following way:
    2nd PGM 01  Activate program number 1
    SBR =       Jump to the subroutine with the label =
    After a couple of seconds the calculator will display the value 1 if its self test was completed successfully. Please note that this test does not involve any card reader/writer tests. If the display is different from 1 the calculator might have a serious problem.
  • If the calculator does not power on at all, do not worry. The most probable fault is a leaky battery pack. With a bit of luck it did not do much damage to the calculator itself, so even a TI-59 with a leaky battery pack and green and blue residue on its circuit board may be repaired with some patience. In the worst case a dead calculator may serve as a spare parts supply for other calculators of the same type.
  • Do not store calculators with their batteries installed! Always store the battery packs in sealed plastic bags apart from the calculators itself!
  • Normally it is not a good idea to run a calculator without its battery pack from AC power only. Especially HP calculators will be damaged by this practice! It is possible to use the TI-59 without its battery pack and the AC adapter only, but as already stated I will not take any responsibility for any damage or injury!
  • If you notice flakey keys this is no need to despair. In many cases this can be at least relieved by placing a thin mat of foam rubber between the keyboard and the printed circuit board thus intensifying the pressure against the keys.

Other resources on the net

  • Most of this page can be found in a set of slides which I prepared for the VCFE 2007.
  • One of the most informative web sites dealing with calculators in general and the TI-59 in special is Viktor T. Toth's homepage at R/S Programmable Calculators. His site also contains incredibly useful scans of the PPC Notes as well as a lot of TI manuals (including the Service Manual already mentioned).
  • Another wonderful site with lots of background information about Texas Instruments calculators is Jörg Wörners DATAMATH web site.
  • also is a valuable resource for information about this wonderful calculator.
  • Background information and documentation about more recent pocket calculators manufactured by Texas Instruments can be found on the company's calculator's homepage.

18-MAR-2007, 19-MAR-2007, 24-MAR-2007, 27-APR-2007, 24-JUN-2007