- Исходники ПЗУ БК-0010 & БК-0011
-
? Patron - 16.09.2009 22:51
Исходники ПЗУ БК-0010 & БК-0011:
http://zx.pk.ru/attachment.php?attachmentid=13269&d=1253022016
-
? anonymous - 17.09.2009 00:36
Их обещали опубликовать в журнале ПК БК в 1995м году, но по какой-то причине этого не сделали в течении всего последующего года, пока журнал продолжал существовать, до весны 1996го...
Огромное спасибо!
-
? Murzik@ - 25.09.2009 09:01
Большое спасибо! А случайно исходников фокала для БК0010 ни у кого не осталось?
-
? kt315b@ - 25.09.2009 20:38
Спасибо! Очень полезная инфа! Спасибо огромное!
-
? a214 - 06.10.2009 18:17
И где ж это было в нужное время? Можно же было продавать за деньги как продавали другое ПО для БК.
Но в Мониторе реальной БК-0010.01 была прошита не эта версия, скорее всего более ранняя - реализация и порядок следования некоторых подпрограмм немного отличаются.
-В ПК БК насколько я помню обещали опубликовать дизасемлированное ПЗУ Монитора с построчными комментариями (от кого-то из постоянных авторов) - скорее всего в 1995-96 уже было поздно, кому это было нужно давно сделал это сам и было мало запросов (в ПК БК был бланк для этого).
-
? a214 - 09.10.2009 10:06
Есть дизасемблированное ПЗУ реальной БК с комментариями - кому-то это еще интересно ?
-
? anonymous - 09.10.2009 14:54
Обратно собирается? Или просто ознакомительный листинг? Выкладывайте, конечно, в любом случае.
-
? a214 - 09.10.2009 16:19
Если подразумевается что это можно обратно ассемблировать то зачем - там есть свои недостатки - ЕМТ 16 ну о-о-о-чень кривое - зачем были всякие СУ ИНДСУ СС и тп - это же при выводе на экран угрохало быстродействие раз в 10
-
? a214 - 10.10.2009 10:49
Дизамбливанное ПЗУ я делал каким-то из эмуляторов (автор которого непонятно зачем полностью убрал подпрограмму EMT 36 заменив все на NOP ). Формат листинга несколько отличается от принятого в МИКРО (насколько я помню). В листинге нет меток - используются абсолютные адреса реального ПЗУ например:
100000) JMP 116102 ; область комментариев
100004) EMT 4
...... .......
Добавлены комментарии по информации из разных источников и по ходу дела что-то всплывало по старой памяти - инфо по ссылке от 16-09-2009 не было. Исходники прояснили кое-что по системным ячейкам и оказались очень полезны по "мутному" EMT 16.
Делалось для собственных экспериментов по упрощению Монитора и ускорению работы при выводе на экран, а также освобождению места под дополнительные драйверы. - При этом все точки входа в EMT и основные подпрограммы остаются прежними для совместимости со стырым ПО -
При желании можно самостоятьно привести в нужный формат убрав комментарии - но при внесении изменений и ассемблировании все адреса "уплывут" от реальной БК.
-
? anonymous - 10.10.2009 14:07
Собирается ли, я спросил именно чтоб можно было править так, чтоб не уплывали адреса. А самый быстрый драйвер emt 16 занимает всего 1.3кб, включая шрифт, использовал такой в пультовой программе в БК на базе ВМ3.
-
? anonymous - 10.10.2009 14:47
Вот, нашел, 834 байта без кирилицы, которая пульту не нужна. http://qbus.narod.ru/37disp.mac
-
? Аноним - 12.10.2009 19:04
А где обещанное дизасемблированное ПЗУ реальной БК с комментариями?
Или я что-то пропустил?
-
? Skyline@ - 12.10.2009 19:12
обращаюсь к "a214"
А где обещанное "дизасемблированное ПЗУ реальной БК с комментариями"?
Или я что-то пропустил?
-
? a214 - 12.10.2009 23:25
Сегодня закончу кое-какие дополнениния в коммент по EMT 16 и завтра к вечеру дам ссылку.
-
? Skyline - 13.10.2009 13:25
a214 зараннее благодарю!!! И с нетерпением жду ссылку.
-
? Skyline - 13.10.2009 13:28
А листинга ПЗУ БК-0011М случайно нет у кого-нибудь?
-
? Аноним - 13.10.2009 13:53
В каком-то из журналов было расписано ЕМТ 36 с комментариями - кто подскажет ссылку ?
-
? kt315b@ - 13.10.2009 19:50
EMT 36 - магнитофон? А что конкретно интересует, блок параметров? Пишите, что нужно - авось подскажу, как раз недавно с ЕМТ36 баловался )
-
? Аноним - 13.10.2009 20:30
В исходниках Монитора (ссылка в начале) все очень хорошо расписано, но там нет конкретных адресов и в реальном ПЗУ что-то может отличаться. В журнале (или ИНФО или ПК-БК) было расписано ЕМТ 36 которое наоборот(т.е. на основе содержимого ПЗУ). Про блок параметров и тп все понятно - интересует конкретный листинг.
И вообще интересует где есть инфо-по-ИНФО, в частности там вроде был программатор для 558РР3(8Кх8 с защелкой адреса?) - может там что-то написано про ее применение и подкл к БК. Вроде как это №3 за 1991г, но где его взять?
¤
-
? a214 - 14.10.2009 02:26
http://narod.ru/disk/14110382000/100000z5x.txt.html
(убрать "птичку" под ссылкой с предл по уст Яндекс-Бар)
Делалось для личных экспериментов с Монитором (не имея исходников), поэтому не расписаны графические подпрограммы(сложно там) и ЕМТ 36(не был нужен).
Кому срочно - можно самому перенести из исходников на конкретные адреса.
За эту неделю потихоньку добавлю.
-
? Skyline - 14.10.2009 06:48
a214 от души благодарю!
-
? Аноним - 15.10.2009 16:33
А листинга ПЗУ БК-0011М случайно нет у кого-нибудь?
-
? anonymous - 15.10.2009 16:56
Полагаю, что у читающих форум нет его, иначе он бы тоже выплыл. Так что дерзайте, станете первопроходцем.
-
? a214 - 15.10.2009 20:08
В каком-нибудь эмуляторе БК-0011М загружаете программу Дизассемблера и задаете нужные адреса(от...-до...) и потом соотносите это с исходниками (в начале темы)...
Я так и сделал для БК-0010 и что-то там добавил в комментариях. (И по чему-то там в моем ПЗУ(в смысле в башке) мне кажется что эмулятор (который V2.37 - вход в доп меню для Дизакс по F10)содержит реальное ПЗУ Монитора (но все-же ЕМТ 36 не нужно было полностью удалять-это называется "неспортивно")
-
? Аноним - 16.10.2009 09:09
a214 а для БК0011М сможете повторить дизассемблирование как это только что описали?
Или кто-нибудь кто понял что нужно сделать? Просто дизассемблирование ПЗУ БК0011М без комментирования полученного кода.
-
? anonymous - 16.10.2009 15:05
Аноним, а вам-то что мешает? Держите дизассемблер под ОСБК11 http://qbus.narod.ru/disasm.zip
-
? drv - 16.10.2009 20:12
to anonymous
Как этот disasm.sav заюзать в БК эмуляторе? (Наример в EMU v1.01 или в Emulator3000)
-
? a214 - 16.10.2009 20:12
Вот хорошо - а то я по -11М - ... не было ее у меня
-
Для anonymous и других - ну просьба не критиковать - исправлюсь (в смысле исправлю со временем)
-
? drv - 16.10.2009 20:16
to a214
поддерживаю просьбу о дизассемблировании ПЗУ от БК-0011М
-
? a214 - 16.10.2009 20:18
-1 сообщение назад (у меня ADSL не по времени а по 0,5Г - иногда неспешный ответ получается не туда) - sorry
-
? drv - 16.10.2009 20:22
to a214
? 8 раз перечитал последний пост... И не понял.... ПЗУ от БК-0011М уже выкладывалось или нет?
-
? anonymous - 16.10.2009 20:34
drv, названных вами эмуляторов я никогда не видел и не знаю, как ими пользоваться, а сама программа используется как и все утилиты rt11/ОСБК11, в соответствии с форматом csi вводите спецификацию файлов и получаете результат для последующего редактирования.
-
? drv - 16.10.2009 20:42
to anonymous & a214
Мне кажется быстрее будет если кто-нибудь в этой самой ОСБК11 сохранит ПЗУ, чем потратит время чтобы мне объяснить как это сделать :)
-
? a214 - 16.10.2009 20:43
В начале - по ссылке:
Исходники ПЗУ БК-0010 & БК-0011 (но там не листинг ПЗУ)
http://zx.pk.ru/attachment.php?attachmentid=13269&d=1253022016
-
я посмотрел ради любопытства но ... вопросы не ко мне - в 11М я 000
-
? drv - 16.10.2009 20:45
Мне не посчастливилось использовать ОСБК11, так что я там плаваю плохо. Я юзал только магнитОфоны. Поэтому прошу помочь.
-
? drv - 16.10.2009 20:48
to a214
Да, в начале по ссылке не листинги ПЗУ.
¤
to anonymous
Если для Вас использование дизассемблера в ОСБК11 является простым и обычным делом, прошу помочь с получением листинга ПЗУ от БК0011М
-
? anonymous - 16.10.2009 23:38
Держите на редактирование первую ПЗУ (их в 11й две) http://qbus.narod.ru/11mbos.zip
-
? drv - 17.10.2009 04:05
Спасибо anonymous, а этот дизассемблер позволяет переформатировать вывод и отключить метки?
т.е. чтобы было как у a214. Сначала адрес, а потом ассемблерная мнемоника.
А вместо меток чтобы сразу было указан адрес
т.е. вместо
JMP L102 ;140572 000167,000114
было
140572 JMP 140712
Это возможно?
-
? anonymous - 17.10.2009 13:07
Чем вам в комментариях не нравятся адреса? Если их поставить впереди, тогда же ассемблером обратно не будет собираться листинг. Вы можете просто в текстовом редакторе создать макрос, который переставит значения меток из таблиц присваивания и перекрестных ссылок на место меток, ну и адреса из комментов вперед, на то и редактирование.
-
? Аноним - 17.10.2009 13:58
Спасибо anonymous за первую ПЗУ. А вторую будете выкладывать?
-
? anonymous - 17.10.2009 20:39
В понедельник, наверное, мне саму м/с надо выкопать, т.к. я ее стартовый адрес не помню, а 11я БКшка живая на работе лежит.
-
? Аноним - 17.10.2009 20:47
to anonymous
какая БКашка у вас 11 или 11М ?
И от какой из них выложено 1ое ПЗУ?
-
? anonymous - 17.10.2009 20:56
Это от 11M ПЗУ, РЕ2-324, которая с 0140000 сидит, а вторая РЕ2-325 подключается временно или на 0100000 или на 0120000 - забыл вот. :)
От 11й у меня ПЗУ нет, она как-то мимо прошла, сам я ей не пользовался.
-
? Антоним - 17.10.2009 21:00
Спасибо anonymous.
Ждем 2ое ПЗУ.
-
? Аноним - 19.10.2009 18:37
anonymous получилось?
-
? anonymous - 20.10.2009 00:38
Ловите http://qbus.narod.ru/11mext.zip Шрифт я, естественно, просто дампом положил в текст, перед шрифтом там какие-то таблицы со значениями и таблицы адресов, а также несколько строк, их я тоже не стал сортировать и они входят в общий массив со шрифтом.
-
? drv - 20.10.2009 09:26
anonymous Большое Спасибо за листинги ПЗУ!
-
? a214 - 26.10.2009 11:25
Уже известная инфо - но может кому нужно - хорошее качество документа (1М): http://narod.ru/disk/14474640000/mpi-gost%5B1%5D.rar.html
-
? nzeemin@ - 05.12.2009 22:47
a214, вы не будете против если я использую ваш документ 100000z5x.txt в составе своего эмулятора BKBTL? Кстати, спасибо за подробные комментарии. Мне понадобился источник с комментариями, которые будут показываться при работе встроенного отладчика в эмуляторе. Исходники ПЗУ БК, выложенные на форуме zx.pk.ru -- несколько отличаются по коду от обычной прошивки БК-0010-01.
-
? a214 - 05.12.2009 23:50
Нет проблем, всего-лишь любительские комментарии и я не против, если конечно будет простая ссылка, но не спешите - это просто начальный вариант (уже есть более подробная версия). В начале недели предполагается регистрация собственного сайта(инфо для закачки подготовлена) и соответственно все будет там.
Вообще-то комментарии писались не имея перед собой исходников и соответвенно на их фоне то что у меня... (в исходниках КРАСОТА, пусть даже немного расходящаяся с реальным ПЗУ БК)
-
? Manwe - 31.03.2019 21:59
Загружаю игры на БК-0011М с магнитофона командой L в мониторе.
Старые игры типа Sheriff и Diversant запускаются, но быстро вылетают - судя по всему, обламываются о команды EMT, которые в БК-0011М и БК-0010 совершенно разные.
Вот думаю – может быть написать какой-нибудь конвертер, который приклеивает к игре кусок Монитора от БК-0010 и кидает его в верхнюю страницу памяти перед запуском игры? Пригодится это кому-нибудь? Речь, конечно, о людях, у которых нет дисководов и винчестеров. Такие могут быть среди коллекционеров ретро-железа.
-
? gid - 01.04.2019 09:43
Они не только об emt обламываются. Они ещё активно используют подпрограммы оттуда - сохранение/восстановление регистров в стеке, приём кода с клавиатуры, вывод символов и т.п.
[который приклеивает к игре кусок Монитора от БК-0010 и кидает его в верхнюю страницу памяти перед запуском игры]
и всё это с магнитофона? навряд ли коллекционеры такие извращенцы, они обычно ретрожелезо вообще не включают, чтобы оно не сломалось случайно.
-
? Manwe - 01.04.2019 13:29
Ну, в общем, я сделал BK0010 Game Loader: https://zx-pk.ru/threads/30298-zagruzka-s-magnitofona-na-bk-0011(m).html
Единственное, не разобрался с автозапуском в Мониторе БК-0011М. Видимо, при загрузке с магнитофона Монитор-11 устанавливает стек куда-то не туда, где мы привыкли :)
-
? BD - 02.04.2019 04:18
Гы, тоже бился над автозапуском старых игрушек лет 20 назад. Все дело в SP ))
¤
MOV #766,SP
MOV @#264,R0 ; тут у драйвера МГ адрес загрузки
CMP R0,#1000 ; если <1000 - автозапуск
BLO 1
MOV #100000,-(SP) ; адрес возврата
JMP @R0
1: CMP R0,SP
BLOS 2
MOV #776,SP
2: RET
-
? Manwe - 02.04.2019 07:02
Всё осложняется тем, что Монитор БК-0011М помещает указатель стека куда-то в район 44000, а Монитор БК-0011 куда-то в район 43000. Придётся поковырять исходники, чтобы узнать точные значения.
-
? BD - 02.04.2019 13:24
Если всеравно грузишь -017 прошивку, подправь её. Включай 4;5 станицы, п/п инициализации по адресу 100140 (емт 14), и сразу запускай игрушки. Места дохрена, например - вместо ТЛГ.
-
? Manwe - 02.04.2019 17:23
Я хочу чтобы моя программа (эмулятор Монитора БК-0010) сама запускалась на 11-ой при загрузке с магнитофона. Видимо, надо компилировать её с адреса 44000 (плюс автозапуск в начале). Буду разбираться.
-
? BD - 03.04.2019 14:49
На 11М по команде L SP=44472 (EMT115). Хоть с 44000 адрес старта размножай. Но! Не забывай, что ошибки обрабатывать придется тебе, т.к. возврат будет некорректным. Не смотри на бит C, смотри в байте @#52.
-
? Manwe - 03.04.2019 17:01
Спасибо, про ошибки полезное соображение, сам бы не догадался.
А на БК0011 (без М) где стек?
-
? BD - 03.04.2019 18:36
L
FILE NAME? B:
_
SP=44446
-
? Manwe - 04.04.2019 17:26
[На 11М по команде L SP=44472 (EMT115)]
Сделал файл с адреса 44440, в нём первые 16 слов забиты числом 44500 - автозапуск. И вот что удивительно: по команде L видно как этот файл грузится в экранную память. Значит, с 40000 подключена активная страница экрана. Разве может стек указывать на экран? Вижу два варианта, либо он всё-таки указывает не на 44472, либо при прерывании (клавиша СТОП) подключается другая страница, а адрес возврата сохраняется в... экран (очень странно!). Вообще непонятно что происходит.
-
? BD - 04.04.2019 20:31
Так перед загрузкой надо подключать нужные страницы из клавиатурного монитора.
БОС сама разберется.
¤
N;MC -отобразить страницу номер “N” с адреса, задаваемого аргументом “M”. Страницы с восьмеричными номерами 10, 11, 12, 13 относятся к страницам ПЗУ 0, 1, 2, и 3 соответственно. Значение “M”, равное нулю, означает адреса 40000-100000, равное “1” - адреса 100000-140000.
-
? gid - 04.04.2019 20:55
А экран в БОС 11/11М всегда фоновый. Он подключается тогда, когда надо что-то вывести на экран и сразу отключается обратно.(Поэтому там всё медленно работает, особенно на БК11 без М, там БОС - какой-то кошмар, как будто написанный на фортране или си, на ассемблере нормальные люди такие конструкции, как в коде БОС применены, не используют) Ещё, экран для вывода текста преимущественно подключается в окно1, т.е. по адресам 100000-137777, а в окно 0 подключается стр 7, где как раз хранится всякая рабочая инфа, стек, текущий шрифт и т.п. Но это не всегда, когда очень-очень надо и по-другому никак, экран и в окно 0 подключается, это когда задействуется вторая ПЗУ БОС.
В общем БОС БК11М штука сложная, я в ней так и не разобрался. Дизассеблировал-дизассеблировал да не выдизассеблировал.
-
? Manwe - 04.04.2019 21:46
[В общем БОС БК11М штука сложная]
А есть какая-то возможность в эмуляторе запустить БК-0011М в режиме без дисковода и без МСТД? С Бейсиком или без - не важно. Чтобы можно было выйти в Монитор и трассировать его функции. Типа, гружу свою программу командой L (с диска), программа запускает EMT 115 на запись (на магнитофон), я ставлю эмулятор на паузу и спокойно трассирую.
-
? gid - 04.04.2019 22:07
А чем мстд не угодил? он вообще никак ни на что не влияет, если его не запускать.
По сути это и есть голая конфигурация БК11М без дисковода. вы просто не делайте 160000G и считайте, что там ничего нет.
-
? gid - 04.04.2019 22:13
А чтобы спокойно трассировать, лучше поставить точку останова на адресе 154614, это точка входа в п/п выполнения емт 115 и после того, как выполнится емт 115, трассировать дальше с комфортом.
-
? Manwe - 04.04.2019 23:24
[А чем мстд не угодил?]
Не работает в нём как ожидается. Не могу загрузить файл из Монитора.
"Эмулировать загрузку ленты" включено (+)
"Эмулировать сохранение на ленту" выключено (-)
В конфигурации "БК0010-01" всё понятно: M, ИМЯ? Нажимаю Enter и попадаю в файловый диалог Windows.
В конфигурации "БК0011М+МСТД" L, Имя файла, Нажимаю Enter и... Ничего не происходит.
-
? gid - 05.04.2019 07:53
Естественно не происходит. "Эмулировать загрузку ленты" работает ТОЛЬКО и исключительно ТОЛЬКО для БК10. Для БК11 это не реализовано. Потому что слишком много вариантов. Слишком много писанины кода, а нужность этого дела не определена.
Для БК11 нужно загружать wav файлы. Аутентичненько.
Нужно делать так:
"Эмулировать загрузку ленты" выключить (это чтобы стало доступным загрузка wav)
Убедиться что звук спикера включен
В конфигурации "БК0011М+МСТД" L, Имя файла, Нажимаю Enter и... Ткнуть мышкой в иконку кассеты, выбрать нужный wav файл и загружать его.
-
? Manwe - 05.04.2019 08:46
[Потому что слишком много вариантов]
А какие там варианты?
-
? Manwe - 05.04.2019 08:49
[Так перед загрузкой надо подключать нужные страницы из клавиатурного монитора]
BD, и тогда получится загрузить в системную страницу поверх стека? Сдаётся мне, что даже если получится, то такой автозапуск не имеет смысла. Потому что усилия по ручному переключению страниц больше, нежели простое нажатие буквы G после загрузки.
-
? gid - 05.04.2019 09:21
[А какие там варианты?]
Для БК11 свой, для БК11М два своих. Там надо полностью повторить на с++ алгоритм загрузки из ПЗУ с помещением когда надо данных в стек и извлечением, когда надо, и т.п., чтобы точно как надо работало.
-
? Manwe - 05.04.2019 10:48
Понял. Тогда логично было бы в конфигурации БК0011(М) красить серым пункт меню "Эмулировать загрузку ленты", поскольку он всё равно недоступен и ни на что не влияет. А то правда непонятно что происходит и почему.
-
? BD - 05.04.2019 11:25
Все изобретают велосипед, пока СМК не обзаведутся ))
https://www.youtube.com/watch?v=3kxdGlHPnUE
P.S. Выставил за бесценок коробочку https://zx-pk.com/forum/viewtopic.php?f=7&t=12934
-
? Manwe - 05.04.2019 14:43
СМК – это хорошо, но у меня цель несколько другая. Запаковал Монитор bkpack’ом, а теперь хочу ещё перевести в формат HELP12, чтобы он вдвое быстрей грузился. Затем прикручу поддержку HELP12 к монитору. Найти бы ещё последнюю версию 12.22
-
? BD - 05.04.2019 14:55
Проще записать на 2400 или 4800 бод и читать штатными emt115/emt36.
-
? Manwe - 05.04.2019 15:29
Это я тоже попробую.
-
? BD - 05.04.2019 15:49
..Не из эмулятора, на живой БК. CF50 тебе в помощь ))
-
? Manwe - 05.04.2019 18:34
Ответил в теме "Вопрос по ЕМТ 36" так как она больше соответствует
- << Форум