Вот как оказывается всё просто. Если бы я это знал, то мой трёхпроходный кросс ассемблер 6502 из середины 90-тых получился бы проще. Не имея этой информации, мне пришлось пользоваться более громоздким табличным методом. С помощью этого ассемблера я писал программы для прогона в эмуляторе Apple-II на ОРИОНЕ. Во вложении исходник, полезен как пример написания простейшего ассемблера. - - - Добавлено - - -Lavr wrote:
Зачем сделали новую тему из моего случайного замечания? Я не планировал что-то обсуждать на эту тему. Будет пустая тема из одного бессмысленного сообщения. Можно этот пост и тему удалить. 6502 никому не интересен, слишком неудобный.
Сейчас меня больше интересует ассемблер 6800. Некоторое время уже вожусь с экспериментальным макетом на 6802. Хотел ставить 6802 на РК86 (но оказалось, что 8088 ставится проще). В коды транслировал на XASM 6800 для CP/M, но собирался написать свой ассемблер и блок эмуляции 6800 на ассемблере x86. В ходе этого хорошо изучается система команд и программирование. А наличие блока эмуляции позволяет без труда сделать эмулятор РК86 (также Специалиста и ОРИОНА) с процессором 6802 на PC.
Простой ассемблер написать легко (особенно, если система команд структурирована и логична), - пишется за несколько дней. А вот написать макро-ассемблер, это, как минимум, на порядок сложнее (пишется за несколько месяцев). Сравните, примитивный ассемблер КР580 - 2 кб, а даже простой макро ассемблер это 10 кб. Макро-ассемблер M80 имеет размер 18 кб. Кстати, не вижу особых препятствий тому, чтобы написать полноценный конвертор специально подготовленных исходников КР580 в исходник для 6800. Это намного проще, чем написать конвертор в коды 6502.