• Please review our updated Terms and Rules here

8-Bit IDE Controller

I had suggested consolidating the test results first and had volunteered to do that. But sometimes trying to coordinate a project is like herding cats.

I think the Wiki is an ideal way to record test results - it offers the flexibility that we need. Any web browser can get at it, and now we find out that it is firewall friendly. ;-0


Mike
 
I had suggested consolidating the test results first and had volunteered to do that. But sometimes trying to coordinate a project is like herding cats.

I think the Wiki is an ideal way to record test results - it offers the flexibility that we need. Any web browser can get at it, and now we find out that it is firewall friendly. ;-0


Mike

I agree that the wiki is the best place to post the sheet but it is not as easy to edit as the spreadsheet and I figured I would eventually port the data over to the wiki once the testing had matured a little bit.

Bottom line is we need a single place for people to enter their test data, and then we need someone (either myself or Mike) to volunteer to sift through it, neaten it up and post it on the wiki. I thought the spread sheet on Google docs was a pretty good place to do this, since it is easy to use, available to everyone and can be edited simultaneously. But in all honesty as long as people are putting the data somewhere that we can get to it we'll be ok.

Hargle, if you have excel at work just send me the offline spread sheet and I will make sure it gets to either the Google doc one or the wiki. This goes for anyone else that may not have access to the spread sheet due to work related firewalls.
 
OK, got my kit in the mail today and soldered it up! I ran setup before installing the card and I keep getting "no suitable I/O space found". I have installed 1) CGA card 2) dual game port card 3) floppy controller with 2x1.44m drives and 1x360k drives. I was correct in running setup before I install the card? Any other thoughts?
 
OK, got my kit in the mail today and soldered it up! I ran setup before installing the card and I keep getting "no suitable I/O space found". I have installed 1) CGA card 2) dual game port card 3) floppy controller with 2x1.44m drives and 1x360k drives. I was correct in running setup before I install the card? Any other thoughts?

Try to enter debug and do the following:

i 200
i 220
i 240
i 260
i 280
[...]
i 360
i 380
i 3A0
i 3C0
i 3E0
q

What do you get in return?

It may be that unused I/O ports in your system returns another value than on the regular IBM XT (FFh). I can add an option for you to manually specify the byte it will be looking for.
 
Last edited:
yeah, was this is a Tandy series computer by any chance?
For whatever reason, Tandy machines don't return back FF on unused IO port access.

per, maybe your setup utility could detect a tandy machine (likely have to search for a "Tandy" string in the bios segment) and act differently? My tandy machines seemed to return 0eh on unused IO reads. I don't know if that's standard though. Or maybe instead of checking for a blind FF, look for the same value across all the ports that you read back?
 
I get 0F at all locations. What do I do next?
By the way, this is a genuine 5160 XT. I do have a v20 installed, though.

I have uploaded a new file now. It should now be a lot more flexible (see Hargle's post above). Try to download the new version, and see if that works.
 
Still reporting no I/O space (without the card installed).

Even with the new program (It should be 2585 bytes long)?

ok. Open debug again, and type in:

i 300
i 301
i 302
i 303
i 304
i 305
i 306
i 307
i 308
i 309
i 30A
i 30B
i 30C
i 30D
i 30E
i 30F
q

Are they all equal?
 
Of course, I could not contain myself, so I installed the card. The setup program works with the card installed, but doesnt show the base address that the card is jumpered to as available (which makes sense).
 
Of course, I could not contain myself, so I installed the card. The setup program works with the card installed, but doesnt show the base address that the card is jumpered to as available (which makes sense).

That's strange. Maybe there is a bug... I'll closely examine the code and post if I find anything.
 
Of course, I could not contain myself, so I installed the card. The setup program works with the card installed, but doesnt show the base address that the card is jumpered to as available (which makes sense).

Try this debug program. It will print any values it finds, and please tell me what you get (without the card installed).
 

Attachments

  • SETUP.zip
    1.4 KB · Views: 1
The output seems variable when I execute your new setup program. Sometimes I get a long list of 8F3F before ending in a prompt 0000 and then no I/O space. Other times there are other values in the list like 8A3F.
 
The output seems variable when I execute your new setup program. Sometimes I get a long list of 8F3F before ending in a prompt 0000 and then no I/O space. Other times there are other values in the list like 8A3F.

If the list looks something like this:

8F3F
8F3F
8F3F
[...]
8F3F
8F3F







0000

Then...
That's weird. All the program does is to input one byte from one spesiffic port, then compare it to another input from that exact same port (what you see is the two inputs that are compared). If the inputs are equal, it is compared to the next port, and so on (if your list looks like the above, it doesn't even get this far)... The last four numbers are the number of valid I/O ports found/memory addresses found.

What version of DOS are you using? And do you know if any of your cards may affect the data-bus when it is in tristate mode (AKA: remove all cards except floppy and video and try again)?
 
My true blue IBM AT that I'm playing around with today also seems to have variable IO space when there is nothing decoding there. I don't think we are going to be able to properly scan for an unused location in the setup utility on some of these old beast machines.

bugman, have you just tried it at 300h to see what happens?
 
PER - what you wrote is exactly what I'm seeing on the screen. Using DOS 5.0. I only have a CGA card, floppy controller, and kraft joystick card.

Hargle - I have been playing with the stock config (d000, 0300). I'm having some floppy boot issues, and some drive letter assigment inconsistencies. I'm suspecting the xt-ide is not playing nice with this floppy controller. It is an early 90's 4 floppy, 360,1.2M,1.44M. I'm doing some trouble shooting with switching cards out. I'll report back here sometime this evening.
 
My issues have mainly been: 1) Not being able to boot from a floppy with the xt-ide installed 2) when I was able to boot from a floppy after multiple attempts through the xt-ide boot menu, the operating system could not recognize the hard drive (fdisk didnt work). All those problems went away when I re-installed the standard IBM floppy controller. XT-IDE works just fine now with an IDE to CF adapter (1 Gig Scndisk II card). I'm also using a parallel port based 3.5 floppy drive for file transfers. I have a 360k on the floppy controller for inital boot and setup. Setup.exe still gives "no I/O" when the card is not installed, however. This non-standard floppy controller I was using has its own BIOS which enables drives like 1.44M not supported through the stock IBM BIOS. That must have been what was causing my problems. I tried re-assigning the ROM of the XT-IDE to a different location, but that didn't seem to make any difference. Anyway, this is a very nice board and I'm very appreciative for having it. It must be a daunting task to try and get compatability with so many different configurations. On a side note (and probably should be a separate thread), is there an imaging tool that I can use on a Compact Flash Card for restoration purposes? It would be great to use my USB adapter on my modern PC to backup the CF card so in the event of a failure, I can just restore without using floppy access. I'm talking the kind of tool that images the boot record and makes an exact data dump so the restoration is perfect. Just like the many floppy disk imaging tools.
 
Last edited:
hey! glad it works, eventually anyway. ;)

I suspect that the floppy controller, with its own option ROM, and INT 13 hooking, is what is interfering with the XTIDE. It might be clobbering what the XTIDE has done.

It may be possible, even though you said you tried it, to relocate the ROM in the floppy controller so that it gets loaded 1st, then XTIDE loads after that. You'd want to load the floppy controller as low in memory as possible, probably around C800, and then I'd suspect that keeping XTIDE at D000 would give the floppy ROM enough room.

Overall, I'm not too surprised that we'd have issues like this, and I'm really curious to see how the boot menu appears when you've got a card like this in the system (provided the XTIDE loads after the floppy, the boot menu should pick up the changes and display them)

If you still can't get them to co-exist, I might have to have you either dump the BIOS and mail it to me, or send me the card altogether so I can poke around and see what it's doing.

Actually, now that I think about it, if the floppy BIOS isn't more than 4k in size, it would be possible to merge it into XTIDE's BIOS, thus ensuring compatibility. Hmmmm.
 
Back
Top