16 May 2016, 15:54 | #1 |
Retro Gamer
Join Date: Jan 2005
Location: Underworld
Age: 51
Posts: 4,058
|
65536 cylinder hardfile limit
Toni, while working on RaspberryPi, I created 2 HD in WinUAE and neither WinUAE or UAE4ARM can see them. I can recall we had similar issues some times back, when HD is given incremental size of 1024MB / 1GB.
If you create HDF of 1023MB and/or 1025MB, everything works fine, but 1024 for some strange reason does not even show?! ps. This issue is easy to recreate - but if you need anything, let me know. |
16 May 2016, 16:42 | #2 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
|
65536 cylinder hardfile limit
EDIT: moved from beta thread.
Standard question: what does this have to do with 3.3 betas? It is pre-OS3.9 AmigaOS limit, number of cylinders must be less than 65536. Increase surfaces value until WinUAE stops warning about "Too high cyls". (For example 15 should be fine) Or use RDB hardfiles. Last edited by Toni Wilen; 16 May 2016 at 16:53. |
16 May 2016, 16:47 | #3 | |
Retro Gamer
Join Date: Jan 2005
Location: Underworld
Age: 51
Posts: 4,058
|
Quote:
It was tested with 3.3 betas and interestingly works with 1023 or 1025MB, but not with 1024?! (or any increment of 1024?!) Not sure that you want new topic with any issues... Why only 1024MB HD gets wrong number of cylinders?? Yep, simple change in number of surfaces lowered number of cylinders - can you make it default to higher number of number is 65536?? |
|
16 May 2016, 16:48 | #4 | |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
|
Quote:
Because 1G becomes exactly 65536 cylinders (with default geometry) which AmigOS sees as 0 cylinders. |
|
16 May 2016, 16:54 | #5 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
|
I am not going to change the calculation method. Geometry is saved in config file, not in hardfile -> any geometry calculation change would break existing hardfiles that use similar size! (Too many users just expect hardfile to work without also copying geometry)
EDIT: there is also another problem, if it gets changed, it gets different geometry in different emulation (If it also does not have the same update). It would not really fix anything. Only guaranteed "fix" is to adjust the geometry manually. Last edited by Toni Wilen; 16 May 2016 at 17:03. |
16 May 2016, 17:04 | #6 |
Retro Gamer
Join Date: Jan 2005
Location: Underworld
Age: 51
Posts: 4,058
|
This is not a problem if you use RDB setting?
Not asking you to do anything to HDF, just in emulator to recognize when surfaces are equal to 65536 and no RDB set - HD will not be visible in emulator. Either that or give some warning when user as stupid as me tries to create 1GB HD. Thanks for splitting it from 3.3 discussion. |
16 May 2016, 19:39 | #7 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
|
As I said, it is AmigaOS restriction (Unless you have OS39) and winuae already warns about cylinder value. It is tiny warning because there is nothing wrong from emulation point of view and depending on AOS version, there is no limit.
|
17 May 2016, 18:16 | #8 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
|
HDToolbox (or other partitioning programs) generate more compatible geometry. Note that geometry is logical/virtual only but it still needs to be inside certain limits, depending on OS version.
I really recommend using RDB hardfiles because all metadata (geometry and partitions etc) is inside the hdf, it can be transferred between different emulators or even to/from real hardware and it still works. "Partition" harddrives were practically only a workaround because in early days full RDB support didn't exist. Of course they are also too easy to use |
17 May 2016, 18:58 | #9 |
Retro Gamer
Join Date: Jan 2005
Location: Underworld
Age: 51
Posts: 4,058
|
What would happen if by default HDF is RDB?
|
19 May 2016, 16:56 | #10 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
|
Most users would get confused and think something got broken. "Partition" hardfiles are too popular. (because they are too easy to create and use).
I guess defaulting to RDB mode when file is larger than >=1G could be acceptable. |
19 May 2016, 18:35 | #11 |
Retro Gamer
Join Date: Jan 2005
Location: Underworld
Age: 51
Posts: 4,058
|
Now we getting somewhere...
|
19 May 2016, 19:08 | #12 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,335
|
Is the restriction really on the FFS version? If the user has the latest FFS version on their PC and tells WinUAE to use that, does the problem still happen?
|
20 May 2016, 18:57 | #13 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
|
|
30 December 2016, 05:24 | #14 |
Registered User
Join Date: Oct 2006
Location: USA
Posts: 1,058
|
Does it really break some hdf's if surfaces is defaulted to e.g. 4 instead of 1? I tested a few of my hdf's with surfaces = 4 and they all still work, although they were created with surfaces=1 or 2.
|
30 December 2016, 11:30 | #15 | |
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
Quote:
Perhaps indeed winuae should change to 4 before displaying "too many cyls", and keep 1 when 1 works fine. |
|
31 December 2016, 00:47 | #16 |
Registered User
Join Date: Oct 2006
Location: USA
Posts: 1,058
|
I implemented an automatic switch like that in my latest mod of UAE4ALL2 for Vita. It seems to work. I did it like this: if hdf size >1024 * 1024 * 1000 bytes (1GB) use surfaces = 2. If size larger than 2*1024 * 1024 * 1000 (2GB) then use surfaces = 4.
Of course the user can still go in and modify the geometry in the config file manually. But it is a better default than always using surfaces = 1, which, together with the sectors=32,blocksize=512 default setting will never work if the hdf is >1GB. The only thing that still baffles me is that hdf > 2Gb does not work in UAE4ALL/UAE4Arm, even with surfaces = 4. But in WinUAE it works fine. I am know using three 2GB hdf's to store the full WHDLoad collection, which should be ok but only works with iGame, since no other menu program allows >2 source directories. I wish I had time to code another menu program, like a super simple stripped down version of Tinylauncher that allows up to 8 source directories to create a combined list. I wonder if it is possible to combine the tiny launcher database by hand to merge three into one? |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Couldnt Format Cylinder 0 | videofx | support.Hardware | 11 | 07 March 2016 18:41 |
Hardfile not being seen | MobbyG | support.WinUAE | 7 | 20 December 2005 22:18 |
Format cylinder 0 | stainy | support.WinUAE | 2 | 16 December 2005 00:25 |
Game(s) using cylinder 83 | andreas | project.SPS (was CAPS) | 3 | 16 June 2004 14:33 |
OS 3.x Partition/HD Limit? | jmmijo | support.Hardware | 3 | 11 January 2002 17:38 |
|
|