debugウィンドウで確かめると
不要なのは末尾の%0a,$0d,$1a,$00だと思いますので
それらを$00で書き換えてしまうのはどうでしょう
a="111\n222\n333\n\n\n"
mes ""+a
notesel a
mes "notemax:"+notemax
size=strlen(a)
repeat
size--
chrcode=peek(a,size)
if (chrcode == $0a) | (chrcode == $0d) | (chrcode == $1a) | (chrcode == $00) {
mes "末尾要削除:"+size+"バイト目 キャラコード:"+strf("$%02x",chrcode)
del_bytes++
}else{
chr="" : poke chr, 0, chrcode
mes "末尾文字:"+size+"バイト目 "+chr
break
}
loop
mes "末尾要削除バイト数:"+del_bytes
memset a,$00,del_bytes,size+1 ; 末尾に$00を書き込む
mes ""+a
notesel a
mes "notemax:"+notemax