Difference between revisions of "Troubleshooting"

From Ninerpedia
Jump to navigation Jump to search
m (Created page with "So your good old TI does not feel good recently? Or you have bought a console or expansion on the Internet and wonder whether something is wrong, or whether you just don't use it...")
 
 
(5 intermediate revisions by the same user not shown)
Line 3: Line 3:
We will discuss some trobleshooting strategies on these pages.
We will discuss some trobleshooting strategies on these pages.


LATER
== Video issues ==
 
Sometimes you can find weird screen outputs on real TI consoles, some of them shown on Ebay. In most cases the problem is a defect RAM circuit. The video memory is implemented by 8 circuits of TMS4116 (16K x 1); that is, each circuit hold exactly one bit of each byte.
 
Thanks to MESS, we can simulate various failure symptoms. For instance, when we apply an AND operation with byte 0x7F to every byte written to VDP RAM, the effect is the same as if the memory circuit for the leftmost bit has died - because the binary representation of 0x7F is 01111111. Likewise, if we AND the value 0xBF on each byte (0xBF = 10111111), the result should look as if the second RAM circuit is defect.
 
From experience we can say that dead circuits should cause these stuck-at-0 symptoms; we never saw a stuck-at-1 or other cross-dependencies.
 
<gallery caption="Video RAM failures" widths="150px" heights="150px" perrow="4">
Image:Vram_7f.png | Mask 01111111
Image:Vram_bf.png | Mask 10111111
Image:Vram_df.png | Mask 11011111
Image:Vram_ef.png | Mask 11101111
Image:Vram_f7.png | Mask 11110111
Image:Vram_fb.png | Mask 11111011
Image:Vram_fd.png | Mask 11111101
Image:Vram_fe.png | Mask 11111110
</gallery>
 
If you found your screen output in this gallery, you will have to replace the failing video RAM circuit on the board. The video RAM is on the left side:
 
[[File:Vram.jpg]]
 
The image shows the bit numbers on the circuits. Note that Texas Instruments uses a big-endian bit order, i.e. bit 0 is the most significant bit (2<sup>7</sup>), and bit 7 is the least significant bit (2<sup>0</sup>). Accordingly, if your failure symptom is Mask 11011111, this means bit 2 is stuck at 0.
 
== Disk-related issues ==
 
=== TI BASIC error codes ===
 
Error codes are two-digit codes like
 
I/O ERROR 56
 
First digit: Command which failed
 
{| class="plain"
! 0
! 1
! 2
! 3
! 4
! 5
! 6
! 7
! 8
! 9
|-
| OPEN
| CLOSE
| INPUT
| PRINT
|
| OLD
| SAVE
|
|
|
|}
 
Second digit: Error type
 
{| width="80%" class="plain"
! width="5%" | Code
! width="15%" | Meaning
! width="75%" | Explanation
|-
| 0
| Device not found
| The specified device could not be found in the system. This may happen when you spelled the device name wrong (like DKS1) or when you wrote it in lowercase.
|-
| 1
|
|
|-
| 2
|
|
|-
| 3
|
|
|-
| 4
|
|
|-
| 5
|
|
|-
| 6
| Device or media error
| The drive may be defect, the floppy disk scratched, the cables broken. Also, the floppy disk may require to be reformatted or replaced. This error is not caused by an improper use of the command but has physical origin.
|-
| 7
| File error
| The specified device was found, but not the file. Maybe the file name was misspelled or written in the wrong case.
|}
 
The lowercase issue is a particularly attractive trap for new users. The TI systems define everything in uppercase (with depressed Alpha Lock), the lowercase letters are mostly used for text display. Also, the lowercase letters are shown as small capitals. In doubt, write DSK1 with Shift held down.
 
 
=== Extended Basic error codes ===
 
=== Controller error codes ===
 
These are the error codes from the PHP1240 Disk Controller Card (the original TI disk controller). They are usually only seen during operations of the Disk Manager cartridge.
 
{| class="plain"
! width="33%" | Operation
! width="15%" | Code
! Meaning
|-
| Various operations
| style="text-align:center" | 06
| Device error, like track 0 not reached, no READY signal
|-
| Read Sector
| style="text-align:center" | 07
| Invalid sector number
|-
| Seek
| style="text-align:center" | 11
| Wrong track ID in header
|-
| rowspan="4" | Read Address (also during Read Sector)
| style="text-align:center" | 06
| Wrong side in header
|-
| style="text-align:center" | 21
| Sector header not found
|-
| style="text-align:center" | 22
| CRC error in sector header
|-
| style="text-align:center" | 23
| Byte buffer overflow (failure to fetch byte on time)
|-
| rowspan="4" | Write Sector
| style="text-align:center" | 28
| Compare error (data)
|-
| style="text-align:center" | 31
| Sector header not found
|-
| style="text-align:center" | 33
| Byte buffer underflow (failure to deliver byte on time)
|-
| style="text-align:center" | 34
| Write protection
|}

Latest revision as of 19:41, 25 May 2021

So your good old TI does not feel good recently? Or you have bought a console or expansion on the Internet and wonder whether something is wrong, or whether you just don't use it correctly?

We will discuss some trobleshooting strategies on these pages.

Video issues

Sometimes you can find weird screen outputs on real TI consoles, some of them shown on Ebay. In most cases the problem is a defect RAM circuit. The video memory is implemented by 8 circuits of TMS4116 (16K x 1); that is, each circuit hold exactly one bit of each byte.

Thanks to MESS, we can simulate various failure symptoms. For instance, when we apply an AND operation with byte 0x7F to every byte written to VDP RAM, the effect is the same as if the memory circuit for the leftmost bit has died - because the binary representation of 0x7F is 01111111. Likewise, if we AND the value 0xBF on each byte (0xBF = 10111111), the result should look as if the second RAM circuit is defect.

From experience we can say that dead circuits should cause these stuck-at-0 symptoms; we never saw a stuck-at-1 or other cross-dependencies.

If you found your screen output in this gallery, you will have to replace the failing video RAM circuit on the board. The video RAM is on the left side:

Vram.jpg

The image shows the bit numbers on the circuits. Note that Texas Instruments uses a big-endian bit order, i.e. bit 0 is the most significant bit (27), and bit 7 is the least significant bit (20). Accordingly, if your failure symptom is Mask 11011111, this means bit 2 is stuck at 0.

Disk-related issues

TI BASIC error codes

Error codes are two-digit codes like

I/O ERROR 56

First digit: Command which failed

0 1 2 3 4 5 6 7 8 9
OPEN CLOSE INPUT PRINT OLD SAVE

Second digit: Error type

Code Meaning Explanation
0 Device not found The specified device could not be found in the system. This may happen when you spelled the device name wrong (like DKS1) or when you wrote it in lowercase.
1
2
3
4
5
6 Device or media error The drive may be defect, the floppy disk scratched, the cables broken. Also, the floppy disk may require to be reformatted or replaced. This error is not caused by an improper use of the command but has physical origin.
7 File error The specified device was found, but not the file. Maybe the file name was misspelled or written in the wrong case.

The lowercase issue is a particularly attractive trap for new users. The TI systems define everything in uppercase (with depressed Alpha Lock), the lowercase letters are mostly used for text display. Also, the lowercase letters are shown as small capitals. In doubt, write DSK1 with Shift held down.


Extended Basic error codes

Controller error codes

These are the error codes from the PHP1240 Disk Controller Card (the original TI disk controller). They are usually only seen during operations of the Disk Manager cartridge.

Operation Code Meaning
Various operations 06 Device error, like track 0 not reached, no READY signal
Read Sector 07 Invalid sector number
Seek 11 Wrong track ID in header
Read Address (also during Read Sector) 06 Wrong side in header
21 Sector header not found
22 CRC error in sector header
23 Byte buffer overflow (failure to fetch byte on time)
Write Sector 28 Compare error (data)
31 Sector header not found
33 Byte buffer underflow (failure to deliver byte on time)
34 Write protection