> LibMax/s 0.11  Library Maximiser 0 NB: Currently only works on MOS 3 onwards! (D ??-???-1997 v0.02 JJR: Initial version, works via direct entry 2> 20-Feb-1999 v0.10 JGH: Rewritten to trap errors properly PHX:TSX:STX &DCFD:PLX :\ Save stack pointer AJSR DoOscli :\ Try to do the command .ErrorUntrapped BLDA #0:STA &DCFF:STA &DCFE :\ Clear Error Catch Flag ?LDA #6:RTS :\ Exit from Service 6  :  .DoOscli  1CLC:LDA #CLIV-Vec0:ADC VectorTable+1:STA &101 *LLDA #0:ADC VectorTable+2:STA &102 :\ Get pointer to address of real 4LDA #&6C:STA &100:JMP &100 >: H@.Service6 :\ An error has occured R1LDA &DCFF: &DCFE:CMP #&AA:BNE ErrorUntrapped \5LDY #0:LDA (errptr),Y:CMP #254:BNE ErrorUntrapped fALDX &DCFD:TXS:PLX :\ Restore stack pointer p LDY #0 z.ErrorRealign LDA (lptr),Y:STA &DC00,Y IINY:CMP #13:BNE ErrorRealign :\ Ensure string starts at &DC00  LDX #&FD .ErrorMoveUp LDA &DBFF,X:STA &DC02,X JDEX:BNE ErrorMoveUp :\ Move up 3 for extra characters !STA &DC01:LDA #".":STA &DC02 =len%:byte80%=&80:byte81%=&80 `] ((byte81%-byte80%) &FE)<>0 "ERROR: Offset by more than one page at &";~&8000+off% jM (byte80% &C0)=&80:byte%=byte%2+128*(byte81%-byte80%):count%=count%+1 t1 count%=8:?O%=byte%:O%=O%+1:byte%=0:count%=0 ~&off%=off%+1:off%>=len% count%=0