This errors:
PROTECT $E842
ORG $e845
BYTE 1
while this does not:
PROTECT $E842 $E843
ORG $e845
BYTE 1
I believe PROTECT when used without an end address given assumes a length of 4 bytes. If it's easy to do, I think it should protect until the next 4-alignment instead.