#
  Железо  

Pentagon - Инструкция по переделке Спектрума для использования всей площади экрана.

<b>Pentagon</b> - Инструкция по переделке Спектрума для использования всей площади экрана.
 AlCo

   Сразу  же прошу выкинуть из головы весь
тот бред, который я грузил в прошлом номе-
ре... Как мне объяснили, замыкать ножки на
микросхемах  нехорошо, они  от этого могут
испортиться...На основании этих данных пу-
бликую окончательный результат моих экспе-
риментов над схемой отображения пентагона.
   Итак,
            Контакт v2.03!

   Цели, которые я преследовал,были следу-
ющие: позволить  использовать  всю площадь
экрана, включая бордюр,не добавляя к схеме
компьютера ни одной микросхемы; освободить
процессор от изнурительных трудов по пере-
ключению/перемещению экранных буферов; ис-
пользовать  при всем этом серийный сдвоен-
ный переключатель для включения/отключения
полученного рулеза.
   Но что  мы должны сделать в первую оче-
редь? Естественно, отыскать сигнал бордюра
(вот характерный участок схемы)...

    ║ │                    D10         ║
─┐  ║ │     D9     +5v 13┌─┬─┬─┐       ║
1├B3╢ │   4┌───┐  ___<┬──oR│T│ │       ║
2├B4╢ ├────┤ & │6 BOR │12├─┤ │Q│       ║
4├B5╢ │   5│   ├───x──┼──┤D│ │ │       ║
8├──╫─┘ ┌──┤ 1 │     ┌┼──/C│ │_│     C5║
 │  ║   │  └───┘     ││11├─┤ │Q├───────╢
>├┐ ║B1 │            │└──oS│ │ │       ║
─┘│ ╟───┼────────────┘ 10└─┴─┴─┘     C6║
──┘ ║   └──────────────────────────────╢

...и перерезать его (где поставлен крест).
Естественно, делать это надо при выключен-
ном компьютере :).Первый рулез будет виден
при включении компьютера: нет,не характер-
ный дымок, а то, что бордюр исчезнет, и на
его месте появятся следующие вещи:

       ┌───┬───┬───┬───┬───┬───┐
       │   │   │   │   │   │   │
       │ d │ a │ b │ c │ d │ b │
       │___╔═══╪═══╪═══╪═══╗___│
       │   ║   │   │   │   ║   │
       │ d ║ A │ B │ C │ D ║ b │
       │___║___│___│___│___║___│
       │   ║   │   │   │   ║   │
       │ h ║ E │ F │ G │ H ║ f │
       │___║___│___│___│___║___│
       │   ║   │   │   │   ║   │
       │ l ║ I │ J │ K │ L ║ j │
       │___║   │   │   │   ║___│
       │   ╚═══╪═══╪═══╪═══╝   │
       │   │  грязь всякая │   │
       └───┴───┴───┴───┴───┴───┘

   В основном это повторение уже существу-
ющего изображения. Нижняя часть читается с
адреса #5800,а атрибуты для неё - с адреса
#5B00.(Из этого вытекает,что пока её испо-
льзовать нельзя.)
   Для  начала и это неплохо. Я даже писал
бегущую строку через весь экран,переключая
с сумасшедшей  скоростью (и ювелирной точ-
ностью) экранные буфера.
   Можно, конечно,доверить это автоматике,
подав,например,бывший сигнал бордюра вмес-
то  номера  экрана на 13/D17. Но, поверьте
мне, это путь тупиковый.
   Давайте лучше выясним,из чего же состо-
ит сигнал бордюра:
 000000
 111111
 111111       D9
 111111     4┌───┐  ___  000000
 000000 ─────┤ & │6 BOR  011110
            5│   ├─────  011110
 011110 ─────┤   │       011110
 011110      └───┘       000000
 011110       ЛИ1
 011110
 011110
   Так вот,сигнал с четвёртой ножки мы по-
дадим...э-э-э... на какой же адрес его по-
дать?
   Давайте  введём названия для всех адре-
сов (не адресов процессора,а адресных вхо-
дов устройства управления памятью - УУП):

   A0,A1,A2,A3,A4,A5,A6,A7,
   A8,A9,A10,A11,A12,A13,
   P0,P1,P2.

   Сигналы P0-P2 - это в обычном понимании
биты номера странички,к которой мы обраща-
емся. Сигналы  A0-A12 уже использованы. На
странички пока зариться не будем. Остаётся
A13. А точнее - A13V, т.е.тот A13, который
подаётся на УУП видеоконтроллера(D16-D17),
в отличие от УУП процессора(D18-D19).В но-
рме  на  A13V  висит земля. А наш сигнал в
поле  основного экрана - единица. Придётся
поставить рубильник:
     ___
     BOR in         ___
    ─────────      BOR out
        +5v   ║──────────────
       ( <───)║
              ║
          ┌──   A13V (11/D17)
     4/D9 ┴    ──────────────
    ─────────

   Теперь  центральная  часть экрана будет
читаться с адреса #6000,а то,что по краям,
останется по старому адресу #4000.
   Думаете,уже всё? А вот и нет! Ведь вер-
хняя треть по-прежнему дублируется,а в ни-
жней - атрибуты и маска читаются из одного
и того же места.Посмотрим ещё раз на схему
пентагона и найдём сигнал P0V (14/D17), на
который подано +5v.Нашли? Так вот,эти пять
вольт мы перережем(кроя матом тех,кто про-
вёл эту дорожку под микросхемой) и заместо
них кинем сигнал 5/D9. Что мы получили:

                │        │
 4-я стр. #C018│ #E000  │#C008 4-я стр.
            ____╔════════╗____
                ║        ║
           #4018║ #6000  ║#4008
                ║        ║
            ────╚════════╝────
 4-я стр. #D818│ #F800  │#D808 4-я стр.
                │        │

   Остаётся сделать финальный рывок: отвя-
зать адреса атрибутов и маски друг от дру-
га таким образом, чтобы нижнюю треть стало
можно  использовать не только для атрибут-
ных скроллов. Найдите на схеме мультиплек-
сор, который коммутирует эти адреса:

                D14           ║
            ┌──┬──┬──┐        ║
 ─B12──────2┤A0│  │  │        ║
 ─B13──────5┤A1│  │Y0├4───B14─╢ (A8V)
  +5v  ├──11┤A2│  │  │        ║
   <──────14┤A3│  │Y1├7───B15─╢ (A9V)
 ─B6───────3┤B0│  │  │        ║
 ─B7───────6┤B1│  │Y2├9───B16─╢ (A10V)
 ─B8──────10┤B2│  │  │        ║
 ─B12─────13┤B3│  │Y3├12──B17─╢ (A11V)
            ├──КП11  │        ║
 ─C30──────1┤V │  │  │        ║
            ├──┤  │  │        ║
       ├──15┤W │  │  │        ║
            └──┴──┴──┘        ║

   Отрежьте +5v от 14/D14 (будьте осторож-
ны,не отрежьте питание у самой микросхемы)
и подайте  вместо  него  всё тот же сигнал
5/D9. Всё! Теперь атрибуты в самой верхней
и самой нижней третях берутся не из расчё-
та "все атрибуты  хранятся  по адресам 4-й
трети",а из расчёта "все атрибуты хранятся
по адресам 2-й трети", то есть,для верхней
трети по адресам #D000 и #F000, а для ниж-
ней - #D300 и #F300.Разумеется,в 4-й стра-
ничке ОЗУ.
   Второй  экран тоже можно использовать -
он разбросан по 7-й и 6-й страничкам.
   Кину,что ль,вам в БАРАХЛО исходник лис-
талки на 80 символов в строке(LISTER80.H).
А может,и ещё чего напишу,тоды тоже кину.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Presentation - история создания новой текстовой игры 'Кощеева Цепь'.
Scene - отчет Miguel/CPU о CAFe'2003.
scene intro - сценовое вступление.
Программирование - процедура печати сообщений в нижних строках экрана.
Подборкu C ZхNet - Sоlutiоn к uгре Lаst herо оf The LightFоrCe.

В этот день...   24 апреля