• Please review our updated Terms and Rules here

XTIDE Universal BIOS: troubles on a new interface card

Nevets01

Experienced Member
Joined
Aug 29, 2018
Messages
126
Location
United States
So I'm working on a project which is essentially Glitch's XT-IDE and Sergey Malinov's ISA-FDC on the same ISA card.
However, it seems to have trouble with the XT-IDE BIOS, and I cannot figure out why.
I'm storing it in a 27c128 so I can have both the XT-IDE BIOS and Sergey's multi-floppy BIOS without having to duplicate the ROM circuitry.
Sergey's floppy BIOS seems to work just fine, but the XT-IDE BIOS causes an "I/O ROM ERROR" (I'm testing in a Compaq Portable ii) at boot, and does not show the XT-IDE boot menu.
I've tried burning it into the ROM several different ways:
-at the beginning
-at the end
-burnt twice, once after the other (this one gave two I/O ROM ERRORs)
and with both 00's, FF's, and Sergey's BIOS occupying the remaining space.
CheckIt reports it being in the correct place, and examining that place in ROM with DEBUG shows what looks like a correct listing.
I've tried with version 1.1.5 and 2.0.0.
Attached is the schematic, and a couple photos of the ROM in DEBUG.

Thank you
 

Attachments

  • xt-ide-fdd.pdf
    254.8 KB · Views: 1
  • P1140405.jpg
    P1140405.jpg
    245.4 KB · Views: 1
  • P1140406.jpg
    P1140406.jpg
    254.9 KB · Views: 1
  • P1140407.jpg
    P1140407.jpg
    254.1 KB · Views: 1
What is the "I/O ROM ERROR" you are getting ?, Did you configure the XUB correctly first before burning to eprom and is the checksum byte correct.
It's been a long time since i used Sergey's floppy bios with the XUB but it worked fine as i recall. I would use the DOS Copy command as such:-

Copy /b floppybios.bin + XUB.bin new16k.bin and then burn "new16k.bin" to Eprom.
 
Last edited:
What is the "I/O ROM ERROR" you are getting ?, Did you configure the XUB correctly first before burning to eprom and is the checksum byte correct.
It's been a long time since i used Sergey's floppy bios with the XUB but it worked fine as i recall. I would use the DOS Copy command as such:-

Copy /b floppybios.bin + XUB.bin new16k.bin and then burn "new16k.bin" to Eprom.

The number it gives is 101.
The exact text is:
101 - I/O ROM ERROR.

I loaded the .bin file onto a floppy and ran the config utility on it with the compaq, but the settings it came with seemed fine.
I made the composite file by splicing them together in the EEPROM programmer's support program. I also tried doing it once with HxD in case that wasn't working, but it made no effect.
How would I find the checksum byte? If it's the first byte, it's 55.
 
55 AA at the beginning is the signature that lets the system BIOS know there is a BIOS extension there.

The checksum is at the end of each BIOS extension.

If you are merging two BIOS extensions in to one ROM, each would have its own checksum.

So in the example "Copy /b floppybios.bin + XUB.bin new16k.bin", make sure the checksum at the end of floppybios.bin is correct for that file, and the checksum at the end of XUB.bin is correct for that file, before merging the two.

You should also keep in mind that the beginning of the second BIOS extension must start at a memory address where your system BIOS may expect to find a 55 AA signature.
 
I loaded the .bin file onto a floppy and ran the config utility on it with the compaq, but the settings it came with seemed fine.
Where did you get the binary from ?. Was it an 8k binary ?, You must configure the XUB using the Configuration utility first and save the changes back to original file for burning to eprom with a programmer, The configuration utility will pad out the binary to the correct size if needed and checksum the binary automatically when saved. You can use HxD to see what the checksum is of the XUB binary you used, the 8-bit checksum should be 00.

I made the composite file by splicing them together in the EEPROM programmer's support program. I also tried doing it once with HxD in case that wasn't working, but it made no effect.
Use the DOS Copy command as i suggested earlier.
 
to echo from above you need to make sure the XUB is properly checksummed first AND you might want to pad it with FF bytes to make the second binary image start at a sane address like x000, x400, x800, xC00

the most up to date XUB binaries (available from http://www.xtideuniversalbios.org/binaries/) are neither padded nor checksummed out of the box
 
Right, I figured out the problem. I had to actually change something in the configuration tool.
I had opened it up, looked at the default settings, saw they seemed good enough, and saved it back to a file. That saved it with a different checksum.
Now on to the various hardware errors :sarcasm:
Does anyone know if using 74F chips for the 245s and the 573s would effect anything? I intended for everything to be HCT, but I messed up a DigiKey order and 74Fs were what I had on hand to replace them.
 
Back
Top