Собираю в коллекцию советские калькуляторы и компьютеры.
Мой сайт: http://www.leningrad.su/museum/
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
иногда встречаются. у NEC PC-88 перетянули систему с cp/m похоже. у Sharp-MZ есть монитор.у PMD-85 есть монитор(но проц 8080). список длинный, наверное.
Монитор или диз?
видел дизасм плюс пара фич
Не только в системах на Z80. Я впервые увидел дизассемблер в мониторе компьютера "Агат". На начало 1990гг системы на Z80 (и КР580ВМ80) зачастую не имели как хороших дизассемблеров, так и вообще мониторов.
На ZX Spectrum мониторы - это вообще больная тема. На начало 1990х гг нормальных не было (MONS4 и т.п. мониторами я нормально пользоваться после "Агата" и "Специалиста" не смог - они совершенно не решали свои задачи). Но в "Специалисте" и "РК" не было дизассемблера в мониторе. Монитор MZ80 для "Орель БК-08" тоже не имел дизассемблера. Дело кончилось тем, что в 1992г я написал свой монитор с дизассемблером (это был мой первый крупный программный проект).
Был компьютер "Электроника МС-1502" на базе процессора 8088 (К1810ВМ88). Там в ПЗУ был монитор с дизассемблером.
В CP/M системах какие-то отладчики были, но были они какими-то дубовыми.
Так что с хорошими мониторами (тем более с дизассемблером) на начало 1990г была напряжёнка. Потом появился STS (с дизассемблером) - это был глоток воды в пустыне для спектрумистов.
Вопрос следовало бы переформулировать: зачем были нужны мониторы и зачем в мониторах был нужен дизассемблер?
Ответ простой. Мониторы нужны для отладки и взлома программ. Но для этих же целей нужен и дизассемблер как воздух. Спрос порождает предложение.
И мониторы обрастали дизассемблерами, как только авторы могли это реализовать. Дизассемблер - сложная программа, я в 1992г сам бы не осилил. Повезло, нашел, откуда "выдрать". Вероятно, так было у многих.
- - - Добавлено - - -
Еще наличие дизассемблера в мониторах зависит от сложности архитектуры процессора. Для процессора 6502 сделать дизассемблер значительно проще, чем для Z80.
Ассемблер сделать еще сложнее. Большинство известных мне мониторов ассемблера не имели. Но это не очень большое ограничение. При типичных сценариях работы с монитором ассемблер обычно не нужен. А для тех случаев, когда нужно изменить отлаживаемую программу, изменения несложно выполнить прямо в машинном коде. Коды большинства часто используемых команд (CALL, JP, RET, LD HL, LD DE, IN, OUT, XOR A и т.д.) люди просто учили наизусть. А в остальных необходимости не было. В крайнем случае можно было посмотреть в таблицу команд процессора. Но у меня даже не было этой таблицы под рукой, хотя с монитором работал часто и много.
А какие-то имели? В том мониторе есть возможность эти мнемоники ему обратно подавать. Не совсем ассемблер, но и не коды.Большинство известных мне мониторов ассемблера не имели.
Собираю в коллекцию советские калькуляторы и компьютеры.
Мой сайт: http://www.leningrad.su/museum/
Возможно, в STS был ассемблер, но я не помню уже, т.к. не пользовался им постоянно, только щупал.
Ну, подача мнемоники с переводом её в машинный код - это и есть ассемблер. Все остальные функции "больших" ассемблеров, такие как директивы и метки, в мониторе не нужны. Ведь там ставится всего лишь задача небольших модификаций программы, а не её перекомпиляции.
Тоже всё время был убеждён в этом, пока в этом месяце мне не потребовалось для отладки собственного эмулятора выводить ассемблерный листинг исполняемого кода. Так я написал на Python блок дизассемблера за один выходной день. Как оказалось, совершенно ничего сложного в дизассемблере нет!
С уважением, Станислав.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)