PDA

View Full Version : Getting extremely frustrated with nonfunctional IDE options on a 5170/5162



Trixter
August 22nd, 2017, 09:14 PM
I am looking for any success stories in getting IDE drives to work on a 5170/5162 without using the XTIDE Universal BIOS: What adapter cards did you use? What size drives? Did you use a drive overlay? etc.

Background: The MFM drive in my 5162 failed over the weekend, and I thought I'd replace it with IDE, as I have a ton of CF cards, adapters, and real IDE drives. (For the purpose of this discussion, the 5162 is nearly identical to a 5170, down to the BIOS.) After 4+ hours of trying various options, reading these forums (http://www.vcfed.org/forum/showthread.php?25356-IBM-5162-XT-286-IDE-support), and searching online archives (including usenet!), I still can't get anything to work and I'm getting very frustrated.

One thing making this very difficult is that, for technical/research reasons, I must keep the stock 5162 BIOS. Unfortunately, the stock IBM 5170/5162 BIOS is incompatible with the XTIDE Universal BIOS (http://www.vcfed.org/forum/showthread.php?50766-5170-and-XTIDE-strange-data-corruption-issue), so I can't use the XUB. Being limited to the stock 5162 BIOS also means I can't plug in custom Head/Cyl/SPT values, as the 5170/5162 disk drive table entries are fixed, so that eliminates using generic 16-bit multi I/O cards of the type that are common on ebay.

The closest I had to success was using an Acculogic SIDE-3/PLUS card, which comes with an onboard BIOS that supports IDE drives up to 8G. With the 5162 set to "0 hard drives" using the BIOS, the SIDE-3 BIOS would fire up and correctly detect the parameters of whatever IDE device was attached. However, I ran into the following:


Using a CF card + adapter, I could perform tiny reads, like a DIR or reading a 100-byte file. I could also write to the CF card without any trouble. But trying to read more than a few KB at a time would lock up the media: The CF card adapter's activity light would go completely solid. I witnessed this behavior with a 512MB and 2G CF card, and a 4GB Seagate ST1 (essentially a tiny hard drive). I also used two different CF-to-IDE adapters (one an adapter, one a bracket, both powered by a molex connector). I have a few DOMs, but I couldn't get them to fit on the SIDE-3 at the same time I had the floppy cable connected, so that was out.
Using a real IDE drive, I could read and write the media without any issues -- however, because this only worked with the "0 hard drives" CMOS setting, the 5162 couldn't/wouldn't boot from the IDE media. (This would have affected CF cards too, if I had gotten them to work.)

How did people boot from IDE media in a 5170/5162 in the past?

(PS: Please don't suggest I switch to a SCSI subsystem; SCSI in this particular system isn't compatible with the workflow I need to perform.)

pcdata76
August 23rd, 2017, 12:07 AM
One thing making this very difficult is that, for technical/research reasons, I must keep the stock 5162 BIOS. Unfortunately, the stock IBM 5170/5162 BIOS is incompatible with the XTIDE Universal BIOS (http://www.vcfed.org/forum/showthread.php?50766-5170-and-XTIDE-strange-data-corruption-issue), so I can't use the XUB. Being limited to the stock 5162 BIOS also means I can't plug in custom Head/Cyl/SPT values, as the 5170/5162 disk drive table entries are fixed, so that eliminates using generic 16-bit multi I/O cards of the type that are common on ebay.


Does editing the drive table entries in stock BIOS is counted to keeping the BIOS stock or it should be kept bit-by-bit stock? If so, there is a small utility called as HTMU which is doing the job well, http://www.pcorner.com/list/HDUTIL/HTMU.ZIP/INFO/ I've used this before to be able to use a higher capacity MFM drive in my 5170.

Stone
August 23rd, 2017, 02:55 AM
Using a real IDE drive, I could read and write the media without any issues -- however, because this only worked with the "0 hard drives" CMOS setting, the 5162 couldn't/wouldn't boot from the IDE media. (This would have affected CF cards too, if I had gotten them to work.)You can boot from a floppy and include a line in AUTOEXEC.BAT:

SET COMSPEC = C:\COMMAND.COM

Then you can remove the floppy and DOS will use the COMMAND.COM on the HD whenever it needs to reload the transient part of COMMAND,COM, alleviating the need of keeping or re-inserting the boot disk in drive A.

Trixter
August 23rd, 2017, 09:26 AM
Does editing the drive table entries in stock BIOS is counted to keeping the BIOS stock or it should be kept bit-by-bit stock?

That could work. The BIOS code needs to stay stock for my purposes, but the drive table doesn't. Unfortunately, I have zero experience with EEPROMs. Cost of entry doesn't appear too high (eeproms look like <$4 and USB eeprom programmers appear to be <$50), but it would be a learning curve as I've never done it.


SET COMSPEC = C:\COMMAND.COM

True, but I was hoping to avoid that. That's a last resort.

People must have gotten this to work at some point. I read in a few places about a Future Domain controller with embedded BIOS, but none of those sources mentioned an exact model #. Best guess is the IDE-16030.

I'm also confused why I can write to CF cards just fine, and perform a DIR, but not perform larger reads from them.

lutiana
August 23rd, 2017, 09:55 AM
The "no-boot" bit you mention is exactly the same problem I have on my 5162. Though in my case it's an MFM drive, but the floppy controller on the MFM controller is bad so I had to jumper is as secondary and used a standard "modern" floppy controller (a 16 bit IDE controller with the IDE bits disabled). This setup allows me to boot from a floppy disk just fine, but it will not boot from the HDD at all (though once booted you can read and write just fine on the HDD). It's very very odd.

Stone
August 23rd, 2017, 10:28 AM
True, but I was hoping to avoid that. That's a last resort.Yes, and I understand completely. :-) But at least it's viable.

d5aa96
August 23rd, 2017, 10:37 AM
Why does it have to be a IDE HD? Why not use MFM hard disk emulator?

Something like this:
https://www.drem.info/

Rick

tipc
August 23rd, 2017, 10:41 AM
Likely another not so ideal suggestion - a hard disk on a card.

Trixter
August 23rd, 2017, 10:56 AM
Why does it have to be a IDE HD? Why not use MFM hard disk emulator?
Something like this:
https://www.drem.info/


Cool, did not know these existed! (checks price) $300?!? :mad: Are there any alternatives? For that kind of money, I could just buy a few known working MFM drives (probably with full computers attached to them).


Likely another not so ideal suggestion - a hard disk on a card.

This is second-to-last on my list, as I have about 3 or 4 hardcards, but I think they're all dead. I'll find a non-5170/5162 system with only a video card installed to test them in.

glitch
August 23rd, 2017, 11:12 AM
You can use an Adaptec AHA-15xx 16-bit ISA SCSI board if you're not tied to IDE. Pretty sure I've used one in a 5170 before, and I know I've used one in a PS/2 Model 30 286.

Stone
August 23rd, 2017, 11:52 AM
This is second-to-last on my list, as I have about 3 or 4 hardcards, but I think they're all dead.I've got a Quantum EZ170 hardcard that works if that's of interest.

d5aa96
August 23rd, 2017, 11:55 AM
There are other (cheaper) MFM HD emulators, for example:

https://www.pdp8.net/mfm/mfm.shtml

Google is your friend here...

lutiana
August 23rd, 2017, 01:00 PM
You can use an Adaptec AHA-15xx 16-bit ISA SCSI board if you're not tied to IDE. Pretty sure I've used one in a 5170 before, and I know I've used one in a PS/2 Model 30 286.

I could not get mine to work in my 5170 or 5162. Same symptoms as Trixter describes with IDE and XUB. Went away when I switched the BIOS in my 5170, but that's not an option for Trixter.

Trixter
August 23rd, 2017, 01:20 PM
There are other (cheaper) MFM HD emulators, for example:
https://www.pdp8.net/mfm/mfm.shtml


That is $175 fully assembled. Closer to the realm of possibility, but not this year.

And, evidently, that is the only other MFM emulator that doesn't cost an arm and a leg. I was unable to find any additional MFM HD emulators in this price range other than the two listed in this thread despite 20 minutes of wading through google results for ' "MFM" "hard" "emulator" disk OR drive '. (I did find one MUCH more expensive, though: The DTX300 for the princely sum of 1280 euros.)

Xacalite
August 23rd, 2017, 02:01 PM
There are problems with 5170/5162 BIOS and XUB.
There are problems with 5170/5162 BIOS and AHA-15xx BIOS.

Are there any disk BIOS extensions compatible with 5170/5162 BIOS?
If there are, then it should be possible to make XUB compatible as well.

mbbrutman
August 23rd, 2017, 04:59 PM
Promise made reasonably good 16 bit ISA cards with their own BIOS extension on them. When you installed it you disabled the onboard hard drive BIOS by setting the drive type to zero, and then you let the Promise BIOS extension find an run the drives.

I use an EIDE Pro on my 386-40 to get large drive support.


Mike

zombienerd
August 23rd, 2017, 05:24 PM
Have you tried an IBM CF Microdrive? I have a 1gb one floating around here somewhere, I haven't tried it in ages, but it *should* still work. I could send it your way for testing if you cover shipping, and if it works, you can send what you feel is fair, if not, you can send it back and I'll pay shipping.

I don't know if there's any difference between the ST1 and IBM Microdrive as far as the issues go.

SpidersWeb
August 23rd, 2017, 05:49 PM
There are problems with 5170/5162 BIOS and XUB.
There are problems with 5170/5162 BIOS and AHA-15xx BIOS.

Are there any disk BIOS extensions compatible with 5170/5162 BIOS?
If there are, then it should be possible to make XUB compatible as well.

I haven't tried XUB, but I've had no problems with ESDI or SCSI boot devices on my 5170.
It is the 8Mhz version, but running it's original IBM BIOS (not AMI/third party).

lutiana
August 23rd, 2017, 05:49 PM
Promise made reasonably good 16 bit ISA cards with their own BIOS extension on them. When you installed it you disabled the onboard hard drive BIOS by setting the drive type to zero, and then you let the Promise BIOS extension find an run the drives.

I use an EIDE Pro on my 386-40 to get large drive support.


Mike

I have a promise IDE card with it's own BIOS. Works on 386+ only and definitely does not work in the IBM 5170 (not sure about the 5162 though). I think it is also an EIDE Pro, but I'd need to check.

Agent Orange
August 23rd, 2017, 06:01 PM
I use an EIDE Pro on my 386-40 to get large drive support.

How big is your EIDE Pro? My 386/40 sees 8.4 GB

mR_Slug
August 23rd, 2017, 06:49 PM
Can you not use a generic 16-bit multi I/O card with a drive translation program? Also you could configure one drive as type 9 giving you ~115MB, and have just the second with translation, in case you're running software that doesn't work well with translation. I know you said no SCSI, but it has been mentioned. Some of the early controllers can emulate the WD1002 controller. You can only get two drives, but from a BIOS perspective it appears like an IDE/MFM/etc drive. I've got a Mylex controller like that, but that's an EISA card.

Edit: Re SCSI, I re-read your first post and I think you tried something similar with the SIDE-3/PLUS.

Unknown_K
August 23rd, 2017, 07:18 PM
How much space do you need?

I would say buy a hardcard or another MFM drive (or couple) and backup to the network as needed till it fails. Ebay has quite a few MFM drives for under $100.

Trixter
August 23rd, 2017, 08:39 PM
I have a promise IDE card with it's own BIOS. Works on 386+ only and definitely does not work in the IBM 5170 (not sure about the 5162 though). I think it is also an EIDE Pro, but I'd need to check.

Crap, that's exactly what I just bought (http://www.ebay.com/itm/152666401343). I spent less than $20 and I have a 386 that needs a controller, so it wasn't wasted, but still.


Can you not use a generic 16-bit multi I/O card with a drive translation program?

I tried that; without an IDE-aware BIOS (remember, I can't use the XUB), there's no resident code to drive the hardware. Generic 16-bit multi I/O cards don't have a BIOS on them. My Acculogic SIDE-3 does have a BIOS, but see my first post for the results.


I know you said no SCSI, but it has been mentioned. Some of the early controllers can emulate the WD1002 controller. You can only get two drives, but from a BIOS perspective it appears like an IDE/MFM/etc drive. I've got a Mylex controller like that, but that's an EISA card.

SCSI doesn't mesh with the workflow I need this system for (I need to be able to remove the media and reload it easily). I can do that with IDE drives and CF cards, but I can't do that with SCSI.


I would say buy a hardcard or another MFM drive (or couple) and backup to the network as needed till it fails. Ebay has quite a few MFM drives for under $100.

It's looking like either of those will be the only solution if I want to boot off of the media. But, that's not very future-proof (any spinning drive is eventually going to fail).

While I wait for the Promise card to arrive, I am trying to ressurect the ST-251 with mostly bad results. SpeedStor initializes the drive ok, but after a few minutes of operation, the bits "fade" and I start losing data and/or sectors start becoming unreadable. I'm assuming this is going to be a lost cause (I'm filling up the defect table in the program doing a defect scan), and will try all three of my hardcards tomorrow.

I am hoping that whatever the incompatibility is with the XUB and a 5170/5162 can eventually be found and worked around, because a functional XUB on this system would solve every one of my problems.

lutiana
August 23rd, 2017, 08:51 PM
Crap, that's exactly what I just bought (http://www.ebay.com/itm/152666401343). I spent less than $20 and I have a 386 that needs a controller, so it wasn't wasted, but still.

Yes, that is precisely what I bought, I have two of them. They do not work in the 5170, though I never tried it in the 5162. IIRC the system does not even post with the card installed but it could have been that the BIOS never loaded. YMMV. Come think of it, I should try it again with the non-IBM BIOS and see what happens.

Unknown_K
August 23rd, 2017, 09:59 PM
It's looking like either of those will be the only solution if I want to boot off of the media. But, that's not very future-proof (any spinning drive is eventually going to fail).
.

Programming on a 5170 and you are worried about future proof drives? ;)

RWallmow
August 24th, 2017, 04:31 AM
I am not familiar with the incompatibility here with a 5162 and XTIDE BIOS, but is there perhaps another version of the XTIDE BIOS that DOES work with the stock 5162 BIOS? Maybe one of the older XTIDE BIOS images (pre-universal) by Hargle (http://www.acrpc.net/utils/xtide_011.zip).

pearce_jj
August 24th, 2017, 04:42 AM
Sounds like we should focus on fixing the BIOS.

If only we knew someone with deep knowledge of x86 assembly and a 5162... :-)

Scali
August 24th, 2017, 05:13 AM
Donate me a 5162 with all the required hardware and I'll have a look :)

geoffm3
August 24th, 2017, 05:27 AM
So, what exactly is the issue with the XTIDE BIOS extension?

Xacalite
August 24th, 2017, 05:55 AM
So, what exactly is the issue with the XTIDE BIOS extension?

Whatever it is, it may be on the side of 5170/5162 BIOS, as similar problems were reported with AHA-15xx BIOS extension.

Scali
August 24th, 2017, 06:10 AM
Whatever it is, it may be on the side of 5170/5162 BIOS, as similar problems were reported with AHA-15xx BIOS extension.

Well, if it is, then it's still a problem with the IDE controller BIOS.
After all, the 5170 is the real AT, not any clone. You'd expect hardware to work with the real thing, not just with clones :)

krebizfan
August 24th, 2017, 06:38 AM
Well, if it is, then it's still a problem with the IDE controller BIOS.
After all, the 5170 is the real AT, not any clone. You'd expect hardware to work with the real thing, not just with clones :)

Except at least some versions of the 5170 BIOS were designed not to work with any third party controller.

vwestlife
August 24th, 2017, 07:53 AM
Using a CF card + adapter, I could perform tiny reads, like a DIR or reading a 100-byte file. I could also write to the CF card without any trouble. But trying to read more than a few KB at a time would lock up the media: The CF card adapter's activity light would go completely solid.
Try adding MULTITRACK=OFF to CONFIG.SYS:

https://www.4dos.info/tools/undoc_dos.txt



MULTITRACK
Syntax: MULTITRACK=ON or MULTITRACK=OFF
Default: MULTITRACK=ON

Starting with DOS 4.0, disk accesses have been optimized to get better
performance when working with "newer" hard disk drives. Among other
things, reading and writing of more than one track with a single BIOS
call has been implemented. But some problems have been observed with
hard disk drives of some manufacturers. So the MULTITRACK=OFF option
limits disk access to a single track.

Trixter
August 24th, 2017, 12:00 PM
Programming on a 5170 and you are worried about future proof drives? ;)

I'm cross-developing, so I'm not worried about losing work created on the system. I'm worried about the system no longer being functional (in a period-accurate capacity) in the future.

With the advent of solid-state media interfaces to older x86 systems, it is now quite reasonable to expect that, with electronic component replacement as necessary, these systems should be operational far into the future. The 5170 is a very narrow edge case, but it is also quite historically relevant, so it's worth spending time on this issue.


Donate me a 5162 with all the required hardware and I'll have a look :)

With respect, I think Krille is the only person 100% qualified to troubleshoot the XUB :-) (I wonder if he's reading this thread?)


So, what exactly is the issue with the XTIDE BIOS extension?

It initially appears to work, but reads are randomly corrupted. Later revisions of the 5170 BIOS reduce the corruption, but it's still there. An AMI BIOS replacement completely eliminates the corruption, but as stated in the OP, I can't use an AMI BIOS for my purposes.


Try adding MULTITRACK=OFF to CONFIG.SYS:

That's a great suggestion if I were using DOS 4+, except I was performing all tests with PC DOS 3.3 (which doesn't try to use the INT 13h BIOS extensions).

Malc
August 24th, 2017, 11:14 PM
...With the advent of solid-state media interfaces to older x86 systems, it is now quite reasonable to expect that, with electronic component replacement as necessary, these systems should be operational far into the future. The 5170 is a very narrow edge case, but it is also quite historically relevant, so it's worth spending time on this issue..

I agree, Though i'm not sure if the problem can be "Fixed" by modding the XUB, The IBM 5170 and 5162 Bios seem's to check for the original IBM controller and throws a 601 error if it doesn't find it, I spent several hour's trying every floppy / hard drive / Multi I/O controller i have in my 5162 and got the 601 error every time and major corruption, I tried many revisions of the XUB with the same results, In the end i swapped out the original IBM 5162 bios with the AMI bios and all problems disappeared, My 5170 and 5162 runs sweet with the AMI bios and latest revision of the XUB. Whether those problems can be worked around in the XUB i don't know, But maybe the IBM bios needs to be modified.

sqpat
August 24th, 2017, 11:32 PM
You mentioned SCSI doesn't suit your workflow, but what about a SCSI2SD adapter? Reports suggest they work on a 386: http://www.vcfed.org/forum/archive/index.php/t-44338.html . I realize its sort of a roundabout way to get there.

Trixter
August 25th, 2017, 08:44 AM
I hadn't checked on SCSI2SD adapters in a while; they had high cost and low compatibility. A quick check now shows that seems to be reversing, so you're right, that might be an option. At that point, the only blocking factor is whether I can find a SCSI card whose bios works in a 5170 (which shoudn't be hard, I think I have a "CorelSCSI" package that is a rebranded 8-bit future domain controller that should work).

I have another ST-251 coming in the mail; hopefully it's not dead. I tried to forcefully LLF my failing ST-251 and ended up with bad sectors on the first two tracks, so it's useless for DOS.

Trixter
August 25th, 2017, 08:45 AM
The IBM 5170 and 5162 Bios seem's to check for the original IBM controller and throws a 601 error if it doesn't find it

I found that too in testing, however I also found it's not fatal. You get a 601 error, then hit F1, then the boot process continues.

Malc
August 25th, 2017, 09:09 AM
That's right but still annoying, I would probably have swapped the bios just for that, But the corruption and all nailed it, I wasn't going to buy another 30 odd year old MFM drive that could turn it's toes up a week later, So compact flash it was, I use CF in my XT's and 5150, It's a lot cheaper and reliable.

alecv
August 25th, 2017, 10:45 AM
Trixter Did you try to build XUB with "Variable area" moved to the top of memory ?
There were some reports about incompatibilities.
http://www.vcfed.org/forum/showthread.php?19591-XTIDE-tech-support-thread&p=439077#post439077

Seems original AT BOS overwrites vital XUB data at 0030:0000 (for large stack ??) while another BIOSes does not.

Also try to disable MODULE_EBIOS (and use <8.4Gb IDE drive) and try to use RELOCATE_INT13H_STACK.

vwestlife
August 25th, 2017, 10:50 AM
I tried to forcefully LLF my failing ST-251 and ended up with bad sectors on the first two tracks, so it's useless for DOS.
I'd keep it just for the cool noises it makes! :cool:


https://www.youtube.com/watch?v=Fh6sd-kdFFg

Krille
August 25th, 2017, 12:55 PM
Try adding MULTITRACK=OFF to CONFIG.SYS:

https://www.4dos.info/tools/undoc_dos.txt
I think this is for avoiding problems with certain drives that can't do multi-sector transfers properly.


With respect, I think Krille is the only person 100% qualified to troubleshoot the XUB :-) (I wonder if he's reading this thread?)
I am now, since you PM:ed me! :) Any help from Scali (or anyone else for that matter) in troubleshooting this would be very welcome! I had started to look into this by reading the BIOS listings in the Technical References for all three versions of the 5170 BIOS (http://minuszerodegrees.net/manuals.htm#IBM) but the sheer amount of code was overwhelming. There was simply too much code to read and not enough time so it got pushed aside.

Presumably, there weren't that many changes between the three BIOS versions. I believe a good way forward would be to compare only the changes between them (either by comparing them in bnary form or by disassembling them into text files and then compare those). This should make it easier to find the problem since we know that the disk corruptions are reduced with each successive version.

lutiana
August 25th, 2017, 01:49 PM
I'd help if I could, but I don't think I can handle that level of machine code. However I am more than happy to test out any BIOS changes you guys make on both my 5170 and 5162. I think working out and patching the IBM BIOS is definitely the better way to get this fixed.

Trixter
August 26th, 2017, 10:26 PM
New development: Despite multiple reports of CRC errors using the XUB with the 5170 stock BIOS, as a last-ditch effort I decided to try the most basic XTIDE test I could, just to verify it for myself. I pulled out my XTIDE rev 1 board which had a v2.0.0b3+ (2015-02-20) XUB flashed to it. I connected it to a 4GB Seagate ST1 Drive (a tiny hard drive, not pure flash) via a cheap CF2IDE adapter (labeled "IDE2CF-B1 20040625"). I put it in an available 16-bit slot... and it worked, flawlessly. :confused: I ran Pearce's "disktest.exe mediatest" which verifies 10 different bit patterns in a file and it passed with no errors. I used the system for about 10 minutes and so far no trouble at all. I then switched to an 8GB DOM, and that worked just fine as well.

My theory on why this is working is because the card+BIOS are configured for maximum compatibility with the slowest speed: Transfers are 8-bit only, no Chuck mod. Here's how the XUB is configured on the card that is working, loaded directly from the EEPROM:

Configuration menu:
Full operating mode: No
IDE controllers: 1
Power management: Disabled

Primary IDE controller:
Device type: XTIDE r1
Base address: 300h
Control block address: 308h

Master drive:
Block mode transfers: yes
CHS translation method: auto
Internal write cache: Disabled
User specified CMS: no
User specified LBA: no

As one would expect, the performance is ok but not blazing:

Write speed: 118KB/s
Read speed: 146KB/s
8K random, 70% read: 15 IOPS
Sector random read: 93 IOPS

Encouraged by this success, I remembered that I had an r3 board with an older v2.0.0b3 (2013-03-02) XUB loaded. (This is one of the "white" board variants sold by someone on ebay that contain both an IDE header and a CF card header). I tested it with the same 8GB DOM and it also passed a "disktest.exe mediatest". I then grabbed everything within reach to test: A Transcend 512MB CF card, an IBM 340MB Microdrive, and a WD SiliconDrive 2GB CF card ("SSD-C02G-3500"). All passed a "disktest.exe mediatest".

So, why is this working when many other people have reported CRC errors?? Some theories:


I stumbled on a specific XUB revision that works
I stumbled onto the fact that if you use the XT-friendly-build of the XUB, it works better than one compiled for AT defaults (only attempts 8-bit transfers, etc.)
The 5162, despite the hardware and BIOS being a nearly exact clone of the 5170, is not affected by the 5170 problem

As for other XTIDE boards, I couldn't test with a glitchworks r3 board because I haven't assembled mine yet. I tried to test with Pearce's XT-CFv2 prototype, but even after double-checking I had the switches set correctly for AT operation, the board kept rebooting once its BIOS was activated, so it never got out of POST, sadly. (This same board works fine in an XT, so I've set it aside for that.) I have a 5170 with a bad power supply (BIOS revision unknown) that I'll be testing this out on when I can swap the power supply.

To get to the bottom of this, I guess the next course of action is trying to find XUB revisions (or settings) that DON'T work, to try to narrow down which changes introduced (or fixed!) 5170 incompatibility. Unfortunately, I need all of my XTIDE boards in 100% working order for VCFMW (http://www.vcfmw.org/) on September 9-10, so if I decide to do this, it wouldn't be until later in September.


I'd keep it just for the cool noises it makes! :cool:

Nope, once the failing ST-251 gets warm, 1 out of 5 sector reads fails. I scanned for and locked out bad sectors; when I was done, 25% of the drive was gone. The only reason it's still in the system is because I need something to generate load for the power supply to start, and also because it provides a faceplate.



Presumably, there weren't that many changes between the three BIOS versions. I believe a good way forward would be to compare only the changes between them (either by comparing them in bnary form or by disassembling them into text files and then compare those). This should make it easier to find the problem since we know that the disk corruptions are reduced with each successive version.

If anyone wants to tackle this, source code has been painstakingly reconstructed from scans of the BIOS listings and uploaded here: https://sites.google.com/site/pcdosretro/ibmpcbios The noted differences between them are here: https://sites.google.com/site/pcdosretro/ibmbioshist


I'd help if I could, but I don't think I can handle that level of machine code. However I am more than happy to test out any BIOS changes you guys make on both my 5170 and 5162. I think working out and patching the IBM BIOS is definitely the better way to get this fixed.

I respectfully disagree that patching the 5170/5162 BIOS is necessary, because other companies of the time were able to work with it (for example, my Hardcard II XL 105 worked without any trouble). And, evidently, some combination of what I have is also working on a 5162.

AlexC
August 26th, 2017, 11:29 PM
Using a CF card + adapter, I could perform tiny reads, like a DIR or reading a 100-byte file. I could also write to the CF card without any trouble. But trying to read more than a few KB at a time would lock up the media: The CF card adapter's activity light would go completely solid. I witnessed this behavior with a 512MB and 2G CF card, and a 4GB Seagate ST1 (essentially a tiny hard drive). I also used two different CF-to-IDE adapters (one an adapter, one a bracket, both powered by a molex connector). I have a few DOMs, but I couldn't get them to fit on the SIDE-3 at the same time I had the floppy cable connected, so that was out.

Just to rewind back to your first post, I had a similar situation with an AST Premium Exec laptop using a CF-IDE adapter. Exactly the same symptoms and I tried numerous cards. In the end the *only* combination that worked was MS-DOS 3.30 with at least 20 buffers and either a 16MB or a 32MB CF card, no larger. I spent a lot of time on this, and went through numerous cards of varying sizes and other versions of MS-DOS too, with no luck. I still don't know the cause, but 32MB was sufficient for that machine so I didn't mind. So if you do want to revert to the SIDE-3 option, this may work.

pearce_jj
August 27th, 2017, 12:35 AM
ChuckMod changes the IO port addresses for reads, that's all. As a result it enables word transfers rather than byte transfers.

Scali
August 27th, 2017, 03:55 AM
I stumbled on a specific XUB revision that works
I stumbled onto the fact that if you use the XT-friendly-build of the XUB, it works better than one compiled for AT defaults (only attempts 8-bit transfers, etc.)
The 5162, despite the hardware and BIOS being a nearly exact clone of the 5170, is not affected by the 5170 problem


If not the third option, then apparently the problem is in the XUB, not with the 5162/5170 specifically.
And it should be solvable.


I respectfully disagree that patching the 5170/5162 BIOS is necessary, because other companies of the time were able to work with it (for example, my Hardcard II XL 105 worked without any trouble). And, evidently, some combination of what I have is also working on a 5162.

Agreed with that. The 5162/5170 is the original, all hardware and BIOS extensions should aim to be compatible with it.
Given the open architecture of the PC platform, and to what extent they have been cloned, I don't think IBM would deliberately want to disable third-party controllers, nor would they be capable if they wanted to. After all, their own controllers work, so you can make any third-party controller appear as a perfect clone of that. If the BIOS can't tell the difference, it will work.

AlexC
August 27th, 2017, 04:09 AM
Just to rewind back to your first post, I had a similar situation with an AST Premium Exec laptop using a CF-IDE adapter. Exactly the same symptoms and I tried numerous cards. In the end the *only* combination that worked was MS-DOS 3.30 with at least 20 buffers and either a 16MB or a 32MB CF card, no larger. I spent a lot of time on this, and went through numerous cards of varying sizes and other versions of MS-DOS too, with no luck. I still don't know the cause, but 32MB was sufficient for that machine so I didn't mind. So if you do want to revert to the SIDE-3 option, this may work.

Something else I remembered about this machine that may be of use. I was eventually able to get larger CF cards working, but only with OnTrack Disk Manager. Its resident code somehow overrode the 'read stickiness' of the other cards.

But if your SIDE-3 adapter already supports large-capacity drives, OnTrack will self-disable on start-up so that won't be of much use to you. In my case, this meant I couldn't use any cards between 32MB and 512MB, as the AST's BIOS could see up to that capacity natively. 1GB cards with OnTrack worked fine, even with other DOS versions. 32MB or less I could use natively but only with DOS 3.30.

lutiana
August 27th, 2017, 02:58 PM
I respectfully disagree that patching the 5170/5162 BIOS is necessary, because other companies of the time were able to work with it (for example, my Hardcard II XL 105 worked without any trouble). And, evidently, some combination of what I have is also working on a 5162.

Fair point. I never did try the XUB in my 5162, only in the 5170, and while I don't recall having any read/write issues on the drive, I definitely could not boot from it, and this was with a 1Gb CF card, I may give that a try when I get some time.

mikey99
August 27th, 2017, 05:27 PM
My 5162 with original IBM BIOS came with a 16 bit Seagate floppy/hard drive controller card and ST-225 drive.

40495

Sydius
December 25th, 2017, 02:37 PM
I've been trying to the XT-IDE rev 4 board to work in my 5162 with no success. I downloaded the latest version from the GitHub mirror, built it myself with the default settings, then tried both the XT and AT versions. My test was to put it in a 16-bit slot and to boot from a 3.5" floppy that has FreeDOS on it. Without the card installed, it boots correctly. With the AT version, it tries to boot from A but instead simply prints "FreeDOS" twice in a row and hangs. With the XT version, it displays "FreeDOS" once and then hangs (it does the same thing with the older version that came on the EEPROM with the card). Toggling the jumper setting for compatibility / high-speed does not seem to change anything.