Pentagon 1024SL 1.4 - исправления, доработки...

Железо для спектрум-совместимых машин

Postby Northwood » Thu, 09.06.2016 14:25:03

И так, теперь доработки портов #FE (бордюр, бипер, запись на магнитофон), #1F (кэмпстон джойстик) и #DF (кэмпстон мышь).

1) Начнём с порта #FE на запись:

Дешифрация адреса порта сделана по единственному биту шины адреса - A0. В большинстве случаев ничего страшного. Но если, к примеру, запустить какую-нибудь программу, которая работает с контроллером NemoIDE или SMUC, то при его отсутствии получим цветной бордюр и щелчек в аудиоколонках, а это очень не красиво. Поэтому, даже если периферия подключается через ZX-Bus, где доступ к устройствам разделяется с помощью цепочки IORQG, всё-равно дешифрация порта #FE на запись должна обеспечить развязку конфликтов с этими устройствами. Как минимум, нужно ещё проверять биты A2 и A6 на уровень "1", чтобы при обращении к портам SMUC и NemoIDE байты не попадали в порт #FE.

Находим микросхему DD22.4 (ЛЛ1) и отрезаем сигнал "A0+" от выв.13. Допаиваем 2 новые микросхемы 1533ЛЛ1 и 1533ЛА3, или используем свободные элементы микросхем, допаянных в прошлых доработках, заводим на них A0+, A2 и A6 в соответствии с доработанной схемой.

2) Теперь порт клавиатуры #FE:

Что касается дешифрации, в принципе, к тому что проверяется один только бит A0, претензий нет. Но в схеме есть ошибка - не используемый бит D7 при чтении из этого порта читается как "0", а должна читаться "1", в результате многие тесты ругаются на некорректный порт клавиатуры.

Находим микросхему DD68 (КП11), отрезаем от 14-й ноги землю и подключаем к +5в.

3) И порт джойстика #1F:

Не понятно, зачем для его дешифрации проверяется бит A13 ??? Как я понимаю, это была неудачная попытка KOE развязать конфликт джойстика с мышкой. Порт #1F должен откликаться во всём диапазоне адресов от #001F до #FF1F, поэтому A13 там не нужен. А для того, чтобы полностью развязать конфликт со всеми возможными мышками - с Kempston и тем более с AMX, более жёстко дешифрировать надо только младший байт адреса. Для этого хорошо подходит бит шины адреса A7.

Находим микросхему DD23.2 (ЛЛ1), от выв.5 отрезаем сигнал "A13" и вместо него подключаем "A7".

Схемы для всех 3-х пунктов:

Оригинальная схема:Доработанная схема:
ImageImage


4) Кэмпстон мышь:

Во-первых, хочу настоять на том, чтобы отказаться от WAIT-овых мышек в принципе, ну а про использование COM-овских мышек даже не хочу разговаривать.

Расскажу только свои впечатления от попытки использования COM-овской мышкой в Pentagon-е 1024 SL1.4. Вначале я прошил PIC16C622 прошивкой Влада Сорокина, купил через Аукро 3 разные COM-овские мышки (продавались одним лотом), почистил их и проверил на ПЦ - две из них вполне нормально работали, одна Mitsumi, вторая A4Tech (вроде бы). Подключаю шлейф с COM-разъёмом к Спектруму, подключаю мышку Mitsumi, запускаю TEST 4.30 и проверяю. Это был страх и ужас - пытаюсь толкать курсор к нужной кнопке (именно что толкать, а не двигать), но он то дрыгается на месте, то пятится назад. Впечатления такое, как будто я в поте лица толкаю увязший в грязи автомобиль, а он не поддаётся.
Далее, включаю я турбо-режим 7 MHz, и как только дёргаю мышку, комп тут же зависает или сбрасывается. Стало понятно, что длительность сигнала WAIT, который генерирует контроллер на PIC-е, рассчитана только для частоты процессора 3.5 МГц. Для турбо 7 МГц длительность WAIT-а должна быть в 2 раза короче, иначе работа с ОЗУ нарушается.
Далее, подключаю я вторую мышку - A4Tech, а она на Спектруме вообще не заработала.

Короче, спрятал я подальше эти мышки и постарался забыть их как кошмарный сон. Начал искать варианты подключения мышек PS/2 на ATtyni2313, нашёл на форумах вариант, адаптированный под Pentagon-1024 SL1.4, где достаточно платку воткнуть в разъём вместо PIC-а, и типа всё должно заработать. Однако, я рассчитывал на без-WAIT-овый вариант, поэтому дорожку с WAIT-ом я от панельки давно отрезал. Прошил ATtyni2313, прошил Fuses в соответствии с описанием, и... ничего не заработало - как только я прикасался к мышке, комп моментально зависал или сбрасывался.

Начал рыть другие варианты, другие прошивки. В результате выяснил вот что: Тот вариант схемы и прошивки, который позиционировался как "Special for Pentagon-1024 SL1.4", как раз использует WAIT, поэтому пришлось его отбросить. Удалось найти прошивку, где самим автором прошивки было заявлено, что WAIT не используется. Прошил, включаю - комп не стартует вообще. Вытягиваю контроллер - комп работает, вставляю обратно - не стартует. Заглядываю в прилагающуюся схему, оказалось, что нужен буфер для коммутации доступа ATtyni2313 к шине данных.

Тогда я взял за исходный вариант самую первую схему, которая рассчитана для Пентагона-1024 1.4, только допаял туда буфер на 1533АП5. Но тут выяснилось, что в этом случае требуется доработка на самой плате Пентагона, т.к. в оригинальной схеме сигнал выборки контроллера мышки положительный, а на АП5 надо подавать инверсный, и, как оказалось, и на саму ATtyni2313 в этом варианте прошивки, так же нужен инверсный сигнал выборки. И тогда я подвёл инверсную выборку с выхода 1533ЛА2 на 2-ю ногу разъёма вместо WAIT-а, оставив на всякий случай на 3-й ноге положительный сигнал CS. Мышку купил Genius, самую дешёвую, с роликом прокрутки, попробовал в работе - просто сказка!

Однако, для полного счастья этого оказалось мало. Опять конфликт мышиного порта с джойстиком, только в этот раз уже гадит на шину данных при опросе джойстика, сама мышка. В оригинальной схеме для дешифрации мышиных портов используются следующие биты шины адреса: A0, A1, A2, A5, A12 и A15. Как оказалось, A1 здесь не особо и нужен, а вот для развязки конфликта с джойстиком, не хватает A6 или A7. Я решил выбрать A6, из известных мне периферийных устройств на Спектруме, конфликт только с ATM-овским IDE-контроллером, которого у меня никогда не будет. Однако, и в оригинальной схеме этот конфликт присутствует, так что отрезая сигнал A1, мы ничего не теряем. А заменив его на A6, мы полностью закрываем вопрос конфликта с джойстиком.

Что в конечном итоге получилось, смотрим на схемы:

Оригинальная схема:Доработанная схема:
ImageImage


И в таком случае, привожу схему контроллера мышки, который и работает у меня на Пентагоне-1024 1.4:

Image

Прошивка с фьюзами под этот вариант схемы, проверенная и рабочая здесь:
http://www.letitbit.com.ua/wknw18v3jmdk.html

Теперь в моём BIOS-е Кэмпстон джойстик проходит тест.
С уважением, Александр
Northwood
 
Posts: 19
Joined: Sun, 06.03.2016 12:28:59
ICQ: 52392561
LOCATION: г.Днепропетровск, Украина

Postby Northwood » Thu, 09.06.2016 16:11:29

И последнее из доработок, касающихся базовой работоспособности компьютера - стабильность шины данных в IM-2 в TR-DOS.

В дешифраторе портов TR-DOS очень не хватает проверки сигнала процессора "M1", в результате чего микросхема контроллера дисковода КР1818ВГ93 гадит на шину данных тогда, когда она должна быть свободна для вектора прерываний IM-2. Здесь достаточно решения, описанного в журнале "Инферно" % 9 - находим микросхему DD24.2 (ЛА3), от её 4-й ноги отрезаем сигнал "DOS*", и через дополнительный логический элемент "И" микросхемы 1533ЛИ1, заводим сигналы "DOS*" и "M1", как на схеме:

Оригинальная схемаДоработанная схема
ImageImage


На этом вроде всё. Дальше пойдут доработки, улучшающие его характеристики, а так же расширяющие функционал компьютера.

Следующий пост будет касаться расширения памяти до 4096 Кб, вопроса стандартного подключения музыкального сопроцессора в этом компьютере, и самое главное - доработка, кардинально разрешающая вопрос совместимости программ, использующих короткую адресацию порта #FD (INSULT Megademo, STS3.3 и т.д.) с портом #1FFD, при этом отключать порты расширения памяти не требуется.

Затем пойдёт турбирование Пентагона-1024 1.4, с разгоном памяти до 7 МГц. С того момента в первом посте буду постепенно рисовать новую схему компьютера "Пентагон-4096", с учётом всех доработок.
Last edited by Northwood on Sat, 11.06.2016 20:09:33, edited 1 time in total.
С уважением, Александр
Northwood
 
Posts: 19
Joined: Sun, 06.03.2016 12:28:59
ICQ: 52392561
LOCATION: г.Днепропетровск, Украина

Postby Northwood » Fri, 10.06.2016 21:25:28

Сегодня хочу предложить доработку - порт атрибутов (#FF) для компьютера "Pentagon-1024 SL 1.4".

Предлагаю сразу два варианта схемы. Первый вариант - тот который я себе собрал и проверил на двух фирменных игрушках - "ARKANOID-1" и "F.I.R.E". Мне удалось найти оригинальные TAP-версии этих двух игр, сначала я загрузил их на эмуляторе Unreal 0.38.2 для того, чтобы убедиться в том, что они не идут без порта атрибутов. Загрузил, запускаю игру, и мёртвое зависание. В эмуляторе включаю порт #FF - игра тут же начинает идти, выключаю порт #FF - игра замирает.

Тот вариант схемы порта атрибутов, который был собран мной раньше, я предлагать не буду, потому что ARKANOID-1 с ним таки не пошёл, хотя тесты и показывали наличие порта атрибутов. Сегодня я переделал порт, и получил отличные результаты - в Арканоиде всё красиво плавно летает, никаких дрыганий, щелчков, хрипов и т.д. Игра F.I.R.E. тоже нормально идёт. Если сравнивать с эмулятором, то на Unreal-е есть дрожание спрайтов, а на реальном Пентагоне всё работает намного красивее.

И так, доработанная и проверенная на двух фирменных играх схема. Скажу сразу, что я не захотел делать порт атрибутов #FF так, чтобы он на 100% соответствовал фирменному варианту. Но отличие от фирменного варианта только в том, что атрибуты читаются не из любого не задействованного порта, а только из #FF. Мне просто нравится идея, что на шине данных постоянно присутствуют атрибуты. Главная цель, которой я добился, - чтобы фирменные игры шли точно так же, как они идут на фирменном Spectrum-е.

Image

Микросхему 1533ИР23 удобно напаять или на DD78 (ИР22), соединив выходы микросхемы с выходами ИР22, которые подключены к шине данных (только не забудьте, что в оригинальной схеме Пентагона-1024 1.4 выход Q6 микросхемы DD78 не подключен к D6, но если вы уже сделали одну из прошлых доработок - чтение из порта #7FFD, тогда всё в порядке), и протянув 8 проводников со входов регистра атрибутов DD38 (ИР23) и от неё же проводок с тактовым сигналом. Или новую ИР23 можно напаять на саму DD38, соединив вместе входы новой ИР23 со входами DD38, заодно и тактовый сигнал (выв.11), но дотянув 8 проводников с выхода новой ИР23 на шину данных.

Но если кто хочет всё-таки собрать порт атрибутов наиболее соответствующий фирменному варианту, тогда вот вторая схема. Кстати, она при этом получается проще, т.к. отсутствует дешифратор порта #FF. Но в этом случае выходы новой ИР23 нельзя подключать напрямую к шине данных, а только через резисторы по 1 кОм. В этом варианте выбор места расположения новой ИР23 без вариантов - только сверху DD38.

Image

Что в первом, что во втором варианте порта #FF, фирменные игры будут работать абсолютно одинаково.
Last edited by Northwood on Sat, 11.06.2016 20:09:55, edited 1 time in total.
С уважением, Александр
Northwood
 
Posts: 19
Joined: Sun, 06.03.2016 12:28:59
ICQ: 52392561
LOCATION: г.Днепропетровск, Украина

Postby Northwood » Sat, 11.06.2016 19:34:09

Порт #FD, доработка подключения AY.

Сегодня я хочу привести очень важную доработку, без которой компьютер "Pentagon-1024 SL1.4" всё ещё трудно назвать Пентагоном.
Без неё не работают "Insult Megademo", "STS3.3", "XAS" и другие программы, использующую короткую адресацию порта расширения памяти "OUT (#FD),A". Причина банально простая - жёсткая дешифрация порта #7FFD с проверкой двух старших бит шины адреса A14 и A15 и наличие порта дополнительного расширения памяти и конфигурации #1FFD. Для того чтобы работали программы с короткой адресацией порта #FD, должна быть мягкая дешифрация порта #7FFD - с проверкой в старшем байте адреса одного единственного разряда A15, и при этом не должен срабатывать порт #1FFD.

И сделать это МОЖНО, даже не отключая порт #1FFD. Ещё давно в одном из журналов мне попалась одна интересная схема, которую я и применил в Pentagon-е 1024 SL1.4. Суть простая - схема отлавливает коды команд короткой адресации OUT (xx),A и IN A,(x) и на время их выполнения блокирует порт #1FFD и переводит порт #7FFD на мягкую дешифрацию, а со следующей команды снова разблокируется порт #1FFD и порт #7FFD становится жёстко дешифрирован. В результате работают Инсульты, STS3.3 и т.д., и для этого не надо отключать верхнюю память.

Что касается дешифрации младшего байта адреса, то для чего здесь A0, не понятно. А вот A2 не помешал бы для развязки конфликта с NemoIDE. Когда Вы запускаете программу, которая использует жёсткий диск, а у Вас нет такого контроллера, программа должна культурно об этом написать на экране, а не с грохотом упасть с непредсказуемыми результатами, и не дай Бог при этом ещё зажечь дисковод и вывалить какой-то мусор на дискету, убив нужную информацию.

И вторая доработка касается схемы подключения музыкального сопроцессора AY-3-8910. Самая большая претензия в том, что сигнал "М1" заведён на вход "BC2" AY, вместо того, чтобы подать его на дешифратор портов.

Вот выдержка из журнала "Инферно" № 9:

Плохо это по 2 причинам: во-первых,как видно из диаграммы работы с этими стробами АУка (BDIR, BC1, BC2), при неком 'хитром' состоянии шины адреса в момент считывания вектора IM2 в АУке может выбраться какой-нибудь 'левый' регистр, а во-вторых,схемы Turbo-Sound'а и Turbo-FM'а считают, что вход BC2 не задействован.
.

Глядя на схему TurboSound-FM, я не могу ни подтвердить, ни опровергнуть заявленное в журнале - оба сигнала BC1 и BC2 заведены на ПЛМ, но как используется сигнал BC2, знают только авторы TurboSound-FM.

Но есть ещё 2 причины, по которой я переделал схему подключения AY. 1 - старая проверенная годами схема в журнале Spectrofon №6 давно зарекомендовала себя с наилучшей стороны, а в ней M1 заведён именно на дешифратор портов, и 2 - если Вы захотите через переходник воткнуть AY-3-8912, то у него нету входа BC2, облом.

Думаю, что этого вполне достаточно для того, чтобы переделать схему включения AY. Но и это ещё не всё:

Аудиовыходы AY подаются через развязывающие конденсаторы ёмкостью 0.1 мкФ. Почему так мало ? Ведь не стоит же задача резать низкие частоты ? Поэтому меняем их на электролиты, хотя бы 4.7 мкФ, а лучше 10 мкФ. Далее, если Вы захотите объединить выходы AY с General Sound, то столкнётесь с ещё одной неприятностью - General Sound будет звучать раза в 3 слабее чем AY, судя по всему, внутренне сопротивление выходов AY значительно ниже, чем у GS, если хотя бы просто добавить 2 гасящих резистора по 10 кОм последовательно с электролитами, то громкости AY и GS уравняются.

А теперь реализация, смотрим на схемы:

Оригинальная схемаДоработанная схема
ImageImage


Дешифратор кодов команд OUT (xx),A и IN A,(xx) собран на элементах микросхем ЛА2 - 8И-НЕ (New_DD4.1), ЛН1 - НЕ (New_DD3.1, New_DD3.2) и на триггере ТМ2 (New_DD5.1). Код команды OUT (xx),A - #D3, а команды IN A,(xx) - #DB. В двоичном виде эти коды выглядят так:

#D3:
1 1 0 1 - 0 0 1 1

#DB:
1 1 0 1 - 1 0 1 1

Отличие между ними только в бите D3, именно поэтому он не используется в дешифраторе. Остальные 7 бит проверяются на соответствующие значения. Когда на шине данных встречается один из этих двух кодов, на выходе ЛА2 появляется уровень "0", во всех остальных случаях - "1". Если это код команды, извлекаемый из ОЗУ или ПЗУ, то активируется сигнал "M1", по которому триггер ТМ2 и принимает состояние с выхода дешифратора. Таким образом, когда процессор считывает из памяти код команды OUT (xx),A, триггер ТМ2 переходит в состояние "0". А когда процессор считывает следующую команду, то триггер возвращается обратно в состояние "1".

Когда ТМ2 переходит в "0", он через элемент ЛЛ1 (ИЛИ) New_DD1.2 активирует блокировку верхней памяти >128кБ (сигнал BLKR" ), а через элементы ЛЛ1 (ИЛИ) New_DD1.1 и ЛИ1 (И) New_DD2.1 превращает порт #7FFD в мягко-дешефрированный порт #FD.

1) На плате надо отрезать сигнал "BLKR" от входов микросхем DD11.3_выв.9 (ЛЕ1) и от DD75.1_выв.3 (ЛЕ1), и заменить его на сигнал "BLKR` ", формируемый схемой доработки.

2) Далее, от микросхемы DD25.1 (ЛЕ1) от её выв.2 надо отрезать старый сигнал "7FFD" и подать вместо него новый сигнал "FD/7FFD", формируемый схемой.

3) От микросхемы DD64 (ИД7) от её выв.6 отрезаем сигнал "A0" и вместо него подаём выход микросхемы ЛИ1 New_DD2.2, на входы которой подаются сигналы "A2" и "M1".

4) От музыкального сопроцессора AY от выв.28 (вход BC2) отрезаем сигнал М1, а вместо него подключаем +5в.

5) Конденсаторы C14 и C15 ёмкостью 0.1 мкФ меняем на цепочки из последовательно включенных электролита 10 мкФ и резистора 10 кОм.

После того, как вы соберёте схему этой доработки и всё правильно подключите, заработают Инсульты, и прочие программы, при этом одновременно сможете пользоваться RAM-дисками и прочими прелестями расширенной памяти.

Image Image Image
С уважением, Александр
Northwood
 
Posts: 19
Joined: Sun, 06.03.2016 12:28:59
ICQ: 52392561
LOCATION: г.Днепропетровск, Украина

Postby VBI » Sat, 11.06.2016 23:25:42

А что за частота, при которой 398 тысяч тактов?
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby Northwood » Sun, 12.06.2016 00:12:58

VBI wrote:А что за частота, при которой 398 тысяч тактов?

Это не 398 тыс тактов, это глюк программы. Если кол-во тактов достигает 100 тыс и появляется 6-й знак, то при повторном тесте остаётся лишняя цифра в конце. Когда я делал тот скриншот, я сделал снимок во время не завершённого пересчёта тактов, с лишним нулём в конце оставшемся от предыдущего цикла тестирования. Это не единственный глюк данной программы. При достижении кол-ва тактов 100 тыс, при печати старшая цифра накладывается на другую цифру, поэтому в старшем разряде получается мазня. Там ошибка процедуры печати 6х8. Horoor Test не способен корректно отобразить 6-значное число кол-ва тактов. Я все эти глюки пофиксил, где-то лежит у меня исправленная версия.
С уважением, Александр
Northwood
 
Posts: 19
Joined: Sun, 06.03.2016 12:28:59
ICQ: 52392561
LOCATION: г.Днепропетровск, Украина

Postby Northwood » Sun, 12.06.2016 17:00:37

Хочу спросить вашего совета:

Готовлю материал о расширении памяти Пентагона-1024 1.4 до 4Мб. Но есть один нюанс:

Изначально в этом компьютере 1Мб ОЗУ полностью по стандарту KAY-1024:

Page.bit 3 = #1FFD.bit 4
Page.bit 4 = #1FFD.bit 7
Page.bit 5 = #7FFD.bit 7

Как я уже говорил, я память расширил до 4Мб, полностью задействовав стандарт "Пентагон-1024":

Page.bit 6 = #7FFD.bit 6
Page.bit 7 = #7FFD.bit 5

Т.е. в качестве самого старшего адресного разряда ОЗУ используется бит блокировки #7FFD, соответственно сама блокировка отключена.

Таким образом, можно ничего не переключая, обращаться к 1Мб памяти как по одному, так и по другому стандарту. Кстати, к примеру, демка "Nedodemo" использует как раз стандарт "Пентагон-1024".

Имеется переключатель типов модулей SIMM "1Mb / 4Mb":
В положении "1Мб" работают как те, так и другие модули, естественно при этом доступно не более 1Мб по стандарту KAY-1024.
В положении "4Mб" работают только модули SIMM 4Mb, при этом доступен весь объём ОЗУ.

Так вот, нюанс:
Некоторые фирменные игры, например, "F.I.R.E." щёлкают бит блокировки #7FFD. Причём, "F.I.R.E." блокировку включает прямо находясь в верхних адресах #Fxxx, в результате чего игра сразу падает, т.к. переключается страница ОЗУ. Но если переключатель типов модулей SIMM переключить в положение "1Мб", тогда игра идёт нормально.

Теперь вопрос, как лучше всего сделать:

1) Довольствоваться одним переключателем типов модулей SIMM, т.к. в положении "SIMM 1Mb" работают фирменные игры, щёлкающие блокировку #7FFD;
2) Добавить отдельно переключатель отключающий расширение ОЗУ по биту блокировки #7FFD, тогда при использовании модулей SIMM 4Mb можно или задействовать всё ОЗУ, или будет доступно 2Мб, бит блокировки #7FFD при этом всё-равно ничего не будет делать;
3) Добавить отдельно переключатель отключающий расширение ОЗУ по биту блокировки #7FFD, тогда при использовании модулей SIMM 4Mb можно или задействовать всё ОЗУ, или будет доступно 2Мб, бит блокировки #7FFD при этом будет блокировать порт #7FFD.
4) Свой вариант...

?
С уважением, Александр
Northwood
 
Posts: 19
Joined: Sun, 06.03.2016 12:28:59
ICQ: 52392561
LOCATION: г.Днепропетровск, Украина

Postby VBI » Sun, 12.06.2016 18:13:50

Саш, ну вот заметь, что в тс-конф есть спец. переключатель блокировки 7ффд, именно по этому поводу
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby Northwood » Mon, 13.06.2016 00:11:35

Расширение памяти до 4 Мб.

Предлагаю доработку для расширения ОЗУ компьютера "Pentagon-1024 SL 1.4" до 4Мб с помощью замены 1-мБайтного модуля SIMM-30 pin на 4-мБайтный. Схема содержит переключатель типа модулей SIMM, так что в любой момент можно будет ставить как 4-х мБайтные, так и 1 мБайтные модули SIMM.

Напоминаю, что базовая модель памяти в данном компьютере полностью соответствует компьютеру KAY-1024, т.е:

PG0 = #7FFD.bit0 = 32 Kb
PG1 = #7FFD.bit1 = 64 Kb
PG2 = #7FFD.bit2 = 128 Kb

PG3 = #1FFD.bit4 = 256 Kb
PG4 = #1FFD.bit7 = 512 Kb
PG5 = #7FFD.bit7 = 1024 Kb.

Расширение до 4 Мб будет за счёт 2 дополнительных бит порта #7FFD:

PG6 = #7FFD.bit6 = 2048 Kb
PG7 = #7FFD.bit5 = 4096 Kb.

Т.е. за счёт использования бита блокировки порта #7FFD осуществляется доступ к верхним 2 Мбайтам ОЗУ. Таким образом, разными программами компьютер может быть опознан как KAY-1024 или как Pentagon-1024.

Для совместимости с некоторыми фирменными играми, авторы которых нередко любят щёлкать блокировку #7FFD, из-за чего некоторые из них не идут на таком расширении ОЗУ, например "F.I.R.E.", предусмотрена возможность переключения 5-го бита #7FFD с расширения памяти на блокировку #7FFD, но тогда максимально доступный объём ОЗУ будет 2048 Kb. Позже в свою прошивку BIOS я добавлю опцию для такого переключения.

Перед тем как собирать доработку, стоит изучить оригинальную схему расширения ОЗУ до 1 Мб. На схеме я привёл таблицу коммутации адресных сигналов модуля SIMM в данном компьютере. Все названия сигналов соответствуют принципиальной схеме, но с учётом предыдущей доработки (сигналы "BLKR' " и "FD/7FFD"). В круглых скобках в таблице я привёл расшифровку назначения сигналов в соответствии с описанием выше.

Image

Обратите внимание на сигнал "MEM2" и на логический элемент ЛЕ1 (DD75.2). Скажу сразу, это лишний логический элемент. Сигнал "1A", это инверсная версия сигнала "HL", который и так уже подан на мультиплексоры (КП12). Для чего его всунул KOE, остаётся загадкой, он только вносит дополнительную паразитную задержку сигнала. Вместо сигнала "MEM2" на КП12 лучше подать напрямую сигнал "Y2".

Поэтому, перед тем как Вы начнёте собирать доработку, предлагаю сразу избавиться от DD75.2:
1) Отрезаете 4,5 и 6 ноги микросхемы DD75.2;
2) К микросхеме DD29 (КП12) к выв.12, куда раньше приходил выход DD75.2, подключаете сигнал "Y2" с микросхемы DD33 (КП11) с выв.9.
3) Т.к. раньше DD75.2 инвертировал сигнал "Y2", то для того чтобы экраны вернулись на 5-ю и 7-ю страницы, от DD29 (КП12) от выв.10 отрезаете землю и вместо неё подаёте +5в.

Сразу можете проверить включив компьютер, если всё сделали правильно, то ничего в работе не изменится, зато освободился логический элемент ИЛИ-НЕ, который можно будет использовать в какой-нибудь доработке.

Теперь смотрим на новую схему:

Image

У нас добавляются микросхемы:
New_DD1 (КП12) - мультиплексор для дополнительного адресного разряда ОЗУ;
New_DD2 (КП11) - коммутатор для переключения типа модуля SIMM 4Mb / 1Mb;
New_DD3 (ЛИ3) - 2 элемента из 3-х;
New_DD4 (ТМ2) - 1 элемент из 2;
New_DD5 (ЛЕ1) - 4 элемента.

Впрочем, вместо New_DD5 можете использовать:
Вместо New_DD5.3 и New_DD5.4 - 2 свободных элемента ЛН1 от предыдущей доработки;
Вместо New_DD5.1 и New_DD5.2 - 2 любых из свободных элементов микросхемы DD75 - DD75.2, DD75.3 и DD75.4.

Под схемой я привёл две таблицы коммутации сигналов, первая, если переключатель типа модуля SIMM включить в положение "1Мб", и вторая - "4Мб". Как мы видим, 4-мБайтные модули имеют 1 дополнительный адресный разряд A10 (выв.19 модуля). Его надо отрезать от земли.

И так:

Отрезаем выв.19 модуля SIMM (A10) от земли, туда будет подан выход дополнительного мультиплексора КП12 (New_DD1.выв.7)
От микросхемы DD30 (КП12) от выв.4 и 6 отрезаем сигналы "A10" и "21", вместо них подаём сигналы "A10' " и "21' " с выходов New_DD2 (КП11) с выводов 7 и 4 соответственно.
Отрезаем выв.3 микросхемы DD25.1, проверяем, чтобы сигнал 7FD5 остался подключенным от микросхемы DD26 (ТМ9) выв.15 к микросхеме DD78 выв.14. Вместо него подключаем выход элемента New_DD3.1 (ЛИ3) выв.12.
Всё остальное собираем по схеме.

У нас добавляются микросхемы:
New_DD1 (КП12) - мультиплексор для дополнительного адресного разряда ОЗУ;
New_DD2 (КП11) - коммутатор для переключения типа модуля SIMM 4Mb / 1Mb;
New_DD3 (ЛИ3) - 2 элемента из 3-х;
New_DD4 (ТМ2) - 1 элемент из 2;
New_DD5 (ЛЕ1) - 4 элемента.

Впрочем, вместо New_DD5 можете использовать:
Вместо New_DD5.3 и New_DD5.4 - 2 свободных элемента ЛН1 от предыдущей доработки;
Вместо New_DD5.1 и New_DD5.2 - 2 любых из свободных элементов микросхемы DD75 - DD75.2, DD75.3 и DD75.4.

Под схемой я привёл две таблицы коммутации сигналов, первая, если переключатель типа модуля SIMM включить в положение "1Мб", и вторая - "4Мб". Как мы видим, 4-мБайтные модули имеют 1 дополнительный адресный разряд A10 (выв.19 модуля). Его надо отрезать от земли.

И так:

1) Отрезаем выв.19 модуля SIMM (A10) от земли, туда будет подан выход дополнительного мультиплексора КП12 (New_DD1.выв.7)
2) От микросхемы DD30 (КП12) от выв.4 и 6 отрезаем сигналы "A10" и "21", вместо них подаём сигналы "A10' " и "21' " с выходов New_DD2 (КП11) с выводов 7 и 4 соответственно.
3) Отрезаем выв.3 микросхемы DD25.1, проверяем, чтобы сигнал 7FD5 остался подключенным от микросхемы DD26 (ТМ9) к микросхеме DD78 (ИР22 по полной схеме, на схеме доработки нету) выв.14. Вместо него подключаем выход элемента New_DD3.1 (ЛИ3) выв.12.
4) Всё остальное собираем по схеме.
5) Переключатель типа модуля SIMM "4Mb / 1Mb" подключаем к точке с сигналом "1M/4M" (микросхемы New_DD2 (КП11) выв.1 и New_DD3.2 (ЛИ3) выв.5) и к земле.
6) Переключатель бита блокировки #7FFD подключаем к точке с сигналом "4M/BLK" (микросхема New_DD5.4 (ЛЕ1) выв.2 и 3) и к земле.

Позже вместо переключателя бита блокировки будет подключен выход порта, который будет управляться BIOS-ом.
В качестве переключателя типа модуля SIMM предполагается использование джампера на новой плате.
С уважением, Александр
Northwood
 
Posts: 19
Joined: Sun, 06.03.2016 12:28:59
ICQ: 52392561
LOCATION: г.Днепропетровск, Украина

Previous

Return to Hardware

Who is online

Users browsing this forum: No registered users and 1 guest

cron

x