Эмулятор ЭВМ М-20Исходные тексты можно скачать командой: svn checkout http://m20.googlecode.com/svn/trunk/ m20-read-only Состояние на 29-03-2008- Создан ассемблер с мнемоникой, близкой к БЭСМ-6. Имеется также простой дизассемблер.
- В эмуляторе реализованы все машинные инструкции, включая обращения к внешним устройствам.
- Работают пример 1 и пример 2, вычисляя и печатая правильные значения.
- Работает печать на АЦПУ: десятичные, восьмеричные числа, а также текстовая информация. В файле as/example3.m20 имеется пример печати.
- Выполняется обмен с магнитным барабаном. Образ барабана (16 килослов) хранится в файле $HOME/.m20/drum.bin.
- Работает интерпретирующая система, пример вызова стандартной программы sin(x) можно посмотреть в файле as/example4.m20 . Коды ИС-2 размещены в файле as/is2.m20.
- Начата реализация библиотеки стандартных программ (в файле as/stdprog.m20). Пока имеется только СП-05 - вычисление sin(x). Пример вызова СП-05 расположен в файле as/example4.m20.
Планы развития- Документировать формат входного файла эмулятора.
- Документировать язык ассемблера.
- Добавить поддержку кодировок koi8-r, cp1251 и cp866. Сейчас эмулятор будет правильно работать только на системах с локальной кодировкой Unicode utf-8.
- Разыскать коды трансляторов Алгол-60 для М-20:
- Реализовать компилятор Си, взяв за основу cc17.
|