Inferno #02
01 мая 2001
  Железо  
  ATM Turbo  

For Coderz - Описание персонального компьютера ATM-TURBO 1.

<b>For Coderz</b> - Описание персонального компьютера ATM-TURBO 1.
   Персональный компьютер ATM-TURBO 1
         Платы версии 4.10-4.50

          Техническое описание
                   и
       руководство программиста.

(C) MicroArt
(C) 1995 MaxSoft (?)

Структура памяти и портов ввода вывода.

           1. Системный порт

          Адрес доступа: #FDFD
    Выборка: A1=0, A9=0, A15=1, WR=0

D0 - EA16 \используется для переключения
D1 - EA17 /4-х банков озу (512к)
D2  - RA16 выбирает какой банк пзу 27010
подключен "0" - BIOS+SP128+TR-DOS+SP48
          "1" - ROM DISK
D3  -  CPNET "1"-в этом разряде информи-
рует,  что  компьютер  является сетевым,
при  этом в режиме SPECTRUM, при попытке
выхода  в  TR-DOS мы попадаем по тому-же
адресу,  но  в  пзу  с BIOS (в программу
связи  по  сети,  которую M-ART так и не
написал ;-)). Необходимо устанавливать в
"0".
D4  -  TON "1"-в этом разряде подключает
эквивалент  нагрузки  к телефонной линии
(снимает  трубку). Необходимо устанавли-
вать в "0"
D5 - TNAB используется для набора номера
телефона    ("1"-линия   замкнута   "0"-
разомкнута)

          2. Порт SPECTRUM-128
          Адрес доступа: #7FFD
   Выборка: A15=0, _A9=1_, A1=0, WR=0

D0 -PAGE0 \  Определяет какая страница
D1 -PAGE1  > впечатана с адреса #C000
D2 -PAGE2 /  (выбор банка-см. порт
             #FDFD)
D3 - SCREEN Этот разряд определяет в ка-
кой  странице  будет  находится экранное
озу.
 В режиме "SPECTRUM":
 0- 5-я страница (с адреса #4000).
 1- 7-я страница.
 в режиме CP/M:
 0- 5-я страница точки, 1-я атрибуты.
 1- 7-я страница  точки, 3-я атрибуты.
D4 - ROM2 Этот сигнал выбирает какая пзу
подключена  BASIC-128  (1)  или BASIC-48
(0).
D5  -  LOCK записав в этот разряд "1" мы
запрещаем  дальнейшую  работу  с  портом
#7FFD  (это сделано для полной совмести-
мости с SPECTRUM-48).

   Карта памяти для различных режимов работы компьютера.
┌─────┬────────────┬───────────┬──────┬──────────┬─────────┐
│mode │Spectrum-128│Spectrum-48│TR-DOS│CPM-system│CPM-users│
│roms │   ROM2=1   │  ROM2=0   │ ROM2- значения не имеет   │
├─────┼────────────┼───────────┼──────┼──────────┼─────────┤
│#0000│   ROM-2    │  ROM-3    │ROM- 1│  ROM-0   │  RAM-0  │
│#4000│   RAM-5    │  RAM-5    │RAM- 5│  RAM-5   │  RAM-4  │
│#8000│   RAM-2    │  RAM-2    │RAM- 2│  RAM-2   │  RAM-2  │
│#C000│см.состояние портов #7FFD #FDFD│RAM-1или 3│  RAM-3  │
└─────┴────────────┴───────────┴──────┴──────────┴─────────┘

 В  режиме  ZX-SPECTRUM  в окне с адреса
#C000  может быть влючена любая страница
с  0  по  #1F  (это зависит от состояния
порта #7FFD и 2-х младших бит #FDFD)
CPM-system  -  режим когда активно пзу с
монитором (работа с экраном, стандартные
процедуры  ввода/вывода  с дисков, опрос
клавиатуры, прерывания)
CPM-users - режим когда активна програм-
ма  пользователя  (в  окне  0 страница 0
озу, в окне 1-страница 4). При чтении из
порта  принтера  шина  A7  устанавливает
состояние сигнала CPSYS этот сигнал слу-
жит  для принудительного отключения всех
возможных  пзу  SPECTRUM и подключения с
адреса #0000 пзу с BIOS CP/M. (0-я часть
27512) IN A,(#7B) выключает CPSYS (с ад-
реса   0   подключается   одно   из  пзу
SPECTRUM)  IN  A,(#FB) включает CPSYS (с
адреса 0 подключается пзу с CP/M-BIOS)

       3. Чтение телефонной линии
          Адрес доступа: #7FFD
    Выборка: A15=0, A9=1, A1=0, RD=0

 Так-же порт  #7FFD  доступен по чтению.
D0 - 1-указывает, что в телефонной линии
есть  сигнал  вызова  (звонка) остальные
биты порта не задействованы.

             4. Чтение АЦП.
          Адрес доступа:#7DFD
     Выборка:A15=0, A9=0, A1=0,RD=0

 Используется  для чтения состояния АЦП.
Если  АЦП не закончило цикл преобразова-
ния  данных,  процессор притормажимается
сигналом WAIT.

  5. Порты музыкального сопроцессора.
       Адрес доступа:#BFFD, #FFFD
       Выборка: A15=1, A9=1, A1=0

Используются  для программирования музы-
кального  синтезатора  AY-8910(12). (см.
описание "SPECTRUM-128 для пользователей
и программистов")

      6. Порт принтера и порт ЦАП.
           Адрес доступа:#FB
        Выборка:A0=1, A1=1, A2=0

На  плате  реализован стандартный интер-
фейс  CENTRONIX.  Он не требует ни какой
предварительной инициализации.

Состояние сигналов при чтении:
D7 - состояние сигнала BUSY принтера.
D6 - Напряжение в телефонной линии 1- 60
вольт 0- > 15 вольт (линия занята)
A7 - сигнал CPSYS (cм. выше)

 Стандартный драйвер  вывода  на принтер
символа из регистра C:

OUT_PRN IN A,(#7B)   ;(для СPM - #FB,
                     ;иначе переключится
                     ;пзу)
        RLCA
        RET  C       ;C FLAG =1 возврат
                     ;(принтер не готов)
        LD   A,C
        OUT  (#FB),A ;выводим данные
        OUT  (#7B),A ;импульс строб
        OUT  (#FB),A ;сброс строба
        RET          ;C FLAG =0
                     ;байт послан

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


   7. Интерфейсный порт ввода/вывода
           Адрес доступа:#FA
       Выборка: A0=0, A1=1, A2=0

Стробы  IOWR,  IORD этого порта выведены
на  системный  разъем  компьютера, с по-
мощью  этого  порта, и порта CENTRONIX к
компьютеру    можно    подключить    256
устройств  ввода и 256 устройств вывода,
при  сохранении  полной  совместимости с
оригиналом.  При этом, адрес порта запи-
сывается  в  CENTRONIX  по  команде  OUT
(#FB),A  а данные считываются по команде
IN  A,(#FA), или записываются по команде
OUT  (#FA),A.  Шина  данных  на  разъеме
буферизированна.  Для сохранения совмес-
тимости  все  новые  разработки рекомен-
дуется подключать используя исключитель-
но этот порт.

           8. Запись палитры
          Адрес доступа:#7DFD
       Выборка: A15=0, A9=0, A1=0

Код  цвета,  палитру  которого вы хотите
установить должен быть выставлен на пор-
те BORDER (не забудьте о 3-м (инверсном)
бите  цвета, который должен передаваться
через шину A3). Для того чтобы бордюр не
мигал,  запись  необходимо синхронизиро-
вать  с прерываниями. Число записываемое
в  порт  #7DFD  должно нести в битах 0-5
информацию  об интенсивности bgrBGR сос-
тавляющей для данного цвета. Для каждого
луча R, G, B можно задать 4 интенсивнос-
ти.


          9. Порт клавиатуры
           Адрес доступа:#FE
    Выборка: A0=0, A1=1, A2=1, RD=0

D0 -KD1\
D1 -KD2 \
D2 -KD3  клавиатурные входы данных
D3 -KD4 /
D4 -KD5/
D5  -ADD чтение 1-битного сигнала из те-
лефонной линии.
D6 -TIN Сигнал чтения с магнитофона.
D7  -Z  Системный сигнал от ПЛМ, На этом
сигнале  построена защита от копирования
плат.  Сигнал активизируется через опре-
деленное количество тактов после прихода
прерывания (точно не помню какое). Прог-
рамма, подсчитывая это количество, полу-
чает  байт, который является ключем рас-
паковки из пзу BIOSа и BDOSа.

A8  -KA0\
A9  -KA1 \
A10 -KA2  \
A11 -KA3   \ адресные линии клавиатуры
A12 -KA4   /
A13 -KA5  /
A14 -KA6 /
A15 -KA7/


            10. Порт бордюра
           Адрес доступа:#FE
    Выборка: A0=0, A1=1, A2=1, WR=0

Этот  порт несколько отличается от стан-
дартного  SPECTRUM.  Дело  в  том, что в
CP/M  бордюр  (как  и экран) может иметь
любой  из шестнадцати цветов (из палитры
64)  поэтому потребовался дополнительный
бит цвета, который был заведен на инвер-
сный  A3.  Так-же  на этот порт заведено
несколько новых сигналов расширения, что
очень  мешает совместимости компьютера c
фирменным.

D0 -BRD0\
D1 -BRD1 цвет бордюра
D2 -BRD2/
D3 -TAPEOUT Выход на магнитофон
D4 -SOUND   Выход на динамик
D5 -не используется
D6 -не используется
D7 -не используется
A3 -BRD3 - 3-й бит цвета (инверсный)
A5 -RG1  \определяет видеорежим экрана
A6 -RG0  /(см. ниже)
A7 -CPUS 0- в этом разряде отключает пзу
и  вместо  него  подключает 0-ю страницу
озу, при этом с адреса #4000 подключает-
ся  4-я  страница озу (вместо стандартно
включенной 5-й). Это необходимо для нор-
мального функционирования CP/M.

             Режимы экрана:

RG0=1 '& RG1=0 - запрещенное состояние
RG0=0 '& RG1=0 - 320x200 точек
RG0=0 '& RG1=1 - 640x200 точек
RG0=1 '& RG1=1 - экран Sinclair

Программистам  необходимо  помнить,  что
при  переключении из режима Sinclair эк-
рана  и экранов высокого разрешения, пе-
репутывается адресное пространство озу а
именно A5, A6, A7 и A8, A9, A10 соответ-
ственно, т.е. если вы хотите переключить
режим  экрана  -  программа переключения
должна  занимать  не  более  32  байт  и
располагаться  по  адресу  с одинаковыми
A5, A6, A7 и A8, A9, A10 соответственно,
иначе ваша программа зависнет!



Другие статьи номера:

For Coderz - алгоритм перевода цветного Спекрумовского изображения в градации серого.

Inferno - Управление оболчкой журнала.

For Coderz - Апаратные ошибки компьютера ATM-TURBO.

For Coderz - Описание персонального компьютера ATM-TURBO 1.

For Coderz - Описание персонального компьютера ATM-TURBO 2+.

For Coderz - как программно определить количество тактов в строке у машины, оснащённой портом #FF.

Шелезяка - Приставка к телефону для устранения шумов и щелчков.

Шелезяка - Pagemaker: доработка отображающая ткущий номер страницы памяти.

Шелезяка - NEW BRIGHT: полноценно шестнадцати цветный режим.

Интервью - интервью с предводителем Самарских спектрумистов Unbel!ver/XTM.

Others - итоги несостоявшегося анкетирования.

Others - ROMкадром (юмор).

Others - Safemode: компьютерные преступления и информационная война.

Others - Мысли вслух: "Все ваши мысли о том, что Sрeccy уже загнулся, являются полнейшим бредом..."

Sofтинка - описание нового текстового редактора ZX-WinWord V3.0.

Sofтинка - описание нового текстового редактора ZX-WinWord V3.0 (Oberon Creative Pack).

Sofтинка - File Extractor: файловый извлекатель.

Gameland - Как написать игру. Том 3. Часть первая.

Gameland - Как написать игру. Том 3. Часть первая.

Gameland - последняя демоверсия спекрумовской версии знаминитой амижной игрушки WALKER.

Gameland - 3-я демоверсия игры Wolf 3D.

Самиздат - Dragonland: Презентация.

Самиздат - Dragonland: Дикий мед.

Самиздат - Dragonland: Когда идет дождь...

Самиздат - "Незаконнорождённый АльХимик доктор Фауст Пернатый Змей" №1.

Самиздат - "Незаконнорождённый АльХимик доктор Фауст Пернатый Змей" №2.

Самиздат - Нечто вроде Кашпировского....

Мыльница - Письмо в никуда.

Inferno - Авторы.

Inferno - Вступление.


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

Похожие статьи:
Сделай сам - контроллер принтера на ZX Spectrum. Доработка контроллера дисковода ФАПЧ.
Bиpусы нa Спектpуме - как написать свой вирус.
Новинки ПО - Зa тот пeриод, прошeдший с момeнтa выxодa пeрвого номeрa Sinc re-Stared, отeчeствeннaя crack сцeнa в лицe Slider'a, Gооdbоу'я и группы Triumрh буквaльно зaвaлили интeрнeт рeлизaми зaрубeжныx игрушeк...
Разное - Глюкодром.
Иной - скеси-ссака (3).

В этот день...   21 ноября