Наиболее приближенный к реальности эмулятор БЭВМ сделанный по вот этой книге
Отличается от других реализацией кол-вом полезных фич и близостью к "настоящей" БЭВМ, легковесностью и портированностью под все платформы.
Архивы и образы для каждой платформы находятся в разделе релизов
- Скачайте архив
- Распакуйте полностью
- В распакованной папке запустите БЭВМ
- Скачайте образ
- Откройте образ
- Переместите BasePC 2.0 в Applications
- Откройте терминал
- Введите
cd /Applications
. Затем Enter - Введите
xattr -rd com.apple.quarantine "BasePC 2.0.app"
. Затем Enter.
Это все нужно потому что, я не хочу платить Apple 99 bucks за сертификат.
- Установите пакет sdl2
- Скачайте бэвм для линукса
- Запустите
Уверен вам линуксоидам больше объяснений не требуется.
Для арчеводов @Iamnotagenius подготовил aur package
В этой реализации БЭВМ можно писать не только хексом, но и мнемоникой напрямую. То есть текстом.
Это уже классика но тем не менее нельзя не упомянуть. В этом эмуляторе БЭВМ конечно же есть возможность автоматического создания таблиц трассировки.
Имеется поддержка очень простого ASM подобного языка.
Например:
$pos 10
CLA $start
BMI %then
BR %start
$pos 15
ISZ 2 $then
BR %start
Если загрузить это в память ЭВМ получится
Подробнее описано во внутренней справке БЭВМ. Кстати...
Все понимают что смотреть в методичку всем лень, потому в этой БЭВМ есть встроенная справка.
Можно посмотреть на справку по отдельной команде:
Или же на все команды в целом:
В окне со справкой есть еще пару отделов и в дополнение к тому практически все компоненты БЭВМ рисуют попап с краткой информацией о них.
В нижней панели БЭВМ вы можете увидеть лог выполняемых командами действий.
Считаю, очень удобно когда вам нужно понять, что происходит в программе.
В этой БЭВМ нет принципиально ничего неизменяемого. Все флаги, которые работают в "каноничной" БЭВМ работают и в этой. У каждого флага имеется свой эффект и подробное описание.
Кнопки отладки придерживаются того же принципа, что и пульт отладки "каноничной" БЭВМ, но при этом сохраняют свою интуитивность.