VOGONS


First post, by retropol

User metadata
Rank Member
Rank
Member

ive put it as slave on ide1 (i have only one ide on my computer - 486)

award bios detected it / however its value of cyls etc was not as expected - in a result it was not 4gb, rather it was 1,8gb but i heard i can accept it

dos 6.22 started

ive started fdisk and changed to fixed disk 2 to do partitions on this cf

why i see that ms dos 6.22 max size is 504mb? how to overcome this?

Reply 1 of 16, by derSammler

User metadata
Rank l33t
Rank
l33t

Because you either need an E-IDE BIOS (e.g. XTIDE) or some Drive Overlay software (e.g. EZ Drive). Otherwise, DOS won't see more than 504 MB.

Last edited by derSammler on 2019-08-11, 07:51. Edited 1 time in total.

Reply 3 of 16, by JudgeMonroe

User metadata
Rank Member
Rank
Member

There are multiple variables involved here:

1. BIOS support for large hard drives. Detecting the drive geometry is not the goal line. The BIOS also has to support LBA. It is possible for BIOS to detect a hard drive of arbitrary size, but without LBA no more than 528MB (or so, depending on how you do the math) is available to the OS. It is possible to disable LBA in BIOS so even when supported it can be inadvertently turned off. BIOS may also limit hard drive size support even with LBA. LBA gets you past the 528MB barrier, but bets are off above 2GB. My DOS machine, for instance, supports LBA but the BIOS won't even recognize a 4GB CF card much less let me try and make partitions on it.

2. DOS support for large hard drives. MS-DOS 6.22 can support and create partitions on hard drives up to 8 GB. Above that, it freaks out and you may find yourself back to the 528 MB limit (or whatever value turns up) or worse. DOS can create a PRIMARY partition of up to 2GB on any supported drive. DOS can create an EXTENDED partition of any size, but LOGICAL DRIVES in that partition are limited to 2GB.

3. Filesystem support for large hard drives. FAT16 can support partitions up to 2GB, which is aligned with the DOS partition/logical drive limit. It can be inefficient to create partitions this large because the FAT16 cluster size scales with the partition size (using 32k at the top end).

Reply 4 of 16, by retropol

User metadata
Rank Member
Rank
Member

so,

ad1 - i have award bios from 1994, in autodetect hdd, it finds this 4gb cf card as drive d: (slave) and its saved as user type, with about 1,8gb - looks like it is supporting LBA however it does not detect it correctly (should find it as 4gb but it does not)

ad2 even it is detected by bios as 1,8gb, and on post-table it is shown as usertype 1,8gb dos 6.22 sees max size as 504mb

ad3 - i would love to make 2 partitions with 2gb max, but I can not... 504 is possible only and it is assumed as max size of drive

Reply 5 of 16, by JudgeMonroe

User metadata
Rank Member
Rank
Member

You just need to go into your BIOS and look around. If it supports LBA it's going to say so and have an option to toggle it on or off. Reading the (fake) geometry of the drive isn't enough. A 1994 BIOS on a 486 isn't guaranteed to have it.

You can try a User-defined HDD type of 4092 cyl/16 hd/63 sec (2GB) and see if DOS sees it all.

You may need to resort to a Drive Overlay software or, if you can, sub in a 2GB CF card and see where that gets you.

Last edited by JudgeMonroe on 2019-08-10, 20:42. Edited 1 time in total.

Reply 6 of 16, by jesolo

User metadata
Rank l33t
Rank
l33t

The simplest solution is what derSammler suggested.
I prefer the XT-IDE BIOS on an NIC card (with a boot ROM socket). Other people prefer the Dynamic Drive Overlay software route.

Reply 7 of 16, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

EzDrive (DDO) works very well and doesn't need you to mess with any hardware. 😀

With dos 6.22 you can go up to 2GB per partition, as this is the FAT16 limit. The 528MB limit is from BIOS that the EzDrive solves.

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 8 of 16, by retropol

User metadata
Rank Member
Rank
Member

ez-drive - thanks!!! i will try it if everything will fail with "standard" approach but first I need to understand what I still do not understand:

- i have 1.2gb hdd - which was partitioned on another computer with windows 98 to 1 primary partition taking whole space
- i had to partition it on another computer, because on this 486 I always saw 504mb limit in fdisk,

- this drive is correctly detected on bios in my 486 machine as 1221mb drive / user type

- after partitioning on the win98 machine as above, this drive is visible in my 486 as disk C: and I have whole space formatted to fat16

on the same ribbon I have CF 4gb as slave which was partitioned on my win98 machine because of the same issues as above as follows:

- i had to accept large disk support in fdisk on start
- i partitioned this cf in such a way that the primary partition is 1gb (25% of size) and ext partition is 3gb (75%) and this ext partition was logical structured to G, H, I - 33% of the ext part size each

- this cf is incorrectly detected on bios in my 486 machine as 1871mb drive / user type

- this cf is not visible in my 486 as disk D:, G,H,I either - "invalid drive" when attempting format command

where is the issue? need to understand it, why hdd is seen /but the cf is not seen? even I made sure the partitions are much less than 2gb

of all operations i described the only difference is the bios detection - hdd was detected right - it is 1,2gb hdd, and cf is detected wrong - 1,8 instead of real 4gb

pls explain...

bios detects this:

rV0k6OZ.jpg

apsUNtY.jpg

fdisk (dos622):

VCvmNfz.jpg

hdd 1.2gb seen like this:

Iox01SN.jpg

cf 4gb seen like this:

s4iQ0cM.jpg

Reply 10 of 16, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Your bios is still ~504MB limit. So even if you partition the drive on another computer to have bigger partitions than that limit, your limited computer is not able to address that part of the drive and you are just creating trouble and wasted time for yourself with random behaviours and errors...

If you see a ~504MB limit, just use ODD (like EzDrive) or XT-IDE rom chip on NIC to get past that. Don't waste your time on something that anyways ultimately fails. 😀
And not all boards/bioses do have that limit. Generally, the newer the motherboard/bios, the lesser chance to have that limit.

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 11 of 16, by retropol

User metadata
Rank Member
Rank
Member

thanks gigaherz... it looks like you are right,

the strange behaviour of having 1,2gb disk seen on dos-fdisk as one partition, even the "dir" command shows I have 1,2gb, is just a fake...
actually dos can not see more than 504mb, I made a test and started copying more than 504mb to this drive, suddenly I got a msg of error (donr remember what)
and after that "dir" just showed random ascii characters on the screen...

fyi - I thought I can cheat the system by doing the partitioning on other computer as follows:

primary partition - c: - 404mb
ext partition - 800mb, sliced to 2 logical drives d: & e: - each 404mb

it fails... c: was seen by my 486, but d and e was invisible...

Reply 12 of 16, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Yes, the 504MB limit is a harddrive limit imposed by bios.

FAT16 has 2GB limit. This is filesystem limit, therefore it is a limit per partition. (So 4GB CF card can be made to have 2x2GB partitions)

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 13 of 16, by Zoltan

User metadata
Rank Newbie
Rank
Newbie

Hi !

I would like to ask some help connected to the following topic:

I put a 4gb CF card into my old 486 Zenith PC and I installed DOS 6.22 onto it.

First I used clearhdd to wipe everything down from the CF (just for sure)
After that I used fdisk to make a primary dos partition (2gb) and an extended logical drive (2gb). After this process I formatted both of the drives. (I tried it with only just one primary dos partition - 2gb- too)
Then I installed DOS into the primary partition ( with default settings: region :usa keyboard: usa) without any problem.
(Interesting if I tried to set the region and keyboard accordingly to my region (Hungary) the OS still insalled, but crush/stops when reach display.sys - it can't build up the character set - neither than if I manually copy/expanded the necessary ega.cpi files)
The system boot without any flaw and the system works fine (recognize all the drives, etc.)

BUT here is my problem: when I try to transfer data from newer system (Win 8.1 or Win XP machine) to the CF card - dos games, dos programs - with copy paste the system on the 486 machine can't see the files just the folder to where I copied them (dir).
I use dir command in the folder and it says no file found OR shows something total gibberish (when I got gibberish I suspected thats why because I tried to install the OS and copy data multiple times whithout clearhdd between the installations - so maybe some junk remained on the CF and this cause the strange phenomenom)

So my question is that what could be cause this problem? Or what should I do to solve it that I could be able to transfer data from newer system to the CF card that I can use on my 486 pc?

Here is some details from my setup:
PC: Zenith Z select ES (486 DX2, 32mb ram) from about 1994
Bios: Phoenix Setup Utility (Ver.1.00) 01
CF card converter (in the 486 PC): Delock Converter IDE 40 pin / 44 pin > 1 x Compact Flash (https://www.delock.com/produkte/G_91624/merkmale.html)
CF card: IndMem 4gb from ebay (it was brand new)
CF card reader: Silicone Power USB 3.0 all in one (https://www.silicon-power.com/web/product-USB … ONE_Card_Reader)

I would really appreciate if anyone could help to me with this problem because I have tried a lot but I can't find the solution 😖

Attachments

Reply 14 of 16, by Jo22

User metadata
Rank l33t++
Rank
l33t++
Zoltan wrote on 2021-03-29, 10:13:

So my question is that what could be cause this problem? Or what should I do to solve it that I could be able to transfer data from newer system to the CF card that I can use on my 486 pc?

I'm not entirely sure. Hm. Maybe the drive geometry is messed up (the cylinder/sector/heads values). LBA was not super common on 486 PCs, but "LARGE" (E-CHS, can address ~8GB max) was.
Maybe your Windows XP/8 PCs think the card uses standard LBA, while your 486 really useses LARGE or an out-dated form of LBA.
There are several translation algorithms, you know. 😉

Anyway, you can try figuring out the "official" settings for your CF card by using tools like IDEDIAG or WHATIDE..

Re: SD/CF to ide CHS setup
Re: IDE disk-on-module + 386

Good luck! 😁

PS: Sorry for the little necro, too.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 15 of 16, by Zoltan

User metadata
Rank Newbie
Rank
Newbie

Thank you very much Jo22.

It is good that you explain the background of these things I can learn a lot with it 😀

So I used this little handy program that you recommend ( IDEDIAG) and it seems that my 486 PC recognize the CF card drive geometry properly.
It looks like that the card itself support only LBA mode.
(I attached photos from the CF card original settings. In addition: I checked the CF card after that I run clearhdd.)

How can I check that what kind of translation algorithm used by my 486 PC?
And if it uses LARGE or an out-dated LBA there is any way to bridge the data transfer gap between this old and the newer system?

Attachments

Reply 16 of 16, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hi, I'm glad that I can help a bit! 😀

Your BIOS Setup is dated 1992.. Maybe it predates the more common LBA (28-Bit) that was introduced in 1994.

From what I found out, the original LBA was 22-Bit and an optional part of Western Digital's EIDE specifications from 1990.

According to this site, some BIOS from before may 1996 can have issues with drives larger 2GB.

http://web.inter.nl.net/hcc/J.Steunebrink/bioslim.htm

Here's another Vogons thread that mentioned 22-Bit LBA:
Re: A new covid lockdown project - help if you can

I'm sorry to say that I can't be more precisely. 🙁

As a workaround, you can try using a Dynamic Drive Overlay (DDO), like EZ-Drive.

Or use XT IDE Universal BIOS. Many people use an old network card as a host for their ROM chip.

If nothing works, I can send you a snail mail with a copy on an old EPROM also.

Edit: Please don't let yourself getting confused by all these numbers, they are just.. numbers.

Way back in the 1980s people already used fake parameters, because the BIOSes had hard-coded values.

Essentially, all that matters is staying within the maximum capacity.
So people were using, say, an 80MB IDE drive as a 40MB IDE drive - until they upgraded.

Initially, ca mid-late 80s, it was required to make sure that all the individual parameters were equal or lesser: Cylinders, Heads, Sectors (CHS).
Because, HDDs still worked with physical (or real) values.

Anyway, by the turn of the decade (80s/90s) most HDDs started to use some sort of translation, not E-CHS/Large or LBA really, just a simple translation to decouple addressing from the physical drive mechanics.

That's when things got both more simple and more complex. 😉

Edit : Just one warning - please never use the Low-Level Formatting in the BIOS Setup.
It has the ability to confuse flash media, even!

FORMAT, FDISK etc are all harmless, though, no worries.

Edit: If you're curious, here's more to read about the matter:
http://redhill.net.au/o/glos2.html#sectrans

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//