|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Универсальная плата расширения
Универсальная плата расширения
Author |
Message |
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 329 Location: Tashkent
|
отсюдаТак как большинство серийных ПЭВМ имело набор разных карт расширения, хотелось бы иметь нечто подобное и под РАДИО-86РК. В своё время различные источники (журналы Радио или Радиолюбитель) публиковали схемы с модификацией дешифрации адреса, внося в саму схему РЛК коррективы. Данная тема - совсем о другом... Из личных опытов (частично проверенных на своём КР-03 в железе) было замечено: - К580ВВ55 при чтении 8003 возвращает FE или FF
- К580ВТ57 игнорирует запись в E009-E00F
- К580ВГ75 игнорирует запись в C000 без предварительной команды в C001
Первые два пункта я проверил более-менее (видимо в ВТ57 стоит нечто типа К155ИД6, который первые девять комбинаций использует; а ВВ55 нужно ещё проверить на импенданс при непредусмотренном чтении режима, можно ли сажать его ШД на "ноль" и откуда берётся "рандом" между FF и FE тогда?), а вот до записи в C000 всякого "мусора" - ещё руки не доходят (в Emu80 это просто игнорируется). Что мы при этом получаем? (В двоичном коде будет яснее): - 10XX_XXXX_XXXX_XX11 - 8003..BFFF на чтение до 4 Кб с шагом по 4 байта
- 110X_XXXX_XXXX_XXX0 - C000..DFFE на запись до 4 Кб с шагом по 2 байта (в эмуляторе у меня там перезаписывается знакогенератор как "вариант#2")
- 111X_XXXX_XXXX_1YYY - E009..FFFF на запись до 3.5 Кб (3584 байтов) с шагом по 16 байтов (в эмуляторе у меня там перезаписывается знакогенератор как "вариант#1")
То есть, не ломая нативную схему дешифрации того же (моего) КР-03, можно прямо в параллель ВВ55/ВТ57/ВГ75 включать свои дополнительные интерфейсы. (Не нарушая нативной целостности архитектуры...) Тем самым, теоретически, можно ли просто разработать под все РК-совместимые ПК универсальную плату расширения, подключаемую в параллель всей цельной (не перерезая ни одной дорожки!) схемы? (Так как ПЗУ знакогенератора обычно на панельке, схема перезагружаемого знакогератора, вставляемая в панельку, не нарушает целостность!) P.S.: Всё пока на уровне теории. Но не прочь обсудить каждый из пунктов.
|
24 Jan 2024 09:41 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22827 Location: Silicon Valley
|
Я уже где-то озвучивал своё мнение по поводу нахлобучек на классические РК - проблема в том, что их в рабочем состоянии практически не осталось Например в 90-е это бы ещё имело бы смысл (см. тех же Акименко, Толкалина и т.д.), а в 20-е годы XXI века - уже вряд ли. В наше время намного проще развести абсолютно новую плату, воткнув туда вообще любые хотелки, заказать её оч.дёшево у китайцев в количестве 5 штук и спокойно собирать компьютер своей мечты
|
24 Jan 2024 10:37 |
|
|
Mondx
Doomed
Joined: 10 Aug 2022 07:27 Posts: 365
|
А какой он у тебя "компьютер твоей мечты"? И в чём его прелесть? В своё время склепал контроллер на z80 с видео на 8275. Ну так это бизнес был. И люди были довольны, и все. А тут? Заради чего? Мне понять сложно...
|
24 Jan 2024 11:00 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22827 Location: Silicon Valley
|
Всё заради славы
|
24 Jan 2024 13:09 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 329 Location: Tashkent
|
Интересный вопрос появился. Если в журнале РАДИО за 1993 год публиковалась схема КНГМД с ПЗУ на E000-EFFF, то возникает некий нюанс. После "Сброса" тригерром ТМ2 блокируется ИД7 до прихода A15 и DBIN, принудительно активируя выборку ПЗУ Монитора. Само ПЗУ обычно дублируется четыре раза по диапазону E000-FFFF. Получается, процессором после Сброса считывается команда JMP F836 с адреса 0000 и именно JMP снимает блокировку ИД7. (Иначе говоря, после Сброса ПЗУ с командой JMP 0036 также сработает в пределах ПЗУ, но ИД7 при этом не включается и всё РК'шное адресное пространство остаётся в "тени".) Что получается? - Заменив РФ2 на РФ4 на месте (без всяких КНГМД), Монитор будет стартовать с адреса E000 (формально: Логически - с 0000), тем самым, код нужно планировать со стартовой позиции по E000
- Если заменить РФ2 на своё или на РУ8/РУ10, при условии, что старшие 32 Кб мы не будем никак "трогать", процессор будет продолжать работать в "вакууме" (без ОЗУ, ПДП, ППА и т.д.) и все нижние 32 Кб можно искусственно "на макетке" создать свои (схема РК превратится в "отладочный комплекс")
Вот "Момент #2" - самый любопытный! Так как без перерезания дорожек мы имеем отключенный ИД7 и полные 32 Кб под своё распоряжение. Под "универсальную плату расширения" этот "режим" тоже надо учитывать!
|
26 Jan 2024 03:36 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22827 Location: Silicon Valley
|
Для того, чтобы стартовать с E000, придётся "резать дорожки" Ну либо сразу собирать себе RK86-SRAM32K
|
26 Jan 2024 10:09 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 329 Location: Tashkent
|
При внимательном изучении схемы (хотя бы тут, где лишь узел ВГ75 сильно пострадал), хорошо видно, что выборка ПЗУ D17 вырабатывается элементом D4.3, который смешивает сигналы от D11 вывод 7 и D13.1* вывод 5. *хотя на схеме указан D13.2, по нумерации выводов понятно, что это D13.1 (опечатка)Тем самым, ПЗУ Монитора выбирается при нажатии на кнопку Сброса, когда сбрасывается и D13.1. А так как процессор стартует с адреса 0000, то "притянутый за уши" ПЗУ насильно подключён к процессору. Из ПЗУ читаются три байта C3 36 F8 и процессор их читает при счётчике команд PC из 0000, 0001 и 0002. И только когда команда прочитана целиком и в PC записывается адрес F836, процессор следующую команду читает из адреса F836, вырабатывая "1" на DBIN и A15, которые идут через элемент D10.1 и устанавливают триггер D13.1* в "1", что разрешает работу дешифратора D11 и "отпускает уши" ПЗУ D17. А так как в оригинальной схеме ПЗУ D17 объёмом в 2 Кб подключено к ИД7 с параграфом в 8 Кб, оно дублируется в памяти четыре раза: E000-E7FF, E800-EFFF, F000-F7FF, F800-FFFF. Тем самым, если перетранслировать код Монитора на посадку в любые эти четыре "зеркала", он нормально запустится и будет работать. А вся суть в том, что если в ПЗУ прямо сейчас прошить подобный код: Вставить на место ПЗУ Монитора в РК-совместимый (максимально совместимый по схеме в указанных выше нюансах), то он будет работать с адреса 0000 совершенно нормально. При этом ИД7 будет продолжать быть "запертым".
|
26 Jan 2024 12:01 |
|
|
alexcp
Senior
Joined: 11 Jun 2012 07:30 Posts: 128
|
Запустится, но нормально работать не будет, потому что после сброса есть доступ только к ПЗУ, независимо от старших битов адреса. К ОЗУ доступа нет, а с ним нет и стека. Ввода-вывода тоже никакого нет, так что настроить ПДП не удастся. Ну а дальше любое чтение по любому адресу в верхних 32к - например, чтение из регистров ВГ75, которую Монитор настраивает в самом начале - включает ИД7 и возвращает распределение адресов в норму.
|
26 Jan 2024 14:02 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 329 Location: Tashkent
|
Тем самым, если вместо ПЗУ Монитора вставить свою платку и подтянуть к ней линии A11-A14, то теоретически можно подключить и схему адресного пространства ZX81, заимев 1 Кб ОЗУ (без графики, так как она требует A15)? Верно ли я понимаю (о чём и сама эта тема), что собрав на макетке свою схему с ПЗУ, ОЗУ (К537РУ8) - можно сам КР-03 использовать как "испытательный стенд" ( типа УМК) для экспериментов, "вертясь" в нижних 16 Кб (подключив ВГ75 по своей схеме, например)? Естественно, не перерезав ни одной дорожки!Вот именно, что ПДП и ВГ75 можно запустить только командами записи! (Код F3 поможет выровнять цикл ПДП под экран.) То есть, вставив в панельку под ПЗУ Монитора свою макетку с ОЗУ и ПЗУ, можно добиться и запуска отображения дисплея (не читая статуса ВГ75) и даже настроить ВВ55 и выводить на магнитофон звук с морганием индикатора "Рус/Lat"! А это уже не так и мало... Причём, вписывается в концепцию "универсальной платы расширения + отладки", позволяя экспериментировать с разработкой собственной архитектуры!
|
26 Jan 2024 14:21 |
|
|
alexcp
Senior
Joined: 11 Jun 2012 07:30 Posts: 128
|
Спорить не буду, но соглашусь с Шаосом - чем плясать от существующей железки, проще сделать новую. Благо дефицитные 40 лет назад микросхемы теперь (все еще) весьма доступны. Правда, кто и зачем будет писать софт под все это великолепие?
|
26 Jan 2024 16:42 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22827 Location: Silicon Valley
|
Ну "кто девушку ужинает, тот её и танцует" т.е. перефразируя классика - кто железо сделал, тот и софт пишет Я например под свои расширения планирую сам пописать...
|
26 Jan 2024 17:58 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 329 Location: Tashkent
|
В рамках разработки собственной архитектуры, нужна некая удобная готовая платформа. А окромя РАДИО-86РК я других и не знаю. Т.е. для меня РК будет работать как отладочный стенд. УПС!Вообще-то тема не про отладку, а про расширение! А все эти "трюки с дешифрацией" - поиск оптимальных решений с минимумом переделок самого РК. Вот, очень кстати, на мой взгляд, плата расширения с собственным ПЗУ и ОЗУ, которое может производить диагностические процедуры и прочие настройки. Т.е. после первого Сброса, перед передачей управления Монитору, пока в ОЗУ - один лишь квантовый мусор, таким образом может запускаться ПЗУ с платы расширения и, типа, запрашивать пароль к сети WiFi, чтобы потом директивы I/O Монитора могли принимать/передавать файлы в сетевой ресурс... Или эмулировать ROM-диск, чтобы по директиве R подгружать данный с сетевого ресурса (пусть даже с Raspberry Pi Zero). Здесь необходимо будет сосредоточиться на разработке оболочек и прочего ПО под это дело. (Пока я купил BlueTooth Receiver, чтобы избавиться от проблем с переходниками и статическим паразитным электричеством при передаче магнитофонных файлов.)
|
27 Jan 2024 01:00 |
|
|
imsushka
Senior
Joined: 01 Jan 2022 04:34 Posts: 180 Location: USSR, Tashkent
|
у РКшки всего 32кило памяти прог занимающих этот объем нет так что просмотреть прогу на предмет обращения к переферии не проблема (это не мегабайты как для виды/линукса дезассемблировать )
поэтому проще сделать все по новой чем пытаться что то изменить не обрезая проводники и опять таки нафиг 8080 с 3мя питаниями, проще з80
ностальжи должно быть в меру РК не синклер и даже не спец
|
27 Jan 2024 02:48 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 329 Location: Tashkent
|
Именно потому тот же Синклер с инженерной точки зрения не так интересен (собрал, отладил, загрузил, запустил, поиграл и... забыл), как Микро-80 и Радио-86РК. (У меня в 90-е КР-03 постоянно ломался и приходилось пропаивать. Тогда как ZX-Spectrum с десятками кассет стоял в углу стола и играл музыку: Лучшего применения не нашлось... )
|
27 Jan 2024 03:31 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22827 Location: Silicon Valley
|
в моём варианте 128кило памяти на такой частоте 580ВМ80А может и на одном питании выдюжить
|
27 Jan 2024 03:42 |
|
|
Who is online |
Users browsing this forum: No registered users and 1 guest |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|