ПК-01 ЛЬВОВ

форум о ПК-01,02 "Львов"
Текущее время: 04 мар 2021, 17:54

Forum Games WEB Tape Loader Twitter RSS

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 12 сообщений ] 
Автор Сообщение
 Заголовок сообщения: Оператор SLOAD
СообщениеДобавлено: 06 ноя 2012, 14:39 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщения: 123
Реплика вынесена из темы "ПК-I (прототип ПК-01 "Львов")".
Цитата:
Получил комментарий от С. Текотеева по поводу ранних версий ПК-01. Сначала о совместимости с Радио-86РК:
Цитата:
Похоже, что первоначальный формат записи на МЛ, сохранившийся в команде SLOAD, совместим с форматом Радио-86РК. Можно предположить, что и BASIC-программы были совместимы.
Если изменить константу чтения (адрес BE41) на 4A (в некоторых пределах +- можно поварьировать относительно 4A и все же будет грузить, но константа по умолчанию в два с лишним раза больше чем нужно), то SLOAD будет грузить бейсиковские проги РК-подобных бейсиков.

UPD: Константу 4A я пересчитал из константы векторовского бейсика, который может грузить РКшные проги. Если пересчитать из задержки в оригинальной РКшной процедуре, то получится константа 57h. Но это не особо критично, т.к. SLOAD грузит РКшные проги и при 4Ah и при 57h.

UPD2: Можно не заморачиваться с загрузкой из WAV, а добавить в конфиг Львова для EMU перехват загрузки rk. В секции
cas : tape-recorder {
нужно добавить строчку
biproc[E5A0-E5F7]=rk

Для удобства можно еще заменить строчку с фильтром:
filter="Lvov files (*.lvt;*.l??)|*.lvt;*.l??|RK86 files (*.rk?)|*.rk;*.rk?"

UPD.
Связанная тема "ПК-I (прототип ПК-01 "Львов")".


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 06 ноя 2012, 23:26 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
SLOAD будет грузить бейсиковские проги РК-подобных бейсиков.
Отличное исследование! А как с запуском РК'шных программ на Бейсике на "Львове"? Никаких экспериментов?

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 07 ноя 2012, 09:39 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщения: 123
Цитата:
А как с запуском РК'шных программ на Бейсике на "Львове"? Никаких экспериментов?
Очень простенькие программы пойдут без переделок, одну такую я попробовал. Но подавляющее большинство нужно дорабатывать. Проблем несколько:
1. Коды токенов совпадают не на 100%
2. Размеры экрана не совпадают ни по символам ни по графике.
3. В РКшных игрушках можно встретить вызовы процедур в кодах.


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 14 ноя 2012, 20:33 
Не в сети

Зарегистрирован: 07 дек 2010, 16:54
Сообщения: 227
Цитата:
Судя по всему, нужно будет разобрать "по винтикам" пресловутый SLOAD, чтобы получить дополнительную информацию.
он использует фазовую модуляцию для байта, как и РК, а вот логический формат потока я не изучал...
Цитата:
Если изменить константу чтения (адрес BE41) на 4A
а "автоподстройки по пилоту" там нет?


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 14:33 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщения: 123
Цитата:
а "автоподстройки по пилоту" там нет?
Нет, только инициализация при старте. Мне не хватает эрудиции, чтобы вспомнить примеры реализации автоподстройки для РКшного формата.

UPD: Слона я не сразу заметил. Неожиданно (для меня, не для матерых любителей ПК-01) BE41 оказалась многофункциональной ячейкой и судя по руководству программиста - http://lvovpc.ho.ua/files/program.html) ее основной функцией считается признак инвертирования при выводе на принтер.
Или сэкономили один байт или просто забыли, когда делали версию 2.0, что эта ячейка уже используется как константа чтения для SLOAD. Если отключить инверсию при выводе на принтер, записав 0 в BE41, то это будет соответствовать константе чтения (десятичной) 256, при этом удастся загрузить только файлы со скоростью почти в 3 раза медленнее стандартной РКшной.


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 15:43 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
Или сэкономили один байт или просто забыли, когда делали версию 2.0, что эта ячейка уже используется как константа чтения для SLOAD.
Рискну предположить, что разработчики версии 2.0 могли просто-напросто не знать о функциональном назначении ячейки BE41. Или SLOAD добавили уже после того, как разобрались с поддержкой принтера.

А с какого адреса располагается в ПЗУ подпрограмма SLOAD? Велика ли она по размеру?

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 16:59 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщения: 123
Цитата:
Цитата:
Или сэкономили один байт или просто забыли, когда делали версию 2.0, что эта ячейка уже используется как константа чтения для SLOAD.
Рискну предположить, что разработчики версии 2.0 могли просто-напросто не знать о функциональном назначении ячейки BE41. Или SLOAD добавили уже после того, как разобрались с поддержкой принтера.
Известно, что в предыдущей версии был или
1) SLOAD в виде аналогичном 2.0
или
2) его функциональный аналог (возможно расположенный по другим адресам и использующий другие ячейки для хранения служебных данных)
Была ли в предыдущей версии поддержка принтера?
Если со SLOAD вариант 1) и принтера (поддержки принтера) раньше не было, то "забыли про SLOAD", если со SLOAD вариант 2) и принтер был и раньше, то "забыли про принтер" :)
Интересные, но маловероятные комбинации 1) и "принтер был" а также 2) и "принтера не было". В этих случаях можно было бы предположить, что процедурами обмена с магнитофоном и принтером занимались разные люди/команды, которые не общались между собой, и в итоге использовали одну и ту же ячейку для разных целей.

В принципе можно было сделать так - использовать для признака инверсии выдачи на принтер только младший бит соответствующего байта. Размер и время работы процедуры вывода символа на принтер при этом бы не изменилось (надо только поменять ora a на сдвиг), а для константы чтения разница в единицу совершенно не принципиальна (кроме единственной пары 00 и 01).

Вобще разработчики прошивки ПЗУ Львова меня удивляют. В 2.0 есть две разных процедуры рисования точки - "старая" для PLOT/DRAW и "новая". Я бы лично сделал одну, но использовал "препроцессинг" координат.
Цитата:
А с какого адреса располагается в ПЗУ подпрограмма SLOAD? Велика ли она по размеру?
С какого это легко, а что касается размера - это как считать.
Обработка оператора начинается с D873 и, в том что касается чтения с магнитофона, заканчивается на D8C4. Потом идет переход на процедуру "адаптации". Тут есть некоторая неаккуратность - SLOAD корректно читает бейсик программу начиная с адреса заданного ячейками 0243-0244, а вот "адаптация" всегда идет с жестко записанного в самой процедуре (в ПЗУ) адреса. Хотя при значениях 243-244 по умолчанию все будет нормально.
В процессе работы SLOAD вызываются и другие процедуры, их размеры мне лень считать. Упомяну только процедуру чтения байта с фазовой модуляцией E5A0-E5F7.


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 17:28 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
В этих случаях можно было бы предположить, что процедурами обмена с магнитофоном и принтером занимались разные люди/команды, которые не общались между собой, и в итоге использовали одну и ту же ячейку для разных целей.
Вот-вот. Подозреваю, что этот оператор попал из прошивки ПЗУ неведомой ЭВМ, на основе которой разрабатывали "Львов". Отсюда, кстати, возникают два новых вопроса. Форма оператора загрузки SLOAD довольна специфична, что-то я не могу припомнить, чтобы где-то подобное написание встречал. Попытался погуглить - ноль, никаких зацепок. Использовалась ли еще где-нибудь подобная форма оператора загрузки? И еще вопрос. Интересно, где-нибудь на зарубежных ЭВМ использовался схожий принцип записи инфы на ленту? Надо бы устроить инспекцию ЭВМ бывшего соц.лагеря.
Цитата:
Вобще разработчики прошивки ПЗУ Львова меня удивляют. В 2.0 есть две разных процедуры рисования точки - "старая" для PLOT/DRAW и "новая". Я бы лично сделал одну, но использовал "препроцессинг" координат.
Ну, это как раз просто понять. Золотой принцип соблюден: "Работает - не трогай!" :D

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 18:29 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщения: 123
Цитата:
Форма оператора загрузки SLOAD довольна специфична, что-то я не могу припомнить, чтобы где-то подобное написание встречал. Попытался погуглить - ноль, никаких зацепок. Использовалась ли еще где-нибудь подобная форма оператора загрузки?
Сам я придерживаюсь версии о происхождении большинства бейсиков советских 8биток на КР580ВМ80 от бейсика Микро-80, который, в свою очередь, является производной от майкрософтовского альтаирского бейсика. Там и в последователях (первые версии бейсиков для РК86, Специалиста, Вектора, ...) соответствующий оператор - MLOAD. К слову, у почти всех остальных "советских 8биток на КР580ВМ80" тоже бейсик на основе майкрософтовского, но более поздней версии :)
Цитата:
Цитата:
Вобще разработчики прошивки ПЗУ Львова меня удивляют. В 2.0 есть две разных процедуры рисования точки - "старая" для PLOT/DRAW и "новая". Я бы лично сделал одну, но использовал "препроцессинг" координат.
Ну, это как раз просто понять. Золотой принцип соблюден: "Работает - не трогай!" :D
Шутки шутками, но IMHO это странное разбазаривание ресурсов. Если нормально подойти (в целом к наполнению ПЗУ, не только к рисованию точек), то можно было или сократить число ПЗУшек или добавить функциональности.


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 18:44 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
Сам я придерживаюсь версии о происхождении большинства бейсиков советских 8биток на КР580ВМ80 от бейсика Микро-80, который, в свою очередь, является производной от майкрософтовского альтаирского бейсика. Там и в последователях (первые версии бейсиков для РК86, Специалиста, Вектора, ...) соответствующий оператор - MLOAD. К слову, у почти всех остальных "советских 8биток на КР580ВМ80" тоже бейсик на основе майкрософтовского, но более поздней версии :)
У Бейсика ПК-01 особенная стать, о чем есть прямое свидетельство разработчика:
Цитата:
8. Помните ли Вы, кто разрабатывал встроенное программное обеспечение для "Львова" (BIOS, интерпретатор Бейсика)? Интересно было бы знать, чем они компилировались, как тестировались. Сохранились ли где исходники?

Базу Монитора (тогда определением BIOS редко пользовались) и Бейсика я скопировал с габаритной системы мирного назначения, что выпускалась в одной из стран соцлагеря (распечатал память на принтере, а затем вручную набирал). Поэтому работу проводил в машинных кодах (искал нужные точки входа и подставлял свои программы написанные в машинных кодах). Позже таким же образом адаптировал компилятор АССЕМБЛЕР и работа пошла повеселее. В основном работал вечерами после окончания рабочего дня и в субботу и воскресенье (в те времена работа в субботу и воскресенье на режимных объектах допускалась по специальному разрешению). Тогда отношение к работе было несколько иным, чем сейчас. Было много энтузиазма, руководство поддерживало инициативу. Уже после создания отдельной лаборатории к работам по совершенствованию ПО были подключены еще люди (я называл их в первом интервью), в частности, доработкой БЕЙСИК занимался Опир Юрий Мирославович (в частности, было добавлена возможность редактирования операторов в пределах одной строки, проводились работы по редактированию в пределах экрана и т.д.). В ПК-01М и ПК-02 "Мукачево" Монитор был несколько переписан и дополнен, да и БЕЙСИК также. После появления на карте мира независимой Украины активно начались работы по созданию собственных новых вариантов ПК, а затем было резко приостановлено финансирование, приборостроительные заводы Львова и микроэлектронные заводы Украины начали «разваливаться» и ... .. имеем результат.
UPD.
Интересно, что такое "габаритная система"?

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 19:09 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщения: 123
Цитата:
Цитата:
8. Помните ли Вы, кто разрабатывал встроенное программное обеспечение для "Львова" (BIOS, интерпретатор Бейсика)? Интересно было бы знать, чем они компилировались, как тестировались. Сохранились ли где исходники?

Базу Монитора (тогда определением BIOS редко пользовались) и Бейсика я скопировал с габаритной системы мирного назначения, что выпускалась в одной из стран соцлагеря
UPD.
Интересно, что такое "габаритная система"?
Да, габаритная система, еще и с бейсиком - это загадочно. Неужели из этой оперы - http://www.korabli.eu/galleries/oboi/vo ... ya-sistema?
Еще, кажется у "Квартета И" было - "в одной из - что за секретность?"
Пусть бейсик без транзита с микро-80, а из страны соцлагеря, но все же майкрософтовский альтаировский. Без MS никуда, даже в 80х.


Вернуться к началу
 Заголовок сообщения: Re: ПК-I (прототип ПК-01 "Львов")
СообщениеДобавлено: 15 ноя 2012, 19:18 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
Пусть бейсик без транзита с микро-80, а из страны соцлагеря, но все же майкрософтовский альтаировский. Без MS никуда, даже в 80х.
Против MS у меня при себе возражений нет. :D

А если серьезно, то хотелось бы точнее установить происхождение ПК-01. Вроде бы "усё ясно", но не хватает деталей, без которых пазл не складывается. Плохо, что у нас почти ничего неизвестно о разработках "братушек" из соц.лагеря. На слуху только "Правец" и "Роботрон". Но были же там и собственные бытовые ПЭВМ, уверен.

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 12 сообщений ] 

Forum Games WEB Tape Loader Twitter RSS

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


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

Найти:
cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB