Changes in this build
- fixed an issue in FS.ADFS and FS-IDEFS that caused it to output debug text when debug was off
- fixed an issue where a new volume couldn't be created on an unpartitioned SDFS drive
- fixed a "Division by zero" when only one filesystem is found
- holding ALT while loading now turns on the debug output
- fixed an issue when making changes to MBR/GPT partitioned discs with overlayed full-disc FileCore drives, which would incorrectly write the overlayed FileCore drive as the first partition
- fixed an issue where a fourth MBR partition could not be created if the drive has an overlayed full-disc FileCore drive
- DiscOp's are now checked to ensure the address doesn't exceed the limits:
- <fs>_DiscOp: 28 bit (256MB)
- <fs>_SectorDiscOp: 536870911 sectors (256GB for 512 byte LBA, 2TB for 4K)
- <fs>_DiscOp64: 64 bit (same limits as <fs>_SectorDiscOp / 18,446 ExB when FileCore supports 64bit addressing)
- formatting an existing partition wasn't setting the MBR/GPT partition type
- all partitions except those marked as "Reserved" can now be modified
- FileCore partitions are now checked internally for a valid FileCore drive, it will then attempt to link to a matching mounted FileCore to request the freespace
- added FNprotected_LBA_<filesystem> to allow filesystem drivers to prevent "internal use" LBA from being erased during a FileCore format
- ZIDEFS and ICS based IDEFS both protect LBA 0 and 1 which contain partition information
- removed some unused DiscOp variables from Formats.FileCore and removed the check for Specify in its FNMoanOp
- Formats.FileCore now checks for non-ADFS partitions at the the of FileCore areas
- adjusted the WIMP width of single partition drives and partitions with an overlayed "full disc" FileCore so they align with the Window width
- fixed an issue with the menu widths on RISC OS 3
- RISC iX partitions are now displayed
- added icon sprites for RO3
- holding ALT when launching will launch in DEBUG mode and write !PartMgr.DEBUG/TXT
- Supports RISCOS 3.x onward, with no external dependencies
- Supports full-disc unpartitioned FileCore drives
- Supports GPT partition tables
- Supports MBR partition tables
- Supports MBR partition tables with an overlayed FileCore drive (Pi)
- Supports partitioning of SCSIFS, SDFS, ADFS hosted drives
- Format/Initialisation of partitions as FileCore or FAT16/32
- Supports the following IDEFS Podules:
- HCCS (Read only, no partitioning)
- ICS ideA (Read/Write, with partitioning)
- Risc Developments (Read/Write, doesn't support partitioning)
- Simtec (Read/Write, no partitioning)
- Supports ZIDEFS (read-only, with partitioning)
- Supports ST506 drives (Read/Write, doesn't support partitioning) - untested
- Supports RISC iX partitions (read-only)
- Creation of the Primary FAT32 partition for Pi’s
- Support mapping DOS partitions to DOSDisc files in a FileCore filesystem
- Initialisation of the Pi FAT32 partition with the latest and/or last stable Pi firmware/RISC OS ROM
- FileCore partition expansion
- Support FileCore old and new maps
- Allow partitions to be reordered
- Backup/Restore the partition table
- Option to Initialise a Pi FileCore partition with the current HardDisk4 image
- FileSystem support:
- IDEFS devices hosted on the following Podules:
- APDL
- Alsystems PowerTec IDE minipodule
- Watford IDE
- ADFS drives via Wizzo Module
- Partitioning support:
- HCCS
- ICS
- Simtec
- Provide a visual representation of disks and their partitions
- Provide a simple interface to create and format partitions
- Allow the FileCore partition on the stock Pi image to be easily extended to fill the disk
- Replace HForm on RISC OS 3.x onward
- RISC OS 3.x, RISC OS 5.x
- ADFS, SCSIFS, SDFS, CDFS, IDEFS, ZIDEFS hosted drives
- Adding partition support to the OS
- PartMan (R-Comp partitioning Module)
Current Build
Work in progress build notes:
- Does not currently work out a FileCore partition size correctly if it's embedded in an MBR or GPT partition and not using the full partition
- Does not recognise FAT partitions embedded in a full disk FileCore drive, that have no accompanying MBR/GPT partition entry
- Currently makes no attempt to link a FAT partition to an accompanying DOSFS file on the Pi (ie !Boot.Loader)
- CDFS does not currently support audio tracks and assumes the whole disc is data
- You can't resize the window contents
- Does not calculate the free space in FAT12 or FAT16 partitions
- Freespace on FAT32 may not be accurate as it shows the freespace as reported in the FAT header; it does not trawl the FAT itself to get the exact current freespace
- GPT Basic partition contents are not checked for NTFS/FAT formats etc
- Debug output is written to !PartMgr.debug/txt (hold ALT when launching to start in Debug mode)
- If a disc error occurs whilst reading a partition, it will be marked in red
- It relies on FileCore partitions being mounted to display the free space
- Does not detect drive insertion/removal
- Writing partitions has currently only been tested on SCSIFS hosted drives. I have not tested SDFS or ADFS although they are implemented
- ST506 drive size detection may not work
- ICS's implementation of IDEFS has many hardware and IDEFS variants. Support for ICS is going to be hit/miss
- HCCS partitioning is not currently implemented
- Partitions with an overlayed FileCore drive will incorrectly show partitions that start after the FileCore area as being within the FileCore area
Please provide feedback / debug reports in the feedback thread