Будет работать тогда, когда запустится Palo Alto BASIC :)
У меня точка и доллар — одно и то же. Вообще, из-за того, что я во всей полноте задачу сначала не представлял, очень многое у меня захачено. Например, на место доллара просто подсовывается текущий адрес, хотя само выражение вычисляется позже. Приводить все в разумное состояние теперь уже лень, да и работает вроде. Перемещаемый код я выдавать все равно не собираюсь.
А все эти директивы с точкой и запятой, метки с двоеточием и без — вилы. Кто во что горазд, причем в каждом исходнике обязательно вперемешку то так то эдак. Ассемблер написать сложнее, чем Си ;)
...
Хотя если подумать, можно было бы выделить собственно ассемблер в отдельный объект и написать несколько ассемблеров — 6502, например, мало ли чего еще...

