English Amiga Board Amiga Lore


Go Back   English Amiga Board > abime.net - Hosted Projects > project.ClassicWB

 
 
Thread Tools
Old 06 October 2012, 04:56   #1
xalakibaniou
Registered User

xalakibaniou's Avatar
 
Join Date: Oct 2005
Location: Athens Greece
Age: 38
Posts: 59
PFS3 or PFS3 SCSI Direct

I hane an A1200 with and ide-fix 97 4way adapter. I have an old WD400 40GB ide hdd and and a TEAC DVD-ROM connected to separete cables. Both configured as master. I have downloaded PFS3 from aminet and installed. The ide hdd is using scsi.device driver.
I want to ask which filesystem is better, pfs3 standard or pfs3 scsi direct (pds\3) ? Thaksbin advance.
xalakibaniou is offline  
AdSense AdSense  
Old 06 October 2012, 07:30   #2
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
It does not matter in your case actually. The main difference is that without IDEfix PFS3 can access only the first 4GB of your harddrive while PFS3DS can access almost 8GB. To access all 40GB you need IDEfix anyway and with it both can access the entire drive.

You should however change the entry in startup-sequence to read C:LoadIDE RESET instead of C:IDEfix. This is described in the comment added to startup-sequence during installation. It makes IDEfix resident so that the 40GB harddrive is really accessible. With C:IDEfix partitions might not show until they are accessed by a Shell command (for example DiskChange).
thomas is offline  
Old 06 October 2012, 08:59   #3
xalakibaniou
Registered User

xalakibaniou's Avatar
 
Join Date: Oct 2005
Location: Athens Greece
Age: 38
Posts: 59
Thanks Thomas. that realy helped
xalakibaniou is offline  
Old 06 October 2012, 09:08   #4
mfilos
Paranoid Amigoid

mfilos's Avatar
 
Join Date: Mar 2008
Location: Athens/Greece
Age: 38
Posts: 1,576
Send a message via Skype™ to mfilos
Or you can also use a newest scsi.device that supports bigger HD's like Toni's/Chris's 43.45, or Cosmos's 43.47 and load it via LoadModule as first command in your Startup-Sequence.
Sadly Doobrey's 44.2 scsi.device doesn't support PFS3 partition over 4GB but with SFS it's awesome.
mfilos is offline  
Old 18 October 2012, 01:46   #5
fgh
Registered User
 
Join Date: Dec 2010
Location: Norway
Posts: 576
Quote:
Originally Posted by mfilos View Post
Doobrey's 44.2 scsi.device doesn't support PFS3 partition over 4GB
Do you know why this is? (Cosmos' readme mentions it, but is not very clear..)

PFS3 doesn't support NSD, only TD64 and directSCSI, and AFAIK the only scsi.device to support TD64 is idefix.
So to have Doobrey's scsi.device work with PFS3 >4GB, you need to use the direct-SCSI version.
(Or you can use idefix with the normal TD64 version)
Are you sure this doesn't work?

Last edited by fgh; 18 October 2012 at 09:29. Reason: Ambigous sentence straightened out.
fgh is offline  
Old 18 October 2012, 08:09   #6
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
IDEfix replaces scsi.device completely. It is useless to patch scsi.device and then add IDEfix on top of it. If you use IDEfix you don't need a patch for scsi.device because it is superseded by IDEfix anyway.
thomas is offline  
Old 18 October 2012, 09:38   #7
fgh
Registered User
 
Join Date: Dec 2010
Location: Norway
Posts: 576
Yes my sentence was not very clear, sorry. I've changed it in the previous post.

As PFS3 doesn't support NSD, it is not supposed to work without using direct-SCSI version with any version of scsi.device other than idefix.
I guess I'll have a go and check 44.2 with PFS3DS..
fgh is offline  
Old 18 October 2012, 11:10   #8
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
You could use this to make PFS3 work: http://aminet.net/package/disk/misc/td64patch

But PFS3ds ist the better solution IMHO.
thomas is offline  
Old 18 October 2012, 11:34   #9
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Perhaps PFS3 should have built-in 4G/other limit check and requester that complains if current configuration is bad?

It would be quite easy to add to SVN version.

NSD support would be also easy to implement but personally I think NSD is perfect example of useless Not Invented Here (NIH) feature.
Toni Wilen is offline  
Old 18 October 2012, 13:48   #10
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
No requester please. SFS has this and it is highly annoying.

There are situations where no >4GB support is present but later there is. For example before LoadIDE has been run for the first time after power-on.

Regarding NSD, yes it is bad to have two command sets which work exactly the same way but only use different command codes. However, now that there is this situation and different drivers support different command sets, it would be nice if file systems would support both (i.e. check once and then use the one which works).

Similarly it would be nice to incoporate PFS3 and PFS3ds into one load module which automatically checks which one to use.
thomas is offline  
Old 18 October 2012, 13:57   #11
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by thomas View Post
No requester please. SFS has this and it is highly annoying.

There are situations where no >4GB support is present but later there is. For example before LoadIDE has been run for the first time after power-on.
ok

Quote:
Regarding NSD, yes it is bad to have two command sets which work exactly the same way but only use different command codes. However, now that there is this situation and different drivers support different command sets, it would be nice if file systems would support both (i.e. check once and then use the one which works).
I'll think about this.

Quote:
Similarly it would be nice to incoporate PFS3 and PFS3ds into one load module which automatically checks which one to use.
Unfortunately this is impossible to do without breaking some existing installations. PFS3 does not care about dostype and there are many PFS3DS installations that use normal PFS3 dostype. (or in worst case whatever hdtoolbox suggests as default..)
Toni Wilen is offline  
Old 18 October 2012, 14:29   #12
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
What does dostype have to do with it? If you have only one load module, you need only one dostype. Two dostypes were only needed if you installed PFS3 and PFS3ds at the same time. But if you incorporate Direct-SCSI support into the TD64 module so that it automatically selects DS if TD64 does not work, then different dostype is no longer needed. FFS V44 (FFSTD64) does it the same way. And SFS, too (selects either TD64 or NSD, whichever is present).
thomas is offline  
Old 18 October 2012, 15:00   #13
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by thomas View Post
What does dostype have to do with it? If you have only one load module, you need only one dostype. Two dostypes were only needed if you installed PFS3 and PFS3ds at the same time. But if you incorporate Direct-SCSI support into the TD64 module so that it automatically selects DS if TD64 does not work, then different dostype is no longer needed. FFS V44 (FFSTD64) does it the same way. And SFS, too (selects either TD64 or NSD, whichever is present).
I don't think it is that simple.

DS is special case, TD64 either is supported or not, same with NSD. Both TD64 and NSD generally always return same disk size (uses exact same driver calls)

Things get hairy when DS _and_ TD64 or NSD is supported. It is very possible that DS returns different disk size than TD64/NSD.

Which one is correct? I don't think it is necessarily the bigger one..

EDIT: I mean problems happen when updating PFS3 because above would mean change in default behavior.

Last edited by Toni Wilen; 18 October 2012 at 15:10.
Toni Wilen is offline  
Old 18 October 2012, 15:05   #14
fgh
Registered User
 
Join Date: Dec 2010
Location: Norway
Posts: 576
Both FFSTD64 v44 and SFS v1.84 support direct-SCSI and TD64 simultaneously, so I guess it should be possible somehow.
Also FAT95 supports both direct SCSI and TD64.

Thomas: Is there a version of FFS44 that supports both NSD and TD64? Edit: Forget it, I misread your post..

Last edited by fgh; 18 October 2012 at 15:25.
fgh is offline  
Old 18 October 2012, 15:21   #15
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
Quote:
Originally Posted by Toni Wilen View Post
Things get hairy when DS _and_ TD64 or NSD is supported. It is very possible that DS returns different disk size than TD64/NSD.

Which one is correct? I don't think it is necessarily the bigger one..
File system does not need disk size. It gets geometry from DOS during mount. It should first check for NSD / TD64 and only if both aren't supported fall back to DS. Then it could try to read the last block of the partition (given by Surfaces/BlocksPerTrack/HighCyl) to check whether DS works or not.
thomas is offline  
Old 18 October 2012, 15:47   #16
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by thomas View Post
File system does not need disk size. It gets geometry from DOS during mount. It should first check for NSD / TD64 and only if both aren't supported fall back to DS. Then it could try to read the last block of the partition (given by Surfaces/BlocksPerTrack/HighCyl) to check whether DS works or not.
I forgot TD_GETGEOMETRY returns "fake" data.

We probably have totally different point of view. From my point of view backwards compatibility must not be broken at any cost and it must work even if used with some broken (for example crashes or does something strange if unsupported command is sent) late 1980s A500 controller.

Which means NDS/TD64 test can cause problems, which probably is the reason for original separation of normal and DS versions. (Maybe I am too paranoid but I remember reading about these kinds of buggy controllers)
Toni Wilen is offline  
Old 18 October 2012, 17:47   #17
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
I still don't see a reason why a (hard drive) file system would need to call TD_GETGEOMETRY. Scsi.device does not even support TD_GETGEOMETRY.

Do these old controllers with crashing drivers support disks bigger than 4GB? If they don't, the discussion is pointless.

IMHO a proper sequence of checks is this:

1. calculate the last block of the partition. If it is inside the first 4GB of the drive, use CMD_READ and CMD_WRITE. No 64 bit or SCSI support needed.

2. call NSCMD_DEVICEQUERY and check the list of supported commands if NSCMD_TD_READ64 and NSCMD_TD_WRITE64 are among them. If they are, use them.

3. if NSCMD_DEVICEQUERY succeeded, check the list of supported commands if TD_READ64 and TD_WRITE64 are among them (unlikely). If so, use them

4. call TD_READ64 with all numbers set to 0. If it returns no error or IOERR_BADLENGTH or IOERR_BADADDRESS, use TD64 commands

5. try to read the last block of the partition with HD_SCSICMD. If it succeeds, use HD_SCSICMD.

6. fail to mount

Depending on experiences during tests, 2. and 4. may be swapped, 3. may be skipped.
thomas is offline  
Old 18 October 2012, 17:53   #18
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,662
Quote:
Originally Posted by thomas View Post
I still don't see a reason why a (hard drive) file system would need to call TD_GETGEOMETRY. Scsi.device does not even support TD_GETGEOMETRY.
Forget it, I thought it was needed.

Quote:
Do these old controllers with crashing drivers support disks bigger than 4GB? If they don't, the discussion is pointless.
Good point, but see below.

Quote:
1. calculate the last block of the partition. If it is inside the first 4GB of the drive, use CMD_READ and CMD_WRITE. No 64 bit or SCSI support needed.
A590 with pre-7.0 ROM and CDTV SCSI expansion (all available ROM versions) have 1G limit (returns error if >1G access) when using CMD_READ/WRITE but HD_SCSICMD is "unlimited".

AFAIK there are also other old true SCSI controllers that convert CMD_READ/WRITE to SCSI Read(6) and Write(6) which has 1G limit. HD_SCSICMD and Read/Write(10) works fine, even if drive is >4G. (But on the other hand some controllers simply hang if drive is too big..)

This is the remaining annoying problem.

ADDED: I guess this should work: if end of partition is <4G and CMD_READ fails, re-read using HD_SCSICMD SCSI Read(6). Select DS if it succeeds.

Last edited by Toni Wilen; 18 October 2012 at 19:24.
Toni Wilen is offline  
Old 18 October 2012, 18:18   #19
fgh
Registered User
 
Join Date: Dec 2010
Location: Norway
Posts: 576
Keep going guys, it would be great to have NSD support in PFS3, and/or TD64 support in a modern scsi.device. If anyone can do it it's you two

In the meantime, I checked my 16GB CF card with PFS3DS and scsi.device v44.2 on my A600 (ks37.300 68000, WB2.1) . It works well - all partitions show up as they should.
fgh is offline  
Old 18 October 2012, 22:00   #20
thomas
Registered User
thomas's Avatar
 
Join Date: Jan 2002
Location: Germany
Posts: 5,526
Quote:
Originally Posted by Toni Wilen View Post
Forget it, I thought it was needed.
A floppy file system could need it in order to distinct between DD and HD floppies. But not a hard disk file system.


Quote:
Originally Posted by Toni Wilen View Post
A590 with pre-7.0 ROM and CDTV SCSI expansion (all available ROM versions) have 1G limit (returns error if >1G access) when using CMD_READ/WRITE but HD_SCSICMD is "unlimited".

AFAIK there are also other old true SCSI controllers that convert CMD_READ/WRITE to SCSI Read(6) and Write(6) which has 1G limit. HD_SCSICMD and Read/Write(10) works fine, even if drive is >4G. (But on the other hand some controllers simply hang if drive is too big..)

This is the remaining annoying problem.

ADDED: I guess this should work: if end of partition is <4G and CMD_READ fails, re-read using HD_SCSICMD SCSI Read(6). Select DS if it succeeds.
If Read(6) has the same limit as CMD_READ, then it would be better to use Read(10) instead, wouldn't it?
thomas is offline  
AdSense AdSense  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Cant Install PFS3 videofx support.Hardware 1 07 March 2013 18:14
PFS3 why cant i... zharn support.Apps 9 27 January 2013 06:27
PFS3 error: INVALID PFS3 COPY !!! WTF? keropi support.Apps 10 18 March 2008 22:30
Pfs3 Hewitson request.Apps 3 22 December 2007 14:32
Installing PFS3 on 8.5GB SCSI HD lopos2000 support.Apps 26 27 March 2007 19:31

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 04:10.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.24667 seconds with 13 queries