User Tag List

Показано с 1 по 10 из 19

Тема: Spectrum on AVR

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    sammy_jankis
    Гость

    По умолчанию Spectrum on AVR

    Всем привет
    Вот на собственно досуге.


    Целью проекта была ни сколько юзабельность или точность работы,
    сколько желание увидеть на дисплее любимую надпись бэйсика
    " с 1982 Sinclair Research Ltd "

    В реальности на авр крутиться настоящий эмулятор Z80, прилеплена SRAM 64 килобайта , в качестве пямяти эмулируемого проца.
    Эмулируется прерывание после завершения отрисовки кадра как в натуральном спекки. Далее отрисовывается все что находится
    в экранной области (из реального SRAM прямо на дисплей), попиксельно (атрибуты пока не работают). Ром бэйсика выполняет все свои дела : начаный тест, опрос клавы, отрисовку , порты ,как на реальной машине.
    Сам же ром грузится с microSD в нашу SRAM .
    Проект дошел до стадии (появлении изображения ) более-менее точной эмуляции в том числе и недокументированных инструкций.
    Багов много. Нет времени отлаживать. Да и суть всего этого была - понимание, практика.
    Кстати в результате работы очень помогли эмуляторы : z80ex-1.1.19 , EmuZWin , aspectrum-0.1.3.tar ,spiffy.
    Размер голого эмуля 16кб , пока это оптимально скорость работы\размер. Принципе можно сжать еще ,но тогда 20 МИПС авр будут еле гонять и без того медленную развалину))
    Пытался прикрутить кнопку. Вроде получилось. В прерывании проц захватывает с порта состояние кнопки. Но есть маленький косячек.
    Бэйсик не выводит оператор , а просто печатает символ. Флаги... такие флаги....
    Смог и выдержал отладку до мэйна бэйсика. Но баг где-то глубже.
    Экран отрисовывает сколько может пикселей. 176х 132. остальное срезает.

    В Принципе можно все довести до ума и юзабельного состояния при хорошей мотивации.

    В качестве принципа декодирования команд были выбраны таблицы переходов. После выборки и декодирования , производится дополнительное декодирование регистров, условий , прочего... это очень сэкономило место при компиляции дублирующихся команд.

    Плохое видео
    https://www.youtube.com/watch?v=t4R9-Mc0Lfo


    прилагаю исходники и проект в протеусе
    Вложения Вложения

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 7
    Последнее: 06.04.2012, 21:37
  2. Владельцам ZX Spectrum+128 и ZX Spectrum+2(grey)
    от Black_Cat в разделе Зарубежные модели
    Ответов: 3
    Последнее: 11.03.2012, 17:24

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •