Эмулятор БК-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.9.1612.5600 Дата: 15.12.2016 10:28:00

BK_v3.9_src.7z (4.6M)
BK_v3.9_x64.7z (5.7M)
BK_v3.9_x86.7z (4.9M)

Андрей Терра сумел растормошить меня и сподвиг на добавление эмуляции самарского контроллера HDD. В связи с этим:

  1. Добавлены конфигурации БК с самарским контроллером.
  2. Из-за пункта 1 была уточнена эмуляция HDD.
  3. Т.к. теперь стало два HDD контроллера, стало очень неудобно иметь общую конфигурацию на всё. Поэтому внедрена возможность хранить отдельные настройки для каждой конфигурации. Изменена структура файла конфигурации. Подробности в документации.
    Опять все старые сохранения состояний стали несовместимы с новой версией.
  4. Ещё один фикс BKDE для Ксидос. Регистр импортируемых имён файлов становится строчным. К экспортируемым файлам к имени прицепляется хвост с информацией о страницах БК. Импортируемые файлы так же анализируются насчёт наличия этого хвоста в имени.
  5. Уточнён формат структуры самарского винчестера, и исправлены утилиты HDDImgMakеr и BKHDDTool.
  6. В HDDImgMakеr экспериментально добавлен новый формат образа винчестера для эмулятора, но в самом эмуляторе он пока не реализован. Нужно уточнение и эксперименты.

 

v3.8.1611.5457 Дата: 29.11.2016 12:12:00

BK_v3.8_src.7z (4.6M)
BK_v3.8_x64.7z (5.7M)
BK_v3.8_x86.7z (4.9M)

Небольшой фикс BKDE. Не меняем регистр символов расширения добавляемых файлов.

Остальные вещи без существенных изменений. Просто отрефакторены. И серьёзно переписаны утилиты, прилагающиеся только в виде исходников в архиве с исходниками эмулятора.

 

v3.8.1604.5366 Дата: 29.04.2016 12:14:00

BK_v3.8_src.7z (4.6M)
BK_v3.8_x64.7z (5.6M)
BK_v3.8_x86.7z (4.8M)

Багфикс сборки от 11.04.2016.

  • Исправлено падение при возникающих ошибках во время чтения-записи дискет.
  • Починена поломавшаяся карта памяти.
  • Заодно эмуляция затухания люминофора теперь опциональна. Включается в меню "Вид".

 

v3.8.1604.xxxx Дата: 11.04.2016 00:00:00

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

Для сборки теперь используется VS2015.

Используется статическая компоновка, так что дополнительных dllок может и не понадобиться. Но и размер файлов увеличился.

Конфигурация i686 упразднена, потому как оказалось, что студия не хочет при оптимизации самостоятельно применять расширенные инструкции там, где это возможно, как когда-то было раньше.

Эмуляция всё усложняется, системные требования всё повышаются.

Изменения:

  1. Изменения в эмуляторе БК.
    • Улучшена эмуляция спикера. Теперь он звучит как настоящий. Почти.
    • Немного улучшена эмуляция экрана. Некоторые демки теперь работают как на настоящей БК, те что не работают - требуют точных таймингов.
    • Экспериментально добавлена примитивная симуляция затухания люминофора экрана, в надежде, что это как-то решит проблему мерцания, но нет, мерцание почему-то осталось, но за движущимися объектами появился шлейф.
    • Курсор в окне дизассемблера теперь принудительно жёлтый, чтобы всем было видно, что там в строке написано было, а не только использующим стандартные цветовые схемы.
    • Починен когда-то давно поломавшийся ресет компьютера.
    • Исправлена ошибка чтения кассет (wav) при эмуляции работы с магнитофоном. Ошибка возникла в далёком 2014 году при неудачной оптимизации, и хорошо, что эмулятор никому не нужен, а то так и мучились бы.
    • Как обычно: рефакторинг и возня с разными внутренними компонентами, никак внешне не проявляемая.
  2. Изменения в BKDE.
    • Починена возможность работы с повреждёнными образами. Пока сам на такое не наткнулся, даже не знал, что оно не работает.
  3. Изменения в HDDImageMaker.
    • Исправлена какая-то мелкая ошибка, не помню.

 

v3.8.1601.4873 Дата: 27.01.2016 11:37:00

BK_v3.8_i386.7z (3.4M)
BK_v3.8_i686.7z (3.4M)
BK_v3.8_src.7z (4.4M)
BK_v3.8_x64.7z (3.7M)

Изменения:

  1. Изменения в эмуляторе БК.
    • Уточнена эмуляция переключения экранов на БК11(М).
    • Уточнена пошаговая отладка. Теперь при отладочном останове приостанавливается всё исполнение фрейма, и синхронизация с остальными процессами внутри фрейма сохраняется.
    • Благодаря предыдущему пункту починена эмуляция вращения дискеты в дисководе.
    • Ещё немного улучшено взаимодействие с виртуальной клавиатурой.
    • Экспериментально добавлены элементы для почти произвольного изменения текущей тактовой частоты процессора. Их можно найти внизу панели дампа регистров.
    • Немного улучшена стабильность работы программы.
  2. Изменения в BKDE.
    • Починена поломавшаяся когда-то возможность просмотра файлов в виде спрайта.
  3. Изменения в HDDImageMaker.
    • Убрано немного говнокода.

 

v3.8.1509.4695 Дата: 20.09.2015 09:35:00

BK_v3.8_i386.7z (3.4M)
BK_v3.8_i686.7z (3.4M)
BK_v3.8_src.7z (4.4M)
BK_v3.8_x64.7z (3.7M)

Уточнение предыдущей версии.

Благодаря данным TheGWBV палитры приведены в соответствие с реальными на БК-0011М, а не как указано в документации на БК-0011. Цвета в палитрах в принципе были правильными, но немного перепутанными в палитрах 6-10

 

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

 

<<  1  2  3  ...   4  5  6  7  [8]  9  10  11  >>     Всего: 106     На странице: