VOGONS


First post, by copper

User metadata
Rank Newbie
Rank
Newbie

I'm posting this so nobody else wastes six hours of their life.

I have an XT-IDE rev 04 (c) I'm using with an XT-class machine, a Leading Edge Model D with an Intel 8088 and Phoenix BIOS 3.0. I wanted to use micro sdcards instead of the obsolete CF format. I bought an sdcard adapter in a tray off eBay. It identifies itself as "SINTECHI" brand. The full ID string is "SINTECHI HighSpeed SD to CF Adapter V1.0".

It uses a FC1307A controller, as do 99% of the adapters you will find on eBay, Amazon, or Aliexpress. They appear to be all the same regardless of the device ID string or whether they support regular or micro cards. There is some more info about them here: https://goughlui.com/2019/02/03/tested-generi … dapter-sd35vc0/

Initially I used the SD adapter in my Pentium III Windows 98 machine and everything was fine. It doesn't support LBA48 (limiting you to 137gb disks), it is hardwired to the master IDE position, and it has a tiny write buffer so writes are slow, but it's reliable. Note that this setup was using a FAT32 partition.

I then tried to use it in my XT with the XT-IDE. This is documented as working: https://forum.vcfed.org/index.php?threads/xti … 68/#post-896021. It's also documented as not working: Re: Using a vintage multi-track recorder as a mixer, namely the Roland VS-880EX - might apply to other Roland VS- units and SD Card to IDE Adaptor issues with FIC Slot 1 motherboard..

For the XT, I created a FAT16 partition. This seemed to work. It seemed to survive a soft reboot, and I formatted it and installed DOS. I then rebooted again (possibly a hard reboot), and all the partitions were gone. I tried FreeDOS, DOS 3.3, DOS 2.1, same problem.

[Edit: incorrect advice removed]

Initially I thought that if I made the first MBR partition a FAT32 or NTFS partition, I could make the others FAT16 and use them normally, but I cannot for the life of me make them bootable; see below.

Last edited by copper on 2023-08-14, 00:23. Edited 10 times in total.

Reply 1 of 20, by Horun

User metadata
Rank l33t++
Rank
l33t++

Thanks ! Good work. Let us know if you run into any other quirks.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 2 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie

So, I am unable to get any of these partitions to boot, although I can see them and use them.

I think the adapters will neither read nor write a partition table that they don't like. What they like are standard FAT32 and NTFS partitions without MBR nonsense. I created a FAT16 partition via USB on a Windows 98 machine and I still can't see it.

It may be possible to create the perfect arrangement such that you can boot to a FAT16 partition with the adapter, but I sure don't know what it is. I could boot to a FAT32 partition easily enough with Windows 98. I guess I could try that with FreeDOS but it’s pretty limiting.

Reply 3 of 20, by darry

User metadata
Rank l33t++
Rank
l33t++

Thank you for sharing your experience.

The "disappearing" partitions after reboot if first partition is FAT16 issue can be avoided by using Linux fdisk or Easus Partition Master to create the partitions (at least it works for me), as I mentioned here Re: Using a vintage multi-track recorder as a mixer, namely the Roland VS-880EX - might apply to other Roland VS- units This will allow any or all partitions to be FAT16 without issues, in my experience .

As for the boot issue, are you setting the active partition in fdisk (or equivalent) and making sur the is an MBR written to the disk (a working FAT partition table does not necessarily mean there is a valid MBR written to disk, you can use fdisk /mbr to write one)?

Maybe you could share a step-by-step process of what are trying to help us identify where the issue might be .

Also, be careful using FreeDOS fdisk. I have seen very weird issues linked to using it. None of those would apply toyour use case, but there may be other unknown ones that could.

Reply 4 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie

Thanks for the tips. Unfortunately I think this story has a sad end.

I used GParted Live to create a 16MB FAT16 partition and nothing else on the card. Booted it up on the XT:

- All versions of DOS can see the partition! Great.
- DOS 2 will not format it; not a DOS partition
- DOS 3.31 will format it, sys it, fdisk /mbr, but it gives errors about free space and corrupted FAT table and will not boot to it
- DOS 6.22 is the same story without the errors, but still doesn't boot
- SvarDOS/FreeDOS cannot successfully format it. Incidentally, when FreeDOS boots, it's InitDisk utility complains that the drive geometry is wrong and says it will make up some other geometry to use

I don't see any way forward from here.

Reply 5 of 20, by darry

User metadata
Rank l33t++
Rank
l33t++
copper wrote on 2023-08-13, 02:29:
Thanks for the tips. Unfortunately I think this story has a sad end. […]
Show full quote

Thanks for the tips. Unfortunately I think this story has a sad end.

I used GParted Live to create a 16MB FAT16 partition and nothing else on the card. Booted it up on the XT:

- All versions of DOS can see the partition! Great.
- DOS 2 will not format it; not a DOS partition
- DOS 3.31 will format it, sys it, fdisk /mbr, but it gives errors about free space and corrupted FAT table and will not boot to it
- DOS 6.22 is the same story without the errors, but still doesn't boot
- SvarDOS/FreeDOS cannot successfully format it. Incidentally, when FreeDOS boots, it's InitDisk utility complains that the drive geometry is wrong and says it will make up some other geometry to use

I don't see any way forward from here.

Have you tried updating the XTIDE BIOS on the card the latest version ?

https://minuszerodegrees.net/xtide/rev_4/XT-I … -%20general.htm

Reply 6 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie

I have been using R625.

I'm going to guess the problem is the CHS addressing. LBA on the Windows 98 machine works fine. I could try a 2GB sdcard instead of the 32GB I was using, if that would make a difference.

Reply 7 of 20, by darry

User metadata
Rank l33t++
Rank
l33t++
copper wrote on 2023-08-13, 03:17:

I have been using R625.

I'm going to guess the problem is the CHS addressing. LBA on the Windows 98 machine works fine. I could try a 2GB sdcard instead of the 32GB I was using, if that would make a difference.

2GB is still too big if you want to forgo LBA . Do you have 512MB or smaller ones ?

I can vouch for LB48 working well on R614 on a 440BX board . Re: Adding XT-IDE option ROM to Asus P3B-F BIOS [Thanks to DenizOezmen, it actually works!!!] .

EDIT : Just a though, do you see the XT-IDE option ROM splash screen on boot ?

Another idea: If you have a 386 or better PC with an ISA slot, maybe try the XT-IDE card in there and try to partition, format as FAT32 and boot from DOS 7.1 (which supports FAT32) on the XTIDE card (with any IDE said to disabled in the main BIOS) and see if that works . You can't do this on the 8088 machinie, as DOS 7.1 (bundled with Windows 98) apparently requires 386 real mode instruction support (or at least won't run on an 8088)

Reply 8 of 20, by wierd_w

User metadata
Rank Member
Rank
Member

Concerning 'sintechi' cf / sdcard adapters, i have found that they 'can' do older forms of 'dma', just not ultradma.

Multiword dma modes 1 and 2 do work, but ultradma modes 1 and 2 do not.

Further reading:
https://en.m.wikipedia.org/wiki/WDMA_(computer)

48bit lba is indeed broken, and just fails silently, leading to data corruption. No modules/cards larger than 128gb! Ever!
(28bit LBA, is JUST FINE, however. This is what enforces the 128gb size limit, is the inability to use 48bit LBA, even with advanced OSes that take full charge of the disk controller. The sintechi card will not complain about being attempted in 48bit mode, will silently fail, and just corrupt your data. NO PARTITIONS PAST 128gb!! EVER!)

The statement about missing mbr code is also correct. Most sdcards do not come with an mbr program to load the first sector of the active partition, and thus wont boot without having one put there manually.

I have successfully used it with things like EzBios and OnTrack DDO, even in multi word mode, and with DOS 6.22. (EzBios and OnTrack have options you can configure to turn on these older modes, but not UDMA modes) I am more apt to think that your card has borked up structures at the start of the SDCard/CF module. Consider overwriting the first 4mb or so of the card with zeros using DD (since you are using gparted, which means you have and can use linux), boot using real dos diskette, create then format the partitions with DOS's tools, and not gparted or linux fdisk.

eg: (on linux)

sudo dd if=/dev/zero of=/dev/[yourblockdevice] bs=1M count=4

(which zero-fills the first 4mb, which is what you should use as the minimum area on the volume, and where you should aim for structure alignment, due to how SDCards work.)
https://pawitp.medium.com/block-alignment-on- … ds-cf09dca42439

THEN-- pop it into your target system, and partition it with DOS. Make sure partitions align on sector boundaries that align with 4MB, as per above. Set the partition active, etc, then format it, sys it, and then run fdisk /mbr.

Reply 9 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie

I do get the XT-IDE splash screen. I am using the build for XT with the 4 options across the top.

I went through this process:

- New cable (80 pin this time)
- Use DD to wipe beginning of sdcard
- Create msdos partition table in Gparted
- Create 1024MB FAT16 primary partition in GParted, cylinder aligned
- Boot to DOS622, partition is there
- Set partition active
- Hard reboot
- format C:
- copy *.* C:
- sys c:
- fdisk /mbr
- Hard reboot

Then I get "missing operating system", and it doesn't boot. If I boot to DOS622 on the floppy, mysteriously all my free space on C is gone, but the files are there.

I also tried a Startech IDE2SATA adapter and a 250GB SATA SSD. With the 40 pin cable, it detected it as a 137MB drive. Setting up DOS on it didn't work. With the 80 pin cable, it doesn't detect it at all. I don't know what to do with this information.

I may have a working IDE drive I could try but I am concerned about corrupting it.

Last edited by copper on 2023-08-13, 16:56. Edited 2 times in total.

Reply 10 of 20, by wierd_w

User metadata
Rank Member
Rank
Member

You should not use gparted to create the dos partition. It will default to using lba type partition, and not chs type partition. (You CAN manually change the partition type after creating it with gparted using linux fdisk, and looking the partition type byte id in the table and settingnit yourself, but it's better to let dos do it in my experience.)

Letting dos create the partition will resolve this issue.

Reply 11 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie

Updated my comment to clarify that I created an msdos partition table. You are suggesting I should not create the partition in gparted at all? Above, that was what we had to do to prevent the IDE2SD adapter from wiping the partition table, but I can try it again.

Reply 12 of 20, by wierd_w

User metadata
Rank Member
Rank
Member

The issue you are having is almost certainly related to the id byte that defines the partition in the partition table.

https://en.wikipedia.org/wiki/Partition_type

There are many id bytes allowed for a fat16 volume.

Gparted creates the lba fat16 byte id. (08h)
dos might really want to use chs type (06h), or there might be a logical sector incongruity between the xtide's translation to lba, vs that of your sdcard reader on linux.

You can manually change the id byte using cli fdisk on linux, but the volume will need to be reformatted.

partitioning with dos will get the structures dos wants.

Reply 13 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie

I used fdisk to change the type to 06h. Booted, formatted, copied, sys’d, and ran fdisk /mbr. On hard reboot the partitions are now gone.

It seems like the LBA FAT16 is on the list of partition types the IDE2SD likes, but the CHS FAT16 is not. Although it was initially accessible before I ran fdisk /mbr, so I don’t really know.

Reply 14 of 20, by darry

User metadata
Rank l33t++
Rank
l33t++
wierd_w wrote on 2023-08-13, 17:17:
The issue you are having is almost certainly related to the id byte that defines the partition in the partition table. […]
Show full quote

The issue you are having is almost certainly related to the id byte that defines the partition in the partition table.

https://en.wikipedia.org/wiki/Partition_type

There are many id bytes allowed for a fat16 volume.

Gparted creates the lba fat16 byte id. (08h)
dos might really want to use chs type (06h), or there might be a logical sector incongruity between the xtide's translation to lba, vs that of your sdcard reader on linux.

You can manually change the id byte using cli fdisk on linux, but the volume will need to be reformatted.

partitioning with dos will get the structures dos wants.

There is this option in Linux Fdisk that might do that . I have paracticallty always used DOS 7.1 in recent years (decades), which is likely more lenient on that . I might do some testing in a VM and with an actual FC1307 and older versions of MS-DOS (I have 5.0 on hand, but nothing earlier) if I have some time.

-c, --compatibility[=mode]
Specify the compatibility mode, 'dos' or 'nondos'. The default is
non-DOS mode. For backward compatibility, it is possible to use the
option without the mode argument — then the default is used. Note
that the optional mode argument cannot be separated from the -c
option by a space, the correct form is for example -c=dos.

Reply 15 of 20, by wierd_w

User metadata
Rank Member
Rank
Member

I would recommend this process:

DD first 4mb
remove from linux machine
insert into sintechi adapter in computer
let xt-ide interrogate, and boot from diskette
use dos fdisk to create the partition table and partition with a primary partition that ends on a 4mb boundary, and is set active
reboot
format the volume WITH DOS using the /s and /u switches
run fdisk /mbr from the boot diskette

Attempt boot

Reply 16 of 20, by darry

User metadata
Rank l33t++
Rank
l33t++
copper wrote on 2023-08-13, 17:53:

I used fdisk to change the type to 06h. Booted, formatted, copied, sys’d, and ran fdisk /mbr. On hard reboot the partitions are now gone.

It seems like the LBA FAT16 is on the list of partition types the IDE2SD likes, but the CHS FAT16 is not. Although it was initially accessible before I ran fdisk /mbr, so I don’t really know.

Let me run some tests and get back to you . I just realized that I have a practically perfect setup to this quickly with an actual FC1307.

Reply 17 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie
wierd_w wrote on 2023-08-13, 17:59:

I would recommend this process:

I followed this process exactly. With soft reboots between steps, it gets to "Starting MS-DOS" and hangs. If you soft reboot to a floppy, command.com has disappeared from C:. It seems clear there is some kind of corruption happening.

With hard reboots between steps, the partition is gone after the first reboot.

Also, the XT-IDE wipedisk utlity didn't work; on hard reboot the existing partition would be back. I had to zero the cards from Linus with dd.

I found this person blaming interference/their PSU for their problems: https://forum.vcfed.org/index.php?threads/xti … -51#post-827108. I tried running the 5V line from the XT-IDE and also from a bench power supply, and aside from the ID string saying "HIG(SPEED" instead of "HIGHSPEED" everything is still the same.

I also noticed some people have a "Rev 1.2" ID string for their SINTECHI and I don't think I do. This appears to refer to the firmware version. Maybe that's the problem?

Last edited by copper on 2023-08-14, 13:38. Edited 1 time in total.

Reply 18 of 20, by wierd_w

User metadata
Rank Member
Rank
Member

Maybe. I'd wonder if this same behavior with a different SDcard, or if the XT-IDE is configured correctly.

Is this an authentic IBM 5150 AT?
http://www.minuszerodegrees.net/xtide/XT-IDE% … %20Problems.htm

(relevant sections if YES)

Symptom Nil or unstable operation in an IBM 5170 (IBM AT). Possible cause Faulty XT-IDE card. Possible cause Sometimes, there […]
Show full quote

Symptom Nil or unstable operation in an IBM 5170 (IBM AT).
Possible cause Faulty XT-IDE card.
Possible cause Sometimes, there appears to be an incompatibility between the XTIDE Universal BIOS (XUB) and the 5170 motherboard's IBM BIOS.
The symptom of the incompatibility varies, and includes (but not limited to):
• The XUB displays the make-model of CF card, but will not boot from the attached CF card.
• If I can get the combination to boot, I have observed corrupted reads of files (as evidenced by CRC comparisons to what was written).

Not enough experimentation has been done, but per note 1 below, the problem scope may be restricted to type 1 motherboards fitted with the 01/10/84 revision IBM BIOS (the stock BIOS for that motherboard).

Possible cause Once, on my bench, I accidentally powered a type 3 motherboard using an XT-class power supply. That resulted in various 'bad' behaviour of the various XT-IDE cards that I have.
It suggests that a marginal/faulty AT-class power supply might be a cause.
Fix #1 If you have a type 1 motherboard, upgrade the 01/10/84 revision IBM BIOS to the 06/10/85 one. Refer to notes 1 and 3 below.
Fix #2 If you have a type 1 motherboard, upgrade the 01/10/84 revision IBM BIOS to the AWARD one at here. Refer to note 1.
Fix #3 Use a 16-bit IDE controller instead of the XT-IDE. (Which is the 'ideal' solution for a 16-bit computer, because the entire data path is 16 bits wide.)
Possible complication: See the 'Known problem - POST error of 601' section of here.
Note See note 1 below.

---

Symptom I added an XT-IDE card to my early IBM 5170 (contains a type 1 motherboard), and when the XTIDE Universal BIOS (XUB) on the card tries to boot from MS-DOS 6.22 on the attached CF card, "Starting MS-DOS..." is displayed on the screen and then there is no further progress.
Cause Some sort of incompatibility between the XUB and the 01/10/84 dated IBM BIOS supplied in a type 1 motherboard. See note 1 below.
Note Note that this symptom has other causes. See here.

(Where "See Here" points about possible insufficient conventional memory present for DOS 6)

Note, that the issue with the AT also applies to authentic IBM 286 AT machines.

See also, XT-IDE.org's caveat for these systems:

Known problems with fixes […]
Show full quote

Known problems with fixes

Note! Some of these problems might be specific to certain older versions of XTIDE Universal BIOS. It is recommended to always use the latest version, especially if you experience a problem of some sort.
Data corruption on the IBM PC/AT and IBM XT Model 286 machines

Data corruption will occur on the harddrive(s) when using an XTIDE card (any revision) with XTIDE Universal BIOS in an IBM PC/AT (5170) or an IBM XT Model 286 (5162) with the IBM system BIOS. The reason for this incompatibility is currently unknown but there is a workaround; install a non-IBM system BIOS in the machine. See more ​here.

Reply 19 of 20, by copper

User metadata
Rank Newbie
Rank
Newbie

I tried an off-brand 2GB sdcard and had the same problems.

I am using a Leading Edge Model D DC-2010E with Phoenix BIOS 3.00; documented working here: https://forum.vcfed.org/index.php?threads/lea … 49/#post-311689. It shipped as a fixed-disk machine. I have the original drive. There are several motherboard revisions, so I don't know 100% that my board is compatible. I have revision CC1 with a Daewoo Zymos chipset (not POACH). I have configured the XT-IDE for IO 340h.

I pulled the sd card after setting it up on the XT and took a look at it on my laptop. The files copied to the SD by the XT are corrupt; approximately one flipped byte in every 512. So something is wrong in the write path. On further testing, on the XT, immediately after copying the contents of the floppy to C:, each time I run DOS 622 "chkdsk c:" I get "invalid allocation unit, file truncated" errors. I get different errors each time I run chkdsk, so something is wrong in the read path too.

This is a brand new XT-IDE I bought pre-assembled, untested by me in any other machine, so I can't rule out that it's at fault, nor can I rule out a dirty/faulty ISA slot/bus, or some other hardware problem in the machine itself.