mirror of
https://github.com/elliotnunn/HFSPlusBackport.git
synced 2024-11-27 09:50:30 +00:00
Add "Status" section to docs
This commit is contained in:
parent
3b9b73be30
commit
332426a2f5
33
README.md
33
README.md
@ -21,6 +21,20 @@ Lacking the Appearace Manager and Finder 8, it looks and feels more like System
|
||||
"Disk Tools 1" and "Disk Tools PPC" are versioned "8.0DT" and "8.1DT" respectively, as if to avoid confusion about which System version will read HFS+ volumes.
|
||||
|
||||
|
||||
How HFS+ is implemented on Mac OS
|
||||
---------------------------------
|
||||
|
||||
Essentially, HFS+ support is provided by 68k code in the 'ptch' -20217 resource. This patch uses the "File System Manager" hooks provided by the Mac Plus and later ROMs. Mac OS 8.1 executes the patch fairly early in the boot process from the 'boot' 3 resource. (At some point before Mac OS 9.2.2, this was moved even earlier into the 'boot' 2 resource.) Additional support comes from:
|
||||
|
||||
- 'ptch' 41, the Disk Cache
|
||||
- 'boot' 22460
|
||||
- 'PACK' 2, the Disk Initialization code, and related resources
|
||||
|
||||
The 'ptch' -20217 resource was actually used for "MountCheck" in System 7.6.x. Repurposing it for HFS+ might have been a diplomatic way to avoid requiring System Enablers ("Gibblies") to know about HFS in their own custom 'boot' 3 resources. Instead, they would "accidentally" load it while expecting to fsck the boot disk. Happily enough, this means that we do not need to patch any 'boot' resources in System 7.6.x.
|
||||
|
||||
The Text Encoding Converter extension is required on at least some systems, I suppose because HFS+ does encode Unicode filenames with UTF-16.
|
||||
|
||||
|
||||
Tooling
|
||||
-------
|
||||
These the prerequisites to work on this project:
|
||||
@ -41,13 +55,14 @@ Binary-level comparisions between resources are possible by combining `rfx` (ins
|
||||
This project has, so far, not required any deep exploration of the HFS or HFS+ on-disk formats.
|
||||
|
||||
|
||||
How HFS+ is implemented on Mac OS
|
||||
---------------------------------
|
||||
Status of HFS+ backporting
|
||||
--------------------------
|
||||
|
||||
Essentially, HFS+ support is provided by the 68k 'ptch' -20217 resource. This patch uses the "File System Manager" hooks provided by the Mac Plus and later ROMs. Mac OS 8.1 executes the patch fairly early in the boot process from the 'boot' 3 resource. (At some point before Mac OS 9.2.2, this was moved even earlier into the 'boot' 2 resource.) Additional support comes from:
|
||||
|
||||
- 'ptch' 41, the Disk Cache
|
||||
- 'boot' 22460
|
||||
- 'PACK' 2, the Disk Initialization code, and related resources
|
||||
|
||||
The Text Encoding Converter extension is required on at least some systems, I suppose because HFS+ does encode Unicode filenames with UTF-16.
|
||||
Mac OS Version | 68k Status | PowerPC Status
|
||||
--------------------|----------------------------------------|----------------------------------------
|
||||
System 7.5.3 | Does not work (Basilisk II) | Not tested in SheepShaver (bad System file?)
|
||||
System 7.5.5 | Works with gtbl hacks and DT boot 3 | Works
|
||||
Mac OS 7.6 | Works with gtbl hacks | Works
|
||||
Mac OS 7.6.1 | Works with gtbl hacks | Works
|
||||
Mac OS 8.0 | Works with gtbl hacks | Works
|
||||
Mac OS 8.1 | Always worked | Always worked
|
||||
|
2
make.py
2
make.py
@ -133,6 +133,8 @@ for base_version in base_versions:
|
||||
# Mac OS 9 actually loads ptch -20217 in boot 2, which is more elegant, because unlike boot 3,
|
||||
# boot 2 is guaranteed not to be run from a separate gibbly
|
||||
|
||||
# System 7.5.5 needs boot 3 instead, not sure why...
|
||||
|
||||
print('Pre-7.6 needs some help to load ptch -20217:')
|
||||
copy_resource_and_subresources('9.2.2', 'boot', 2)
|
||||
# copy_resource_and_subresources('8.1.0', 'boot', 3)
|
||||
|
Loading…
Reference in New Issue
Block a user