• Please review our updated Terms and Rules here

XTIDE Universal BIOS v2.0.0 beta testing thread

Would you be interested in an extended loan of the DC-4030VL, for as long as it takes to add support to the universal bios?

I'm sorry I did not reply earlier. What I'd really need is hardware documentation. The card alone does not do much good. There seems to be documentation available for Promise PDC20230-B, PDC20230-C and PDC20630 but Linux sources are the only available documentation I found for PDC4030.
 
Machine: XT clone with XT-CF-Lite BIOS from James:
- XT-CF-Lite at 300h, 1024MB CF card
- XT IDE rev2 at 280h, 800MB Fujitsu HDD as master
Results:
XTIDE rev1 found at port 280h/288h
XT-CF rev 2, 3 or Lite found at port 300h/310h

It detected rev 2 as rev 1? That shouldn't happen. I don't have a rev2 to test with but modded rev 1 is detected correctly. Isn't there a jumper on rev 2 that enables A0<->A3 swapping? If A0<->A3 swapping is not enablet, it should be detected as rev 1.

As soon as I try BIOS 2.0.0B2, configure it to use two controllers matching results from idedtct, I can not boot form CF or HDD anymore. Even configuring BIOS solely for XT-CF-Lite makes it unusable.
Officially released v.2.0.0 beta 2 only supports XT-CF prototype. XT-CF has improved a lot since and it has required changes to BIOS. I guess I should make new public release before I start to implement autodetection and other new features. I don't know why XTIDE stopped working.
 
Here is a new version of idedtct (v1.0.1). I'm hoping it will now detect drives that it did not detect before. The only change is that drive no longer needs to be ready to accept commands. This might cause some false detections (especially it might think the system has JR-IDE/ISA). Let me know if any false detections happen. I'll try something else if there are too many of those.
 
This sounds absolutely fantastic!

IIRC V2 XTIDE has jumpers to enable 'chuck-mod' style configuration.
 
Sounds like checksum is not correct so the BIOS on you motherboard does not initialize XTIDE Universal BIOS. I suspect that only 8k is visible or there are address conflicts. Possibly part of the 32k area you are trying to use is used by some other ROM.



It can be hard to find correct time to hold down CTRL on some systems. You do not need it to boot from floppy drive. There are hotkeys displayed on top of screen when drives are being detected. Just press drive letter key to select primary boot device. For example press A during drive detection and floppy drive A is selected as first boot device.

No conflict here, E000 to E800 are completely not in use. I got the entire memory map for this computer laid out on paper. I even tested by flashing a 32KB NES ROM to it (a very funny test I might add), and read it back to a .bin file. The ROM kept the same checksum and was playable. Something else seems to be the problem. But, I DO use a prototype model XT-IDE rev 2, so maybe there's something about that, that is causing problems with the BIOS.

The PQI Disk On Module detects nearly instantly and as soon as the screen even shows the hot keys, it's already "Starting MS-DOS". It gives me zero chance to press A. If I just rapid tap the A button, then I can get it to boot A after the POST beep. I reflashed it though to boot to A first, and it seems that works fine, checks A, nothing, boots C----Starts MS-DOS.
 
Still the same with idedtct ver: 1.0.1 on my IBM 5160 with XTIDE Rev1 and flashed with r504 bios with CF or HD connected " No IDE Controllers Found! " Card works fine with r504 bios and CF or HD

I tried a silicon valley ADP 60/70 16-bit card in my 5160 and flashed the onboard chip with r504 universal bios, bios does not find the HD or CF card however running ide detect 1.0.1 gives the result " Standard ide controller found at ports 1F0h/3F0h i also tried the original version of ide detect which resulted in " No IDE Controllers Found! "

I'll go back a few versions of the bios because i have used this card and others with the universal bios in my 5160 and it worked flawlessly with CF or HD.
 
It detected rev 2 as rev 1? That shouldn't happen. I don't have a rev2 to test with but modded rev 1 is detected correctly. Isn't there a jumper on rev 2 that enables A0<->A3 swapping? If A0<->A3 swapping is not enablet, it should be detected as rev 1.
Nope. Information on wiki is scarce so I left it configured in default mode. Therefore it is OK with rev1. I will give a try later.

Officially released v.2.0.0 beta 2 only supports XT-CF prototype. XT-CF has improved a lot since and it has required changes to BIOS. I guess I should make new public release before I start to implement autodetection and other new features. I don't know why XTIDE stopped working.
I'll be glad to test new BIOS with XT-CF-Lite then. Thanks.
 
I tried a different CF adapter connected to a 80 core ide cable ( originally i had the adapter plugged into the xtide rev1 card ) and a couple of different hard drives in my IBM XT 5160 but still no joy with idedtct ver 1.0.0 or ver 1.0.1, both versions report " No IDE Controllers Found! ".

I plugged the same xtide rev1 card ( No Mods ) into a 16-bit slot in my 486 box, disabled the bios and left it at 300h, i then ran idedtct version 1.0.0 and the result was " XTIDE Rev 2 or modded rev 1 found at port 300h/308h " and got the same result with idedtct ver: 1.0.1.

Has anyone else tried idedtct on an IBM XT 5160 ( not a clone ) with XTIDE Rev: 1 card installed ?

EDIT: I remembered that xtidecfg has an autoconfigure option, I just tried it on my 5160 and that also reports " 0 controllers found " ? strange, Card works fine with CF or Hard drive.
 
Last edited:
I plugged the same xtide rev1 card ( No Mods ) into a 16-bit slot in my 486 box, disabled the bios and left it at 300h, i then ran idedtct version 1.0.0 and the result was " XTIDE Rev 2 or modded rev 1 found at port 300h/308h " and got the same result with idedtct ver: 1.0.1.

That is quite unexpected. I would have thought the same controller card + drive combination would work the same on all systems. I don't know why non modded XTIDE rev 1 is detected as modded rev 1.
Can you do a quick test with DOS debug (on the IBM 5160)? Since the XTIDE is at port 300, read what is returned from ports 307h and 30Eh like this:
Code:
i 307
i 30E
That reads IDE Status Register and Alternative Status Register. They should be the same and usually 50h when things work as they should.

EDIT: I remembered that xtidecfg has an autoconfigure option, I just tried it on my 5160 and that also reports " 0 controllers found " ? strange, Card works fine with CF or Hard drive.
Auto Configure in the xtidecfg uses excactly the same detection code as idedtct so it has the same problem as well.
 
aitotat, can I ask about the BIOS initialisation and how things work with other option ROMs? I wondered how the system BIOS determines when to run each installed option ROM, and how control is passed between them, and finally how the (bootstrap?) code is called. Cheers!
 
I just ran Debug and the result is:
Code:
-i 307
50
-i 30E
50

I had another look at my silicon valley ADP 60/70 16-bit Ide/Floppy controller and found i messed up when i built the bios for it, I rebuilt the bios r504 and reflashed the onboard chip, the card now works again in my XT 5160, ie: bios see's the CF card and works fine.

With bios enabled, CF Adapter / Card plugged directly into the IDE header, CF as Master i ran both idedtct ver:1.00 and ver: 1.0.1 and the result was " Standard IDE Controller found at port 1F0h/3F0h ".

Tried a different CF adapter connected via an 80 core ide cable, CF as Master / no slave and ran both versions of idedtct and the result was " Standard IDE Controller found at port 1F0h/3F0h ".

CF as slave / no master ran both versions of idedtct and the result was the same " Standard IDE Controller found at port 1F0h/3F0h ".

With bios disabled both versions of idedtct reported " Standard IDE Controller found at port 1F0h/3F0h ". for CF as master / no slave and CF as slave / no master.


That is quite unexpected. I would have thought the same controller card + drive combination would work the same on all systems. I don't know why non modded XTIDE rev 1 is detected as modded rev 1.
Can you do a quick test with DOS debug (on the IBM 5160)? Since the XTIDE is at port 300, read what is returned from ports 307h and 30Eh like this:
Code:
i 307
i 30E
That reads IDE Status Register and Alternative Status Register. They should be the same and usually 50h when things work as they should.


Auto Configure in the xtidecfg uses excactly the same detection code as idedtct so it has the same problem as well.
 
Today I reverted back to " r497 " when auto configure was added, from r497 up to and including r503 when i run xtidecfg and the auto configure option the result is " Found 1 Controllers ".

With r504, running xtidecfg and auto configure results in " Found 0 Controllers "

This is on my IBM XT 5160 and XT-IDE rev 1 card with no mods.

Auto Configure in the xtidecfg uses excactly the same detection code as idedtct so it has the same problem as well.
 
Thanks for all the testing. r504 does not change anything in the BIOS. It contains some code cleaning related to xtidecfg Auto Configure (and idedtct uses the same code). I'll try to find what the problem is.
 
Just updated to r518 and getting an error when trying to build xtidecfg which results in xtidecfg not getting built, error is:

Code:
IdeAutoDetect.asm:209: error: symbol `CompareIdeStatusRegistersFromALandAH.InvalidStatusRegister' undefined
IdeAutoDetect.asm:211: error: symbol `CompareIdeStatusRegistersFromALandAH.InvalidStatusRegister' undefined
 
That's something I've been meaning to try on my 5150, will dig it out when i can and try it. IIRC the 5150 will need the 3rd rev Bios.

EDIT:

I dug my 5150 out today and gave it some exercise, I also tried several 16-bit controllers / CF card adapters in 8-bit mode with the XTIDE universal bios and the CF card was not detected, The Controllers / CF card and adapters all work fine in my 5160 in 8-bit mode. My XTIDE Rev 1 board works fine in the 5150. Anyone have this working in a 5150 ?
 
Last edited:
Back
Top