Компьютеры которые мы выбираем
От "Ленинграда" до "ATM"
© Вячеслав Толстой, г. Петрозаводск, 1994.
У меня есть маленький "Ленинград" и уже третий из семейства "ATM-TURBO" - "TURBO 2+". О них я и хотел бы поведать. Надеюсь, моя информация окажется полезной.
B прошлом письме я сообщал, что на "TURBO-2, 2+" не идут программы FCboot, DCU версий 2.02 и выше. $ нашел причину - это программы, которые защищены и проверяют факт нажатия кнопки MAGIC. Они используют три байта из ПЗУ TR-DOS по адресам 02559-02561. B моём компьютере по этим адресам находится подпрограмма из программы обработки клавиатуры IBM. Чтобы эти программы работали (и многие другие), необходимо перепрограммировать ПЗУ TR-DOS.
Для версии BIOS 1.06 необходимо внести следующие изменения: Ввести с адреса 02557:
#18, #03, #FF, #FF, #FF, #C3, #33, #3C C адреса 02565 до 02572 - #ff, C адреса 15411 ввести:
#62, #A2, #5C, #38, #0A, #00, #12, #00, #00, #21, #00, #00, #22, #FF, #81, #C9
Компьютер при инициализации проверит контрольную сумму ПЗУ TR-DOS, поэтому я изменил еще несколько байтов для восстановления общей суммы (обязательно) с адреса 04305: #FF, #FF, #FF, #FF, #75. Конечно, это по варварски, но мои познания в кодах не позволяют более детально осветить этот вопрос.
То же, для BIOS 1.07.00.
C адреса 02552: |
|
|
#C3, #33, |
#3C, |
#FF, |
#FF, #FF, |
#FF, |
#FF, |
#FF, #FF, |
#FF, |
#FF |
C адреса 04305: |
|
|
#FF, #FF, |
#51 |
|
C адреса 15411: |
|
|
#41, #3E, |
#01, |
#17, |
#EE, #00, |
#32, |
#FA, |
#10, #FD, #81, #C9
Наверное, я не нашел бы причину, если бы не мой маленький "Ленинград". Конечно, он у меня доработан и переработан по последнему слову. Так вот, последнее слово было такое. Вы много писали об использовании теневой области для загрузки в нее SOS. $ давно этим пользуюсь, но мне необходимо было исследовать различные версии TR-DOS (у меня "Ленинград", естественно, уже с дисководом), и я доработал схему следующим образом (см. схему).
За основу взята схема из ZX-РЕВЮ-94, № 2, стр. 52. Если у Вас в ПЗУ компьютера TR-DOS записана во вторую половину 27256, то схема подходит без изменений, Отключите сигнал "DOS CS" от 27 вывода и установите резистор 1 кОм на землю. Если TR-DOS в первой половине 27256, то вместо "DOS CS" подайте "инв. DOS CS" и резистор 1 кОм на +5В. Но на диод VD1 все равно придется подать "DOS CS".
к 10 выводу DD10.3
DOS CS - сигнал выборки ПЗУ TR-DOS DOS CS - инвертированный сигнал DOS CS
При помощи этой схемы я могу загрузить любую SOS и нормально работать с дисководом, а могу загрузить
КомпьютЕРы, которыЕ мы фышфяем
любую DOS и так же работать без каких то проблем с SOS. После загрузки в теневую область новой OS, необходимо включить переключатель "SOS", а если Вы исследуете DOS, то - переключатель "DOS". Схема проста и не требует обращения к портам ввода/вывода.
Хотел бы еще остановиться на одном вопросе. $ хочу расширить свой маленький "Ленинград" до 128 (256) кб, но не на РУ5, а на РУ7. Схем расширения на микросхемах 565РУ5 было напечатано предостаточно, а вот на 565РУ7 - ни одной, хотя сами подумайте: поставить 8 шт. РУ7 - 256К или 16 шт. РУ5 - 128К. Мне кажется, РУ7 -дешевле. В связи с этим возникает вопрос об использовании памяти свыше 128К. На страницах РЕВЮ уже освещались эти вопросы. Но вот в № 4 РЕВЮ за этот год в статье А. Ларченко и С. Зонова на стр. 17 я прочитал, что специалисты фирмы "ISKRA-SOFT" обеспечили электронную поддержку расширенной памяти "Скорпиона". Теперь понятно - для того, чтобы мне использовать максимальную память с IS-DOS, мне необходимо память свыше 128К ориентировать на порт расширения #1FFD. Это порт расширения "Скорпиона". Очень бы хотелось узнать значение битов этого порта, и можно было бы браться за расширение маленького "Ленинграда". Это важно знать и программистам, которые хотят полностью использовать память "Скорпиона".
К вопросу о стандартизации. Если такая система, как IS-DOS взяла порт расширения свыше 128К #1FFD, то, может быть, всем на это и ориентироваться. Аппаратно любой порт организовать достаточно легко.
Если у кого-нибудь возникнут вопросы или проблемы, сообщаю свой телефон в Петрозаводске:
(814) 2-28-45 Всегда рад помочь.