Когда-то давно, Юрий Калмыков
писал эмулятор БК-0010(01) под Windows. Но позже видимо забросил это дело
и выложил исходники всем желающим.
Здесь находятся доработанный и улучшенный эмулятор Юрия Калмыкова на
основе его исходников. Относительно оригинала добавлена эмуляция БК-0011,
БК-0011М, AY-8910, FDD контроллеры: стандартный, A16M, СМК-512, Самарский
контроллер HDD + эмуляция HDD.
Не забываем про необходимость
VC redistributable 2015/2017/2019/2022 разрядности, соответствующей
используемой разрядности программ. Не Windows. При запуске 32х разрядной
проги на 64х разрядной винде, нужен 32х разрядный VC_redist.exe.
Данный пакет для x86 не запускается в Windows XP, поэтому пользователям
Windows XP нужен вот такой
VC Redist 2015/2017/2019
и больше никакой.
Известные ошибки и проблемы:
Играть в игры для БК-0010 затруднительно из-за не синхронизированной
обработки клавиатуры и эмуляции выполнения инструкций процессора. Клавиатура
обрабатывается в реальном времени, а инструкции - пакетом, за как можно
короткое время, между ожиданиями обработки звуковой подсистемой Windows
звуковых буферов.
Режим построчной эмуляции экрана работает не полностью корректно,
в обычной работе это не заметно, а вот на некоторых демках, использующих
эффекты мультиколора и синхронизированного с ходом луча переключения
экранов даже очень заметно.
Как оказалось тайминги и их коррекция под разные частоты совершенно
неправильные. Нужно писать новый эмулятор, с принципиально иным алгоритмом
эмуляции.
Со звуком всё таки что-то неладно. Но не у всех и не всегда. Есть
люди, у которых звук эмулятора работает стабильно плохо.
Эмуляция мыши путём захвата ПКшной мыши работает ужасно. Поэтому
не вынесена в опции и включается/выключается или вручную в ini файле,
или в окне настроек.
Файлы этого релиза удалены и заменены следующим релизом.
Изменения в эмуляторе:
В исходниках рендер по умолчанию теперь Direct 2D. Если нужны другие - они в специальных архивах.
Наведён небольшой порядок хранения данных/настроек в реестре.
Что-то ещё, незначительное.
В исходниках полно недоработок и всякого нехорошего кода, которые начнёшь исправлять, и одно потянет за собой другое. Если с исправлениями не внесено новых серьёзных ошибок, то это скорее всего последнее обновление. До осени.
Изменения в BKDE:
Возвращён старый способ распознавания дисков RT-11, он работает совместно с новым, а то оказывается УКНЦшные диски ADOS перестали опознаваться.
Просмотр текстовых файлов RT-11 теперь автоматически распознаёт кодировки КОИ-8 и КОИ-7Н0, КОИ-7Н1. Предполагается, что 8-ми битная кодировка - это по умолчанию КОИ-8, а не какая-нибудь латинская, с расширенным набором восточноевропейский/западноевропейских знаков.
v3.x.x
Дата: 25.04.2014 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Исправлены ошибки повреждения памяти, и вообще как оказалось неработоспособности под Win8 диалогов выбора образов, загрузки/сохранения состояния и выбора tap-файлов, внесённые неправильными оптимизациями в версии от 23.04.2014.
v3.x.x
Дата: 23.04.2014 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Изменения в эмуляторе:
Полностью переделан дампер памяти. Из-за этого слегка изменён интерфейс окна отладчика. Дампер теперь на лету отображает изменения в памяти. поэтому если сделать довольно большое окно дампера, а так же на слабых компьютерах может падать FPS. Дампер может отображать данные в двух видах: пословно и побайтно, но никто не мешает всем желающим самостоятельно расширить функционал, и добавить ещё режимов. Навигация производится с помощью клавиатуры, мышью, а также можно переходить по конкретному адресу, задав его в поле адреса вверху дампера.
Изменён способ монтирования/отмонтирования образов дискет. Теперь это делается с помощью кнопок на панели инструментов. Заодно теперь можно монтировать образы, находящиеся в любом месте, даже на расшаренных сетевых ресурсах. Монтирование/отмонтирование образа HDD по-прежнему делается только вручную, только через редактирование ini-файла настроек, и изменение ситуации не планируется.
Изменения в BKDE:
Принципиально изменён способ распознавания дисков RT-11.
Изменения в HDDImageMaker:
Нет. Просто пересборка.
Общие изменения:
Снова изменён способ формирования версии программ, соответственно и скрипт, который генерировал версию. Теперь это делается более корректно, не затрагивая основной файл ресурсов.
Местами, где заметил, исправил грамматические ошибки, их оказалось довольно много, и ладно бы в комментариях, даже в элементах пользовательского интерфейса были.
v3.x.x
Дата: 12.03.2014 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Изменения в эмуляторе:
Применены исправления r13 и частично r12, взятые из http://bknew.googlecode.com/, однако сами исходники там безнадёжно старой версии.
Экспериментировал с DirectX, пытаясь задействовать его, ничего полезного не добился, но в ходе действия немного упростился код текущего рендера, и тех, которые в архиве ScrRenders.rar. На работу эмулятора не влияет.
Изменения в BKDE:
Исправлена ошибка, приводящая к краху программы при открытии образов с ошибками и некорректными данными в ФС.
Общие изменения: изменён способ формирования версии программ, соответственно и сам скрипт, который генерировал версию.
v3.x.x
Дата: 09.12.2013 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Благодаря Romick обнаружены и исправлены ошибки:
Исправлена ошибка в эмуляции менеджера памяти контроллеров АльтПро.
В BKDE исправлена древняя ошибка, когда неправильно указывался размер файла в блоках при добавлении файлов в образы в формате MicroDOS (MKDOS, AODOS, NORD).
Произведён рефакторинг кода, особенно много в BKDE, и теперь используется один файл проекта *.vcxproj для всех версий Visual Studio. И файлы решений *.vs2010.sln - для VS2010, *.vs2012.sln - для VS2012 и VS2013
v3.x.x
Дата: 29.04.2013 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Небольшое обновление дистрибутивов. Дальнейшее развитие откладывается до конца осени, и будет ли продолжено, пока под вопросом, текущие методы эмуляции таймингов бесперспективны. И вообще, надо как-то по-другому эмулировать работу БК.
В эмуляторе тайминги выставлены для БК11 с частотой 4Мгц, т.к. я пользуюсь только эмуляцией БК11М, и оно мне важнее.
Уточнены прерывания в HALT режиме.
BKDE: небольшой рефакторинг и исправлена ошибка, из-за которой не запоминалась директория, откуда брались записываемые в образ файлы.
v3.x.x
Дата: 02.03.2013 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
В эмуляторе тайминги выставлены для БК10 с частотой 3Мгц, пусть хоть что-то работает правильно.
В BKDE разрешено просматривать и извлекать удалённые и плохие файлы. Для ANDOSа из-за бага, который не стал исправлять, пусть будет такая фича - извлечение и просмотр удалённых файлов работает как для MKDOSа, просто берётся и извлекается всё подряд заданной длины, начиная со стартового кластера.
v3.x.x
Дата: 20.02.2013 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Исправлена ошибка в BKDE про которую все давно знали, но стеснялись сказать. В Windows XP и системах, где принудительно выключен интерфейс Aero оказывается не работало добавление файлов в образы. Неприятный крах программы устранён.
v3.x.x
Дата: 13.02.2013 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Исправлена опция "Адаптивный Ч/Б режим", которая работала наоборот.
Мелкие улучшения в пользовательском интерфейсе.
Уточнена эмуляция клавиатуры.
Исправлена ошибка, внесённая небольшой оптимизацией 11.02.2013, проявлявшаяся только в конфигурациях с СМК-512.
В BKDE попытка улучшить навигацию по каталогу образа.
v3.x.x
Дата: 11.02.2013 00:00:00
Файлы этого релиза удалены и заменены следующим релизом.
Исправлена комплексная ошибка в модуле обработки конфигурации эмулятора.
Небольшие оптимизации.
В BKDE добавлена работа с образами в формате DX-DOS.
В BKDE в процессе расширения функциональности уточнена работа с каталогами MKDOS и MicroDOS, но процесс застрял из-за невозможности правильно работать с каталогами AODOS и NORD старых версий, да и новых тоже, если диск несистемный.
В BKDE исправлен небольшой косяк, когда в строке состояния выводилась неправильная информация о ОС образа.