View Single Post
Old 11 February 2018, 17:28   #1
Toni Wilen
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 43
Posts: 22,219
PFS3AIO v3.1 Final

PFS3AIO 3.1 is now available from Aminet.


- TD64 support check false negative fixed, v3.0 rejected many TD64 capable
HD controllers.
- Always re-execute access mode test when removable drive is inserted
and before formatting.
- Set default stack size back to original default of 4000 bytes from old
AROS compiled value of 6000. Saves stackswap 6k of RAM.
- Always execute TD_MOTOR off after idle delay period, some HD controllers
only switch off activity led when TD_MOTOR off is executed.
- Previous version's (3.0) OS 3.1.4 SCSIDIRECT support was very broken and
corrupts the partition. Reformat required if used with v3.0!
- Fixed out of bounds buffer read when writing file to disk that does not
fill last disk block completely. It was harmless but can for example
cause MuGuardianAngel hits. (Original PFS3 bug/optimization)
- Return faked (larger than real blocksize) InfoData structure block size
value if drive is larger than 16G as a workaround for programs
(including WB) that calculate in use percentage using 32-bit
"in use * 100 / total" formula where multiplication overflows if size
is about 20G or larger with 512 block size.
- Removed Direct SCSI scsi_Actual validation after read or write operation.
Some SCSI controllers don't update it properly, causing pfs3aio to show
disk read or write error requester. Was added in 3.0.
- Fixed softlinks, they have never worked previously. (Piru)

26.5.2018 WARNING: Do not use OS 3.1.4 Beta HDToolBox Direct SCSI option with 3.0. It causes pfs3aio v3.0 to create incompatible partition geometry with all other pfs3(aio) versions. Fixed in v3.1.


- Bug fixes, including finally fixed nasty bug causing Wrong Index Block ID
(and others) if partition was >=5G and lots of small files were created
very quickly, for example unpacking archive with thousands of small files.
This bug has most likely existed since PFS3 introduced >=5G partition
- Compiled with m68k optimized GCC 6
(, 16k smaller than
previous pfs3aio.
- Some HD controllers modify MaxTransfer after filesystem has been
initialized, which was ignored by previous versions.
- Automatic max transfer limit is only enabled if scsi.device version is v36
or newer and older than v50.
- Limit Direct SCSI mode max transfer size to 65535 blocks (~32MB).
- Automatically attempt to increase number of buffers if all buffers are in
use and more buffers are required.
- Added support for new OS 3.1.4 filesystem mount flags. (SCSIDIRECT,
- Shows more detailed information in error requesters (access mode, start
block, end block, SCSI details if SCSI Direct)
- Includes unsupported and experimental >104G partition support. Shows
warning if enabled during formatting.
- ACTION_DIE (unmount) stability fix.
- Filename changed from pfs3_aio-handler to pfs3aio.


Includes all previous pfs3aio features:

- Full KS 1.x compatibility.
- 68000+ compatible.
- TD64, NSD and Direct SCSI supported and autodetected.
and more...

Souces available from (and pfsdoctor)
Source tree also includes experimental >4G file size (48 bit file length field) support but it is not enabled in this version. Contact me if you want to test it.

>104G partition support and >4G file size support requires reformat and on-disk structures are not anymore compatible with old PFS3 or PFSDoctor versions. ( Note: command line only, no GUI like in official pfsdoctor)

Last edited by Toni Wilen; 03 October 2018 at 14:15. Reason: Final release
Toni Wilen is online now  
Page generated in 0.04045 seconds with 10 queries