Large (> 8GB) hard drive support

Discussion of development and patch submission.
Post Reply
User avatar
SarahWalker
Site Admin
Posts: 1539
Joined: Thu 24 Apr, 2014 4:18 pm

Large (> 8GB) hard drive support

Post by SarahWalker » Tue 27 Feb, 2018 10:01 pm

Rev 1082 now supports hard drives up to 127 GB. Creating one of these does take a while...

User avatar
ppgrainbow
Posts: 421
Joined: Thu 04 Sep, 2014 7:03 am
Contact:

Re: v14 feature freeze end of Saturday 17th of March

Post by ppgrainbow » Tue 27 Feb, 2018 10:33 pm

Can we add support for SCSI hard disks that can have up to 255 heads instead of 16 heads and up the number of IDE/SCSI hard disks to eight due to a DOS/BIOS limitation? :p

I've noticed that certain SCSI hard disks can have up to as much as 96 sectors per track, but it's obvious that DOS won't read anything beyond 63 sectors per track.

terub56
Posts: 15
Joined: Mon 23 Jan, 2017 12:31 pm

Re: v14 feature freeze end of Saturday 17th of March

Post by terub56 » Wed 28 Feb, 2018 8:41 am

Does the last commit speed up the creation of hard disk?

In PCem 10, in a 5400 rpm hdd, create a 2 GB disc takes 30 seconds, while in PCem v13 (since v11 i think) takes 2 minutes.

User avatar
leilei
Posts: 548
Joined: Fri 25 Apr, 2014 4:47 pm

Re: v14 feature freeze end of Saturday 17th of March

Post by leilei » Wed 28 Feb, 2018 9:24 am

I don't think it does. You're probably creating an image over some fragments. For me, it didn't take 2 minutes to make a 40gb today.

what takes longer though is moving all those smaller images into the bigger ones since there's no real easy img-based tools to do so and WinImage drag-and-drop isn't reliable, so I must do it within PCem. So far,my W95c Sis496 and W98se 430vx configs seem to like this 40gb image without the need to shove in EZ-BIOS via a maxblast floppy

User avatar
SarahWalker
Site Admin
Posts: 1539
Joined: Thu 24 Apr, 2014 4:18 pm

Re: v14 feature freeze end of Saturday 17th of March

Post by SarahWalker » Wed 28 Feb, 2018 5:38 pm

ppgrainbow wrote:
Tue 27 Feb, 2018 10:33 pm
Can we add support for SCSI hard disks that can have up to 255 heads instead of 16 heads and up the number of IDE/SCSI hard disks to eight due to a DOS/BIOS limitation? :p

I've noticed that certain SCSI hard disks can have up to as much as 96 sectors per track, but it's obvious that DOS won't read anything beyond 63 sectors per track.
SCSI hard drives don't have a CHS geometry at all, it's the SCSI BIOS that does the translation. You can use whatever C/H/S settings you like that add up to the appropriate size - the SCSI code will convert that to a total sector count, which the SCSI BIOS will then convert into whatever C/H/S settings are workable.

andr25352
Posts: 5
Joined: Sun 12 Feb, 2017 9:50 am

Re: Large (> 8GB) hard drive support

Post by andr25352 » Wed 28 Feb, 2018 6:16 pm

If you want to create the virtual disk faster you can allocate the file using
one of the file-system tools.

for windows:
fsutil file createnew <filename> <size in bytes>
for linux:
fallocate <filename> -l <size in bytes>

The file should be created close to instantly.

terub56
Posts: 15
Joined: Mon 23 Jan, 2017 12:31 pm

Re: v14 feature freeze end of Saturday 17th of March

Post by terub56 » Wed 28 Feb, 2018 6:46 pm

leilei wrote:
Wed 28 Feb, 2018 9:24 am
I don't think it does. You're probably creating an image over some fragments. For me, it didn't take 2 minutes to make a 40gb today.

what takes longer though is moving all those smaller images into the bigger ones since there's no real easy img-based tools to do so and WinImage drag-and-drop isn't reliable, so I must do it within PCem. So far,my W95c Sis496 and W98se 430vx configs seem to like this 40gb image without the need to shove in EZ-BIOS via a maxblast floppy
I think you're right, I've tested again in a 7200 rpm hdd and both versions create the file in 30 seconds. If i disable the antivirus (Microsoft security essentials) only in 20 seconds.

Thanks for the tip andr25352.

User avatar
ppgrainbow
Posts: 421
Joined: Thu 04 Sep, 2014 7:03 am
Contact:

Re: v14 feature freeze end of Saturday 17th of March

Post by ppgrainbow » Wed 28 Feb, 2018 9:18 pm

SarahWalker wrote:
Wed 28 Feb, 2018 5:38 pm
ppgrainbow wrote:
Tue 27 Feb, 2018 10:33 pm
Can we add support for SCSI hard disks that can have up to 255 heads instead of 16 heads and up the number of IDE/SCSI hard disks to eight due to a DOS/BIOS limitation? :p

I've noticed that certain SCSI hard disks can have up to as much as 96 sectors per track, but it's obvious that DOS won't read anything beyond 63 sectors per track.
SCSI hard drives don't have a CHS geometry at all, it's the SCSI BIOS that does the translation. You can use whatever C/H/S settings you like that add up to the appropriate size - the SCSI code will convert that to a total sector count, which the SCSI BIOS will then convert into whatever C/H/S settings are workable.
I didn't know that SCSI hard drives don't have CHS geometer at all!

JosepMa
Posts: 113
Joined: Tue 20 Jun, 2017 6:25 pm

Re: Large (> 8GB) hard drive support

Post by JosepMa » Sat 03 Mar, 2018 11:27 am

Hello.

For some time, I wasn't sure about what values should I be using to create disks to use with PCem. I roughly remembered some hard disk drives I had, and tried to follow what the hdd autodetection of the BIOS suggested, but I believe that some additional information to the user would be useful.
Concretely, I checked the wikipedia page that talks specifically about the CHS (Cylinder-head-sector) values: https://en.wikipedia.org/wiki/Cylinder-head-sector , which could be added as a link in the New Hard Disk dialog.

There are several important points from there worth knowing:
- CHS did only had physical meaning on early drives. Soon, hard disks included controllers themselves and simulated some CHS to the BIOS, while the physical structure was different.
- Older BIOS ( previous to EIDE, ATA-2) have an 8GB limitation ( which also affects MS-DOS ), where the max values for CHS are 1024, 255, 63.
- Newer standard (EIDE, ATA-2) changed the limitations and the max value was then CHS 65535, 16, 255 (127GB). It also mentions if using this standard on an old bios, one actually gets a smaller max size: 1024, 16, 63 (504MB)
- Still newer standard (ATA-6, LBA) changed this again and made use of CHS obsolete, using 48bit addressing, although there was still a mapping to CHS.

The 430VX BIOS we emulate on PCem supports LBA. As such, with this BIOS, the EIDE/ATA-2 limitations have to be used for the autodetection to select the disk correctly. Of course it also suggest the old BIOS alternative, and we can always input it manually.
Last edited by JosepMa on Sat 03 Mar, 2018 2:11 pm, edited 1 time in total.

User avatar
SarahWalker
Site Admin
Posts: 1539
Joined: Thu 24 Apr, 2014 4:18 pm

Re: Large (> 8GB) hard drive support

Post by SarahWalker » Sat 03 Mar, 2018 1:37 pm

I changed the New Hard Disc dialogue a few days ago, so you can enter the size in MB and the C/H/S settings will be calculated for you.

JosepMa
Posts: 113
Joined: Tue 20 Jun, 2017 6:25 pm

Re: Large (> 8GB) hard drive support

Post by JosepMa » Sat 03 Mar, 2018 2:32 pm

Sarah: Yes, I've seen it.

What I see is that it has a fixed limit on the heads and sectors of 16 and 63 respectively, which corresponds to the limit that I mention above of Old bios + EIDE standard.

I have just tested it, created a 2GB image to use on a 486 (Amibios), with 4095 cylinders, and the "fdisk" MS-DOS utility says it is a 504MB Disk. I also loaded another image of 1GB (also 16 heads 63 sectors) which I built under Windows 98 and fdisk also reports 504 MB on the disk, even though it shows that the partition on it has 1022 MB.

The 486 BIOS, in both cases, detects the correct heads and cylinders, and I sort of remember seeing this incorrect value on my old Pentium which had a quantum bigfoot with 2GB. So probably what is implemented might be the better solution after all.

User avatar
SarahWalker
Site Admin
Posts: 1539
Joined: Thu 24 Apr, 2014 4:18 pm

Re: Large (> 8GB) hard drive support

Post by SarahWalker » Sat 03 Mar, 2018 4:11 pm

If you're using the 'AMI 486 clone', that BIOS doesn't support LBA or CHS translation and therefore doesn't support anything beyond 504 MB, despite it displaying the correct number of cylinders in the BIOS setup.

Orchidsworn
Posts: 63
Joined: Sun 22 Mar, 2015 10:16 pm

Re: Large (> 8GB) hard drive support

Post by Orchidsworn » Mon 19 Mar, 2018 6:09 am

Just because I really have no clue. I was wondering if the larger drive images cause any hit to performance for PCEM? If not ... I think it would be a great time for a fresh win98 install :D

User avatar
SarahWalker
Site Admin
Posts: 1539
Joined: Thu 24 Apr, 2014 4:18 pm

Re: Large (> 8GB) hard drive support

Post by SarahWalker » Mon 19 Mar, 2018 5:29 pm

Using a large drive should cause no performance impact at all.

Orchidsworn
Posts: 63
Joined: Sun 22 Mar, 2015 10:16 pm

Re: Large (> 8GB) hard drive support

Post by Orchidsworn » Mon 19 Mar, 2018 8:59 pm

Thank you did not think it would but I have seen stranger things happen with emulators.

arellano80
Posts: 8
Joined: Wed 04 Apr, 2018 11:05 pm

Re: Large (> 8GB) hard drive support

Post by arellano80 » Tue 17 Apr, 2018 4:58 pm

In the list of motherboards that supports large disks, it looks like this:
.
..
...
[386DX] IBM PS/2 Model 80
[386DX] MR 386 DX Clone
[486] AMI 486 clone
[486] AMI WinBios 486

/\ [down] /\ Not LBA Support, limited to 504mb, you need to install Ontrack Hard Disk Manager to recognize +504mb
========================================================================================================
\/ [belows] \/ Yes, support LBA disk. you do not need to install Ontack Hard Disk Manager, support +504mb

[486] Award SIS 496/497
[socket 4] Intel Premier/PCI
[socket 5] Intel Advanced/EV
[socket 7] Award 430VX PCI
...
..
.
== Something nostalgic, but one is happy to see and learn something new from the old days ==

Post Reply