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

Когда-то давно, Юрий Калмыков писал эмулятор БК-0010(01) под Windows. Но позже видимо забросил это дело и выложил исходники всем желающим.

Здесь находятся доработанный и улучшенный эмулятор Юрия Калмыкова на основе его исходников. Относительно оригинала добавлена эмуляция БК-0011, БК-0011М, AY-8910, FDD контроллеры: стандартный, A16M, СМК-512, Самарский контроллер HDD + эмуляция HDD.

Текущая версия:            Будущая версия (когда-нибудь).

Сборка Версия Описание

BK

Документация

v3.12.2112.9059

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

BKDE

Документация

v2.1.2109.668

Инструмент для просмотра содержимого образов дискет БК. Может извлекать файлы из многих популярных форматов и записывать файлы в образы форматов MKDOS, ANDOS, CSIDOS и RT-11. Так же может удалять файлы и директории из образов. А при добавлении в образ файла с уже существующим именем, его можно перезаписать. Умеет работать с реальными дискетами в реальном дисководе при наличии установленного драйвера fdrawcmd.sys.

(Входит в состав эмулятора)

HDDImageMaker

Краткое описание

v1.2.2109.194

Инструмент для создания виртуальных HDD для контроллеров СМК-512 и Самара. Также может конвертировать уже существующие образы винчестеров АльтПро и Самара в виртуальный HDD эмулятора.

(Входит в состав эмулятора)

BKTurbo8.rar -

Кросcассемблер Turbo8, уже не бета версия, но не вполне меня устраивает по функционалу. В архиве кроме исполняемых файлов есть документация (пока черновик) и примеры использования (парочка - возможно интересные).

(Входит в состав эмулятора)

BKDL.rar -

Консольная утилита для вывода списка каталога всех образов дисков, найденных в заданной директории, и при необходимости так же и во вложенных поддиректориях. Исходники включены в архив исходников эмулятора.
Краткое описание: запуск без параметров начинает поиск образов в текущей директории (в той, которой находится программа)
Ключи:

  • -h - вызов справки по ключам и параметрам командной строки;
  • -r - рекурсивно обрабатывать так же и вложенные подкаталоги (по умолчанию выключено);
  • -c - создавать вместо списка таблицу (по умолчанию выключено);
  • -t<имя файла> - задать своё имя текстового файла;
  • -l<имя файла> - задать своё имя файла списка или таблицы.

НЕ входит в состав эмулятора.

BKHDDTool

Краткое описание

-

Консольная утилита для разборки/сборки образов HDD БК в форматах .hdi или raw image. Понимает формат разбивки АльтПро и Самара, а так же может конвертировать образ между этими форматами. При пересборке формата АльтПро теряются все резидентные модули из бут блока.

(Входит в состав эмулятора)

Ссылки на скачивание актуальных версий:

v3.12.2112.9059

BK_v3.12_src.rar
BK_v3.12_x86.rar
BK_v3.12_x64.rar
BK_v3.12_x86_WinXP.rar

03.12.2021

Незначительные изменения в эмуляторе.

  • Исправлен баг, внесённый в сборке v3.11.2101.8545 из-за которого перестали работать конфигурации "БК0010-01 + стандартный КНГМД" и "БК0010-01 + контроллер Samara".
  • Исправлен косяк с отображением имени загруженного файла в конфигурациях БК11(М) при загрузке бин файла через Drag-n-drop.

01.10.2021

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

  • Добавлена эмуляция магнитофона для БК-0011 и БК-0011М при работе в БОС. Т.е. в ПЗУ-Бейсике файлы можно читать/писать как .bin файлы.
  • Сделано четыре независимых окна дампа памяти, поэтому при первом запуске будут глюки с окнами дампов, победить их не вышло. Надо все окошки закрыть и открыть заново, и возможно перетасовать как необходимо.
  • В окна дампа памяти добавлены кнопки сохранения и загрузки дампов в формате .bin. Особенности работы см. в документации.
  • В карте памяти теперь можно сохранять / загружать страницы не только как картинки, но и в формате .bin. Естественно теперь туда можно загрузить любой файл в этом формате. См. документацию.
  • Переработана работа с аргументами командной строки, добавлена возможность загружать .bin файлы в БОС БК-0011(М) с помощью ключа /B. Подробности см. в документации.
  • Добавлена возможность загружать дампы в формате .bin (а так же и произвольные) непосредственно в память эмулируемой БК, с помощью ключа командной строки /D. Этим ключом также можно загрузить дамп в память сразу после создания конфигурации, перед инициализацией. Подробности и особенности см. в документации.
  • Улучшен механизм запрета запуска нескольких копий программы и передачи параметров через командную строку параметров от запускаемой копии к экземпляру программы, находящейся в памяти.
  • Удалены все акселераторы с цифровых клавиш Numpad клавиатуры. За ненадобностью.

Изменения в BKDE и HDDImageMaker:

  • Рефакторинг, ничего не изменилось.

Не забываем про необходимость VC redistributable 2017/2019 разрядности, соответствующей используемой разрядности программ. Не Windows. При запуске 32х разрядной проги на 64х разрядной винде, нужен 32х разрядный VC_redist.exe

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

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

 

Архивные версии:

v3.11.2104.8570

BK_v3.11_src.rar
BK_v3.11_x86.rar
BK_v3.11_x64.rar
BK_v3.11_x86_WinXP.rar

17.04.2021

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

  • Теперь акселераторы не удаляются из реестра без крайней необходимости, так что кому нужно, могут переназначать свои горячие клавиши разным действиям. И они будут сохраняться, до тех пор, пока я снова не полезу добавлять кнопки в тулбарах.
  • Оказывается, некоторые консольные утилиты, собираемые специально для работы под WinXP, там не работали. Наверное уже давно. Теперь снова работают.

Изменения в BKDE:

  • Возился с автоперекодировкой русских букв из КОИ-7 в RT-11, но так ничего и не добился.

 

v3.11.2101.8545

BK_v3.11_src.rar
BK_v3.11_x86.rar
BK_v3.11_x64.rar
BK_v3.11_x86_WinXP.rar

23.01.2021

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

  1. Добавлена эмуляция приставки Менестрель (кривая, и плохо работающая).
    НЕ реализовано переключение 6-го канала на генерацию прерываний по вектору 100.
  2. Изменены алгоритмы фильтрации и ресемплирования на взятые из libdspl-2.0.
    Должно стать немного лучше.
  3. В опции добавлена возможность включать/выключать коррекцию смещения DC для эмулируемых звуковых устройств. Должно помочь тем, кто постоянно слышит посторонние щелчки и пердёж звука. Это из-за того, что спикер и ковокс на выходе иногда оставляют постоянный уровень, отличный от нуля, а некоторые звуковые карты этого не любят. Особенно, когда получаются микроразрывы между звуковыми буферами.
  4. Исправлена ошибка загрузки состояния эмулятора в конфигурациях с HDD.
  5. Исправлена ошибка, возникающая при загрузке состояния эмулятора с частотой дискретизации звука, отличной от текущей.
  6. Изменён алгоритм панорамирования для AY, старые значения в ini файле стали неверны, поэтому поначалу могут прочитаться неверные значения, у тех, кто будет использовать свой ini файл с этой версией.
  7. В выпадающее меню дискет добавлен пункт "Открыть в BKDE". Из-за чего пришлось усложнить механизм общения между собой эмулятора и утилит. Старые кодовые фразы стали неверны, и эмулятор больше не увидит утилит старых версий. Если BKDE нет в директории "Tools", то пункт "Открыть в BKDE" в меню не появится. На время работы BKDE эмулятор приостанавливается полностью, выглядит как полное зависание программы. Если при этом BKDE аварийно завершить, или прибить в диспетчере задач, эмулятор так в таком состоянии и останется. Его можно будет только так же прибить в диспетчере задач. Так что пользоваться с осторожностью. И естественно, после внесения изменений в образ, эмулятор ничего не будет об этом знать, так что обновление данных для БКшных ОС - задача пользователя.

Изменения в BKDE и HDDImageMaker:

  • Пересборка в соответствии с новыми кодовыми словами пароль-отзыв.

 

v3.11.2011.8392

BK_v3.11_src.rar
BK_v3.11_x86.rar
BK_v3.11_x64.rar
BK_v3.11_x86_WinXP.rar

09.11.2020

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

  1. Изменено окно настроек. Теперь там можно менять почти все опции, параметры и настройки из ini файла. Кроме тех, которые меняются в своих отдельных окнах.
  2. Добавлена опция редактирования палитр. Для тех, кто хочет поэкспериментировать с нестандартными цветами. Для каждой конфигурации можно задать свои настройки палитр.
  3. Добавлена опция редактирования клавиш управления эмуляции джойстика. Но сделано не очень красиво, там нужно доделать, чтобы имена клавиш были те, что на кнопках нарисованы, а не имена виртуальных, но в принципе работает. И добавить дружественности интерфейсу, а то не очень понятно, что надо кликнуть мышкой в поле кнопки, чтобы переназначить её.
  4. Добавлена опция настройки панорамирования каналов муз. сопроцессора AY-3-8910. Работает в реальном времени.
  5. Добавлена эмуляция мыши "Марсианка" методом захвата курсора мыши ПК. Но работает ужасно. Поэтому опция по умолчанию выключена. Желающие могут включить её в окошке настроек, ужаснуться плохой работе и выключить обратно. И пользоваться эмуляцией клавишами на нумпаде.

Изменения в BKDE:

  • Исправлена работа с образами в формате RT-11.

 

Архив изменений