PDA

Просмотр полной версии : Точный эмулятор ZX Spectrum 48 для V6Z80P+



Valen
23.07.2011, 17:15
(Добавляю в этот пост по ходу развития проекта.)


Alessandro Dorigatti выпустил эмулятор ZX Spectrum 48/128 +AY, для плат V6Z80P+. Особенностью этого эмулятора, является наиболее точная эмуляция, с точностью то такта (cycle-exact).


Эмулятор симулирует компьютер PAL/NTSC ZX Spectrum 48/128
- микросхему ULA
- ULA+ 64 цветовой режим
- магнитофон
- Kempston joystick
- скорость CPU, можно изменять на лету, 3.5MHz, 7MHz, 14MHz
- AY музыкальный процессор

В процессе разработки эмулятора, автор хотел повторить реальное поведение микросхемы ULA. При этом он использовал схемы и другую информацию, из книги Chris Smith "The ZX Spectrum ULA: How to design a microcomputer".

При эмуляции, есть ситуации когда Z80 должен быть остановлен (когда работа Z80 может конфликтовать с ULA, во время перерисовки экрана). Т.е. эмулятор честно воспроизводит работу contention handler, который находится внутри реальной ULA.

В схожей манере, эмулируется "плавающая шина". Точно эмулируется ULA доступ к видео-памяти и во время чтения odd порта, шина данных подключается к CPU. (Посему честно эмулируется даже "снег" на экране.)

Т.е. даже можно назвать этот точный эмулятор, симулятором.

Касательно Пентагона:
Pentagon эмулируется правильно, со всеми времянками.
Cycle-Perfect Pentagon 128 Emulation on the V6Z80P
http://www.youtube.com/watch?feature=player_embedded&v=W85tA9UsqLU

Поддержка TR-DOS ожидается (почти готова).


Другие возможности:
- программа GOSPEC.EXE для быстрого запуска эмуля
(kickstarter program)
- теперь можно интерактивно запускать эмуль, используя пред-инсталлированную версию ResiDOS (с пакетами TapeIO и TaskMan)
- прямо из FLOS можно выбрать нужный TAP файл

http://wiki.retroleum.co.uk/wiki/view/Alessandros+Spectrum+Emulator
Вики страничка проекта

http://v6z80p.svn.sourceforge.net/viewvc/v6z80p/trunk/Alternative_Configs/Alessandro/
Адрес файлов проекта

Видео Cycle perfect Speccy emulator
http://youtu.be/edhzxqqM2y4

Видео Cycle Perfect Spectrum 128 Emulator for V6Z80P
http://www.youtube.com/watch?v=ncw6m0hGrtU&feature=player_detailpage


Таким образом, на текущий момент есть два эмулятора:
- ZX Spectrum 48/128 AY, неточный (для плат V6Z80P, V6Z80P+)
- ZX Spectrum 48/128 AY, точный (для плат V6Z80P+)

Плат версии "плюс" (более новая версия) - примерно половина от всех произведённых, остальная половина - платы версии "без плюса".

Valen
22.09.2011, 20:47
Обновил первый пост, добавил видео.

Titus
23.09.2011, 01:38
А что это за 64-цветный режим у ULA?

Valen
23.09.2011, 02:04
А что это за 64-цветный режим у ULA?

Вот этот
http://sites.google.com/site/ulaplus/
я так понимаю.

Valen
25.02.2012, 18:00
Добавлена реализация AY-3-8912.
Теперь можно смотреть демки 48KB + AY.

Valen
24.06.2012, 14:50
Добавлена реализация 128K спектрума.
Теперь эмуль полноценный 48/128 + AY.
Обновил первую страницу, добавил новое видео.

Valen
07.03.2013, 17:51
Добавлена эмуляция пентагона.
(Видео в первом посте.)