Skip to content

htmlgod/AM2901A

Repository files navigation

Build Status

AM2901A

AMD AM2901A CPU emulator

DONE:

  • Внутренние регистры и состояния
  • 40 бит для эмуляции данных на пинах (PINS)
  • Дешифраторы микрокоманд I0-I9
  • Опкоды для микрокоманд
  • Логика для флагов состояния и флагов P и G
  • Логические и арифметические операции с учетом флага C0
  • Сдвиг для регистра RegQ
  • Сдвиг для регистров общего назначения
  • Интерпретатор для мнемонических микрокомманд (псевдо-ассемблер)
  • Компилятор псевдо-ассемблера для am2901a
  • Язык ассемблера для am2901a
  • Комментарии в ассемблерном листинге
  • Вывод строки с ошибкой
  • Ввод флага входного переноса C0
  • Внутренняя команда ассемблера REGS() для вывода содержимого всех регистров

IN PROGRESS

  • Тестирование
    • unit-тесты для эмулятора Микропроцессора
    • Написать unit-тесты для парсера/псевдокомпилятора
    • Работа в обратном/дополнительном коде

TODO:

  • Документация
    • Нормальный README.md
  • Закомментировать нормально код
    • wiki/doxygen
  • Code Coverage
    • coveralls
  • Различный формат для записи адресов и данных (hex, oct, bin, dec)
  • Эмуляция тока на пине OE
  • Тактирование?

IN FUTURE

  • Эмуляция AM2909 и связывание с двумя am2901a = 8 битный процессор с эмуляцией ОЗУ