This release is a focused AmigaDOS compatibility update for the
Amiga handler, aimed at fixing real boot and utility breakage seen
with the AmigaOS 3.2 CD image. With ODFileSystem v0.4 the
A4091 can successfully boot from the AmigaOS 3.2 CD.
Highlights
- Publish a proper DOS device node as well as the volume node, and
keep valid startup metadata attached to it. - Fix
DupLockFromFH()handling so regular file handles can be
duplicated correctly, not just directory handles. - Align the handler's lock layout with stock DOS filesystem
expectations by reserving the two private words after
struct FileLock.
Fixed
CD0:is now exposed through a properDLT_DEVICEentry with a
validFileSysStartupMsg, which improves compatibility with DOS
code that expects both a device node and a volume node.ACTION_COPY_DIR_FHnow duplicates file locks for ordinary files
withSHARED_LOCK, which fixes callers that use
DupLockFromFH()on real files such asC:Version.ACTION_EXAMINE_OBJECTnow updates the DOS-owned lock state used
by examine and enumeration code, instead of overlapping it with
handler-private metadata.- The lock wrapper now reserves the DOS-private space immediately
afterstruct FileLock, matching stock filesystem layout and
avoiding corruption of examine bookkeeping. - The path resolver documentation was corrected to match the stock
DOS model where assign and device prefix resolution happens
before the packet reaches the handler.
Tests
- Added
tests/integration/check_fh_packets.pyto verify
EXAMINE_FH,PARENT_FH, andCOPY_DIR_FHagainst real files,
including/C/VersionfromAmigaOS3.2CD.iso. - Extended the assign-prefix regression check so it reports success
only after all matching cases have been exercised. - Wired the new file-handle packet regression into
tests/integration/test_amifuse.sh.
Full Changelog: v0.3...v0.4