ZXMAK.NET это эмулятор спектрума, заточеный под .net!
Версия 0.5


эмулятор написан полностью на C# и не использует процессорозависимый код.


ВНИМАНИЕ! Для работы эмулятора необходима среда .NET Framewok версии 2.0 
          или выше! В состав Windows Vista она входит как базовый компонент,
          для более ранних версий Windows скачать ее можно с сайта microsoft:
http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5&DisplayLang=en
          Эта среда понадобится и для других программ, написанных на .NET
          (через два-три года других просто не останется... шутка :)
Также, для полной поддержки клавиатуры, рекомендуется (не обязательно) 
установить последний DirectX (используется расширение Managed DirectX, 
поэтому ставить имеет смысл DirectX 9 от апреля 2005г или более поздний).

Без нормального DirectX включится стандартный драйвер клавиатуры с 
ограниченными возможностями! Об этом будет свидетельствовать соответствующее 
предупреждение.
Скачать DirectX можно по адресу:
http://www.microsoft.com/downloads/details.aspx?FamilyID=3f2828fa-0e3c-4837-afc0-6c67dcaa54bf&DisplayLang=en 


Коротко об эмуляторе

   Эмулируются все инструкции. Реализован тайминг процессора 
(таймингом внутри инструкций пока не занимался).
   Есть отладчик, аналогичный отладчику эмулятора ZXMAK, но с некоторыми 
улучшениями (поддержка колеса мыши, автоскрол и т.п.).

   Эмулятор сейчас эмулирует Speccy 128K, модель "Pentagon 128", c TR-DOS'ом, 
мультиколором, есть звук бипера и YM2149 (AY8910 звук) - выводится на 
звуковую карту, включая цифровой звук (digital sound)!

   Для загрузки пока поддерживается только форматы SNA 48/128, TRD (размером
655360 байт) и TAP.

   Скорость синхронизируется по звуковой карте, при этом большой размер окна
требует заметно больше производительности CPU. Требования к производительности
можно заметно уменьшить - уменьшив размер окна и отключив двойную буферизацию
графики. Производительность эмулятора (на данный момент) позиционируется на
процессоры класса 1000..2000 MHz (по intel'у) и выше. (связано с особенностями 
платформы dot Net - по сути это аналог Java) В дальнейшем эмулятор возможно 
будет оптимизирован.

   Для отладки мультиколора есть режим наглядного графического отображения
текущего положения луча ЭЛТ на экране - в виде стрелок. Кроме того, в этом
режиме, не отрисованная в текущем кадре часть экрана затемняется.

   Есть возможность загрузки плагинов - различных моделей и модификаций 
спектрума. Правда структура плагинов полностью еще не сформировалась. На 
данный момент эмулятор загружает в качестве плагина .net сборку (EXE/DLL),
в которой ищет класс "ZXMAK.Spectrum", являющийся наследником класса
"ZXMAK.CustomSpectrum" (находится в сборке эмулятора). Загружаемый класс
реализует особенности памяти, таймингов, отрисовки видео и дополнительных 
устройств (ВГ93, AY и др.) для соответствующих моделей спектрумов.

 ---

Назначение важных клавиш в эмуляторе (v0.3+):
F2          = RESET
F5          = stop
F9          = start
LeftShit    = CAPS SHIFT
RightShift* = SYMBOL SHIFT
есть поддержка вспомогательных клавиш* (Backspace, cursor keys и др.)

* - эти клавиши доступны только при наличии DirectX! При его отсутствии
    в качестве SYMBOL SHIFT используется Ctrl!


 ---

   Буду очень признателен за помощь в отладке, пожелания и другие 
багрепорты приветствуются!

Отзывы и багрепорты можно присылать по адресу: zxmak@mail.ru
Заранее спасибо!


							Alex Makeev

