John North,
еще раз

hrust программа универсальная и считает что файл который она распаковывает имеет размер #a000 и находится по адресу #6000
поэтому он всегда старается переместить упакованный блок как можно дальше

что и видно на данном фрагменте исходника

DEHRUST PUSH DE
PUSH HL
берем размер распакованого блока
INC HL
INC HL
LD C,(HL)
INC HL
LD B,(HL)
INC HL

вычисляем конец распакованых данных

DEC BC
EX DE,HL
ADD HL,BC
EX DE,HL

берем длину пакованого блока

LD C,(HL)
INC HL
LD B,(HL)
DEC BC

проверяем на вероятность затирания

по умолчанию считается что блок будет загружен туда же куда будет распакован


POP HL
ADD HL,BC
SBC HL,DE
ADD HL,DE

JR C,LL4019
оставляем на месте

LD D,H
LD E,L
LL4019 LDDR
но последние 6 байт упакованного файла всегда сохраняются вместе с упаковщиком

но если блок находится по адресу 60000
а распаковывать надо например заставку он этот блок трогать не будет