Упростил слегка .def zero = R3
WorkCycle:
ld TMP,-X ;читаем очередной байт массива
cpse TMP,Zero ;если 0
rjmp BREAK_ ;как только нашли ненулевой байт - выходим
cpse XL,zero ;сравнение с границей массива (дошли ли до конца)
rjmp WorkCycle ; то продолжаем цикл чтения/сравнения
BREAK_:
STOP ;нулевой результат ("ТMP") - признак, что весь массив входных данных был нулевым