PDA

Просмотр полной версии : Beta Disc Interface



Addison
24.08.2006, 17:12
Возможно т

ZEK
24.08.2006, 17:33
Оригинал и наши клоны делались на WD1793 (КР1819ВГ93 помоему)
логика вроде как отличаться не должна так как не работала бы TR-DOS. Суть контролера в том что бы при переходе на адреса 3Dxx отключать ПЗУ на плате и подставлять туда свое (с прошикой TR-DOS) а в случае 128 машинок отключине происходит только если включенно ПЗУ48. Во время включения ПЗУ TR-DOS становятся доступны порты ВГ93 и порт управления/статуса BDI в принципе все. Тебе надо будет выбирать от варианта твоего спека (48/128) так же спек расширяли заменой пзу 16К(32К) на 64К и использовали BDI без ПЗУ (NEMO BDI вроде такой)

ZEK
24.08.2006, 17:53
>> Вообще на пентагоне было пзу 32 кб причем 16 кб были какраз от тр-доса...
Я прав, можно ли также сделать с +3?

На пентагоне 64к + 2к (1991г. вариан) в допПЗУ прошит драйвер принтера если так можно выразиться.

А в +3 надо смотреть как щелкаются банки ПЗУ, к тому же вроде в +3 (может и вру) переключается раскладка памяти и это дело рилиться портом 1FFD который в отечественном софте очень активно юзается, потенциально из за этого можнет софт не работать

Отсюда вывод что возможно прийдется сделать отключалку порта 1FFD (если там это ваще возможно) и переделать в духе TR-DOS переключение ПЗУ

Grand
25.08.2006, 03:50
1. Мне нужно схему BDI чтобы все было нормально видно, названия, электрические связи, элементы, желательно которая получше в плане работы и запчастей.Есть публикация схемы в книге "Периферия своими руками", Инфорком, 1994. Жаль, что до сих пор никто не сделал электронную версию этого издания...

2. Кто может ответить на вопрос, чем нашь BDI клоны отличались от оригинала?Было например отличие в диапазоне адресов входа: 15616...15871 вместо 15360...15615.

jtn
29.08.2006, 13:44
Есть публикация схемы в книге "Периферия своими руками", Инфорком, 1994. Жаль, что до сих пор никто не сделал электронную версию этого издания...во, у меня как раз такие платы есть чистые
в n-ом количестве

spensor
26.10.2006, 14:45
Возник вопрос на который сам не могу найти ответ...
Как известно вход в TRDOS происходит если установить ПЗУ BASIC48 (бит D4 7FFD равен 0) и произвести чтение команды по адресам #3D00-#3DFF. В этом случае сработает (установится) триггер BDI, ПЗУ подменится на прошивку TRDOS и порты FDC и FF откроются на доступ.
Возврат триггера BDI в исходное состояние (сброс) возможен по сигналу /RESET либо по второму условию. Вот собственно со вторым условием и загвоздка. В общем случае триггер переключится если обратится в ОЗУ. Но поскольку сам TRDOS имеет доступ к области ОЗУ (работа с системными переменными, чтение/запись данных), то логично предположить, что должно происходить не просто обращение, а чтение кода команды (/MREQ=0, /M1=0). Собственно так и построена схема формирования сигнала переключения триггера в Пентагон128. НО, совсем другую картину мы можем наблюдать в NemoFDC - сброс триггера осуществляется сигналом WAIT (в KAY торможение процессора происходит при обращении только к ОЗУ) - косвенный признак работы с ОЗУ...
Кто что думает по этому поводу? Как оно работает?

Максагор
26.10.2006, 18:07
В общем случае триггер переключится если обратится в ОЗУ. Но поскольку сам TRDOS имеет доступ к области ОЗУ (работа с системными переменными, чтение/запись данных), то логично предположить, что должно происходить не просто обращение, а чтение кода команды (/MREQ=0, /M1=0).

Именно так переключение и происходит - по чтению кода команды, а не просто по обращению. Читать записывать байты в ОЗУ можно просто так...

jtn
26.10.2006, 21:40
бит D4 7FFD равен 0
1 всё-таки. а в некоторых компах и по ресету, и при том что 7ффд также сбрасывается в нуль, то попадаем в "скрытые" 16к - теневое пзу (на профи так)

НО, совсем другую картину мы можем наблюдать в NemoFDC - сброс триггера осуществляется сигналом WAITэто видно какая то хитрая мысль к.Немо (контроллер не заработает нигде кроме его компов), а Максагор все правильно написал

spensor
27.10.2006, 10:18
1 всё-таки. а в некоторых компах и по ресету, и при том что 7ффд также сбрасывается в нуль, то попадаем в "скрытые" 16к - теневое пзу (на профи так)
упс... ошибся. Правильно 0 - BASIC128, 1 - BASIC48.


это видно какая то хитрая мысль к.Немо (контроллер не заработает нигде кроме его компов), а Максагор все правильно написал
Вот тут как раз все очень даже интересно - в схеме KAY ничего эдакого нет, обычная архитектура. Более того я собирал NemoFDC на макетной плате и подключал к Ленинград-2, оно прекрасно работало! А вот теперь решил разобраться как, и был ошарашен. Nemo однозначно высококласный схемотехник!

ZEK
28.10.2006, 03:19
А вот теперь решил разобраться как, и был ошарашен. Nemo однозначно высококласный схемотехник!
Я бы сказал комбинаторик, учитывая как он называл свое творение - синхронная машина состояний, то он явно был в восторге от научной подоплеки цифровой схемотехники. Вотъ

spensor
30.10.2006, 10:17
Схема, спроектированная как конечный автомат, вызывает большее доверие, чем разработанная "по правилам магистров джедая".
Тем не менее это "чудо враждебной техники" работает, и работает очень хорошо. И очень хочется понять КАК!? Мож всетаки кто-то выдвинет предположение?

Ronin
30.10.2006, 18:28
Тем не менее это "чудо враждебной техники" работает, и работает очень хорошо. И очень хочется понять КАК!? Мож всетаки кто-то выдвинет предположение?

смотрим схему ВНИМАТЕЛЬНО !!!
триггер tr-dos сбрасывается после ДВУХ wait-ов подряд не разделенных обращением к пзу (CSROM) ! дальше рассказывать или уже понятно :)

spensor
31.10.2006, 09:54
триггер tr-dos сбрасывается после ДВУХ wait-ов подряд не разделенных обращением к пзу (CSROM) ! дальше рассказывать или уже понятно
Ну до двух WAIT я и сам дошел, а вот дальше как раз непонятно. Если бы мы сначала прочитали 2 (1 байт?) байта данных, а потом начали бы выполнять команды из ОЗУ это было-бы понятно. А так чет не очень...
Так что просьба продолжить!

spensor
01.11.2006, 10:41
Вопрос все еще актуальный!

Ronin
03.11.2006, 10:28
блин, я тут с аспирантурой бегаю, потому не смог сразу нормально в схеме порыться. плюс под рукой схемы не было :) но вчера посмотрел. итого:
1. выход из dos осуществляется по ОДНОМУ wait-у (второй триггер - для NMI).
2. теперь смотрим схему KAY-256 (not turbo) и ясно видим что wait бывает ТОЛЬКО при M1/=0, т.е. только при выборке КОПа.
3. берем схемы KAY-256/1024turbo и видим несколько более хитрую схему на КП12 и ТМ8, но с тем же результатом - при no turbo - wait бывает только при M1.
4. ломаем голову с turbo режимом и осеняемся тем что turbo при dos-е отключено :)

spensor
03.11.2006, 11:25
Спасибо за комментарии и разъяснения! Правда одно непонятно - подключал самоделку к Ленинград2, все работало. Или возможно что-то и было, но я списал на несовместимость Л2 с Пентагон...
PS: Перепроверю, возможно это еще не конец дискуссии.

jtn
03.11.2006, 11:50
Правда одно непонятно - подключал самоделку к Ленинград2, все работалотак ленинград также точно генерит вайт по м1

spensor
03.11.2006, 15:02
так ленинград также точно генерит вайт по м1
Внимательно пересмотрел схему (именно Ленинград-2), создается впечатление что /M1 вообще никуда не идет с проца...