hargle
Veteran Member
well, luckily it works in the XT, which is where it's supposed to be.hey guys... i tried using my prototype on my 386 DX/40. it's an everex motherboard. it was working fine for a bit, then it just stopped running the option ROM on boot. i freaked out, thought the card got borked somehow but i put it back in my XT clone and it works fine. any idea what the problem is? i even removed all cards except the video (tried two different ones) and the XT IDE card and it just won't run the option ROM no matter what.
The only thing I can think of is that there are differences in speed on the ISA bus on the XT vs anything faster. 8MHz on a 286+ motherboard, and 4.77 on the PC/XT. That could cause something wonky in our design.
Why it would work one day and not another is beyond me though.
ANY clue what the issue could be?? i've reset the BIOS to defaults and everything. this is really crazy! what exactly are the DIP switch settings for the card? i've never changed them from what it was when i opened the package i got in the mail.
The left side dipswitches are the IO decode address. Changing those would require you to also change the BIOS, since the BIOS cannot auto detect itself. You've got it set to 300h, which is our default. It is using ports 300h through 308h in this configuration. (yes, we use 9 ports of IO space)
The right side bank is the ROM decode address, which is d000h by default.
You can move that without changing the BIOS, since this is just the spot where the BIOS is run from.
i played with a couple switches and the machine wouldn't boot past the POST because of a DMA #1 error, so i put them back to the old configuration.
I think we're back to needing a utility that can scan for empty ROM space and IO space and help people configure the cards. Such a program would cause issues on my tandy HX, since it doesn't return back FF on an unused IO address, but for most normal machines, I think such a utility would be useful.
XTIDE doesn't use DMA or IRQs, so nothing can conflict there. However, if you have another device which is using IO space 300-308h already, we'd be tromping on their space, and that could cause all kinds of unhappiness.maybe there's an option ROM mapping conflict, or an IRQ/DMA conflict??? i wouldn't imagine so because as i said i've tried just the video card and the XT IDE card. i completely disabled the mobo's onboard serial and parallel as well to be safe. i've also tried various different ISA slots. no help.
Here's what I'd do.
Remove the XTIDE altogether, boot to a DOS disk and load up debug.
At the - prompt, type:
i 300 <enter>
it'll respond back with a 2 digit number. Hopefully it's FF.
If so, do this:
i 301
i 302
i 303
...
i 308
If all of those come back with FF, then the address range 300-308 are all free. You are safe to put the XTIDE, at its default address, back into your machine.
If any of the "i" instructions you did return any value other than FF, then something is already using ports 300-308 on your machine*, and you will need to find a new home for either the XTIDE or whatever else is using that address space. All you need to do here is keep poking around in debug, using that "i" command, to try and locate a range that is free. try 320-328, 340-348, etc, until you do find something that is free. You will then have to change the dipswitches on the card to set the base IO address to the new value, then use per's setup utility to change the default IO address in your flash BIOS file, and reflash your XTIDE card.
The ROM address is essentially the same thing.
In debug, type:
-D000:0
and if it displays nothing but FF FF FF FF FF patterns to the screen, then that space of memory is free. If you see anything other than FF, then there is already a ROM using that space. The ROM is using 8k of space. So you would need to verify that D000:0 through D000:1FFF are all returning back FF's. (You could just -d d000:0 and -d d000:1f00 and assume that the space in between those two address ranges are unused if everything returns back FF's.)
Anyway, I think some software that does the above would be useful.
None of this however explains why it worked for days on end, then suddenly stopped working. It makes even less sense as to why the card continues to work in the XT, but no longer does on the 486. Our rev 2 cards, with the write protect jumper, may be useful in this situation, but it doesn't sound to me like the ROM got corrupted since the XT is still happy with it.
maybe i need to update the option ROM? i *NEVER* have out of fear of some freak accident making it totally unbootable.
It'll should never be totally unbootable. If you corrupt the ROM to the point where it doesn't load during POST, it should still be flashable with the flashing program to get it back to normal, provided the hardware itself is still usable.
Does your flash part say SEEQ on it by any chance, or is it an Atmel?
* or you're using a Tandy 1000HX (or similar) which doesn't have any default value for unused IO space.