Важная информация

User Tag List

Страница 11 из 18 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя
Показано с 101 по 110 из 176

Тема: Эмулятор БК-0010-01, БК-0011 и БК-0011М

  1. #101
    Master
    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    743
    Спасибо Благодарностей отдано 
    223
    Спасибо Благодарностей получено 
    40
    Поблагодарили
    39 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gid Посмотреть сообщение
    Если бы эта программка могла считать, сколько раз счётчик перешёл через 0 во время ожидания нажатия клавиши, то обнаружилось бы, что и при делителе на 16, и при 4 и даже 1, ситуация точно такая же, как и с делителем 64. И чем дольше бы работала программа, тем больше бы разницы набежало.
    Эмулятор работает чуть медленнее реальной БК. И чем дольше работает, тем больше разницы набегает.

    У меня алгоритмы такие, что там просто нету никаких задержек, которые можно было бы убрать и получить максимальную скорость. Эмулятор всегда работает на максимальной скорости. Просто нужно вручную задать такую частоту работы, которую позволяет быстродействие ПК, на котором запущен эмулятор.
    Программка рассчитана на замер не более 6 минут. Но результаты, когда использовался делитель 16 на железе были примерно такие же как в эмуляторе. Хотя БК разных сборок разнятся по скорости процентов на 10% и возможно более. Не понял про "набегающую разницу". Он со временем сам себя остановит?! Но этот эффект, если он есть, на диапазонах до часа не заметен.

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

  2. #102
    Master
    Регистрация
    19.04.2013
    Адрес
    г. Чебоксары
    Сообщений
    538
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    136
    Поблагодарили
    105 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Программка рассчитана на замер не более 6 минут.
    Это при условии, что используется делитель на 64. Если использовать делители на 16, 4 или 1, то за эти 6 минут счётчик таймера успеет несколько раз перейти через 0 и результаты будут абстрактные. Некое число, непонятно что обозначающее.
    Код:
    30 POKE&O177712,116
    Тут в регистр управления таймером записывается число &O164 - устанавливается режим делителя на 64 и биты 4 (запуск счётчика) и 2 (установка бита 7 при переходе через 0).
    Нужно иметь в виду, что в таймере глюк - при первом (после включения ЭВМ или системного сброса) запуске таймера в данном режиме индикация срабатывает только после ВТОРОГО перехода счётчика через 0, причём независимо от того, работал ли таймер до этого в
    других режимах. Этот глюк у меня в эмуляторе не реализован.
    Код:
    40 A$=INKEY$
    50 IF A$="" THEN 40
    Тут ждём нажатия на клавишу. Можно ждать любое количество времени, счётчик при этом будет циклически уменьшаться и если будет переход через 0, то будет выставлен бит 7, но при этом счётчик будет продолжать работать, он не остановится. И сколько таких переходов через 0 было при ожидании, тут никак не узнать. Разве что использовать процессор 1801ВМ1Г, там по биту 7 генерируются прерывания по вектору 0270, и там уже можно подсчитать количество переходов через 0.
    А далее в коде предполагается что был возможен всего один переход через 0 (строка 90).

    Цитата Сообщение от litwr Посмотреть сообщение
    Не понял про "набегающую разницу".
    Из-за неправильных таймингов, некоторые команды выполняются быстрее, некоторые медленнее, в целом получается примерно как в реальности, но в определённых случаях, эта разница вылазит и начинает быть заметной.

    Неоднократно уже писал, что у меня синхронизация с реальным временем делается по звуку. Звуковой буфер отправляется на звучание звуковой карте, и пока он не отзвучит, следующий буфер не отправляется, просто сама звуковая подсистема Виндовс так устроена. А эмулятор тоже ждёт, пока освободится хоть один звуковой буфер, чтобы махом его заполнить и снова ждать.
    Можно всю эту фигню отменить, и заставить работать непрерывно без ожиданий, и без звука. Но эмулятор без звука никому не нужен. Да и начнутся конкретнейшие глюки с клавиатурой, дисководом и винчестером, в общем везде, где используется цикличный опрос какого-либо бита какого-либо регистра.

  3. #103
    Master
    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    743
    Спасибо Благодарностей отдано 
    223
    Спасибо Благодарностей получено 
    40
    Поблагодарили
    39 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gid Посмотреть сообщение
    Неоднократно уже писал, что у меня синхронизация с реальным временем делается по звуку. Звуковой буфер отправляется на звучание звуковой карте, и пока он не отзвучит, следующий буфер не отправляется, просто сама звуковая подсистема Виндовс так устроена. А эмулятор тоже ждёт, пока освободится хоть один звуковой буфер, чтобы махом его заполнить и снова ждать.
    Можно всю эту фигню отменить, и заставить работать непрерывно без ожиданий, и без звука. Но эмулятор без звука никому не нужен. Да и начнутся конкретнейшие глюки с клавиатурой, дисководом и винчестером, в общем везде, где используется цикличный опрос какого-либо бита какого-либо регистра.
    Благодарю за разъяснения. Но кнопка "турбо" очень полезная вещь, которая есть практически у всех эмуляторов. Естественно, что при её нажатии звук отключается. Однако, с ее помощью можно быстренько проводить операции с дисками, кассетником, ...

  4. #104
    Veteran Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    1,996
    Спасибо Благодарностей отдано 
    1,062
    Спасибо Благодарностей получено 
    1,224
    Поблагодарили
    478 сообщений
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Про новую версию эмулятора написали на OpenNet: http://opennet.ru/opennews/art.shtml?num=54510
    Доступен новый выпуск проекта BK 3.11.2101.8545, развивающего эмулятор выпускавшихся в 80-х годах прошлого века 16-разрядных бытовых компьютеров БК-0010-01, БК-0011 и БК-0011М, совместимых по системе команд с компьютерами PDP-11, СМ ЭВМ и ДВК. Эмулятор написан на С++ и распространяется в исходных текстах. Общая лицензия на код явно не обозначена, но в отдельных файлах упоминается LGPL, а также заимствованы некоторые компоненты под LGPL. Работа поддерживается только на платформе Windows.

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

    - Добавлена начальная поддержка эмуляции музыкального блока Менестрель.
    - Из libdspl-2.0 перенесены алгоритмы фильтрации и ресемплирования.
    - Добавлена опция для управления включением коррекцией смещения DC для эмулируемых звуковых устройств.
    - Исправлена ошибка загрузки состояния эмулятора в конфигурациях с HDD.
    - Исправлена ошибка, возникающая при загрузке состояния эмулятора с частотой дискретизации звука, отличной от текущей.
    - Изменён алгоритм панорамирования для AY.
    - В выпадающее меню дискет добавлен пункт "Открыть в BKDE".

  5. Эти 4 пользователя(ей) поблагодарили nzeemin за это полезное сообщение:

    Doronetty (05.02.2021), hobot (05.02.2021), IgorR76 (04.02.2021), Oleg N. Cher (05.02.2021)

  6. #105
    Member
    Регистрация
    19.05.2011
    Адрес
    Сидней, Австралия
    Сообщений
    115
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    25 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ребята, посоветуйте наилучший эмулятор БК 0010-01 для Windows (7,10) Спасибо!

  7. #106
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от atmavan Посмотреть сообщение
    БК 0010-01
    именно 10-01? не 11(М), то есть чисто поиграть?
    http://hobot.pdp-11.ru/EMULATORS/spcbk/
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  8. #106
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  9. #107
    Master
    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    905
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    205
    Поблагодарили
    153 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Прочитал всю тему, ознакомился, так сказать, с опытом работы разных людей с эмулятором.
    Возник вопрос насчет синхронизации экрана. В БК кадровая 48 с чем-то там (ну, как на Пентагоне),
    соответственно, нормально эмулировать видеовывод проблематично. Даже конвертеры RGB-VGA спотыкаются об эту особенность,
    отказываясь воспринимать нестандартный сигнал (им нужно именно 50Гц). Было предложено решение, которое я применял
    уже давно для Спектрума, чтобы пофиксить кривые Пентагоновские 48Гц до нормальных пятидесяти.

    https://zx-pk.ru/threads/30134-izmen...-na-50gts.html

    Суть в замене кварца компа, соответственно, все частоты, включая тактовую процессора, повышаются,
    но частоты развертки также идут от кварца, поэтому синхра (эффекты в демах, если грубо) не страдают.
    К чему я веду: можно в эмуляторе сделать опцию "частот кварца" или схожую, которая будет синхронно менять
    скорость процессора и при этом "частоты разверток"? То бишь задаем нечто вроде "Framerate=50" и эмуль сам пересчитывает
    остальные параметры (скорость ВМ1, по сути). Что даст возможность нормально синхронизировать отображение экрана.
    50Гц большинство ЖК-мониторов спокойно держат, проверил на трех своих домашних - проблем нет.
    Меньше - даже 49 - уже не работают, но именно 50 нормально задаются прямо в винде.
    Идея в том, чтобы реализовать "нативные" 50Гц без разрывов изображения хотя бы в полноэкранном режиме эмулятора.
    Получится привязка кадровой БК к кадровой частоте видеокарты. Для игр и демок самое то.

    Не знаю, возьмется ли автор эмулятора за такое, да и возможно ли это физически, но обсудить стоит.

  10. #108
    Master
    Регистрация
    19.04.2013
    Адрес
    г. Чебоксары
    Сообщений
    538
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    136
    Поблагодарили
    105 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от reddie Посмотреть сообщение
    Не знаю, возьмется ли автор
    Не возьмётся. Я потратил несколько лет (не менее двух) чтобы уйти от фреймрейта 50 Гц, который был в начальных версиях эмулятора, к точному фреймрейту БК, по одной простой причине - я так и не смог реализовать точную потактовую модель процессора. (т.е. не смог сделать её достаточно быстродействующей, чтобы эмуляция была в реальном времени, а не оффлайновая.) Времянки команд в эмуляторе - приблизительные, из-за чего демки, которые привязываются к кадровому синхроимпульсу, работали некорректно.
    Сейчас - большинство работает нормально.
    Если мы вернёмся обратно к 50Гц, то вернёмся к тому, что опять все демки перестанут работать. Потому что надо не только подкорректировать частоту работы видеоконтроллера, но и корректировать время работы команд процессора. А это задача нетривиальная.

    - - - Добавлено - - -

    Но исходники эмулятора доступны всем желающим, берите, экспериментируйте.

  11. #109
    Master
    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    905
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    205
    Поблагодарили
    153 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gid Посмотреть сообщение
    демки, которые привязываются к кадровому синхроимпульсу, работали некорректно.
    Сейчас - большинство работает нормально.
    Ну, если более-менее адекватно отображается - тогда не так актуально.
    Просто все, что изложено в вашем посте (про изначальные 50Гц и проблемы с синхрой), я не знал.
    Само собой, со стороны легко советовать, как сделать, но если это уже проходилось - тогда не стоит.
    Благодарю за подробный ответ.

    Кстати. Где-то в дебрях этой темы был пост о демке Technological Dreams и ее косячной работе в эмуле.
    На ютубе нашел два варианта: Оба работают некорректно, но в разных местах глючат по-разному =)

    https://www.youtube.com/watch?v=-8OKYtjnWHk неполная (без финальной части и титров)

    https://www.youtube.com/watch?v=rlpo9wcN8kc полная версия, так понимаю.

    Существует ли "нормальный" рип с реальной БК для сравнения, как оно должно выглядеть?

  12. #110
    Master
    Регистрация
    19.04.2013
    Адрес
    г. Чебоксары
    Сообщений
    538
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    136
    Поблагодарили
    105 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от reddie Посмотреть сообщение
    тогда не стоит.
    Вообще говоря, попытки сделать 50Гц фреймрейт на железной БК были и успешные, в теме по БК-0010 где-то описывалось, что замена кварца с 12Мгц на 12 с чем-то Мгц давало частоту кадров, практически 50Гц, без рассинхрона с временем выполнения команд процессора.

    Цитата Сообщение от reddie Посмотреть сообщение
    Существует ли "нормальный" рип с реальной БК для сравнения, как оно должно выглядеть?
    Может я и ошибаюсь, но вроде бы где-то когда-то я её видел, это был то ли камрип, то ли рип с тв-тюнера, т.к. картинка была достаточно мыльная.

Страница 11 из 18 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Отличия БК-0011М от БК-0010(01)?
    от nzeemin в разделе БК-0010/0011
    Ответов: 22
    Последнее: 30.03.2021, 18:47
  2. БК-0010/0011: Разное
    от CD-Inc в разделе БК-0010/0011
    Ответов: 73
    Последнее: 30.07.2012, 16:58
  3. Начало выпуска БК-0011 и БК-0011М
    от dk_spb в разделе БК-0010/0011
    Ответов: 6
    Последнее: 14.10.2010, 14:22
  4. Отличие 0011 и 0011М
    от Kronshou в разделе БК-0010/0011
    Ответов: 11
    Последнее: 17.01.2010, 22:24
  5. Москва - куплю все связанное с БК-0010/0011
    от kt315b в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 04.10.2008, 05:09

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •