• Please review our updated Terms and Rules here

SCSI in Tandy 1000 TL/2

mikem

Member
Joined
Sep 13, 2010
Messages
40
I have been trying to get a SCSI controller with hard drive and CDROM installed in my Tandy 1000 TL/2 for a while now. I think I MIGHT finally be close to making it happen, but I am still running into problems.

At the moment, I have an Always Technology AL-500 8-bit SCSI card (a.k.a. LF-S008AT or LS200 or Corel SCSI) with a Quantum DSP3107L 1.07GB hard drive and a generic SCSI CD-ROM drive connected. The SCSI card detects both drives at boot-up, but FDISK doesn't see the hard drive. I'm running the default "Tandy version" of MS-DOS 3.3. Do I need a later version of DOS, or is there some trick to getting this beast to recognize the drive? Assuming everything was working properly, should I just be able to run FDISK and start partitioning?

Thanks for any help you guys can give me.
 
I've got a Trantor SCSI card with a boot ROM in a Tandy 1000SX, connected to a 2GB external SCSI drive. Tandy DOS 3.2 for the SX sees the drive in fdisk with no issues and no drivers, though I normally use DOS 4.01 on the drive for additional capacity. Does your card have a boot ROM? You may need to load a driver prior to being able to access the drive.
 
I wouldn't think so but an upgrade to DOS 6.2 wouldn't hurt. I've been running a SCSI on a 1000SX for a long time and have never encountered a FDISK problem. You may want to check the motherboard setup. I'm not completely familiar with the TL but the SX has a 4 position DIP switch to select Video/HD IRQ's/etc. Check this link out: http://www.oldskool.org/guides/tvdog/1kfaq.html#II.D.1

Also, you may be locked in to a maximum of 32 MB for HD. If your SCSI presently has a non-DOS or larger partition that may be a problem. Try installing the SCSI setup in another PC and take a look at the partitioning setup through FDISK. Good Luck!
 
Ok so the DOS 6.22 didn't make any difference :(

I've ordered a Trantor 130B from eBay. HOPEFULLY that will do the trick... if not I might have to move on to a different XT clone as this thing is driving me bonkers!!
 
Ok so the DOS 6.22 didn't make any difference :(

I've ordered a Trantor 130B from eBay. HOPEFULLY that will do the trick... if not I might have to move on to a different XT clone as this thing is driving me bonkers!!

What's you configuration look like - boards, etc? Let's not give up yet. You really should check your SCSI's out one at a time. Make sure your SCSI device if properly identified and the terminations are correct on both ends - the controller and the SCSI drive.
 
Last edited:
Ok so the DOS 6.22 didn't make any difference :(

I've ordered a Trantor 130B from eBay. HOPEFULLY that will do the trick... if not I might have to move on to a different XT clone as this thing is driving me bonkers!!

Mine wouldn't work until I replaced the 8088 with a v20, but the TL/2 should work without any issues. My configuration is as such, going from Tandy to drive: Trantor SCSI card->25pin-68pin external SCSI cable->DataStacker 68pin SCSI enclosure->2GB 68pinSCSI drive. The Trantor also seems to have a 1GB limit for drives.

I haven't tried this set up with Tandy DOS though, only DOS 4.01, hopefully it works for you.
 
Looking through the 2.14 BIOS for the T130B, about the only non-8088 code are a couple of INS and OUTS instructions used to transfer data to/from the user buffer. There appears to be code that detects the CPU, and reverts to IN/STOS and LODS/OUT pairs, but perhaps it doesn't work Patching is easy in any case. Everything else in the BIOS is 8088-compatible.

The 1GB limit is perhaps a little more complicated, but hardly difficult. The ASPI driver may have some dependencies on 186 instructions, but I haven't checked that out yet.
 
What's you configuration look like - boards, etc? Let's not give up yet. You really should check your SCSI's out one at a time. Make sure your SCSI device if properly identified and the terminations are correct on both ends - the controller and the SCSI drive.

It's a stock TL/2 with a Trident VGA card (16-bit card jumpered to work in 8-bit mode) and the SCSI card -- currently an Always Technology AL500. I've tried a few different termination configurations, including:

SCSI - Hard Drive - CDROM (termination enabled)
SCSI - Hard Drive (termination enabled)
SCSI - Hard Drive - Terminator Block

The SCSI card has termination power enabled. All three of the above result in the SCSI card successfully detecting the devices, but FDISK doesn't dectect any fixed disks. I've tried connecting everything unterminated just to see what happens & the computer freezes up at the initial SCSI device detection point.
 
Looking through the 2.14 BIOS for the T130B, about the only non-8088 code are a couple of INS and OUTS instructions used to transfer data to/from the user buffer. There appears to be code that detects the CPU, and reverts to IN/STOS and LODS/OUT pairs, but perhaps it doesn't work Patching is easy in any case. Everything else in the BIOS is 8088-compatible.

The 1GB limit is perhaps a little more complicated, but hardly difficult. The ASPI driver may have some dependencies on 186 instructions, but I haven't checked that out yet.

That sounds promising. My HD is 1.07GB so I'm good with a 1GB limit.
 
I've ordered a Trantor 130B from eBay. HOPEFULLY that will do the trick...

I've mentioned a number of times (in your own threads even!) that the T130B will not work properly in the TL/2. If someone can figure that problem out, great, otherwise, prepare to be disappointed.
 
I've mentioned a number of times (in your own threads even!) that the T130B will not work properly in the TL/2. If someone can figure that problem out, great, otherwise, prepare to be disappointed.

Try it; tell me what happens. I've got the disassembled BIOS--if it's a simple problem with that, it's easy enough to remedy. Under the wraps, the T130B is nothing more than an NCR 53C80-based controller with some fancy logic to remap the memory-mapped I/O back to I/O space.

As shipped, the T130B does not provide termination power; however, that's easy enough to remedy with a diode and a fuse added to the card.
 
I don't think the problem is the T130B itself - I currently have one working just fine in a Tandy 1000 RLX, and have also used one successfully in a 1000 SX w/286-upgrade - it's more that this particular Tandy model doesn't seem to be able to boot from any of the addresses that the T130B presents itself as.

T-130B
------
CA00h
CE00h
DA00h
DE00h

T-128
-----
CC00h
C800h
DC00h
D800h

Again, the T128 is bootable in the TL/2, whereas the T130B is not. The solution may be nothing more than somehow allowing the T130B to be addressed similar to the T128, or perhaps modifying the TL/2's boot loader.
 
I've mentioned a number of times (in your own threads even!) that the T130B will not work properly in the TL/2. If someone can figure that problem out, great, otherwise, prepare to be disappointed.

Yeah I know, but I'm getting desperate at this point... 8-bit SCSI cards are pretty rare in this day & age and I'm not sure what else to try. Worst case scenario I would just use the Trantor in another model of Tandy (if I can find a nice one) or sell it again.
 
I don't think the problem is the T130B itself - I currently have one working just fine in a Tandy 1000 RLX, and have also used one successfully in a 1000 SX w/286-upgrade - it's more that this particular Tandy model doesn't seem to be able to boot from any of the addresses that the T130B presents itself as.

T-130B
------
CA00h
CE00h
DA00h
DE00h

T-128
-----
CC00h
C800h
DC00h
D800h

Again, the T128 is bootable in the TL/2, whereas the T130B is not. The solution may be nothing more than somehow allowing the T130B to be addressed similar to the T128, or perhaps modifying the TL/2's boot loader.

Good to know that it works properly in a 1000 SX. That's the machine I'd rather have -- my first "real" computer was a Tandy 1000 SX, but I haven't been able to source a nice clean unit at a reasonable price.
 
Another option would be to install and boot from an XT IDE drive (using the TL/2's onboard controller), while using the T130B or AL-500 for the CD-ROM and any secondary storage.

I'd like to see you get some use out of the TL/2, and can provide you with such a drive (40MB), if you want to try this route.
 
I don't think the problem is the T130B itself - I currently have one working just fine in a Tandy 1000 RLX, and have also used one successfully in a 1000 SX w/286-upgrade - it's more that this particular Tandy model doesn't seem to be able to boot from any of the addresses that the T130B presents itself as.

T-130B
------
CA00h
CE00h
DA00h
DE00h

T-128
-----
CC00h
C800h
DC00h
D800h

Again, the T128 is bootable in the TL/2, whereas the T130B is not. The solution may be nothing more than somehow allowing the T130B to be addressed similar to the T128, or perhaps modifying the TL/2's boot loader.

Here's what I think is the problem. Try to stay with me on this one.

The T130B is I/O port mapped; the T128 is strictly memory-mapped. In most normal cases, this wouldn't be an issue, but the Tandy 1000 TL/2 is 8 bit ISA slotted only. The way the T130B BIOS is written is that it attempts to optimize transfer speed by using word string I/O (INSW/OUTSW) instructions if possible. The 8086/8088 doesn't have these, so it uses conventional IN/OUT byte instructions to transfer the data. In most cases, this is fine. But the TL/2 lacks 16-bit slots and, I suspect, cannot map a single 16-bit I/O transfer to two 8 bit ones.

The way the BIOS code checks for the 8/16 bit support is to use the following code:
Code:
    PUSH    SP
    POP     AX
    CMP     AX,SP
On the 8088, on a PUSH SP, SP is decremented before pushing onto the stack. On all other CPUs (80286...), it's decremented after pushing on the stack. So the T130B BIOS in this case is too clever by half. I wonder if the ASPI driver also suffers from the same issue--I'd expect that it would.

The solution is to patch the BIOS (and the ASPI driver) to always indicate presence of an 8088--very simple to do.

If anyone has a TL/2 and a T130B card and a EPROM programmer that will burn 2764 EPROMs, we can give this a try.
 
Another option would be to install and boot from an XT IDE drive (using the TL/2's onboard controller), while using the T130B or AL-500 for the CD-ROM and any secondary storage.

I'd like to see you get some use out of the TL/2, and can provide you with such a drive (40MB), if you want to try this route.

That sounds like a great idea! I'll send you a PM.

Thanks!
 
Here's what I think is the problem. Try to stay with me on this one.

Would the presence of an 8086 also result in the mapping issue you mention?

In case it helps, here are all of my results with the T-130B in various Tandy systems:

1000SX (8088, stock) - Bootable, but the system would hang during attempted disk writes.
1000SX (w/286-upgrade card) - Bootable, no issues.
1000TX (286) - Bootable, but consistently misidentified the attached SCSI device's ID as 13, rather than 0.
1000TL (286) - Not bootable, but worked fine with drivers loaded.
1000TL/2 (286) - Not bootable, can't find any record of how it behaved with the drivers loaded.
1000RL (8086) - Not bootable, but worked fine with drivers loaded.
1000RLX (286) - Bootable, no issues.

I'm certainly willing to test a patched BIOS. Just need to get an EPROM programmer first... :)
 
Last edited:
To do testing, you don't need an EPROM programmer--and you might not even need one for production. :huh:

Replace the 2764 EPROM with a 6264 SRAM and tie pin 26 to pin 28 with a 2.2K resistor on the bottom of the EPROM socket (this mod won't affect normal operation--pin 26 is NC on a 64K EPROM). You now are able to write to the ROM space.

Just something you learn on the path to reverse-engineering the memory PAL. The original designers had an extra output, so they decided to use it for development.

So, using DEBUG, you write your new BIOS image to the SRAM, do a three-key-salute and your system comes up with the new BIOS. Debug to your heart's content without removing the card.

I haven't verified it, but I suspect that you can also install a 28C64 EEPROM and write the image to it also. 64K FRAM is also an option if you want to keep things around between power cycles.

Update: Just checked the 28C64B datasheet and it is indeed possible to program the T130B BIOS ROM without a programmer. A little code for a loader program should be all it takes--and the 28C64B can be "locked" after it's programmed.
 
Last edited:
Back
Top