Я пишу ассемблер 6502 на Python и не знаю, как с этим справиться:
Это двухпроходный ассемблер, поэтому он вычисляет символы в первом проходе, а затем заполняет их во втором. Стандартные вещи. Но! Я хочу, чтобы он имел псевдооперацию ".if", где он будет условно выполнять код на основе условия.
Так что мне делать, если псевдооператор .if проверяет символ прямой ссылки, который еще не был определен в первом проходе? Без этого я не смогу правильно расширить код, чтобы выяснить расположение меток для определения символов!
Я подумал, может быть, я смогу одновременно сгенерировать несколько версий таблицы символов на основе того, найдет ли оператор if Истину, и затем решить, какую версию использовать во втором проходе, но это звучит как ужасный ударил по моему выступлению.