PDA

Просмотр полной версии : BKBTL



nzeemin
14.11.2009, 23:49
Результат работы за один день.
Взял UKNCBTL, переименовал в BKBTL, почикал пока флоп и звук, убрал второй процессор и второй контроллер памяти, в первом изменил реализацию обращений к памяти, объединил контроллер памяти с матерью, поставил стабы для будущей реализации нужных портов, сделал отрисовку чёрно-белого режима экрана 512 x 256.
Итого -- видим отрисованный экран монитора.

P.S. Форумный движок вложения уменьшает в размере. Линк на картинку: http://www.ljplus.ru/img4/n/z/nzeemin/BKBTL-20091115-crop.png

ZEman
15.11.2009, 08:28
здорово, клавиатура отлично смотрится.
жду с большим нетерпением первых билдов эмулятора. :)

nzeemin
15.11.2009, 23:09
Исходники, трекер и прочее:
http://code.google.com/p/bkbtl/

Подключил ПЗУ Бейсика, само по себе загрузилось.
Клавиатура пока хоть и нарисована но не работает.

http://www.ljplus.ru/img4/n/z/nzeemin/BKBTL-20091115-Basic.png

UPD 2009-11-16: Заработала клавиатура. Сделал регистр прокрутки экрана.

nzeemin
20.11.2009, 00:24
Сделал обработку клавиши СТОП, цветной режим экрана.

jerri
20.11.2009, 09:57
Когда релиз?

nzeemin
20.11.2009, 10:16
Когда релиз?

То что есть могу выложить в любой момент, но смысл?
Клавиатура недомаплена, с мафона не читает.

Doronetty
20.11.2009, 14:53
Да-а-а, тут, как говорил Товарищ Саахов, "торопиться не надо"! ;)

jerri
20.11.2009, 15:07
предложения по эмулятору примешь?

-сделать просмотр спрайтов в памяти

nzeemin
20.11.2009, 15:09
предложения по эмулятору примешь?
Открыт для критики и предложений.

Кстати, у проекта есть трекер, в который можно добавлять хотелки:
http://code.google.com/p/bkbtl/issues/list


-сделать просмотр спрайтов в памяти
С этого места подробнее, пожалуйста.

jerri
20.11.2009, 15:19
и в дизасм добавить указание на абсолютный вычисленный адрес под курсором

---------- Post added at 16:19 ---------- Previous post was at 16:10 ----------


Открыт для критики и предложений.

Кстати, у проекта есть трекер, в который можно добавлять хотелки:
http://code.google.com/p/bkbtl/issues/list


С этого места подробнее, пожалуйста.

иногда интересно посмотреть а что внутри памяти в графическом виде

обычное окно
и в него выводить память в виде картинки
с настройкой ширины - кратно 1 байту
и с настройкой - цвет\без цвета

и соответственно адрес откуда смотрим и возможность двигать все это дело клавишами, а не только таская за скроллер

в БК насколько помню особо с графикой не извращались
этого должно хватить

nzeemin
20.11.2009, 15:23
обычное окно
и в него выводить память в виде картинки
с настройкой ширины - кратно 1 байту
и с настройкой - цвет\без цвета


Мысль хорошая.
Это можно приделать к существующему MemoryView -- там где показывается содержимое памяти и оно же в виде символов -- правее от них вполне можно показать спрайт на том же объёме данных, что входит в окно.

jerri
20.11.2009, 15:26
а ширина?
спрайт может быть весьма обьемным

nzeemin
22.11.2009, 21:39
Делаю маппинг клавиатуры БК, хочу сделать смену раскладки клавиш PC в зависимости от того какая выбрана сейчас в БК - РУС/ЛАТ. Вот думаю где лежит это состояние. Судя по отладчику (встроенному в эмулятор) - меняется верхний бит по адресу 000042, а именно, 100000 - РУС, 000000 - ЛАТ. Можно на это полагаться или есть другие способы определить режим?

nzeemin
22.11.2009, 22:50
Во вложении -- первая бета.
Пока в общем-то ничего особенного, загрузки с кассеты нет.

Клавиатуру размапил, но конечно далеко не идеально.
Shift переключает регистр;
АР2 = Ctrl;
Ins = ВС; Tab = ТАБ;
РУС = End; ЛАТ = Home

Две конфигурации -- Бейсик и Фокал, переключаются через меню в остановленном эмуляторе.
Отладчик работает так же как в UKNCBTL.

nzeemin
22.11.2009, 23:53
А синхронизировать горение лампочки на РС клавиатуре при нажатиях на CapsLock с виртуальной и обычной клавиатур, включая неожиданную смену режима из любой другой программы в фоне, будешь? А то такой семафор получается...
Да в общем-то не вижу в такой синхронизации большой пользы. На экране БК режим отображается -- думаю что этого вполне достаточно.

jerri
23.11.2009, 14:59
А экран не слишком сильно сплющен?

---------- Post added at 15:59 ---------- Previous post was at 15:58 ----------

чтото както хоть игру какуюнить в сборку включил бы :)
а то не очень явно все :)

nzeemin
23.11.2009, 15:09
А экран не слишком сильно сплющен?
View | Double Height

чтото както хоть игру какуюнить в сборку включил бы :)
а то не очень явно все :)
А загружать через которо место?

jerri
23.11.2009, 16:56
через снапшот :)

---------- Post added at 17:56 ---------- Previous post was at 17:51 ----------

спасибо - высота теперь получше :)
а дебаггер вообще работает?
а то чота както функций у него маловато

nzeemin
23.11.2009, 20:33
а дебаггер вообще работает?
а то чота както функций у него маловато
Работает. Можно выполнять запуск до заданной точки останова, дизассемблировать фрагмент с любого места, смотреть/изменять память и регистры.
Каких конкретно функций не хватает?

jerri
24.11.2009, 10:46
Работает. Можно выполнять запуск до заданной точки останова, дизассемблировать фрагмент с любого места, смотреть/изменять память и регистры.
Каких конкретно функций не хватает?

1 Бряк пойнты как ставить?
2 когда трассируешь программу по F8 (зажимаешь и держишь)
не освежаются регистры и стек а желательно кабы
3 когда подключаешь дебаггер часть надписей по регистрам остается за экраном - так задумано?

nzeemin
24.11.2009, 11:17
1 Бряк пойнты как ставить?
2 когда трассируешь программу по F8 (зажимаешь и держишь)
не освежаются регистры и стек а желательно кабы
3 когда подключаешь дебаггер часть надписей по регистрам остается за экраном - так задумано?


Console command list:
c Clear console log
dXXXXXX Disassemble from address XXXXXX
g Go; free run
gXXXXXX Go; run processor until breakpoint at address XXXXXX
m Memory dump at current address
mXXXXXX Memory dump at address XXXXXX
mrN Memory dump at address from register N; N=0..7
r Show register values
rN Show value of register N; N=0..7,ps
rN XXXXXX Set register N to value XXXXXX; N=0..7,ps
s Step; executes one instruction (F8)
u Save memory dump to file memdumpXPU.bin

Соответственно, поставить точку останова на адрес 110426 и добежать до неё -- g110426 в отладочной консоли.

По F8 всё корректно обновляется, не вижу никаких проблем. Даже если зажимать и держать -- это получается серия шагов, регистры и память обновляется после каждого.

Надписи в отладочном режиме (например, значения портов) могут не входить -- на низких разрешениях экрана.

jerri
24.11.2009, 11:31
эээ а какое разрешение экрана считается низким? у меня 1280 на 1024

консольный дебуггер?.... блин я привык к Гуевым
по поводу просмоторщика спрайтов так как? будет?
F8 видимо не успевает обновить на моей машине - скорость низкая

nzeemin
24.11.2009, 11:58
эээ а какое разрешение экрана считается низким? у меня 1280 на 1024
консольный дебуггер?.... блин я привык к Гуевым
по поводу просмоторщика спрайтов так как? будет?

У меня 1680 x 1050 8-) Подумаю как поджать для других разрешений.
Сделаю и гуёвый отладчик -- постепенно.
Спрайты будут.

Ещё не так давно этот отладчик выглядел куда скромнее:
http://www.felixl.com/images/5/5e/Uknc_progress.png

---------- Post added at 12:42 ---------- Previous post was at 12:39 ----------

Плюс надеюсь скоро субтитры прикрутить:
http://zx.pk.ru/showpost.php?p=234146&postcount=109

---------- Post added at 12:58 ---------- Previous post was at 12:42 ----------

Понравилась идея, надо будет реализовать подобное у себя:
http://zx.pk.ru/showthread.php?t=10818
-- показ памяти в виде квадрата 256x256 с зумом.

jerri
24.11.2009, 13:42
Визуальный анализатор памяти конечно рулит
там кстати я заметил один из режимов - просмотр спрайтов в памяти
и просмотр тайлов - хотя это конечно сугубо коммодорская примочка

а что насчет кнопки СУ? :)

nzeemin
24.11.2009, 17:06
Почти как у Малевича.
"Загрузился Бейсик". Монументальное полотно.

jerri
24.11.2009, 17:12
када можно пощупать будет? :)

nzeemin
24.11.2009, 20:23
када можно пощупать будет? :)

Ну если так не терпится -- щупайте: View | Memory Map
Динамизма конечно не сделал -- обновляется при останове.
Зума тоже пока нет 8-(

nzeemin
24.11.2009, 21:13
В этой бете ещё клавиатура PC размаплена под текущий язык в БК.

jerri
24.11.2009, 21:17
нормуль!

jerri
25.11.2009, 09:54
Console command list:
c Clear console log
dXXXXXX Disassemble from address XXXXXX
g Go; free run
gXXXXXX Go; run processor until breakpoint at address XXXXXX
m Memory dump at current address
mXXXXXX Memory dump at address XXXXXX
mrN Memory dump at address from register N; N=0..7
r Show register values
rN Show value of register N; N=0..7,ps
rN XXXXXX Set register N to value XXXXXX; N=0..7,ps
s Step; executes one instruction (F8)
u Save memory dump to file memdumpXPU.bin

а вот бы еще команду такую
LXXXXX,filename загрузить по адресу ХХХХХ ранее записаный дамп

nzeemin
28.11.2009, 16:08
Удалось наладить загрузку с магнитофона -- она была почти готова в UKNCBTL, не хватало мелочей.
Образы для загрузки брал отсюда: http://pdp-11.ru/mybk/WAV/

Для загрузки из WAV:
1. включаем блок магнитофона (View | Tape)
2. загружаемся в Бейсик
3. переходим в Монитор -- вводим MO<ввод>
4. даём команду загрузки: M<ввод>
5. на запрос имени файла вводим имя и <ввод>
6. в блоке Tape эмулятора нажимаем Open WAV и нажимаем Play
7. Ждём -- после окончания загрузки либо программа запустится сама либо появится приглашение Монитора

Работают конечно далеко не все программы. Чаще всего грузится, но не работает.
У меня загрузился и запустился Antix 8-)

nzeemin
28.11.2009, 16:11
В этой версии также добавлено окошко просмотра памяти -- View | Memory Map.

ZEman
28.11.2009, 16:28
а будет ли добавлена возможность открывать bin файлы ?
90% (если не больше) софта и игр для эмуляторов бк находятся именно в bin.

nzeemin
28.11.2009, 16:31
а будет ли добавлена возможность открывать bin файлы ?
90% (если не больше) софта и игр для эмуляторов бк находятся именно в bin.

Я так понимаю, именно для этого вы просили команду L в отладчике.
Думаю сделать File | Load BIN -- а там диалог выбора файла и указание адреса загрузки -- устроит?

Правильно я понимаю, что загрузка BIN в основном происходит с адреса 1000?

ZEman
28.11.2009, 16:40
канеш устроит :)
незнаю тока насчёт адресов загрузки.
во всех эмуляторах БК, bin файлы открываются так:

набрать mon
нажать enter
набрать m
два раза нажать enter
выбрать файл

если не произошло автоматического запуска игры попробуйте набрать start или S и нажать enter

nzeemin
28.11.2009, 18:11
канеш устроит :)
незнаю тока насчёт адресов загрузки.

Понял я похоже. Не всё так линейно.
BIN-файл это образ того что записывается на ленту. Поэтому кроме чисто данных там есть ещё заголовок, с именем файла, адресом загрузки и адресом старта.

ZEman
28.11.2009, 18:35
кстати, хоть запускаются так игры через bin файлы, но также имеются ещё и дополнительные файлы (различные дозагрузки, блоки, данные и.т.д.)
в других эмуляторах всё это автоматически подгружается само.

вот, может пригодится, выкладываю полный архив файлов для БК.
в архиве games находятся игры (преимущественно BIN файлы)
в архиве IMG находятся образы дисков для БК (предупреждение ! имеются диски для БК 011).

ссылочка http://depositfiles.com/files/cpoqavghs

nzeemin
28.11.2009, 19:40
В общем, насколько я увидел -- большое количество BIN-файлов это есть 4-байтный заголовок (адрес куда грузить, сколько грузить) + сами данные. Соответственно, сделал загрузку таких BIN-файлов -- команда File > Load BIN.

Таймер пока не работает, скорость к реальному времени не привязана, тактировка тоже какая уж есть.

http://bkbtl.googlecode.com/files/BKBTL-beta4.zip

ZEman
29.11.2009, 07:56
чтото ничего не получается загрузить.
набираю mon, enter, m, enter.
через диалог File | load bin - открываю файл.
эмулятор виснет, только сброс нажимать

nzeemin
29.11.2009, 11:36
чтото ничего не получается загрузить.
набираю mon, enter, m, enter.
через диалог File | load bin - открываю файл.
эмулятор виснет, только сброс нажимать

Делай так: MO<ввод> -- появится приглашение Монитора. Сразу делай Load BIN. После загрузки нажми любую клавишу.

[bETA]mEN
29.11.2009, 12:07
Делай так: MO<ввод> -- появится приглашение Монитора. Сразу делай Load BIN. После загрузки нажми любую клавишу.
Есть несколько игр, которые таким образом запускаются (Antix, Zoom). Но в большинстве случаев эмулятор: а) зависает б) ничего не происходит.

jerri
29.11.2009, 12:23
эээ
не так
MO - выходишь в монитор
грузишь бин
s1000 - ну или там какой адрес запуска ;)

запустился :)
но с клавиатурой чтото не так
должно быть - нажал - персонаж двигается или прыгает
отпустил - не прыгает - а здесь нажал и все :) он бежит пока не упрется

nzeemin
29.11.2009, 12:28
Клавиатуру буду ещё проверять -- отпускание клавиш делал но не проверял по цепочке.

Скажите, а на каких играх можно проверить палитры цветного режима?

jerri
29.11.2009, 12:34
глюк с клавой - только при обработке нажатия ПЦ клавы
с экранной клавой - все ок

бк0010 не имеет палитр :( а по 0011 не подскажу

---------- Post added at 13:34 ---------- Previous post was at 13:30 ----------

только если демки

nzeemin
29.11.2009, 13:54
Ошибку с PC-клавиатурой исправил -- отжатия работают.
Поставил задержки до скорости примерно в 50 фреймов в секунду -- по идее, это примерно в 2 раза выше чем реальный БК, но уже можно хоть как-то играть.

Дефолтовой конфигурацией установлена конфигурация без Бейсика и Фокала -- только Монитор. Нажимаем СТОП, выбираем Load BIN, затем обычно S 1000<ввод>.

ZEman
29.11.2009, 14:22
интересно.
запустилось ещё коечто:

ABORIG.bin - играется, но потом игрушку начинает жестоко глючить, человечек сам носится по лабиринту.

AIRWOLF.bin - бесконечно повторяющаюся заставка.

BOLDER.bin - бесконечно повторяющаюся заставка.

DIGGER.bin - полностью работоспособная игрушка :)

большинство остальных игр просто зависают.

nzeemin
29.11.2009, 21:05
Да, примерно 1/4 из всех игр работают, если не меньше.
В некоторых играх очень плохо воспринимает клавиатуру.
Будем работать над ошибками.

nzeemin
01.12.2009, 23:04
Вроде как сделал звук. Отключаемый.

http://bkbtl.googlecode.com/files/BKBTL-beta6.zip

nzeemin
03.12.2009, 15:08
Выписал порты БК, буду уточнять по мере написания эмулятора.

http://code.google.com/p/bkbtl/wiki/Ports

nzeemin
05.12.2009, 20:06
Сделал в эмуляторе УКНЦ и сразу перенёс в эмулятор БК -- "субтитры".
Суть в том, что готовится текстовый файл, похожий на ассемблерный. Этот файл можно подгрузить в окне дизассемблера, чтобы показывать комментарии и помогать с разбором в случае когда встречаются данные а не код. В результате бродить с отладчиком -- проще в разы.

Остается взять исходники ПЗУ БК (они тут есть на форуме) и проставить реальные адреса. Фрагмент скриншота в аттаче -- прописал адреса в начальной области ПЗУ Монитора.

Добавил в аттач пример файла субтитров.

SKcorp.
05.12.2009, 21:35
Клавиатуру буду ещё проверять -- отпускание клавиш делал но не проверял по цепочке.

Скажите, а на каких играх можно проверить палитры цветного режима?

А не проще отрыть прогу MSTD11 - это та же программа, что и зашита в блок МСТД БК0011М.
Там есть тест и палитр и вроде таймера, не говоря уже о клавиатуре.

Кошерным эмуль будет считаться тогда, когда там пойдет моя CAT MEGADEMO, ибо даже на глючных аппаратных БК-шках она не везде идет.
Ибо там использвано быстрая смена экрана, таймер, Ковокс, смена экрана+прокрутка, палитры.

jerri
05.12.2009, 23:04
SKcorp., а ты писал для 0010?

rasmer
05.12.2009, 23:23
ты наверное как и ЧРВ с SWsoft спутал...

SKcorp.
06.12.2009, 00:47
SKcorp., а ты писал для 0010?

Для 0010-01 КУВТ-шную операционку.

b2m
06.12.2009, 14:51
Кошерным эмуль будет считаться тогда, когда там пойдет моя CAT MEGADEMO, ибо даже на глючных аппаратных БК-шках она не везде идет.
Гы, буду считать свой эмуль кошерным :v2_lol:

jerri
16.12.2009, 12:21
nzeemin, Джойстик сделаешь на цифровых клавишах?

nzeemin
16.12.2009, 12:37
nzeemin, Джойстик сделаешь на цифровых клавишах?

Джойстик на нумпаде сделал. Covox на порту 177714 сделал.
Улучшил реализацию таймера -- программа из книжки Донского уже работает правильно, но есть ещё незаконченные мелочи.
Код флопповода от UKNCBTL подключил, но нужно ещё отлаживать -- есть различия в работе портов 177130, 177132 в БК и УКНЦ.
Сейчас работаю над ИРПС на портах 177560..0177566 -- на форуме БК появились какие-то тесты ВМ1, выдающие туда диагностику -- пытаюсь их запустить.

http://code.google.com/p/bkbtl/updates/list -- тут можно отслеживать коммиты

Alex_K
16.12.2009, 13:20
Код флопповода от UKNCBTL подключил, но нужно ещё отлаживать -- есть различия в работе портов 177130, 177132 в БК и УКНЦ.
А различие будет только в порте 177130 по записи в разрядах 00, 01, 02, 03 и 10.
В УКНЦ номер привода выбирается разрядами 00 и 01 при установленном 10, а разрядами 02 и 03 выбирается схема прекоррекции (для эмулятора это не важно). В БК в классическом контроллере для БК-0011М номер привода выбирается разрядами 00 и 01 (поддерживаются только два привода), а схема прекоррекции включается 10-м разрядом, разряды 02 и 03 не используются.
В итоге для УКНЦ:
10 01 00
1 1 1 Выбран привод 0
1 1 0 Выбран привод 1
1 0 1 Выбран привод 2
1 0 0 Выбран привод 3
0 х х Не выбран ни один привод

Для БК-0011М (классический контроллер):
01 00
0 0 Не выбран ни один привод
0 1 Выбран привод 0
1 0 Выбран привод 1
1 1 Не выбран ни один привод

Были переделанные схемы, где комбинацией 1 1 выбирался привод 2, а разрядами 02 и 03 подключались или переключались банки дополнительной памяти.

Doronetty
16.12.2009, 13:21
А джойстик на джойстике (имеется в виду БК на PC-джойстике/геймпаде) будет? ;)

jerri
16.12.2009, 13:25
Break House запускал?
там почему то не задается нормально управление
можешь посмотреть почему?

nzeemin
16.12.2009, 13:29
А джойстик на джойстике (имеется в виду БК на PC-джойстике/геймпаде) будет? ;)

Тут две проблемы:
1. У меня нет PC-джойстика. Есть DualShock от PS2, собираюсь прикупить к нему USB-переходник.
2. Пока не знаю через какой API использовать джойстик. На DirectX завязываться не хочется. В планах изучение Qt и перевод интерфейса под него -- там есть API. Но это пока дальняя перспектива.

Doronetty
16.12.2009, 13:53
Тут две проблемы:
1. У меня нет PC-джойстика. Есть DualShock от PS2, собираюсь прикупить к нему USB-переходник.
Зачот - у меня такой же (с переходником!) Надеюсь, удасться подружить его с эмулятором ;)

jerri
16.12.2009, 14:15
Тут две проблемы:
1. У меня нет PC-джойстика. Есть DualShock от PS2, собираюсь прикупить к нему USB-переходник.


можешь посмотреть почему управление не задается в игре?
опция PUSH
не задается ни клавиатура ни джойстик

nzeemin
16.12.2009, 14:24
можешь посмотреть почему управление не задается в игре?
опция PUSH
не задается ни клавиатура ни джойстик

Как будет время -- постараюсь посмотреть, но обещать не могу.

nzeemin
20.12.2009, 22:10
http://bkbtl.googlecode.com/files/BKBTL-beta7.zip

- ПЗУшки переименованы в .rom чтобы не путать с .bin
- Субтитры в окне Disassemble
- Джойстик на NumPad
- Covox
- Программируемый таймер (пока неполная эмуляция)
- Debug > Memory Map -- карта теперь живая
- Ряд исправлений в деталях эмуляции процессора и других устройств (тест 791401 пройден)
- Команда отладчика Step Over
- Запись на ленту (в WAV-файл)

jerri
12.01.2010, 15:56
C праздниками!
когда будет обновление? :)

Doronetty
12.01.2010, 21:35
Или хотя бы новости по изменениям и дополнениям на сайте, а то судя по последним датам работа была приостановлена :|

nzeemin
22.01.2010, 16:09
Или хотя бы новости по изменениям и дополнениям на сайте, а то судя по последним датам работа была приостановлена :|

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

jerri
22.01.2010, 16:11
реал да требует иногда внимания

svofski
09.05.2010, 22:47
Маленький вредный вопрос: как в BKBTL ввести символ равенства? У меня не получилось ни с клавиатуры, ни с помощью экранной клавиатуры. И, кстати, есть ли способ вводить с экранной клавиатуры комбинации клавиш?

nzeemin
12.05.2010, 21:45
http://img-fotki.yandex.ru/get/4210/nzeemin.3/0_3ed81_869161b3_L.jpg (http://fotki.yandex.ru/users/nzeemin/view/257409/)

Не удержался -- начал переносить отладочные окна в Qt:
http://img-fotki.yandex.ru/get/4310/nzeemin.3/0_3ee64_d9f7013b_L.jpg (http://fotki.yandex.ru/users/nzeemin/view/257636/)

nzeemin
16.05.2010, 15:38
Маленький вредный вопрос: как в BKBTL ввести символ равенства? У меня не получилось ни с клавиатуры, ни с помощью экранной клавиатуры. И, кстати, есть ли способ вводить с экранной клавиатуры комбинации клавиш?

Да, есть такая проблема -- для виртуальной клавиатуры не учитывались нажатия Shift. Сделал в QtBkBtl, будет со следующим релизом.

svofski
16.05.2010, 22:37
Спасибо!

Еще неочевидная фича — когда размер буфера командного окна отладчика доходит до какого-то порогового значения, это окно просто перестает обновляться. Это, наверное, довольно много строк, но все же.

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

nzeemin
16.05.2010, 22:55
И, может быть как раз в процессе кьютизации, как-то попонятней бы сделать с переносом фокуса между подокнами отладчика. Сейчас положение фокуса ввода никак не обозначено и приходится совершать много лишних кликов.

Думаю примерно так сделать: фокус может быть только у экрана (клавиши PC-клавы как клавиши БК) либо в окне отладочной консоли. Переключение между ними двумя -- по клавише Escape. Кроме того, как-то обозначить наличие фокуса у экрана. Для всех остальных окон команды вызывать из контекстного меню по правой кнопке мыши.

Сейчас в Qt-версии заработали основные отладочные окна, причём они все dockable, команды Step Into / Step Over, несколько команд консоли. Но есть некоторый регресс -- не загружается Фокал, пока не нашёл почему.

svofski
17.05.2010, 00:39
Я бы подумал о какой-нибудь другой клавише. На esc слишком много софта последнее время стало реагировать психовано и я ее теперь вообще боюсь нажимать ;)

nzeemin
17.05.2010, 19:46
Сейчас в Qt-версии заработали основные отладочные окна, причём они все dockable, команды Step Into / Step Over, несколько команд консоли. Но есть некоторый регресс -- не загружается Фокал, пока не нашёл почему.

Ну вот, при помощи отладочных окошек ошибку нашёл на раз.
Оказалось, что сто лет лежавший у нас закомментированный код CheckSubForOverflow рядом с ассемблерными вставками, который я стал использовать только для Qt-версии -- содержит ошибки.

nzeemin
18.05.2010, 07:50
Первая бета под Qt.

http://code.google.com/p/bkbtl/downloads/detail?name=QtBkBtl-beta8-windows.zip

Версии для других систем будут чуть позже.

UPD:
http://bkbtl.googlecode.com/files/QtBkBtl-beta8-linux.tar.gz
Собрано на ядре 2.6.15.
Проверял под Ubuntu 10.04 Desktop и Ubuntu 10.04 Netbook Edition -- работает.

ZEman
18.05.2010, 10:39
отлично смотрится, красиво, удобно.
жаль что без звука.

nzeemin
18.05.2010, 22:50
http://bkbtl.googlecode.com/files/QtBkBtl-beta8-macosx.zip
Скачать, разархивировать, запустить.
Обратите внимание -- файлы ромов должны лежать рядом с .app, если перемещаете куда-то -- несите их вместе. В будущих версиях постараюсь внедрить образы пзу внутрь бандла.

http://img-fotki.yandex.ru/get/4300/nzeemin.3/0_3f054_99d8d300_XL.jpg

---------- Post added at 22:50 ---------- Previous post was at 22:40 ----------


отлично смотрится, красиво, удобно.
жаль что без звука.
Буду изучать Phonon, однако...

[bETA]mEN
18.05.2010, 23:36
мелочь конечно, но может нужно сделать меню About более осмысленной :)

svofski
19.05.2010, 05:01
У меня не запускался, пока я не сделал chmod +x QtBkBtl внутри бандла.

Еще я вышел в монитор, нажал M, Enter и все. Кнопка СТОП с экранной клавиатуры не работала. L СТОП-ом прерывается.

---------- Post added at 05:01 ---------- Previous post was at 04:58 ----------

Еще по-моему дебужные команды не очень работают.

nzeemin
26.05.2010, 22:43
Сделал несколько исправлений в управлении памятью.
В результате в первый раз загрузился в монитор БК-0011М:

http://img-fotki.yandex.ru/get/4301/nzeemin.3/0_3f7d4_91fac866_XL.jpg

Но флопповод пока толком не работает, с дискет ещё грузиться не могем.

svofski
02.06.2010, 12:59
nzeemin, я поковырял немного таймер на реале (БК-0010) и выяснил пару неочевидных для меня моментов. У меня заработал King's Valley и еще много чего. Записал все свои открытия тут (http://code.google.com/p/bk0010/wiki/Timer).

nzeemin
24.07.2010, 22:29
Добавил в BKBTL поддержку джойстика, используя стандартную виндовую библиотеку winmm (Windows Multimedia).
По идее, всё что в винде считается джойстиком, теперь можно заюзать в эмуляторе. (Лично я использую DualShock II через переходник на USB.)

Но есть одна проблема. Производителей джойстиков для БК было много. Все они подключали свои творения к порту ввода-вывода (т.е. к порту принтера), но все по-разному трактовали битики порта. Один из по-видимому наиболее распространённых вариантов реализован в эмуляторе Юрия Калмыкова (Александр Тишин говорил что это распайка от SWCorp.):

бит 0 -- кнопка 1
бит 1 -- кнопка 2
бит 2 -- кнопка 3
бит 3 -- кнопка 4
бит 4 -- вправо
бит 5 -- вниз
бит 9 -- влево
бит 10 -- вверх

Но есть например вариант используемый в игрушке "Break House": там влево - бит 4, вправо - бит 6.
Есть игры в которых можно задать любой джойстик через меню. В других играх при этом задаются только действия из битов 0-7, поэтому джойстик от SWCorp идёт лесом.
Придётся теперь ещё настройку делать -- куда какие битики джойстика идут. Пока реализована распайка Break House -- в играх выбираем "Нестандартный джойстик" и задаём управление.

В общем, выкладываю бету-9, целиком состоящую из недоделок: недоделаны конфигурации БК11М, недоделана загрузка с флоппи, недоделана поддержка джойстика.
http://code.google.com/p/bkbtl/downloads/detail?name=BKBTL-beta9.zip

nzeemin
18.11.2010, 11:00
На случай если кто-то следит за этой веткой, но не увидел треда по SDL BKBTL -- ссылка:
http://zx.pk.ru/showthread.php?t=13839

ZEman
18.11.2010, 11:13
эта sdl версия только для динго ?
или же будет работать на виндовсе ?

nzeemin
18.11.2010, 11:27
эта sdl версия только для динго ?
или же будет работать на виндовсе ?

Конечно она уже успешно работает под Windows -- вы думаете я на Dingoo её отлаживаю и скриншоты делаю? Ну и как только будет нечто более-менее рабочее, её можно будет пересобрать под другие устройства: например, PheeL выражал желание собрать версии под GP2X Wiz и Caanoo. SDL много где есть.

PheeL
18.11.2010, 14:22
Ну и как только будет нечто более-менее рабочее, её можно будет пересобрать под другие устройства: например, PheeL выражал желание собрать версии под GP2X Wiz и Caanoo. SDL много где есть.
Соберу я, соберу ) Всё будет супер.

nzeemin
18.06.2011, 19:29
http://bkbtl.googlecode.com/files/BKBTL-beta13.zip

Вместо двойного по высоте экрана добавлен "полуторный" 512 x 384
Конфигурации БК-0011М более-менее заработали
Дисковод в конфигурации БК-0011М более-менее заработал тоже

ZEman
18.06.2011, 20:31
проклятье !
как в эмуляторе, в режиме БК 011М с дисководом, можно загрузить игры на img образах ?
пытаюсь загрузить dizzy но чёто ничего выходит.

какие там команды использовались ?

nzeemin
18.06.2011, 20:58
какие там команды использовались ?

Если речь про монитор БК-11М, то в нём обычно "B" для загрузки с диска.
Вообще по идее там загрузка должна стартовать автоматом, но в моём эмуляторе для этого ещё какой-то логики нехватает 8-(

ZEman
18.06.2011, 21:11
спасибо, работает :)
хотя я рановато обрадовался, загрузился андос, потом появилась заставка с музычкой.
нажимаю клавишу....
и всё, Dizzy намертво виснет.

и в БК0010.01 игра Air wolf тоже виснет после заставки :(

Doronetty
19.06.2011, 14:53
Очень рад, что релиз наконец-таки состоялся, а то уж больно долго никаких новостей не было!
То, что некоторые позиции сыроваты - переживём, главное, чтобы автор продолжал работу над проектом и радовал нас своими успехами в эмуляции!

2Nzeemin: Очень бы хотелось попросить, когда дойдёт дело до реализации AY, воспользоваться самыми удачными Спектрумовскими наработками (взять те же исходники Unreal'а) - там люди уже в этом вопросе столько собак съели, что стали почти чистокровными корейцами ;) У AY куча недокументированных всякоразных фич, без которых IHMO (да-да, они почти не используются даже в демках, но всё же...) эмуляция не будет выглядеть достойно.

nzeemin
23.05.2013, 10:35
Вчера потратил бОльшую часть вечера на простую в общем-то вещь:

http://img-fotki.yandex.ru/get/9172/7448436.8/0_7e367_8b025fc8_L.png

Теперь для команд переходов показывается куда собственно происходит переход.

nzeemin
18.11.2013, 01:11
http://bkbtl.googlecode.com/files/BKBTL-207.zip


BKBTL: MemoryView tuning.
BKBTL: Debug toolbar in DebugView.
BKBTL: Free MainWindow resize, save/restore window position.
BKBTL: Version.tpl -> Version.h.
BKBTL: DisasmView draw jumps FIX; MainWindow minor fixes; FakeTape WriteFile.
BKBTL: DisasmView draw jumps.
Processor IRQ1 fix; Emulator minor changes.
emubase: CPU timer fix;
BKBTL: catching EMT36 tape file loading, finding/asking for file, loading.
BKBTL: DebugView fix.
BKBTL: ConsoleView sync with UKNCBTL.
BKBTL: DebugLogClear(), HALT interrupt vector fix.
BKBTL: Settings now in .INI file.
BKBTL: emubase/Board.cpp: pre-fill RAM with "uninitialized" values.
BKBTL: move Debug|Step from F8 to F11.
BKBTL: emubase fixes, keyboard mapping fixes.
BKBTL: DebugView fixes.
BKBTL: processor timer tuning.
BKBTL: toolbar tuning, DebugView changes.
BKBTL: debug views focus rect.
BKBTL: screenshot commands.
BKBTL: save screenshot as PNG or BMP; util/BitmapFile.h&.cpp.
BKBTL: Settings dialog with volume control.

hobot
18.11.2013, 01:29
http://securityresponse.symantec.com/security_response/writeup.jsp?docid=2009-090107-2618-99&vid=24013

nzeemin, у меня ещё до запуска такую вот штуку рисует,


может быть у вас на машинке есть что такое? Ругается то на EXE-шник
причем сразу при извлечении из архива (ещё до запуска отправляет в карантин). Ничего не утверждаю, нюанс в том, что сканер при сканировании архива ничего не кажет? (

breeze
18.11.2013, 01:33
nzeemin, у меня ещё до запуска такую вот штуку рисует…

Уверен, что это заскок именно симантека, ни один антивирус больше подозрительного ничего не нашел!

https://www.virustotal.com/ru/file/ef6d6bcfed2edb88b31ad58eb5bd270327de0721d0be014051 ebfa174eb1bebd/analysis/1384723933/

p.s. впрочем автор может попробовать как-то изменить код, что бы симантек не читал похожую сигнатуру Suspicious.Cloud

hobot
18.11.2013, 01:35
Уверен, что это заскок именно симантека
Что же ему не нравится? Предыдущий exe-ник такой реакции не вызывает (

breeze
18.11.2013, 01:37
Предыдущий exe-ник такой реакции не вызывает (

Ну код поменялся, сигнатура совпала, если опосаетесь запускать подождите, что ответит автор.

hobot
18.11.2013, 01:40
если опосаетесь запускать подождите
был уже случай с эмулятором ДВК, помогла только тонкая настройка антивируса, иначе он (антивирус) файл PDP.EXE автоматом стирал и всё ! )))
Вот сейчас всё в точности так выглядит, то есть сразу после распаковки окно(см.скрин выше) и в папке эмулятора никакого exe - конечно нет! Не видать мне обновлённую виртуальную БКашечку что-ли ? (


----------ДОБАВИЛ !!!
Это я к тому пишу, что я не боюсь запускать, а не могу запустить ( EXE-шка то улетает автоматом в карантин (

ZEman
18.11.2013, 12:54
у меня Avira не ругается на файл, никаких вирусов нету.

nzeemin, спасибо за новую версию, уже и не думал увидеть продолжения :)

Titus
18.11.2013, 13:27
Единственное, не понятно, зачем аннотации изменений на английском, если пользователь в 99% случаях отечественный.

nzeemin
18.11.2013, 14:38
hobot, сорри за срабатывание, но сделать новую версию быстро не смогу -- в ноуте завыл вентилятор, придётся заняться.


nzeemin, спасибо за новую версию, уже и не думал увидеть продолжения :)
В этом году много отвлекающих факторов -- крайне тяжёлый проект на работе, переезд в другой город и прочее.
Сам был сильно удивлён когда увидел как давно вышла предыдущая версия.


Единственное, не понятно, зачем аннотации изменений на английском, если пользователь в 99% случаях отечественный.
Старая привычка, большинство заказчиков были западные, на работе английский тоже много используется.

Doronetty
18.11.2013, 15:33
Ура! Наконец-то свежий релиз! Проект жив - а это лучший подарок!!!

Titus
18.11.2013, 15:41
Еще бы Немигу допилить. Хотя бы чтобы игрушки запускались)

breeze
18.11.2013, 15:46
Это я к тому пишу, что я не боюсь запускать, а не могу запустить

Ну так добавь в исключения целую папку где находятся эмуляторы. А то были случаи когда в спектрумовских TRD внезапно находились «вирусы» :D

Кроме того Suspicious — переводится, как подозрительный, а не как вирус 100%


у меня Avira не ругается на файл, никаких вирусов нету.

И не только Avira, я уже кидал ссылку на проверку архива на VirusTotal (https://www.virustotal.com/ru/file/ef6d6bcfed2edb88b31ad58eb5bd270327de0721d0be014051 ebfa174eb1bebd/analysis/1384723933/).

ZEman
18.11.2013, 18:17
Еще бы Немигу допилить. Хотя бы чтобы игрушки запускались)

хотелось бы чтоб ещё также UKNCbtl и эмулятор ДВК обновились, это было бы замечательно.
а то давно что-то затишье стоит на эмуляции советских компов, даже emu давно не обновлялся. :(

Patron
18.11.2013, 18:35
хотелось бы чтоб ещё также UKNCbtl и эмулятор ДВК обновилисьЕсли очень хочется новый эмулятор ДВК - можно скачать ЗДЕСЬ (http://zx.pk.ru/showthread.php?p=645280#post645280) новый релиз эмулятора VT52, скопировать файл VT52.exe в каталог эмулятора ДВК и переименовать его там в pdp11.exe ( исполнимые файлы этих эмуляторов пока отличаются только названием ).

hobot
18.11.2013, 22:29
Если очень хочется новый эмулятор ДВК - можно скачать ЗДЕСЬ (http://zx.pk.ru/showthread.php?p=645280#post645280)
Или по ссылкам на главной мордочке архива там я уже всё переименовал-обновил от 18 ноября там EXE-шники )



хотелось бы чтоб ещё также UKNCbtl
Последний UKNCBTL отлично работает в плане функционала, даже не
знаю, что там ещё допиливать - улучшать? ) Хотя, если покапризничать,
можно и там придраться к чему то )



Ну так добавь в исключения целую папку где находятся эмуляторы
Буду настраивать - если получится отпишусь.



Проект жив - а это лучший подарок!!!
Полностью согласен )



hobot, сорри за срабатывание, но сделать новую версию быстро не смогу -- в ноуте завыл вентилятор, придётся заняться.

Никита, отнеситесь к посту со скрином срабатывания от Symantec, как к
баг-репорту. То есть не я же один Симантеком пользуюсь, важно, что бы
вы как автор владели информацией.


у меня Avira не ругается на файл, никаких вирусов нету.



И не только Avira, я уже кидал ссылку на проверку архива на VirusTotal.

Я писал выше, повторюсь, тот же самый Симантек, если архив не распаковывать, просто запустить сканер, на уровне сканера тоже
ничего не находит, а вот стоит распаковать и БУМ! EXE-шка автоматом
улетает в карантин.

И так свежий BKBTL по прежнему тут (http://zx.pk.ru/showpost.php?p=645064&postcount=96) ! )

nzeemin
18.11.2013, 23:16
Никита, отнеситесь к посту со скрином срабатывания от Symantec, как к баг-репорту. То есть не я же один Симантеком пользуюсь, важно, что бы вы как автор владели информацией.


Попробовал внести небольшую правку, пересобрал -- всё равно ругается, и тоже только Symantec.
Задумалсо...

breeze
19.11.2013, 00:23
Задумалсо...

Я тут почитал про этот «Suspicious.Cloud» немного, вообщем это не по сигнатуре проверяется. Это чисто технология симантека и они анализируют поведение файла, как-то запись в реестр, подозрительное поведение с жестким диском итд. Может симантеку не нравится, что при первом запуске создаётся файл BKBTL.ini ? Какие вообще новые действия появились по сравнению с предыдущей версией?

hobot
19.11.2013, 01:09
Может симантеку не нравится, что при первом запуске создаётся файл BKBTL.ini ?
Он реагирует когда файл BKBTL.EXE последней сборки из архива перемещается в NTFS папку в несжатом виде, ни о каком запуске речи не идёт !!! Он (Симантек) сразу отправляет его в карантин, нет возможности запуска ))) Третий раз уже уточняю этот момент !



Попробовал внести небольшую правку, пересобрал -- всё равно ругается, и тоже только Symantec.
Задумалсо...
У меня похожая штука была с эмулем Patrona, но настройка под него уже проделана, иначе я бы и без виртуальной ДВКашки сидел, а это ну совсем уже грустно ! (

---------- Post added at 01:04 ---------- Previous post was at 00:49 ----------


Я тут почитал про этот «Suspicious.Cloud» немного, вообщем это не по сигнатуре проверяется. Это чисто технология симантека и они анализируют поведение файла, как-то запись в реестр, подозрительное поведение с жестким диском итд. Может симантеку не нравится, что при первом запуске создаётся файл BKBTL.ini ? Какие вообще новые действия появились по сравнению с предыдущей версией?

Вот по прежнему пишет (если там архив обновлялся выше), что


---------- Post added at 01:09 ---------- Previous post was at 01:04 ----------

Из своего архива BKBTL-beta13.zip беру EXE (откат) без проблем, что хочешь с ним делай - симантэку до него нет дела - при тех же настройках ! )

nzeemin
19.11.2013, 01:16
Засабмитил симантекам False Positive submission -- может подскажут что со мной не так.

ZEman
19.11.2013, 06:34
hobot, а другой антивирусник что не поставишь ?
тот-же Avira на ура справляется со своей работой и проблем с ним гораздо меньше.
да и вообще, если не лазить по всяким порнушным сайтам и страницам где выкладывают различные кряки то и вирус подцепить довольно проблематично, проверено годами.

breeze
19.11.2013, 08:55
Он (Симантек) сразу отправляет его в карантин, нет возможности запуска ))) Третий раз уже уточняю этот момент !


Ну я спорить не буду, за что купил, за то продаю :) Может они его в «песочнице» у себя запускают?


Засабмитил симантекам False Positive submission -- может подскажут что со мной не так.

Да, тоже хотел предложить. Чем ломать голову пусть ответят, что не так.

hobot
19.11.2013, 21:17
Засабмитил симантекам False Positive submission -- может подскажут что со мной не так.


Чем ломать голову пусть ответят, что не так.

Symantec свой эмулятор БКашки готовятся запустить! Конкурентов в карантин! :wink:

breeze
20.11.2013, 12:13
Symantec свой эмулятор БКашки готовятся запустить! Конкурентов в карантин!

100% не иначе :D

nzeemin
01.12.2013, 09:31
На мой False Positive report Симантек ответил что учтёт его в следующем обновлении.

Upon further analysis and investigation we have verified your submission and as such this detection will be removed from our products.

hobot
01.12.2013, 12:37
Симантек ответил что учтёт
Благодарю, Никита, за проведённую переписку с антивирусной конторой.
Я настроек никаких не менял, теперь не ругается, буду уже сам эмулятор мучить теперь )
http://s6.hostingkartinok.com/uploads/images/2013/12/6a70f52fc59362deb01c9d8106f81177.png (http://bkbtl.googlecode.com/files/BKBTL-207.zip)

http://bkbtl.googlecode.com/files/BKBTL-207.zip


:redface:

hobot
03.12.2013, 16:48
BKBTL: screenshot commands.
BKBTL: save screenshot as PNG or BMP; util/BitmapFile.h&.cpp.
Скрины не делаются! И детская болезнь с папкой по умолчанию как
было и с UKNCBTL когда-то, "Сохранить скриншот как" - то же не работает ! )
Зато ) Первый в истории игр "ХОРРОР" - причём графический - это ВАМПИР на фокале - без проблем в эмуле завёлся (правда при повторной игре слетает настройка экрана, но это возможно ошибка в программе игры), к слову этот фокальный WAMPIR не во всех эмуляторах БК работает ! Игра из комплекта БК0010-01, шла на кассете вместе к компом )

крупным планом )

http://s5.hostingkartinok.com/uploads/images/2013/12/c4d09f6f55aae09404a9f8baefd7ac51.png

:redface:

hobot
05.12.2013, 16:51
nzeemin, добавочно к двум последним сообщ. о классической игре KLAD и BKBTL в целом, хотелось бы озвучить ещё несколько моментов:
1. Эмулятор ИМХО переживает некоторые из "детских болезней" UKNCBTL на примере которого можно уверенно сказать, что всё это поправимо.
2. Раскладка клавиатуры? Хорошо бы обсудить (как это было однажды проделано с UKNCBTL) с активными пользователями эмулятора и 1 раз сделать удобную раскладку и шпаргалку по ней - это непосредственно связано с классическим вариантом игры KLAD, у неё управление изменить нельзя, а выстрелы - это кнопочки <РУС> и <ЛАТ> которые мне нащупать на ПиСи-клавиатуре не удалось, в любом случае - может быть их стоит как-то рядом разместить? Что бы играть было удобней (именно в KLAD!).
(Слегка не по теме - раскладка в UKNCBTL меня устраивает полностью, но именно благодаря её аутентичности УК-НЦшной играть в LODE RUNNER становиться слишком не удобно! Поскольку на живой машинке кнопки пробивания пола рядом, а в эмуляторе они разнесены на всю ширину клавиатуры). Как-то так.
Сейчас гоняю в эмуляторе LODE RUNNER от WEX !
В галерее игрушек (http://archive.pdp-11.org.ru/gamgal.html) архив с игрой доступен )

И два слова по поводу Галереи Игр на сайте архива, сейчас там по многим причинам остались только БКашечные игры.

Картинки )

Авторы сразу делали его под цветной монитор!!!
http://savepic.net/3945201.png

Как и во всех других реализациях этой игрушки,
возможно переназначение клавиш управления.
http://savepic.net/3935985.png

Ура! Интересно что за команда скрывается
под "псевдонимом" WEX? :wink:
http://savepic.net/3937009.png


Спасибо.

nzeemin
04.05.2015, 14:28
В связи с ожидаемым закрытием Google Code, проект BKBTL переведён на GitHub:

https://github.com/nzeemin/bkbtl -- основной проект, ядро эмуляции и интерфейс под Win32
https://github.com/nzeemin/bkbtl-doc -- документация
https://github.com/nzeemin/bkbtl-qt -- интерфейс на основе Qt фреймворка
https://github.com/nzeemin/bkbtl-testbench -- тестовый стенд

peg
15.03.2016, 01:07
Взял исходники с гитхаба (командой git clone)
Установил qtcreator. Проект компилируется. Работает.
Вопросы.
1. Почему такое медленное чтение с дисков?
2. На глаз скорость заметно выше, чем в реальной БК0011М.
3. Почему-то нет звука. Что эмулируется из звука: динамик, ковокс, AY?
4. Хотелось бы экран побольше (1024х768). На ноуте очень мелко.

система Linux Mintl

nzeemin
29.06.2017, 21:26
Начал делать WebAssembly-версию эмулятора:
https://nzeemin.github.io/bkbtl-wasm/index.html

Doronetty
30.06.2017, 00:45
OMG, зачем всё это?! Лучше одну, но настоящую, "крутую" версию со значительными улучшениями под Винду, чем 10 под разные платформы, в которых прогресса-то эмуляции и нет...

shattered
30.06.2017, 21:16
а расскажите, что такое "крутая" версия и про значительные улучшения?

Doronetty
30.06.2017, 23:14
"Крутая" IHMO - та, что будет корректно (!) запускать демы под БК-11М (требующие корректные тайминги для правильного мультиколора ит.д.)

nzeemin
01.07.2017, 17:32
Добавил Sprite Viewer, пока достаточно примитивный:

https://img-fotki.yandex.ru/get/229651/7448436.9/0_aa9e0_6054a88b_XL.png (https://fotki.yandex.ru/next/users/nzeemin/album/95562/view/698848)

ZEman
01.07.2017, 19:01
А ссылка то хде ?
Ну или если это дразнилка то поставили бы :v2_tong2:

nzeemin
01.07.2017, 19:19
А ссылка то хде ?
Ну или если это дразнилка то поставили бы :v2_tong2:

Ну так это же не улучшение эмуляции :-)

Приаттачил.

Управление в Sprite Viewer:
стрелки влево-вправо -- сдвиг на страницу
стрелки вверх-вниз -- сдвиг на байт
стрелки вверх-вниз с клавишей Ctrl -- сдвиг на строку
[ и ] -- изменение ширины спрайта
G -- задать адрес

hobot
02.07.2017, 10:18
Управление в Sprite Viewer:
экспорт спрайтов во внешний файл .MAC для использования на УК-НЦ )
+ естественно парочка функций-процедур для УК-НЦ что бы использовать
спрайты от БК0010 в простейших программах.

:redface:

MiX
12.07.2017, 15:30
Хотел запустить ПЗУ Тетриса на эм.ДВК, а там прочиталось такое:

(С) 1986, "С11" Инициативная группа разработки системного обеспечения БК0011 "С11" Ленинград ЛГУ им. А.А.Жданова▓ 19.08.86 Для завода "ЭКСИТОН"

Похоже для этой темы.

P.S. За БК темой не слежу, может и повтор.

nzeemin
13.07.2017, 13:05
экспорт спрайтов во внешний файл .MAC для использования на УК-НЦ )
+ естественно парочка функций-процедур для УК-НЦ что бы использовать
спрайты от БК0010 в простейших программах.

Обычно в этом нет смысла.
Для УКНЦ по сравнению с БК биты спрайтов нужно расположить по-другому -- сделать зеркальное отражение. Для других машин будет другой способ.
По-этому, для каждого случая я пишу небольшую программу на C#, чтобы взять из дампа сразу всё что нужно, в том числе правильно обработать спрайты, и сделать .MAC-файл со всеми данными.

Для примера:
https://github.com/nzeemin/nemiga-loderunner/blob/master/SpriteRotate/Program.cs

OrionExt
13.07.2017, 13:30
экспорт спрайтов во внешний файл .MAC для использования на УК-НЦ )
Тут главное найти спрайты. А дальше просто тянем этот блок. И с помощью скрипта готовим спрайты по вкусу (спрайты разные бывают).

Готовые спрайты с источника редко подходят для использования.

nzeemin
20.04.2018, 01:04
BKBTL 1.0.328

Список изменений с версии 304:
* Звук: пофиксил стерео; скорость эмуляции при включенном звуке сделана более адекватной выбору
* DisasmView: instruction hints
* Размер скриншота зависит от выбранного режима экрана
* Режим экрана 896x512
* Сохранение скриншота с палитрой в 256 цветов
* Добавлена поддержка AY-3-8910, включается через меню

Поддержка AY -- мне сложно сказать насколько удачно получилось, это пока скорее экспериментальная фича.

Doronetty
20.04.2018, 14:31
Уррра! Проект всё-таки жив!

ZEman
20.04.2018, 18:33
Тоже очень рад что проект не заброшен.
nzeemin, а nemigabtl будет когдани-будь обновляться ?

hobot
20.04.2018, 18:47
MM, что же это всё таки такое и с чем его кушать?
http://zx-pk.ru/threads/11298-bkbtl.html?p=919449&viewfull=1#post919449

nzeemin
20.04.2018, 19:01
Тоже очень рад что проект не заброшен.
nzeemin, а nemigabtl будет когдани-будь обновляться ?

По Немиге нужно разобраться с режимом HALT, сейчас вход/выход из него для меня не особо понятен, документация по этому вопросу неполна.
Если будут существенные сдвиги то конечно буду обновлять.

gid
20.04.2018, 22:11
hobot, оказалось, что это вот что:
Файл TETROM.bin предварительно надо просто инвертировать, чтобы было что-то понятно. И оказалось, что это никакой не ROM, потому что программа пытается записывать данные в ту область, в которой находится. А ещё использует EMTы от ПЗУ монитора БК10.
Структура ROM:
первое слово: непонятно что
второе слово: размер массива
третье слово: адрес, куда его пересылать
далее - сам массив
Кода, который бы пересылал игру из области ПЗУ на своё место в ОЗУ не обнаружено.
И оказалось, что это простой тот самый тетрис, что шёл в комплекте на одной из двух кассет к БК-0010-01.
65076
Можете убедиться сами, в архиве - проинвертированный так называемый ROM, и отдельно выдранный файл игры в формате .bin Загружайте в любой эмулятор и ностальгируйте. Хотя я более чем уверен, что этот самый тетрис ещё много где есть в россыпях bin и wav файлов/

hobot
21.04.2018, 01:56
BKBTL 1.0.328
У меня вопрос - не хотелка, а с целью уточнить - можно соотношение сторон экрана в виде квадрат добавить
ещё один покрупнее, а то все более крупные суть прямоугольники.

Прогнал тест TSTVM1.SAV Титуса - ругнулся 1 раз в самом конце
https://preview.ibb.co/ffZ0P7/bkbtl328.png

nzeemin
21.04.2018, 02:21
У меня вопрос - не хотелка, а с целью уточнить - можно соотношение сторон экрана в виде квадрат добавить
ещё один покрупнее, а то все более крупные суть прямоугольники.

Что-то я не очень понял, какое разрешение хочется увидеть.
Набор режимов сейчас такой:


Режим Увеличение Соотношение сторон
512 x 256 1.0 x 1.0 2 / 1
512 x 384 1.0 x 1.5 4 / 3
896 x 512 1.75 x 2.0 7 / 4
1024 x 768 2.0 x 3.0 4 / 3

hobot
21.04.2018, 05:00
Что-то я не очень понял, какое разрешение хочется увидеть.
Набор режимов сейчас такой:


Режим Увеличение Соотношение сторон
512 x 256 1.0 x 1.0 2 / 1
512 x 384 1.0 x 1.5 4 / 3
896 x 512 1.75 x 2.0 7 / 4
1024 x 768 2.0 x 3.0 4 / 3


1024 - который у меня не влазит самый низ (перекрывается рамкой собственного окна), вот чуть меньше чем он,но
больше чем 512 ))) 4/3 , если честно я до сих пор не очень понимаю эти дробные коэффициенты, для сравнения
у меня в UKNCBTL идеально (в плане размера и вида и формы и величины ) 920х720 он висит над рамкой + там есть
некий "полноэкран" нижнюю "строку состояния" вроде бы убирающий.

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

nzeemin, дело ещё в том, что одна из пользованных мной ранних версий ужасно много багов было и я после довольно долгого
перерыва впервый этот эмулятор запускаю. То есть буквально "знакомлюсь с нуля", столкнулся с тем, что фокус пропадает иногда приходится кликать или выбирать в меню запущенных процессов, буду теперь мучить.

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

nzeemin, не могу нащупать самые простые символы "/" и "=". (((

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

да и кнопку "СУ" для работы с RT-11 в режиме БК-11 опять же тоже не могу нащупать
есть где то хэлп по раскладке клавиатуры?

nzeemin
24.05.2018, 23:30
Прогнал тест TSTVM1.SAV Титуса - ругнулся 1 раз в самом конце
Где можно найти тест TSTVM1.SAV Титуса?

hobot
25.05.2018, 02:39
Где можно найти тест TSTVM1.SAV Титуса?
поскольку в УК-НЦ ВМ2 там лежит TSTVM2.SAV, поскольку в ДВК самых первых стояли ВМ1
то в разделе ДВК хламничка
http://archive.pdp-11.org.ru/ukdwk_archive/dwkwebcomplekt/titus_vm1test/

Кстати говоря, идеальный вопрос-запрос для этой темы
http://zx-pk.ru/threads/16861-poisk-fajlov-dlya-uknts-dvk.html

svofski
25.09.2018, 14:03
nzeemin, собрал на macos10.13.4, qt5.11.2 из brew. Все собралось ок, но не могу запустить. Во-первых, я не могу понять, где он хочет видеть ромы. Если запускать просто бинарник, он их берет из текущего каталога. А если запускать, как апп? Ни из MacOS/ ни из Resources/ он их не зацепляет.

Когда запускаю просто бинарник, вижу беловатый экран, на котором как будто бы что-то есть слева, но вообще ничего. Выбор альтернативных конфигураций тоже не помогает. Если дебаггер позвать, вроде все живет. Похоже, что с отрисовкой что-то не так. Звука тоже не слышу. В чем может быть дело?

Скриншот https://i.imgur.com/VbrWCHY.png

Adam Bazaroff
27.02.2019, 00:22
macOS High Sierra... собрать не удалось. Поделитесь готовым бинарником, пожалуйста.

nzeemin
10.03.2019, 21:32
Проблему с отрисовкой в Qt версии под OSX решил некто cetuscetus и сделал PR -- спасибо ему огромное.
Попутно я выяснил что есть проблемы со сборкой под Windows/MSVC для Qt 5.9.7 и выше -- что-то с юникодом и TCHAR, буду решать. Под Windows/MinGW собирается.

Manwe
20.03.2019, 17:23
А правда, где скачать-то свежий бинарник под MacOS?

nzeemin
20.03.2019, 18:14
А правда, где скачать-то свежий бинарник под MacOS?

Только собрать самому.
Qt любой версии 5.x (не забудьте поставить QtScript), под Windows/Linux/MacOS.

Manwe
21.03.2019, 17:49
Только собрать самому.
Qt любой версии 5.x (не забудьте поставить QtScript), под Windows/Linux/MacOS.Ох, это же такая боль! За что так с людьми?

hobot
10.12.2019, 20:37
А правда, где скачать-то свежий бинарник
и какая версия\сборка финальная ? у меня от 20 апреля 2018 под окошки версия, актуальная?

nzeemin, столкнулся с ещё одной "детской болезнью" - касаемо раскладки клавиатуры
символ : - двоеточия только с вирт.клавиатуры смог ввести. Планируется ли допинать расклад клавиш?

nzeemin
10.12.2019, 21:00
Ох, это же такая боль! За что так с людьми?

Не очень понял запрос. Лень самому собирать? Ну так это не особо продвинутый эмулятор, смотреть особо нечего.
Если же речь про версию Qt - то можно любой версии от Qt 5.3 и выше.

- - - Updated - - -


и какая версия\сборка финальная ? у меня от 20 апреля 2018 под окошки версия, актуальная?
Могу пересобрать, сильно лучше от этого не станет.


nzeemin, столкнулся с ещё одной "детской болезнью" - касаемо раскладки клавиатуры
символ : - двоеточия только с вирт.клавиатуры смог ввести. Планируется ли допинать расклад клавиш?
Пока некогда этим заниматься, сорри.

- - - Updated - - -

BKBTL 1.0.335

Список изменений с версии 328:
* Исправление команд CLx процессора
* Опции командной строки: /autostart /autostarton /autostartoff /noautostart /debug /debugon /debugger /debugoff /nodebug /sound /soundon /soundoff /nosound
* Исправление порядка аргументов команд MUL/DIV/ASH/ASHC в дизассемблере
* Устранены утечки ресурсов в отладчике

Manwe
24.12.2019, 23:55
Не очень понял запрос. Лень самому собирать?Подразумевается, что все держат на своих машинах инструменты разработчика, умеют компилировать проекты, разбирабтся в программировании на любом языке и только исключительно лень им мешает? ;) А как на счёт такой гипотезы: не все, кто хочет запускать эмулятор старого компьютера - профессиональные разработчики ПО?

nzeemin
25.12.2019, 00:46
Подразумевается, что все держат на своих машинах инструменты разработчика, умеют компилировать проекты, разбирабтся в программировании на любом языке и только исключительно лень им мешает? ;) А как на счёт такой гипотезы: не все, кто хочет запускать эмулятор старого компьютера - профессиональные разработчики ПО?

Да, извиняюсь, я резковато выразился.
На самом деле здесь нужно разбираться как для MacOS делать деплой, там специфичная упаковка в .dmg-образ.
Учитывая то, что эмулятор далёк от завершения, я как-то всё время откладывал эту тему на потом.

Manwe
27.12.2019, 11:19
На самом деле здесь нужно разбираться как для MacOS делать деплой, там специфичная упаковка в .dmg-образ.Не обязательно в dmg, иногда программы для macOS распространяют просто в zip-архивах.

Ynicky
01.02.2020, 11:48
А можно ли в эмуляторе, в конфигурации "BK 0010.01 FOCAL", сделать загрузку дополнительного ПЗУ блока МСТД по адресам о140000 - о160000? Например с названием "user.rom".

Adam Bazaroff
01.02.2020, 11:58
В очередной раз попытался собрать под macOS. В очередной раз не получилось. Поделитесь готовой сборкой плз.

Titus
01.02.2020, 12:20
В очередной раз попытался собрать под macOS. В очередной раз не получилось. Поделитесь готовой сборкой плз.
Ставь Винду, и получи миллиард эмуляторов в подарок)

hobot
19.04.2020, 19:09
nzeemin, если дойдут руки, можешь попробовать у себя воспроизвести "странную" работу оператора FIND в бейсике,
вводим в конф.БК0010-01 команду FI, жмём "ввод", открывается окно выбора файла (???зачем-то????), попробуй любой файл выбрать и будет "мультик" )

nzeemin
19.04.2020, 20:58
nzeemin, если дойдут руки, можешь попробовать у себя воспроизвести "странную" работу оператора FIND в бейсике,
вводим в конф.БК0010-01 команду FI, жмём "ввод", открывается окно выбора файла (???зачем-то????), попробуй любой файл выбрать и будет "мультик" )

Переход на загрузку файла детектируется тем что исполняются определённые команды по определённым адресам. Видимо здесь получился false positive - ложное детектирование загрузки. Поправлю когда-нибудь, усилю условие. Спасибо.

Terra
04.05.2020, 17:49
Не планируете дописать эмуляцию ИРПС? А то в эмуляторе gid у меня не заработала связь с CH376, да и loopback тоже.

nzeemin
05.05.2020, 01:20
Не планируете дописать эмуляцию ИРПС? А то в эмуляторе gid у меня не заработала связь с CH376, да и loopback тоже.

Теоретически это возможно.
Практически - сейчас я завален работой на месяцы вперёд.

CodeMaster
05.05.2020, 08:43
Практически - сейчас я завален работой на месяцы вперёд.
Возрадуемся за брата нашего, аминь! ;-)

Doronetty
11.05.2020, 19:18
Практически - сейчас я завален работой на месяцы вперёд.
Однако! А я-то думал, что большинство, как и я, сейчас сидят без работы и от дикой скуки наконец-то принялись дорабатывать свои старые проекты и скоро мир увидит кучу совершенных эмуляторов...

lamp
18.05.2020, 14:38
Коллеги, всем привет. Не уверен что точно выбрал ветку для своего вопроса, ну поругаете тогда ))
Я ищу описание формата, в котором FOCAL БК 0010 сохраняет свои файлы. Написал простенькую реализация FOCAL и хочу научить её читать файлы такого формата.
Может кто помочь?

Manwe
23.05.2020, 13:15
в эмуляторе gid у меня не заработала связь с CH376, да и loopback тоже.loopback – это блок нагрузок? Или какая-то внутренность ИРПС?


я-то думал, что большинство, как и я, сейчас сидят без работы и от дикой скуки наконец-то принялись дорабатывать свои старые проектыЭто если зарплата капает, пока дома сидишь. А если не капает – приходится трудиться :(

Terra
09.06.2020, 21:19
loopback – это блок нагрузок? Или какая-то внутренность ИРПС?

своего рода да, замыкание Rx-Tx

nzeemin
27.08.2023, 13:23
Собрал эмулятор BKBTL Qt версия для Linux, экспериментальный релиз:
https://github.com/nzeemin/bkbtl-qt/releases/download/preview-216/BKBTL_Qt-9cc9d83-x86_64.AppImage

При запуске будет просить ROM-ы, положить рядом с .AppImage, брать тут: https://github.com/nzeemin/bkbtl/tree/master/roms

Woxem
28.08.2023, 07:16
Вау круто в теории можно будет и на андроид сделать?

nzeemin
08.01.2025, 22:05
Собрал и выложил новую версию эмулятора.
Изменений с версии 335 довольно много, но все относительно мелкие.
Главное, это то что я перетряхнул код КНГМД (посматривая в код эмулятора GID) и теперь загрузка в конфигурации БК0011М+КНГМД работает более быстро и стабильно.
По сравнению с эмулятором ув. GID это всё ещё довольно слабый эмулятор, но теперь он стал немного лучше.

Скачать: https://github.com/nzeemin/bkbtl/releases/download/release-2025.1/bkbtl-406.zip

gid
09.01.2025, 12:39
По сравнению с эмулятором ув. GID это всё ещё довольно слабый эмулятор
Занятный факт - а я в своё время код КНГМД почти полностью утащил к себе из BKBTL, когда начинал расширять функциональность эмулятора Калмыкова.

CodeMaster
09.01.2025, 14:43
я в своё время код КНГМД почти полностью утащил к себе из BKBTL
Круговорот кода в природе...

shattered
09.01.2025, 22:01
Тоже так делаю, особенно когда это АльтПро :) Зачем ее авторы расположили регистры по нечетным адресам -- загадка.

ZEman
13.01.2025, 16:34
на игре flyingplate эмулятор просто зависает.
игра нормально работает в эмуляторе андрея грабовец 0.23 (все ссылки в сети уже мёртвые, поэтому выкладываю на яндекс диск) ВИРУСА в АРХИВЕ НЕТ, ЭТО ЛОЖНОЕ СРАБАТЫВАНИЕ !
ссылка на эмулятор:https://disk.yandex.ru/d/OMIIDJ2r3LMZwW
ссылка на игру:https://disk.yandex.ru/d/tV6QiYyRFZAjQg

gid
14.01.2025, 10:24
на игре flyingplate эмулятор просто зависает.
А у меня в эмуляторе эта игра работает только в конфигурации БК-0010. На БК11М ломается, когда появляются шары, между которыми молния. То ли звук, то ли отрисовка молнии приводит к сбою. Разбираться не охота.

ZEman
14.01.2025, 11:22
gid, ты меня конечно прости, но Я вообще не понимаю как в твоём эмуляторе загружать что-то.
где нормальное меню типа FILE--->OPEN ???
единственный способ что я нашёл набирать:
MON
потом жать энтр и выбирать файл.

но в случае с этой игрой в твоём эмуляторе выдаётся ? и всё.
набираю s1000 и никакой реакции.
как б**** тут чтото вообще загружать ???

gid
14.01.2025, 15:41
как в твоём эмуляторе загружать что-то.
Как в настоящей БКшке. У меня эмулятор. В БКшке нет никаких меню, там клавиатура и магнитофон, или дисковод у везунчиков и богатых буратин.

единственный способ что я нашёл набирать:
MON
Это не единственный способ. В каждой из бкшек: БК0010, БК0011, БК0011М - свой набор команд для загрузки с магнитофона.
Гораздо более удобно - использование образов дискет.
А в эмуляторе ещё и драг-н-дроп работает (если не сломался случайно), тупо бросаешь бин файл на экран БКшки, и он начинает загружаться.

Но, вот конкретно с твоим экземпляром бин файла из архива, мой эмулятор не справляется. Т.к. там физический размер файла не совпадает с размером в заголовке. Ну и не может правильно его обработать.
В результате не опознаёт его как bin файл, и не может загрузить его по своим адресам.

ZEman
14.01.2025, 15:58
незнаю, в bkbtl, 0.23 и emu загружается а у тебя нет.
значит в твоём эмуляторе ошибка

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

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

gid
14.01.2025, 20:25
чтото ты перемудрил и испортил.
Я знаю, я старался испортить всё как можно сильнее, чтоб как можно больше людей от БКшек корёжило.

ZEman
14.01.2025, 20:57
gid, сорян, не хотел обидеть.
но если можно попробуй исправить ошибку, пожалуйста.

shattered
14.01.2025, 21:07
А игрушка вообще-то знает про 11м, или ее из-под andos с монитором 10 запускать надо?

gid
15.01.2025, 09:38
попробуй исправить ошибку, пожалуйста.
Попробую ослабить условия опознания bin файлов, и добавить вариативности.
Но всё равно буду стараться предотвращать подсовывания эмулятору всякой фигни.
Типа переименовать простой текстовый файл в .bin и посмотреть, что с эмулятором от него станет.


или ее из-под andos с монитором 10 запускать надо?
Не помогает. На БК11М у меня она ломается.
Вот щас напрягусь и выясню причину.
---
Причина выяснена. Это звук молнии. Для него используется функция записи массива из драйвера магнитофона. А на БК11М в андосе вместо драйвера магнитофона в мониторе код файлера, вот всё и ломается.
Для БК11(М) игре нужен чистый монитор десятки, т.е. подойдёт всё, кроме андоса. Вроде мкдос, аодос и норд используют чистый монитор.

Pyk
15.01.2025, 11:47
если можно попробуй исправить ошибку
Что-то мне это напоминает :)
У меня в emu80 тоже поначалу не грузились файлы с неправильной контрольной суммой, так народ начал жаловаться, что разные кривые файлы не грузятся и стали просить исправить "ошибку".
Пришлось ослабить ограничения, но совсем фигню все равно отвергаю ;)

nzeemin
16.01.2025, 18:11
Что-то мне это напоминает :)
У меня в emu80 тоже поначалу не грузились файлы с неправильной контрольной суммой, так народ начал жаловаться, что разные кривые файлы не грузятся и стали просить исправить "ошибку".
Пришлось ослабить ограничения, но совсем фигню все равно отвергаю ;)

Вообще, в таком случае можно выдавать окно, показыавть параметры файла и объяснять что "вот конрольная сумма на аллё, точно ли вы хотите это загружать?"