My primary TS1000 started misbehaving. Whenever I did any sort of INKEY$ loop, it would quit with either error 2 or 4. I thought it was a RAM wobble issue but after lots of contacts cleaned, the problem persisted. I decided to try switching out various ICs and discovered the ROM was the culprit.
The simplest failure example was this:
Code: Select all
10 LET K%=INKEY%
20 IF K%="" THEN GOTO 10
The machine would error out with either a 2 or 4 code. With a different ROM it worked. All my ROMs seem to be the same, as I ran a checksum and they all had the identically value.
Code: Select all
10 FAST
20 LET A = 0
30 FOR B = 0 TO 8191
40 LET A = A + PEEK B
50 NEXT B
55 PRINT “ROM TEST”
60 PRINT A
70 PRINT SQR 0.25
All three had a value of 855106 and printed 0.5 for the squarer root call. So question, why would a bad ROM chip, with its checksums ok, cause this kind of behavior?
Here are pics of each. The Motorola one is the bad ROM.