PDA

Просмотр полной версии : Доступ к 48 КиБ из 96 поддерживаемых в пк "Корвет"



Sancho45
22.05.2020, 15:25
Всем привет.
В данной статье речь пойдет об использовании 48 кб из 96 поддерживаемых в пк Корвет.

Думаю, многие обладатели пк80х0 заметили, что в описании тех. характеристик указан объём поддерживаемого ПЗУ – 96кб. Но я так и не смог найти из открытых источников, что кто-либо, когда- либо использовал полный объём ПЗУ в 96кб. Но факт есть факт, разработчиками предусмотрена возможность установки такого объёма, используя 3х27с256.

К сожалению адреса выборки ПЗУ жестко прописаны в 556рт2 и без ее замены не получить такого объема.
Но к удивлению авторы данного ПК предусмотрели еще один механизм. Это бит D7 системного регистра. И мы плавно переходим к рассмотрению схемы подключения чипов ПЗУ.

https://i.ibb.co/XXK2z0b/1.jpg (https://ibb.co/XXK2z0b)

Как мы можем увидеть старший бит (D7) регистра D22 (к555тм9) подключен через инвертор D19 к контактам 27 каждой ПЗУ. Этот контакт используется для программирования 27с64 и при работе на чтение, на него должна подаваться лог.1 (для этого и нужен инвертор). Но если мы глянем распиновку 27с256, то увидим, что этот контакт используется , как адресный бит A14.

https://i.ibb.co/dbCnCWD/3.jpg (https://ibb.co/dbCnCWD)

Т.е. используя бит D7 системного регистра, мы можем переключать и использовать по 8Кб из 16 в каждой половинке 32кб пзу!
И это даст нам дополнительно 24кб ПЗУ к 24 уже используемых в корвете(по 8 дополнит. кб в каждой пзу). Итого 48кб из 96 у нас есть без всяких переделок ПК. Надо только заменить 27с64 на 27с256(лучше на 29с256, что бы с УФ не возиться).

А где же отсутствующий на схеме бит A13, который необходим новым чипам??? К нашему счастью на всех платах (на моих 5 точно) контакт 26(A13) ПЗУ разведен и подключен к ША (напрямую к контакту 38 CPU). Возможно тот, кто схему рисовал – был суеверным или просто решили не баламутить народ лишней инфой)))
https://i.ibb.co/kJJ6vQz/2020.jpg (https://ibb.co/kJJ6vQz)


Демонстрация …

Прилагаю прошивку для одной ПЗУ, где ОПТС (D34). В нее зашит стандартный ОПТС 2.0 с адреса 4000h и тетрис с адреса 0000h(все-таки отечественная игра). Почему ОПТС с адреса 4000h - так как при вкл. ПК на 27 контакт ПЗУ идет лог.1, те будет использована вторая половинка новой ПЗУ.
Прошиваем новую ПЗУ и ставим ее вместо D34. Одной новой из 3-х будет достаточно. Включаем и проверяем, что все работает, как и прежде.
(Если у вас ОПТС первой версии, то надо считать ее и заменить код в этой прош. с адреса 4000h в 27с256)


Теперь в бейсике набиваем пару строк- это код который переключит половинку ПЗУ и передаст ей управление. Запускаем код командой RUN и проверяем результат.
Теперь ваш Корвет с пасхалкой )))


10 DATA &HF3,&H3E,&H94,&H32,&H7F,&HFA,&HC3,&H00,&H00
20 FOR I=0 TO 8
30 READ V
40 POKE &HC000+I,V
50 NEXT I
60 DEF USR0=&HC000
70 A=USR0(0)

ЗЫ: появление Extrom конечно решает много проблем для пк8010, но и софту в доп. ПЗУ место тоже найдется, например можно записать два варианта ОПТС или еще какой тест, что бы из коробки, без внешних девайсов. Так же планируется установка Z80, полностью обратимая, может для него потребуется новый "монитор". Установка Z80 поднимет данный ПК на новый уровень. Софта и игр можно портировать великое множество.
ЗЫ2: Если кто придумает, как использовать 96кб и какой софт туда залить, то я напишу новую прошивку для к556рт2, с дополнительными конфигурациями карт памяти, совместимую с предыдущей. Т.к. очень много конфигураций повторяются, то это будет не проблема. Занялся бы кто еще коммерческой прошивкой и рассылкой 556рт2 с новыми прошивками, думаю народ бы брал. Корректировка размера растра корвета(новая рт2 нужна), дополнительные карты памяти с новыми пзу...

Sancho45
24.05.2020, 11:59
Народ вроде скачивает вложения, а отзывов нет. Получилось ли у кого? Кто, что думает ?
Может CP/M залить или КТДП ? Только надо ОПТС поправить, горячую клавишу сделать, для альтернативной загрузки. Все таки 24 кб - это не мало, чуть больше трети адресного пространства вм80...

TomaTLAB
24.05.2020, 20:07
"Небо штопать - дело нужное, полезное..." (С)
По поводу карт памяти, нужно смотреть, что там из "зеркальных" включится автоматом со старой РТшкой, тупо за счет А13.
И не поотваливается ли что из старого софта из-за любимого развлечения программеров использовать "не баги, а фичи" :)
На горячую одну из F можно отдать, есть там какая-то совсем бестолковая.
А вот, что туда залить полезного, кроме КТДП - пока в голову не приходит. Идеальным вариантом, конечно, был бы человеческий экранный редактор для встроенного васика.

Sancho45
24.05.2020, 21:52
По поводу карт памяти, нужно смотреть, что там из "зеркальных" включится автоматом со старой РТшкой, тупо за счет А13.
Не пойму о чем речь, A13 и так задействован для выборки ROM2?! Но с рт2 это вторичный вопрос, в этом, думаю, проблем не будет(новую карту сделать). Для начала хотя бы эти халявные 24кб задействовать..
Кстати, кто будет менять все 3 пзу, D33 родной бейсик надо прошить с адреса 6000h, две другие с адреса 4000h

Sancho45
20.08.2020, 16:14
Сегодня пропатчу 556рт2 с картами памяти для 27с256 пзу. Бейсик будет в одной половинке ПЗУ(16кб). Вот думаю какие карты составить для второй пзу.

В плм 556рт2 задействовано только 28 из 42 термов, те можно добавить еще несколько разных карт для 2ой пзу. Например с ОПТС или отдельно(без ОПТС) и в другом адресном пространстве.

Есть какие либо идеи или пожелания ?

Цель - 96кб пзу без мгтф, только замена чипов ПЗУ и допрошивка родной 556рт2

Sancho45
25.11.2020, 15:46
В продолжение темы...

Появилось некоторое время и я занялся вопросом конфигурации. Как видно из таблицы ниже для выборки конфигурации с ROM2 и ROM3 (BASIC и BASG) используется разряд D6 (конфиг. 40h и 60h соответственно). Термы 27 и 28 к556рт2.

http://emuverse.ru/w/images/3/38/Korvet_PLM_Memory_ranges.png

Но в конфигурации 40h, бит D3 не участвует, т.е. конфиг. 40h и 48h равнозначны для ROM2(D33) и конфигурация 48h будет полностью повторять конфигурацию 18h(ROMB1), тк бит D4(актив-ий конф 18h) так же не участвует в 27 терме для 48h конфиг.

Т.к. конфигурация 48h ни в какой документации не упоминается, то я решил я задействовать бит D3 для новых 2-х конфигураций 48h и 68h, которые будут активировать ROM3 (D32, которая будет заменена на 27с256, как и D33)

28 терм,самый нижний в таблице будет активировать ROM2(D33), как и 27 терм, те ВАСИК будет расположен в одной мксх D33 ROM2(27c256) и D33 будет выбираться конфиг 40h и 60h(терм 27 и 28).

А конфигурации 48h и 68h будут выбирать ROM3(D32) и будут предоставлять доп 16кб пзу (32кб если использовать старший бит D8,те конф C8h и E8h)

Для этого надо исправить 27 и 28 термы и дописать еще 29 и 30 термы для конфиг 48h и 68h

C фотошопом не дружу, но думаю понятно будет. Конфигурации 48h и 68h повторяют 40h и 60h, только будут выбирать ROM3
https://i.ibb.co/ZMyt78Z/Korvet-PLM-Memory-ranges.jpg (https://ibb.co/x7VPdj4)

Я пробовал редактировать старые 556рт2 из корвета, к сожалению ни затереть терм, ни написать новый не получается по невиданным мне причинам. Поэтому пришлось прошить новую 556рт2.

Я проверил все это на корвете (достался мне после вандалов), все работает, те васик расположен в одной 27с256, d32 выбирается при конфиг 48h и 68h. Совместимость остается и появились 2 новые конфигурации.

Допишу загрузчик в биос и закину во вторую пзу тест или еще чего, но это уже в другой раз, надо еще место найти для загрузчика и контр сумму пересчитать.
https://i.ibb.co/FWrjYwQ/20201125-183044.jpg (https://ibb.co/FWrjYwQ)

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

Не придумал куда запихнуть доп. адресное пространство пзу биоса при замене его так же на 27с256.
Можно обсудить...

Прошивку 556рт2 карты памяти надо ?

Sancho45
25.11.2020, 20:42
Не придумал куда запихнуть доп. адресное пространство пзу биоса


надо еще место найти для загрузчика

Вопросик к знатокам, кто нибудь знает, где используется конфигурация ROMB1 (18h)?
Это прекрасный претендент на bios в 16кб. В этой конфиг. предпологалось использовать пзу васика или используется!?

Sancho45
08.11.2022, 18:13
Подниму старую тему.
Сделал образ ОПТС, КТДП, Васик и Тетрис.

Просто заливаются эти три дампа в 3Х К573РФ8 (27с256) и устанавливаются вместо родных РФ4 (27с64)
Вход в дополнительное меню сделан при зажатой клавише F1 в момент включения или сброса. Больше ничего делать не надо. И теперь под рукой всегда будет тест системы))
Так же прилагаю дампы для 27с512, если у кого таких много, а деть некуда )))

electroscat
08.11.2022, 20:21
Круто было бы ось какую нибудь, ну тетрис да, круто. Если там 96 кб реально использовать, то туда можно загнать несколько осей даже, можно и ОПТС1 и ОПТС2. А перед стартом меню например, если успел в течении 3х сек выбрать ОПТС - то грузишь какой выбрал, а если не успел, крузится 2й... Ну или по Fx первый ОПТС... МОжно задействовать комбинации F1+F2, F1+F3, F1+F2+F3... В загрузчике вектора я так сделал чтобы не лезть на стандартные комбинации..
А еще, можно опять же как в векторе я сделал, использовал 27С512, и переклюк механический, две области, первая - с ось, развлекухой типа кстати тоже тетриса и цветоглючки, а вторая область серьезная, туда собрать тестов побольше, какого ньть софта типа компиляторов может, не знаю, тут как бы я еще не сильно знаком с Корветом, он у меня только пару месяцев. Но окно возможностей колосальное - если с мех. переключением и пере(до)шивкой РТ2 - 192 кб... Это очень много, очень серьезные возможности.


Занялся бы кто еще коммерческой прошивкой и рассылкой 556рт2 с новыми прошивками, думаю народ бы брал. Корректировка размера растра корвета(новая рт2 нужна), дополнительные карты памяти с новыми пзу...

Эт можно ко мне, у меня есть возможность и РТ2 покупать не далеко, и прошивать их, прям дома )), и рассылать, с почтой россии теплые давние отношения ))) Так что я готов.

surinm
17.12.2022, 12:42
Просто заливаются эти три дампа в 3Х К573РФ8 (27с256) и устанавливаются вместо родных РФ4 (27с64)
Просто залил, вставил, корвет гудит гудком, на экране мусор... чего не так делаю? дампы в архиве правильно пронумерованы?

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

Дело было не в бобине)) в общем разобрался))

surinm
17.12.2022, 19:19
а как менять сборку? я тут посчитал, имеем 96К ПЗУ, при этом:
24Кб занимает ОПТС+Бейсик
24Кб занимает КТДП (от форманты)
8Кб - Тетрис
Итого - 56Кб
А если я например хочу сделать не тетрис, а Клад, который весит 30Кб или добавить Клад?
или заменить КТДП от форманты на КТДП в2.2, который 16Кб

Sancho45
17.12.2022, 21:38
Ктдп от форматы 16кб, а не 24.
Для использования большего объёма пзу необходимо менять прошивку в карте памяти к556рт2. Максимально удается задействовать 80кб, если сохранять совместимость с оригиналом.
А для 48кб ничего менять не надо, все работает на любом корвете простой заменой пзу.