Сам алгоритм работы с тестовыми блоками и показа результата отрабатывается, как задумывался. Дальше тесты и оптимизация.

Из интересного. Как было описание тестового блока:

Код:
      ACTION <\BR .+2\>, Paired=YES
        NOP

      ACTION <\BR .+2\>
        NOP
        BR .+2

      ACTION <<CR><LF>\34567.89022*32109.754321 empty\>, Paired=YES
        LDD  @#DNUM01, AC0
        LDD  @#DNUM02, AC1

      ACTION <<CR><LF>\34567.89022*32109.754321\>
        LDD  @#DNUM01, AC0
        LDD  @#DNUM02, AC1
        MULD AC0, AC1
Как теперь:

Код:
      ACTION <\BR .+2\>
      ACBODY
        BR .+2

      ACTION <\34567.89022*32109.754321\>
        LDD  @#DNUM01, AC0
        LDD  @#DNUM02, AC1
      ACBODY
        MULD AC0, AC1
Можно понять, какие дубли были выкинуты. И для пустого блока инициализации (проблему с которым я обошёл с помошью NOP) при работе автоматом добавляется пустышка NOP