PFS Shell

PS2 PFS Shell - manage APA partitions and PFS filesystems on the command line v1.1.1

Wow, that's freakin' cool! I would have never thought, that there ever would be a 1.0.0-release!
 
Thank you very much for the new version and the work. :biggrin:
But this have a GUI? if not, theres any news about the FUSE driver?
I haven't been here for a while.

Best regards.
 
  • Like
Reactions: TnA
Use the following syntax instead:
Code:
\\.\PhysicalDriveX
where X is your drive number.

So something like:
Code:
device \\.\PhysicalDrive1
or this one:
Code:
device \\.\hdd1

EDIT: Just wanted to add that I'm currently on my Windows 10 machine, if that matters.
 
I tried that, and this is what I got:

Code:
>device \\.\PhysicalDrive1
hdd: PS2 APA Driver v2.5 (c) 2003 Vector
hdd: max open = 1, 3 buffers
hdd: 00:05:01 11/27/2019

The HDD access lite blinks continuously (IDE HDD connected via USB 3.0 adapter), and the program seems to hang. I can only exit by spamming CTRL-C

EDIT: Nevermind, I decided to let it run for about 2-3 minutes this time, and then it connected. This seems to take much longer than the previous version (mounted instantaneously before).

EDIT #2: Old version:
Code:
 ps2hdd: PS2 APA Driver v1.1 (c) 2003 Vector
ps2hdd: max open = 1, 3 buffers
ps2hdd: 23:15:16 11/26/2019
hio: hdd1:: opened.
hio: 976768064 sectors.
ps2hdd: disk0: 0x3a384c40 sectors, max 0x01000000
ps2hdd: checking log...
ps2hdd: drive status 0, format version 00000002
ps2hdd: driver start.
ps2fs: Playstation Filesystem Driver v1.0
ps2fs: (c) 2003 Sjeep, Vector and Florin Sasu
ps2fs: Max mount: 2, Max open: 8, Number of buffers: 64
ps2fs: Driver start.

New version:
Code:
hdd: PS2 APA Driver v2.5 (c) 2003 Vector
hdd: max open = 1, 3 buffers
hdd: 00:08:31 11/27/2019
hdd: disk0: 0x3a386030 sectors, max 0x01000000
hdd: checking log...
hdd: drive status 0, format version 00000002
hdd: version 0000 driver start.
pfs Playstation Filesystem Driver v2.2
ps2fs: (c) 2003 Sjeep, Vector and Florin Sasu
pfs Max mount: 1, Max open: 1, Number of buffers: 10
pfs version 0000 driver start.

Seems odd that the pfs version reports 0000; should I be concerned that the drive is listed as disk0 and not disk1? Using ls I can see the partitions fine, so it seems to be working, despite the disk being reported as disk0. Then there's also the difference in sector counts between the versions...
 
Last edited:
It's possible that, to check the size, it is reading the entire disk.

You shouldn't need to be concerned that the drive is listed as disk0 since I changed some things around.
 
Would it be possible to add in some backward compatibility for the device command? I.e. could pfsshell automatically convert hdd1: to \\.\PhysicalDrive1 for the user for the sake of backward compatibility?

As for the size check, this is quite unfortunate that the latest version takes an extremely long time to determine the disk size. (It seems odd that it takes so long, when something like hdl_dump presumably also reads the disk size. But even on a 2TB, that process only takes seconds. Perhaps I am just a bit too naive here. Any exposition would be greatly appreciated.) I make use of pfsshell through batch processes, but if each instance of pfsshell takes 2-3 minutes just to initialize, this makes it less desirable to upgrade. I don't know how the inner workings of pfsshell has changed, but if this is something that cannot be undone, would it be possible to implement a "run script" command? For example, suppose I have the following scripts saved as opl1.pfs, opl2.pfs, etc. and one of them looks something like:
Code:
device hdd1:
mount +OPL
...do a bunch of stuff...
umount
exit
Right now, I just use a batch file that calls something like
Code:
type opl1.pfs | pfsshell
and similarly for the other scripts. Would it be possible to have pfsshell do something like:
Code:
run opl1.pfs
Then this way, I can just alter my individual scripts, and then have a single script that calls all the other scripts. This would make it so that pfsshell only has to initialize (and determine the disk size) exactly once.
 
Would it be possible to add in some backward compatibility for the device command? I.e. could pfsshell automatically convert hdd1: to \\.\PhysicalDrive1 for the user for the sake of backward compatibility?
No, because the user may want to use a file or device named "hdd1:", and it can be confusing if the behavior is not consistent.
As for the size check, this is quite unfortunate that the latest version takes an extremely long time to determine the disk size. (It seems odd that it takes so long, when something like hdl_dump presumably also reads the disk size. But even on a 2TB, that process only takes seconds. Perhaps I am just a bit too naive here. Any exposition would be greatly appreciated.) I make use of pfsshell through batch processes, but if each instance of pfsshell takes 2-3 minutes just to initialize, this makes it less desirable to upgrade. I don't know how the inner workings of pfsshell has changed, but if this is something that cannot be undone, would it be possible to implement a "run script" command? For example, suppose I have the following scripts saved as opl1.pfs, opl2.pfs, etc. and one of them looks something like:
Code:
device hdd1:
mount +OPL
...do a bunch of stuff...
umount
exit
Right now, I just use a batch file that calls something like
Code:
type opl1.pfs | pfsshell
and similarly for the other scripts. Would it be possible to have pfsshell do something like:
Code:
run opl1.pfs
Then this way, I can just alter my individual scripts, and then have a single script that calls all the other scripts. This would make it so that pfsshell only has to initialize (and determine the disk size) exactly once.
Sure, I can add scripting support.
 
Very nice application.

Could You tell me why I cannot works on chosen partition in another app if I didn't earlier unmounted mounted in PFS Shell? In example, I have mounted "__.POPS" but forgot to umount, just exited the program, then I have tried HDL Dump and he doesn't allow me to do anything with this partition. So I have thinking it that I break APA or PFS of this partition but after I mounted it again and unmounted, everything back to normal.

Would You kindly implement dumping and injecting raw partition and/or attribute area? In example:
Code:
# mkimg PP.TEST (would dump chosen partition to "%APPDIR%\"PP.TEST.raw")
# mkhdr PP.TEST (would dump whole attribute area to file like i.e "%APPDIR%\"PP.TEST.header")
# injimg PP.TEST.raw (to the corresponding partition name in disk)
# injhdr PP.TEST.header (like above)
 

Similar threads

Back
Top