• Please review our updated Terms and Rules here

XTIDE Universal BIOS v2.0.0 beta testing thread

aitotat

Experienced Member
Joined
Aug 13, 2009
Messages
351
Location
Finland
Hi Tomi, it is better with R547. When I set in boot settings number of drives to 3 it writes:
Booting D>>D (it is problematic with automatic settings, it does not boot from A: neither from IDE)
XT Builds determine number of floppy drives from equipment WORD stored in BIOS Data Area. HD controllers doesn't seem to update it. AT Builds determine number of floppy drives using BIOS function (INT 13h, AH=08h) that is unavailable on XT systems. Most likely HD floppy controllers do support it. Maybe I should try that on XT builds and then read from BDA if it won't succeed. I think I did that on XTIDE Universal BIOS v1.x.x but it was simplified to save ROM space.

D: is first partition from slave HDD but not handled correctly I can only see boot directory not files and subdirs. Second partition on slave IDE is missing.
I found out what was wrong. It is not related to 3 floppy drives but to CHS translations.

There is a bug on publicly released versions. If LARGE mode is selected for drives with 8193 or more cylinders and 16 heads, the drive geometry must be changed so cylinders = (cylinders * 16) / 15 and heads = 15. This prevents L-Heads to became 256 that is not supported by DOS. The drive must be told to use 15 heads instead of 16 but the buggy versions did not do that. Fortunately XTIDE Universal BIOS used LBA addressing mode for drives with 8193 or more cylinders so the bug appeared only when LARGE mode was manually set and CHS was manually specified to be 8193 or more cylinders and 16 heads.

I fixed the bug but introduced a new one. Instead of limiting heads to 15 for user defined LARGE mode drives with 8193 or more cylinders and 16 heads, it was also limited for drives with 8192 or less cylinders and 16 heads. So that explains why you lost a partition and such.

I'll send you a new version to test but there is another change you should know (and everyone else when upgrading to next publicly released version). Assisted LBA is now used for all drives with LBA support when EBIOS functions are included in the build (and they are included by default although I do not know why anyone would need them on XT systems).
 

RetroJunkie

Experienced Member
Joined
Jul 14, 2012
Messages
53
Location
Sydney, Australia
Hello all,

A little while back I was having troubles with living in the limits of the smaller sized chips and decided to move to a full blown 28C256 for the sake of GUI! :cool:
However, I've not been able to successfully burn any 28C256 chips with my XT-IDE Rev 2 card. 28C64 chips work a charm.
The error reported is:

Error! Timeout when polling EEPROM. EEPROM was not flashed properly!

I've tried multiple chips (see pictures) and multiple cards. I've included a photo of the card in case I've missed a jumper setting or am just going plain mad!
I've been able to flash, erase and flash the chips on a separate EEPROM burner I have. Seems to fail around the 20% mark if I had to give a guesstimate.
Any hints or tips would be appreciated as always!

img3873oj.jpg


img3871t.jpg


img3872i.jpg
 

archeocomp

Experienced Member
Joined
Apr 29, 2012
Messages
414
Location
EU/SK
Hi Tomi. Version R549 is fanatastic :) I can only say everything works. It is possible to boot from all three flopies, to read them, write to them and format them. Also all my IDE drives are as before. Thank you.
 

RetroJunkie

Experienced Member
Joined
Jul 14, 2012
Messages
53
Location
Sydney, Australia
Just though I'd add that I've tried changing the base address to all four available options with no success also.
And here's a dump of a failed burn, maybe it can provide some insight into what I am doing wrong! :D

Download Link
Alternative Link

Edit: Noticed that there seems to be only 8192 bytes of data. I'd chosen the ATL version of 2.0.0b3. Relevant?

Edit 2: Relevant and then some. I thought 8192 was too precise. Turns out my jumpers needed to be changed at K6, K7, K2 and K1.
The image I found with the details is here.
I'd come across that image before on the wiki here but the resolution was not really that readable.
Hope this helps anyone else looking for why their card doesn't work... :D
 
Last edited:

aitotat

Experienced Member
Joined
Aug 13, 2009
Messages
351
Location
Finland
I've been trying to install Windows 98 SE way too many times during the past 3 or 4 weeks. All I get is blue screen with write error and it always happens at the same time, after second reboot during install. Windows 95 (I tried OSR 2.5) installs fine but hard disks are in DOS compatibility mode (Windows does BIOS calls).

I'm almost certain that the blue screen occurs when Windows switches from BIOS calls to IDE driver. I just don't know why. I've tried to disable everything that is not necessary, like block mode and IRQ, but nothing I've tried has made any difference. I tried to limit drive to 1024 cylinders, 16 heads and 63 sectors per track. That is the 504 MiB limit but that didn't help either. At least it tells that the problem is not related to CHS translations.

I've mostly tested on a Pentium system with Intel 430TX chipset. It has PCI based integrated IDE. This is all the info I could find. I don't think the problem is the PCI Bus IRQ Steering mentioned in the link since the same happens on a VLB based 486 system.

At this point any ideas or information helps.
 

RetroJunkie

Experienced Member
Joined
Jul 14, 2012
Messages
53
Location
Sydney, Australia
Great you got it working. I don't have XTIDE rev 2 myself so I've never been able to test flashing the 32k EEPROM.

So close to getting it working... another bump in the road it seems. Something of a data mismatch near the end of the flash. Definitely progress but I'm stuck again! :)

I've mostly tested on a Pentium system with Intel 430TX chipset. It has PCI based integrated IDE. This is all the info I could find. I don't think the problem is the PCI Bus IRQ Steering mentioned in the link since the same happens on a VLB based 486 system.

At this point any ideas or information helps.

I'd pull out my Pentium 100 but it is currently waiting to be shipped up to me! I had a DoM to test in it as well... Might be worth a shot.
I could at least see if the problem can be replicated easily enough.
 

aitotat

Experienced Member
Joined
Aug 13, 2009
Messages
351
Location
Finland
There might be clues in C:\Bootlog.txt

And there were! Turned out that HSFLOP.PDR was the last driver being initialized before the write error blue screen. Quick googling revealed that HSFLOP.PDR is protected mode floppy drive driver and Windows loads real mode driver if it is not found. So I renamed it and everything worked (of course the floppy drives used MS-DOS compatibility mode).

Temporary solution to get Windows 98 running is to rename windows\system\iosubsys\hsflop.pdr. Now I'll need to find out why floppy drive driver makes hard disks fail.
 

RetroJunkie

Experienced Member
Joined
Jul 14, 2012
Messages
53
Location
Sydney, Australia
I don't think my Pentium 100 is ever going to make it up here at this rate!

So I'm back on the XTIDE band wagon again this weekend
I was wondering since I cannot flash the chip using the XTIDE card as it fails toward the end...
Could anyone cook me up a copy of either B3 or r550 that I could just write to an AT28C256 EEPROM?
I would be most appreciative! :D

Edit: Actually three would be great, or telling me how to do it (Teach a man to fish!)
I'm after ide_xtl.bin, ide_xtpl.bin and ide_atl.bin to see which one runs best on the good old Sega TeraDrive.

Edit 2: Just to clarify, I can build the 8K builds and write them with no issues.
But these 32K builds just will not go onto the EEPROMs on either of my XTIDE cards.

Edit 3: Found that 2.0.0 Beta 3 doesn't autodetect any of my drives either.
2.0.0 r550 doesn't seem to detect my disk on module, r505 does though.
Running an XTIDE R2 on XT @ C800h, 300h I/O address.
Half the time I can't work out if I am doing something wrong or if it is just a bug in the software! :D
It's half the fun I suppose, thanks for the continued effort of working to improve the XTIDE BIOS even further!
Even if it breaks it a little sometimes ;)

Edit 4: r550 and B3 started working for me... no idea what I did. Maybe I power cycled harder than previously...
Back to compiling a custom menu! ;)

Edit 5: I couldn't get 32K (AT256) chips to boot, but heck, I got my menu back. This isn't Linux kids ;)
Thanks again and until we meet next... Best wishes to all! :D

img4221g.jpg
 
Last edited:

TheLazy1

Experienced Member
Joined
Jun 2, 2009
Messages
370
Location
Toronto, Ontario, Canada
Is it possible for a version that can be loaded from a floppy or some other method other than burning it?
Does it expect a clean, dos free environment to start from?
 

aitotat

Experienced Member
Joined
Aug 13, 2009
Messages
351
Location
Finland
Is it possible for a version that can be loaded from a floppy or some other method other than burning it?
No at the moment. I've been thinking of overlay version for a while but I have no idea if I ever have time to do it. It should be easier to load it from floppy but it would require 9k of conventional memory so it is not very practical. At least it would offer a way to try it before getting necessary hardware to load it from ROM.

Does it expect a clean, dos free environment to start from?
Yes. All initialization and drive detection must be done before booting any operating system.

Edit:
Actually no, the easy floppy method would be to make DOS boot disk and a small program to load XTIDE Universal BIOS to top of conventional memory. Then the initialization and drive detection routine would be called and eventually DOS would be loaded again. I can't think of any reason why that would not work, unless DOS would detect it is already loaded. But the utility could clear all RAM areas not used by BIOS to get around that.
 
Last edited:

Malc

Veteran Member
Joined
Jul 16, 2009
Messages
2,225
Location
UK
Just upgraded my XT 5160 with XT-IDE V1 card to R558, Bios detects Master drive but just hangs at detecting Slave, I don't have a slave drive fitted. Just the one hard drive. I left it for a few minutes then switched off and reverted back to older revision.
 

aitotat

Experienced Member
Joined
Aug 13, 2009
Messages
351
Location
Finland
Just upgraded my XT 5160 with XT-IDE V1 card to R558, Bios detects Master drive but just hangs at detecting Slave
Did you try r557? I know I didn't have any slave drive related problems with it as I've tested it with 2 and 3 master drives without any slaves.
 

Malc

Veteran Member
Joined
Jul 16, 2009
Messages
2,225
Location
UK
Yes and got the same results but didn't go back any further, I've not upgraded in a while, Been using R524, I'll go through them sometime today and see where it stopped working for me.

Edit:
Not done extensive testing but R550 seem's to work fine.
R551 - Is slow at detecting "Slave" if no slave drive fitted, took about 15 seconds to detect no slave was fitted and then went on to boot, I fitted a slave drive and it was detected instantly and went on to boot.
R552 > R558 just hung at detecting slave if no slave fitted, I fitted a slave drive and it was detected instantly and went on to boot.

New version R559 seem's to be working fine ie: detects no slave fitted instantly and goes on to boot :)

Did you try r557?
 
Last edited:

Krille

Veteran Member
Joined
Aug 14, 2010
Messages
1,034
Location
Sweden
I'd love to test it, but unfortunately I have neither burner nor eraser. Anyone willing to help me out by shipping me a burmed EPROM? I'll pay for shipping and chip.

Have you (or anyone else for that matter) tried this yet? Maybe glitch can help you with the EPROM? I've had no feedback at all regarding this and would really like to know if it works (or not).
 

alecv

Experienced Member
Joined
Feb 21, 2010
Messages
230
Location
Switzerland, Geneva
Is it possible to integrate "foreign" BIOS image into the Universal BIOS image ? I've found some interesting hi-res floppy controller BIOS images and would like to test it with AT FDD controller installed into 8-bit slot. I have also a ST-02 SCSI controller, AFAIK it support hi-res floppy by hardware but ST-02 BIOS does not contains floppy support.

My idea is to flash this images into XTIDE 28c256 (32k). This BIOS images are 8K in size and should fit into 28c256 after Universal BIOS (at 24K boundary).
 

Krille

Veteran Member
Joined
Aug 14, 2010
Messages
1,034
Location
Sweden
Is it possible to integrate "foreign" BIOS image into the Universal BIOS image ?

By "integrate" I assume you mean something like this?
Code:
copy/b floppy.bin+scsi.bin+ide_xtl.bin combined.bin

It depends on the other BIOSes. It won't work if they make assumptions about where they are located (which segment address) or if they have a RAM area or memory mapped I/O window located inside the ROM address space (like the SVC ADP50L harddisk controller does). Other than that, I think it should work just fine. I'm pretty sure someone has done this already.
 

Malc

Veteran Member
Joined
Jul 16, 2009
Messages
2,225
Location
UK
Like Krille said it depends on the other bios, But yes should work fine if you have a bios that play's nicely, I have a couple of machines with a 16-bit FDD controller in an 8-bit slot and XTIDE universal bios / HD floppy bios on chip and it works fine.

Is it possible to integrate "foreign" BIOS image into the Universal BIOS image ?
 
Top