12-08-2026, 07:46 PM
Persistence pays off. I decided to merge the two builds - the hires and emujoust .bee but leave out bank patches from the emujoust version.
GROK tells me:
Cassette improvements were merged only: buffer-full protection via _casAppend, safer SAVE including raw CASSETTE.DAT. Size optimisations followed—cached status element ($st), shared _scrollUp helper, shorter status strings—recovering headroom under the 99.6 KB MBT forum limit.
HIRES and HIRES2 ran correctly on that base. PC85 menu and key B into BASIC were solid; RESET returned to the menu, WARM stayed in BASIC. EmuJoust was treated as a special .BEE case, not the core model. Minimal load path only: signature pin to 2304, pakHalf/IY/mem[255] init. Runtime bank patches were left out. EJ.BEE then started successfully alongside normal HIRES.
Generic .BEE titles (e.g. SPACEINV) used the existing detectBeeLoadAddress path. robotm.bee failed until recognised as a MICROBEE ROM header image: JP D400, not RAM at 0900. loadBEE now detects that header, pads under 8K, and routes through loadPAK at C000.
Result: ROBOTM LIVES—ROM-header PAK load working with normal .BEE, EJ special load, cassette, and HIRES on one clean build.
I'm not sure if emujoust will freeze - i've played 3 levels successfully. If freezing returns interupt and bank patches will be slowly merged in.
So the merged beta is attached. Feedback sought!
GROK tells me:
Cassette improvements were merged only: buffer-full protection via _casAppend, safer SAVE including raw CASSETTE.DAT. Size optimisations followed—cached status element ($st), shared _scrollUp helper, shorter status strings—recovering headroom under the 99.6 KB MBT forum limit.
HIRES and HIRES2 ran correctly on that base. PC85 menu and key B into BASIC were solid; RESET returned to the menu, WARM stayed in BASIC. EmuJoust was treated as a special .BEE case, not the core model. Minimal load path only: signature pin to 2304, pakHalf/IY/mem[255] init. Runtime bank patches were left out. EJ.BEE then started successfully alongside normal HIRES.
Generic .BEE titles (e.g. SPACEINV) used the existing detectBeeLoadAddress path. robotm.bee failed until recognised as a MICROBEE ROM header image: JP D400, not RAM at 0900. loadBEE now detects that header, pads under 8K, and routes through loadPAK at C000.
Result: ROBOTM LIVES—ROM-header PAK load working with normal .BEE, EJ special load, cassette, and HIRES on one clean build.
I'm not sure if emujoust will freeze - i've played 3 levels successfully. If freezing returns interupt and bank patches will be slowly merged in.
So the merged beta is attached. Feedback sought!
