Эмулятор БК-0010-01, БК-0011
и БК-0011М
ПРОГРАММНОЕ
ОБЕСПЕЧЕНИЕ
ДВК   УК-НЦ   БК0010/11М
archive.pdp-11.org.ru

Когда-то давно, Юрий Калмыков писал эмулятор БК-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 и больше никакой.

Известные ошибки и проблемы:

  1. Играть в игры для БК-0010 затруднительно из-за не синхронизированной обработки клавиатуры и эмуляции выполнения инструкций процессора. Клавиатура обрабатывается в реальном времени, а инструкции - пакетом, за как можно короткое время, между ожиданиями обработки звуковой подсистемой Windows звуковых буферов.
  2. Режим построчной эмуляции экрана работает не полностью корректно, в обычной работе это не заметно, а вот на некоторых демках, использующих эффекты мультиколора и синхронизированного с ходом луча переключения экранов даже очень заметно.
  3. Как оказалось тайминги и их коррекция под разные частоты совершенно неправильные. Нужно писать новый эмулятор, с принципиально иным алгоритмом эмуляции.
  4. Со звуком всё таки что-то неладно. Но не у всех и не всегда. Есть люди, у которых звук эмулятора работает стабильно плохо.
  5. Эмуляция мыши путём захвата ПКшной мыши работает ужасно. Поэтому не вынесена в опции и включается/выключается или вручную в ini файле, или в окне настроек.
  6. Эмуляция менестреля работает криво и плохо.

 

Документация онлайн. Отдельным файлом, на всякий случай, для интересующихся - Описание формата MSF.

 

v3.8.1509.xxxx Дата: 07.09.2015 00:00:00

Файлы этого релиза удалены
и заменены следующим релизом.

Изменения:

Всё теперь собрано в Visual Studio 2013, поэтому для работы программ понадобится VCRedist 2013 той разрядности, что и запускаемая программа. Это если вместо работы программы, выскакивает окошко, что не найдена какая-нибудь dll библиотека - это как раз оно, нужен VCRedist.

  1. Изменения в эмуляторе БК.
    • Максимальное разрешение экрана в оконном режиме теперь 1024 на 768 пикселей.
    • Для звука применена фильтрация методом БПФ, что немного положительно сказалось на качестве.
    • Благодаря товарищу KISSER исправлена палитра на правильную.
    • Немного улучшена стабильность работы.
    • Вроде бы найдены и исправлены какие-то ошибки, но это было полгода назад, и что там было, уже не помню.
  2. Изменения в BKDE.
    • Исправлена ошибка извлечения файлов, когда при выделении ".." извлекались файлы и из родительской директории.
    • Исправлена ошибка распознавания кодировки КОИ-8 в RT11, а так же теперь кодировка КОИ7Н2 - это коды 0..127 без SI SO.
    • Исправлена палитра на более правильную.
    • Всякие несущественные мелочи.
  3. Изменения в HDDImageMaker.
    • Добавлена кнопка обратной переконвертации образа из *.hdi обратно в *.img (для не обладающих навыками работы в hex-редакторах), чтобы образ можно было обратно записать на реальный HDD.

 

v3.8.1501.4493 Дата: 31.01.2015 22:03:00

BK_v3.8_i386.7z (3.3M)
BK_v3.8_i686.7z (3.3M)
BK_v3.8_src.7z (4.4M)
BK_v3.8_x64.7z (3.5M)

Изменения:

  1. Изменения в эмуляторе БК.
    • Добавлена виртуальная клавиатура.
    • Кардинально переделана раскладки клавиатуры БК -> PC, настоятельно рекомендуется заглянуть в директорию Docs.
    • В некоторых местах добавлены сообщения, которые пояснят, почему эмулятор вывалился на рабочий стол, если такое произойдёт.
    • Исправлен баг перехвата эмуляции дискового ввода-вывода на контроллерах АльтПро, найденный Lasoft.
    • Добавлены нововведения из Revision: r59 с гуглокода, описания и настоятельно рекомендуемые манипуляции смотрите там же.
    • Исправлен баг СУ+Ресет и заодно введён такой пункт меню, чтобы и сочетание горячих клавиш было. До этого комбинация СУ+Ресет работала единственным и далеко не очевидным способом, причём всё равно не корректно.
    • Исправлены найденные ошибки и опечатки.
  2. Изменения в BKDE.
    • Не помню, что-то незначительное.

 

v3.8.1410.4183 Дата: 27.10.2014 14:20:00

BK_v3.8_i386.7z (3.3M)
BK_v3.8_i686.7z (3.4M)
BK_v3.8_src.7z (4.1M)
BK_v3.8_x64.7z (3.6M)

Изменения:

  1. Изменения в эмуляторе БК.
    • Исправлена ошибка обработки комментариев в ini-файле.
    • Имена ключей и секций в ini-файле теперь регистронезависимы.
    • Добавлена возможность использования разных движков прорисовки экрана. Тип выбирается вручную параметрами в ini-файле. Движки выделены в отдельные dll модули, поэтому теперь для работы программы обязательно необходим vc_redist соответствующей версии и разрядности.
    • Добавлено отображение в заголовке окна текущей запущенной конфигурации и версии программы. Сделано не так, как сделано в http://bknew.googlecode.com/.
    • Из окна "О программе" убраны всякие копирайты и добавлено соглашение, чтобы всякие анонимы не ныли.
    • Обновлена документация.
  2. Изменения в BKDE.
    • Исправлена ошибка, когда нельзя было заново открыть только что закрытый образ.
    • Рефакторинг.
  3. Изменения в HDDImageMaker.
    • Исправлены ошибки работы с образами в формате Самара. Но поскольку ни самих образов, ни контроллера, ни эмулятора контроллера нет, то всё равно никто ничего не заметит.
  4. К исходникам добавлены исходники утилиты BKDL, чтобы всё в одном месте было.
  5. По каким-то таинственным причинам не работает рисование линий в OpenGL для х64 версии эмулятора, собранного в VS2012 и выше. Поэтому пока решено использовать исключительно VS2010. Соответственно, для работы эмулятора необходим vc_redist 2010 и библиотеки DirectX, при использовании D3D рендера. Однако он немного глючноват, так что не думаю, что кто-то захочет им активно пользоваться.
  6. По просьбам трудящихся, теперь будет вестись архив старых версий проги. Чтобы ничего не было забыто и никто не был забыт.

 

v3.7.1409.3828 Дата: 14.09.2014 13:35:00

BK_v3.7_i386.7z (3.6M)
BK_v3.7_i686.7z (3.6M)
BK_v3.7_src.7z (5.2M)
BK_v3.7_x64.7z (3.9M)

Изменения:

  • Данный релиз собран в VS 2012, поэтому для работы может понадобиться VC redist 2012 соответствующей разрядности.
  • Наконец побеждён Windows 8. Причина тормозов оказалась совсем не там, где казалась. Всё дело в waitable timer'ах, оказывается в Win XP и Win 7 они работают не так, как в Win 8 и Win Server, поэтому пришлось их заменить на high performance counters.
  • Исправлены неработающие сохранение и загрузка состояния эмулятора.
  • Желание Дмитрия Николаевича добавить в ини файл пару настроек выявило фундаментальную ошибку хранения текущих настроек эмулятора в файле сохранения. Пришлось всё переделывать и менять формат. Прошлые сохранения перестали работать, их загрузка будет валить эмулятор, т.к. неохота делать проверки версии сохранения, т.к. я не уверен, пользуется ли хоть кто-то этими возможностями. Зато теперь можно неограниченно добавлять и удалять настройки в ини файл, без ущерба остальной функциональности.
  • Как обычно - мелкий рефакторинг, исправление грамматических ошибок в комментариях исходников и прочие, не влияющие на программу изменения в исходном коде.
  • В BKDE случайно обнаружена и исправлена мелкая ошибка, из-за которой некоторые не загрузочные диски считались загрузочными.

 

v3.x.x Дата: 01.05.2014 00:00:00

Файлы этого релиза удалены
и заменены следующим релизом.

Изменения в эмуляторе:

  • В исходниках рендер по умолчанию теперь 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: небольшой рефакторинг и исправлена ошибка, из-за которой не запоминалась директория, откуда брались записываемые в образ файлы.

 

<<В будущее [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] В прошлое>>     Всего: 100     На странице: