Post Reply 
I have been very naughty
07-13-2017, 07:48 PM
Post: #1
I have been very naughty
and bought myself a TI-59. Really good condition at 30EUR, with a pack of magnetic cards, and it still works (seller could not test so he did not know). No corrosion and the Library Module included. Batteries are probably completely dead and no charger. I will treat this one as the black sheep in my collection ...

Regards, Meindert
Find all posts by this user
Quote this message in a reply
07-13-2017, 08:44 PM
Post: #2
RE: I have been very naughty
I thought the TI-59 card reader had the same gummy wheel problem as the HP-65/67/97/82104. Does yours still have the original wheel?

Congratulations, BTW. Annoying TI keyboard aside, the 59 was seriously cool in its day! :-)
Visit this user's website Find all posts by this user
Quote this message in a reply
07-13-2017, 11:59 PM
Post: #3
RE: I have been very naughty
Be sure to check out the materials here:

TI-59 material

especially the TI-59 Master Library Survival Guide

here!
Find all posts by this user
Quote this message in a reply
07-14-2017, 02:45 AM
Post: #4
RE: I have been very naughty
(07-13-2017 08:44 PM)Thomas Okken Wrote:  I thought the TI-59 card reader had the same gummy wheel problem as the HP-65/67/97/82104. Does yours still have the original wheel?

Congratulations, BTW. Annoying TI keyboard aside, the 59 was seriously cool in its day! :-)

Some have a problem, some don't. I've bought some 59's that still work fine and others leave a sticky black streak on cards. Wheel replacement is fairly simple. If I can do it, anyone can!

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
07-14-2017, 07:13 AM
Post: #5
RE: I have been very naughty
I had a TI-58 (no 'c') in the olden days.
I recently purchased RCL-59 on my phone, a fantastic emulator that finally allowed me to view the source code of the Pgm-02 (Linear Equations) in the Master Library, and to rewrite it, just for fun. 640 lines instead of 898, up to 9x9 for both equation solving and inverse (the Master Lib can't handle 9x9 solve), and four times faster for equation solving. Well, on the emulator. Will post if someone's interested.

Cheers, Werner

41CV†,42S,48GX,49G,DM42,DM41X,17BII,15CE,DM15L,12C,16CE
Find all posts by this user
Quote this message in a reply
07-14-2017, 12:15 PM
Post: #6
RE: I have been very naughty
(07-14-2017 07:13 AM)Werner Wrote:  ... source code of the Pgm-02 (Linear Equations) in the Master Library, and to rewrite it... Will post if someone's interested.
A write up is always welcome.

BEST!
SlideRule
Find all posts by this user
Quote this message in a reply
07-14-2017, 05:14 PM
Post: #7
RE: I have been very naughty
(07-14-2017 07:13 AM)Werner Wrote:  Will post if someone's interested.

Cheers, Werner

"If"??? Yes! It's always good to see other peoples code. If you could post the original as well (for those who can't get the source on their own), it would make a great comparison.

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
07-14-2017, 05:34 PM
Post: #8
RE: I have been very naughty
(07-14-2017 07:13 AM)Werner Wrote:  I had a TI-58 (no 'c') in the olden days.
I recently purchased RCL-59 on my phone, a fantastic emulator that finally allowed me to view the source code of the Pgm-02 (Linear Equations) in the Master Library, and to rewrite it, just for fun. 640 lines instead of 898, up to 9x9 for both equation solving and inverse (the Master Lib can't handle 9x9 solve), and four times faster for equation solving. Well, on the emulator. Will post if someone's interested.

Cheers, Werner

Is that "RCL-58" for Android by Paul Novaes? A search of the Android Play Store found RCL-58, but not -59. Or, perhaps you're using iOS?

I agree, please post your improved version when convenient. As for the original program, I'm not sure I want to enter 898 lines of a slower and less elegant program... if a better one is available.

In your improved version, are usage instructions and register use the same as the original and documented in the Master Lib manual and instruction card?

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
07-14-2017, 06:03 PM
Post: #9
RE: I have been very naughty
(07-14-2017 05:34 PM)rprosperi Wrote:  I agree, please post your improved version when convenient. As for the original program, I'm not sure I want to enter 898 lines of a slower and less elegant program... if a better one is available.

If you have a 59, you don't have to enter the program by hand, just copy it from the library module if you want a listing. Of course if you have a 58, that's not an option since the 58 doesn't have enough RAM to copy it to. You can run it on a 58 but not list it.

Tom L

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
07-15-2017, 12:07 AM
Post: #10
RE: I have been very naughty
My first calc was a TI-SR50A that my parents got me for Christmas 1975...
Find all posts by this user
Quote this message in a reply
07-15-2017, 04:34 PM (This post was last modified: 07-15-2017 04:35 PM by Dieter.)
Post: #11
RE: I have been very naughty
(07-14-2017 05:14 PM)toml_12953 Wrote:  If you could post the original as well (for those who can't get the source on their own), it would make a great comparison.

A listing of the original ML-02 program is not required. Listings for all ML programs are included in the Master Library Survival Guide which is available online.

Dieter
Find all posts by this user
Quote this message in a reply
07-15-2017, 11:29 PM
Post: #12
RE: I have been very naughty
(07-15-2017 04:34 PM)Dieter Wrote:  
(07-14-2017 05:14 PM)toml_12953 Wrote:  If you could post the original as well (for those who can't get the source on their own), it would make a great comparison.

A listing of the original ML-02 program is not required. Listings for all ML programs are included in the Master Library Survival Guide which is available online.

Dieter

Gene: The link for which was posted earlier Master Library Survival Guide by Fred Fish
Find all posts by this user
Quote this message in a reply
07-17-2017, 11:19 AM
Post: #13
RE: I have been very naughty
TI-58/59 Linear Equations

Thanks to the RCL59 emulator on my iPhone I have finally, after 40 years, been able to inspect the Master Library Pgm 02 code for solving simultaneous linear equations and matrix inversion. All I can say is that apparently not much time has been spent on it, so I set out to see if I could improve upon it.
Some thoughts:

  1. dot products
    dot products are inherently faster than axpy operations, because they use less STO instructions, and the way the axpy operation was implemented was very inefficient.
    Pgm 02 contained two dot product subroutines (one forward, one backward), but they are not used in the LU-factorisation.
    My version uses a single dot routine, used everywhere.
  2. unrolled loops
    .max order = 9, so max dot length = 8
    .speed improvement is about 11%, while it requires 100 extra steps. That does not seem worthwhile.
  3. permutation register
    .max order = 9, so permutations can be kept in 1 reg
    .i.o. 1..n, keep delta
    .this allows solving a 9x9 system, and a faster inversion algorithm
  4. UXL inversion
    Pgm 02 calculates the inverse from the LU-factorisation as inv(U)*inv(L).
    So it essentially performs three steps:
    - invert U
    - invert L
    - multiply U*L
    The fourth step (re-arranging the columns according to the permutations) is done reading out the columns of the inverted matrix, and is not included in the timing estimates of Pgm 02

    UXL inversion calc's X=inv(A) straight away, a row and col at a time, making max use of the dot product's speed and efficiency. It uses a work vector of length n, effectively overwriting the vector b if present
  5. HIR
    HIR's 7 and 8 are used. Moreover, the determinant is no longer in REG 06, but in HIR 08, as REG 06 now contains the permutations. As before, though, R07 contains n and R08 the first element of the matrix.
  6. interface
    In keeping with the 'minimal' interface, I decided to simplify it even further.

    A: input order n
    B: input column. column 0 or n+1 is considered the vector b. This allows
    entering A and b together, then executing D' to solve.
    B' output column (idem for col 0 or n+1)
    C: determinant
    D: solve, returns 0
    D': det+solve, returns 0
    E: invert, returns 1
    E': det + inverse, returns det

    D' and E' will return a flashing 0 when the determinant is zero.
    D, D' and E allow reading out the solution x or the inverse matrix by R/S
  7. results

    - 640 steps instead of 898, through code re-use
    - linear equations up to and including 9x9 systems
    - Determinant and LU-decomposition more than 3x faster
    - Inversion 2x faster

    Speed improvements due to inner loop optimisation.
    This does not even take into account that the original code did not put the columns in order after linear equation solve or inversion; rather, the output code showed the entries in the correct order. My version applies the permutations as well, before readout.
    The speeds are measured with RCL59 on my iPhone and may bear no relation to the true speeds. (ie. it is not certain that on a real 58/59 the speed improvements would be the same)


See the attached Excel for the code and some colourful aids if you want to understand the code in detail.

Cheers, Werner


Attached File(s)
.xlsx  TI59-LinEq.xlsx (Size: 38.16 KB / Downloads: 23)

41CV†,42S,48GX,49G,DM42,DM41X,17BII,15CE,DM15L,12C,16CE
Find all posts by this user
Quote this message in a reply
07-17-2017, 12:53 PM
Post: #14
RE: I have been very naughty
(07-17-2017 11:19 AM)Werner Wrote:  See the attached Excel for the code and some colourful aids if you want to understand the code in detail.

Thanks for sharing this Werner. Nice use of Excel to illustrate the matrix manipulations.

Are operating instructions for your improved program the same as the original?

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
07-17-2017, 02:42 PM
Post: #15
RE: I have been very naughty
Not quite. See point 6. of my post
Werner

41CV†,42S,48GX,49G,DM42,DM41X,17BII,15CE,DM15L,12C,16CE
Find all posts by this user
Quote this message in a reply
07-17-2017, 05:35 PM
Post: #16
RE: I have been very naughty
(07-17-2017 02:42 PM)Werner Wrote:  Not quite. See point 6. of my post
Werner

Touché! Thanks for gentle reply.

I read down about halfway and realized I needed to take out the original Master Library ROM manual for some of the references (which I have) and wondered about operating steps. Should have read more thoroughly before asking.

I will shortly have a 58C working and look forward to trying it out.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
07-19-2017, 11:24 AM
Post: #17
RE: I have been very naughty
The TI-66 is a good option if you want to experiment with programming old TIs, and don't care about using ROM modules. It's essentially a 58C, but much more robust (especially the keyboard), and with alpha display of program steps while editing.
Visit this user's website Find all posts by this user
Quote this message in a reply
07-19-2017, 02:55 PM
Post: #18
RE: I have been very naughty
(07-19-2017 11:24 AM)Dave Britten Wrote:  The TI-66 is a good option if you want to experiment with programming old TIs, and don't care about using ROM modules. It's essentially a 58C, but much more robust (especially the keyboard), and with alpha display of program steps while editing.

Yes, I have one of these too (Gene's influence is showing here...) though there's something very classic about the 58/59 series. I wanted a 59 for a long time, just run it side-by-side with my 25C and then 41C. Though I suspect the 66 is as fast or maybe even faster than the 58, the 66 just seems dead slow to me...

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
07-19-2017, 03:59 PM
Post: #19
RE: I have been very naughty
(07-17-2017 05:35 PM)rprosperi Wrote:  I will shortly have a 58C working and look forward to trying it out.



Gene: Won't be able to do that. 640 steps won't fit into a 58C... even IF you jiggle the real TI-58C to add an extra 32 program steps per here:

extra TI-58C program steps
Find all posts by this user
Quote this message in a reply
07-19-2017, 10:20 PM
Post: #20
RE: I have been very naughty
(07-19-2017 03:59 PM)Gene Wrote:  Gene: Won't be able to do that. 640 steps won't fit into a 58C... even IF you jiggle the real TI-58C to add an extra 32 program steps per here:

Thanks. I didn't recall (if I even ever knew) that the 59 had so much more memory than the 58, I thought the Card Reader was the only difference. So, the good news is I won't be typing in 640 steps... the bad news is I have to use the shoddy ROM routine. I'll get over it, but was thinking poking in those 640 steps would help teach me the keyboard....

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)