Denn, понятно, что этот прием усложняет дизассемблирование. Но вряд ли автор ставил перед собой такую задачу. Он-то ведь собственную программу не дизассемблером читал. Да и зачем усложнять дизасм основного блока? Пират его, очевидно, не читая скопирует, ему будет до лампочки, перемешан там код с данными или нет. Обфусцировать имело бы смысл блок загрузчика или там декомпрессора.

Ну и наверняка же у автора был макрос в духе
Код:
.macro PRINT(x)
CALL PRINT_MESSAGE
DEFM x
.endmacro
и он печатал все сообщения простой читаемой конструкцией PRINT("Hello, World"). Это очень удобно и код становится намного понятней, чем если бы там были ссылки на сообщения из отдельно лежащего массива строк.
На самом деле это и без макроса намного более читаемый код. А то, что читаемость кода повышает скорость разработки - это общеизвестно.