5.99
Picasso96 migration, OS4 bug fixes and features
Program bumps to 5.99, library and dopus5.module to 73.3, and commands remain at 65.1.
Picasso96 / RTG display overhaul
- Migrated the RTG subsystem from
cybergraphics.librarytoPicasso96API.librarywith a CyberGraphX fallback, fixing drag-mask rendering and 24-bit ILBM decoding on modern graphics cards across all platforms. - Fixed 24-bit ILBM handling: route decisions through colour-plane count, clamp uncompressed chunky decode to width, decode all source planes into the chunky buffer for
DIF_WRITEPIX, and prevent 24-bit decode into the 8-bit fallback buffer. - Hardened drag-mask handling: validate P96 stride before per-row reads, read
Memory/BytesPerRowviap96LockBitMap, fix hicolor compare, stop P96 re-entry under lock, and probe RTG viap96GetBitMapAttr. - OS4: validate interface acquisition for both P96 and CGX, and guard NULL in teardown.
- AROS: compile out P96 call sites and route RTG through CyberGraphX.
- Cleaned up dead
P96Base/IP96globals from all module init files. - Added full Picasso96 SDK headers:
proto,inline,ppcinline, andpragmas.
Covers PR #2 (p96-migration), 26 non-merge commits.
OS4 bug fixes ported from derfsss/dopus5-os4
- Fix filetype editor crash: remove spurious
REG(a2)from OS4proc_init. - Fix anti-aliased font progressive bolding: use
JAM2draw mode instead ofJAM1so previous weight layers accumulate correctly. - Fix Escape key not closing requesters on OS4.
- Fix backdrop disappearing on settings save:
FUNKOFFwas mistyped asFUNK0FF, so the backdrop-off code never compiled in. - Port defensive lock validation and 255-character filename support.
Covers PR #5 (port/derfsss-os4-bugfixes), 5 commits.
OS4 features ported from derfsss/dopus5-os4
- Raise font requester cap from 30pt to 96pt for 4K / HiDPI displays.
- Add a full-path-in-lister-title option: new
LISTEROPTF_FULL_PATHflag shows the complete expanded path instead ofvolume:objectname. - Show human-readable free memory on the OS4 screen title bar using
BytesToString, for example324.5 MB free. - Fix
CatCompBlockbinary encoding for the two new catalog strings; lengths must include null separator bytes. - Fix a pre-existing buffer overflow in lister title construction: unbounded
strcpy/strcatinto the 300-byte title buffer, plus overflow oflast_status[80]from the 300-byte title.
Covers PR #6 (port/derfsss-os4-features), 6 commits.
Other fixes
- XADOpus: handle non-Amiga LHA directory entries during extraction. Covers PR #4.
Full Changelog: 5.98...5.99