• Please review our updated Terms and Rules here

Tandy 1000 25-1000

almoerman

Member
Joined
Jan 14, 2016
Messages
29
Hello,

I've recently been working on getting an original Tandy 1000 (not the a revision) working. I seem to be unable to get an XTIDE to work properly with it. IT does have the 1.0.0 bios, and not the later 1.0.1 version. I have read claims that the original version did not scan for expansion roms, though this does seem to see the xtide bios. It however doesn't seem to want to consistently read or write to any devices. I've tried a GW xtide 4A and a monotech one as well. Does anyone out there have any idea if this would be due to the 1.0 bios?
 
Just to sanity check, I assume you're using CompactFlash cards. Do you have another machine you're able to use to test the XTIDE cards with the same CF's installed? I ask because CF incompatibility issues are a thing.
 
Just to sanity check, I assume you're using CompactFlash cards. Do you have another machine you're able to use to test the XTIDE cards with the same CF's installed? I ask because CF incompatibility issues are a thing.

Yeah, I've tried CF cards and SD to IDE units. I have had terrible luck with the cf cards in general, but the sdcards work great my newer machines and also in my micro8088 build. I have an SD adapter currently working in my 1000SX with no issues as well.
 
I likewise (pretty much exclusively) use SD adapters because of CF monkeyshines. Some people like to irrationally hate on them but so far as I can tell the FC-1307 bridge chip is more compliant with CF standards than most CF cards.

So what are the symptoms exactly? I’m likewise surprised if it is the BIOS version that it ‘sees’ the option ROM at all, but perhaps the issue is more complicated than just not scanning for BIOS extensions. If you can lay hands on an EPROM programmer upgrading the BIOS might be worthwhile just to rule it out.
 
… huh. Out of curiosity I looked up the Tandy 1000 FAQ, and there’s a section in it that says the hard drive incompatibility of the original 1000 BIOS wasn’t because it didn’t scan for option ROMs, it was because the initial version set up the DMA controller (in the memory expansion card, needed for XT MFM controllers) incorrectly.

Are you using a “real” XTIDE controller set up to try to use DMA, or just a simple PIO XT-CF?
 
… huh. Out of curiosity I looked up the Tandy 1000 FAQ, and there’s a section in it that says the hard drive incompatibility of the original 1000 BIOS wasn’t because it didn’t scan for option ROMs, it was because the initial version set up the DMA controller (in the memory expansion card, needed for XT MFM controllers) incorrectly.

Are you using a “real” XTIDE controller set up to try to use DMA, or just a simple PIO XT-CF?

I'm using an XTIDE. And I do have the DMA board with 640k total memory. I'm wondering at this point how I might get a bios upgrade to see if that helps. I can boot to dos, and fdisk sees the drive but I cannot write anything to it. My 1000 has a single chip bios, I am led to believe that some had it split over the 2 sockets on the board. I'm wondering what sort of eprom I might use to try the later bios. Alternatively I wonder if the xtide board (glitchworks rev4A) can be forced into pio mode to test it.
 
I'm using an XTIDE. And I do have the DMA board with 640k total memory. I'm wondering at this point how I might get a bios upgrade to see if that helps. I can boot to dos, and fdisk sees the drive but I cannot write anything to it. My 1000 has a single chip bios, I am led to believe that some had it split over the 2 sockets on the board. I'm wondering what sort of eprom I might use to try the later bios. Alternatively I wonder if the xtide board (glitchworks rev4A) can be forced into pio mode to test it.

Looking at the tech reference manual if your machine already has the BIOS on one chip I'd think you'd be fine using a 27C128 in whatever socket is currently being used. The only gray area is check to make sure there is a 2.2K resistor at R2 and an open position at R1. (So the PGM pin on the EPROM is held high instead of connected to A14.) A lot of the BIOS dumps out there for Tandy 1000s are 64K in size, but the only part that's actually used is 16K from FC000-FFFFF. The hardware on the machines selects the ROM sockets for a 64K range so if you dump the F0000 page you'll get two copies of the actual BIOS and 32K's worth of garbage.

If you had an XT-CF lying around it'd be interesting to see if it works. I would think it should, it might be useful for other people with original 1000s to know that's a no-brainer option.

(I actually can't offhand think of a reason why an XT-CF would be slower than a 16 bit XTIDE in PIO mode. In both you're doing two transfers for every 16 bit word, the only difference is in the XT-CF you're relying on the CF/ATA-2's support for 8-bit transfers instead of an external latch.)
 
Looking at the tech reference manual if your machine already has the BIOS on one chip I'd think you'd be fine using a 27C128 in whatever socket is currently being used. The only gray area is check to make sure there is a 2.2K resistor at R2 and an open position at R1. (So the PGM pin on the EPROM is held high instead of connected to A14.) A lot of the BIOS dumps out there for Tandy 1000s are 64K in size, but the only part that's actually used is 16K from FC000-FFFFF. The hardware on the machines selects the ROM sockets for a 64K range so if you dump the F0000 page you'll get two copies of the actual BIOS and 32K's worth of garbage.

If you had an XT-CF lying around it'd be interesting to see if it works. I would think it should, it might be useful for other people with original 1000s to know that's a no-brainer option.

(I actually can't offhand think of a reason why an XT-CF would be slower than a 16 bit XTIDE in PIO mode. In both you're doing two transfers for every 16 bit word, the only difference is in the XT-CF you're relying on the CF/ATA-2's support for 8-bit transfers instead of an external latch.)

I don't have any 27c128s, I tried using a 28C256 with a 32k image I found that was supposed to be for a 1000 but I think it was maybe from an EX. It said 1.02.00 I think. It did the memory count then froze with a keyboard error. I'm trying to find the correct image and possibly figure out how to split it so I can try with what I have currently. My motherboard does have the single chip rom, with a working smartwatch in the second socket.

I don't have a plain XTCF, but given what I've seen in various videos they seem to be used a lot with 1000 and 1000A models. I'd rather avoid CF cards though as I've had terrible luck with them.
 
Lo-Tech does sell effectively an XT-CF with a 40 pin connector intended for use with an external adapter, or you can get a CF to SD adapter, they use the same chips as the PATA versions. But yeah, I get not wanting one with a CF socket. For my Tandy EX/HX I brewed my own solution, which was use a 2mm pitch 44 pin header on the PCB so I can direct plug a laptop form-factor SD adapter.

For a 256mbit eprom I'd just say burn the 16k you need twice, should be fine. The Tand-Em website has a copy of 1.01, it's 64k, just shave off the last 16k. If you have a unixoid os something like this, maybe?

dd if=source.bin of=dest.bin bs=1k skip=48

(Maybe skip should be seek? Posting from a phone while waiting for take-out.)
 
I had an original Tandy 1000 with the original 1.00.00 ROM and I had no trouble using hard drive controllers with it. But you may need to set it to IRQ 2 instead of the normal IRQ 5.
 
I had an original Tandy 1000 with the original 1.00.00 ROM and I had no trouble using hard drive controllers with it. But you may need to set it to IRQ 2 instead of the normal IRQ 5.

I don't believe the controller I have uses an IRQ. I ended up finding the newer rom and was just now able to get it working with the XTIDE rev4 and an SD card adapter. I did play with a few different XTIDE firmware versions as well though so I'm not sure exactly what the snag was before. I may try putting the original bios chip back in to see what happens.
 
It's my vague understanding that the way the DMA-using XTIDE cards use DMA is, well, "aggressive", so the timing issue described in the Tandy 1000 FAQ does make a lot of sense. There's actually a suggestion in the FAQ for code you could patch into a BIOS option ROM to reprogram it properly, if you wanted to try building your own XTIDE ROM image it might be interesting to try imbedding the workaround into the option ROM and testing to see if that works. Granted this is a pretty out-there edge case but it is theoretically the sort of thing that could be worked into the XTIDECFG options.
 
It's my vague understanding that the way the DMA-using XTIDE cards use DMA is, well, "aggressive", so the timing issue described in the Tandy 1000 FAQ does make a lot of sense. There's actually a suggestion in the FAQ for code you could patch into a BIOS option ROM to reprogram it properly, if you wanted to try building your own XTIDE ROM image it might be interesting to try imbedding the workaround into the option ROM and testing to see if that works. Granted this is a pretty out-there edge case but it is theoretically the sort of thing that could be worked into the XTIDECFG options.

After getting it working with 1.01.0 I tried moving back to the original rom. It booted one time, then subsequently failed every time. Moving back to the 1.01.0 it boots fine. I have it on an 28C256 eeprom, I'm assuming that since it works it's safe to leave it that way.
 
Back
Top