City #05
21 марта 1999

Ликбез - полное описание + полный дизассемблер ПЗУ (часть1).

---------------------------------------------------
                     ЛИКБЕЗ
---------------------------------------------------

(c) П.Ю.Федин

╔═════════════════════════════════════════════════╗
║                                                 ║
║    ПОЛHОЕ ОПИСАHИЕ + ПОЛHЫЙ ДИЗАССЕМБЛЕP ПЗУ    ║
║                                                 ║
║              TR-DOS 5.04T (5.03)                ║
║                                                 ║
║              ДЛЯ ПРОФЕССИОНАЛОВ,                ║
║                                                 ║
║               А ТАКЖЕ ДЛЯ ТЕХ,                  ║
║                                                 ║
║             КТО ХОЧЕТ ИМИ СТАТЬ.                ║
║                                                 ║    
╚═════════════════════════════════════════════════╝

                     Введение.

  В нашей стране из всех существующих дисковых  ин-
терфейсов распространение  получил  интерфейс BETA-
DISC с дисковой операционной  системой TR-DOS фирмы
Technology Research Ltd. Эта  система  имеет  много
преимуществ перед системой, использующей в качестве
устройства  внешней памяти магнитофон. Операционная
система  находится  в  теневом ПЗУ и использует 112
байтов оперативной памяти  для размещения системных
переменных, а непосредственно во вpемя работы с ка-
талогом диска еще и буфер размером в 257 байтов.При
этом  система  совместима с мифическим устройством,
известным под  названием ИHТЕPФЕЙС-1. Данная версия
TR-DOS была изготовлена в 1991 году фирмой CRAFT.

                 Диски и дисководы.

  Интерфейс  поддерживает   дисководы   одинарной и
двойной  плотности,  одно- и двухсторонние. Но раз-
личные версии TR-DOS накладывают ограничения на па-
раметры дисководов. С TR-DOS 5.04T  будут  работать
только  дисководы  с временем перемещения головки 6
мс. Учтите также,что дисководы разных типов не все-
гда совместимы между собой.Степень их совместимости
показана в таблице:
╔════════════╤═══════════════════════╗
║            │       Дисководы       ║
╟Формат диска├─────┬─────┬─────┬─────╢
║            │SD,SS│SD,DS│DD,SS│DD,DS║
╟────────────┼─────┼─────┼─────┼─────╫
║   SD,SS    │  C  │  ?  │  N  │  N  ║
║   SD,DS    │  C  │  C  │  N  │  N  ║
║   DD,SS    │  R  │  ?  │  C  │  ?  ║
║   DD,DS    │  R  │  R  │  C  │  C  ║
╚════════════╧═════╧═════╧═════╧═════╝
Здесь:
SD - 40-дорожечный
DD - 80-дорожечный
SS - односторонний
DS - двухсторонний
C - совместим полностью
R - совместим только при чтении
N - несовместим вообще
? - несовместим, но на некоторых  дисководах  может
    быть совместим
   
                    Автозагрузка.

  Если TRDOS запускается с адреса 0  (после нажатия
RESET в 48К компьютере  или  программно),  то после
инициализации компьютера  система выбирает дисковод
A и пытается загрузить с него и  запустить  бейсик-
программу "boot". Если в дисководе нет диска или на
диске  нет  этой  программы, то  на экран выводится
подсказка и TR-DOS переходит в режим ввода команд.
  Внимание!Не оставляйте диск в дисководе при вклю-
чении или отключении питания, так как он может быть
испорчен!

              Автопроверка дисководов.

  При первом обращении к дисководу TR-DOS автомати-
чески проверяет  его параметры и заносит в соответ-
ствующие системные  переменные.  Определяется  ско-
рость перемещения  головки  дисковода  и количество
дорожек.
  Внимание!В подпрограмме есть ошибки (полный пере-
чень ошибок ПЗУ TR-DOS смотрите в конце описания).
   
      Краткий перечень команд TR-DOS 5.04T.

╔═══════╤═════════════════════════════════════════╗
║Команда│                  Функции                ║
╟───────┼─────────────────────────────────────────╢
║   *   │Установка дисковода по умолчанию         ║
║   40  │Информирует TR-DOS, что дисковод 40-дор. ║
║   80  │Информирует TR-DOS, что дисковод 80-дор. ║
║  CAT  │Вывод каталога диска                     ║
║ CLOSE#│Закрытие файла данных                    ║
║ COPY  │Копирование файлов при двух дисководах   ║
║ COPY S│Копирование файла при одном дисководе    ║
║ COPY B│Копирование всего диска при 1 дисководе  ║
║ ERASE │Стирание файлов                          ║
║ GO TO │Запуск файла, полученного при помощи     ║
║       │ кнопки MAGIC                            ║
║ LIST  │Вывод расширенного каталога диска        ║
║ LOAD  │Загрузка файла                           ║
║ MERGE │Слияние программ на бейсике              ║
║ MOVE  │Упаковка дискового пространства          ║
║  NEW  │Переименование файла                     ║
║ OPEN# │Открытие файла данных                    ║
║ PEEK  │Чтение сектора файла                     ║
║ POKE  │Запись сектора файла                     ║
║ RETURN│Возврат из TR-DOS                        ║
║  RUN  │Запуск программ                          ║
║ SAVE  │Запись файла                             ║
║ VERIFY│Сравнение файлов на диске и в памяти     ║
╚═══════╧═════════════════════════════════════════╝

                 Синтаксис команд.
 
  TR-DOS - гибкая система и вы можете получить дос-
туп к ней из бейсика и машинных кодов. Когда коман-
дный процессор TR-DOS ждет от вас команды, вы види-
те подсказку в виде имени дисковода и стрелки. Если
выполнение команды завершилось ошибкой, то вслед за
подсказкой будет выведена старая команда,которую вы
можете  отредактировать и снова ввести. Большинство
команд после работы возвращают управление TR-DOS,но
есть исключения, о которых рассказано  в  описаниях
команд.
  Все параметры команд записываются так же, как и в
бейсике. То  есть строковые константы должны быть в
кавычках, параметры могут быть переменными, функци-
ями, выражениями и так далее.

             Возврат из TR-DOS в бейсик.

  Для возврата из TR-DOS используется  команда  RE-
TURN. Формат ввода команды:
RETURN

             Переход в TR-DOS из бейсика.
 
 Для входа в командный процессор TR-DOS нужно выз-
вать подпрограмму  в машинных кодах с адреса 15616.
  Hапример:
RANDOMIZE USR 15616

         Выполнение команд TR-DOS из бейсика.

  Для того, чтобы выполнить команду  TR-DOS,  нахо-
дясь в бейсике,  перед  командой надо записать пре-
фикс:
RANDOMIZE USR 15619:REM:
  В этом случае после работы команда возвращает уп-
равление в бейсик, хотя и тут есть свои исключения.
  При этом команда TR-DOS  должна  быть последней в
строке программы на бейсике,но после нее может сле-
довать  комментарий.  Правила записи комментариев в
командах TR-DOS вы найдете в описаниях команд.
  Функция  USR  15619  возвращает код ошибки TR-DOS
(содержимое переменной 23823).Полный перечень кодов
ошибок вы найдете в конце описания.

             Выбор дисковода по умолчанию.

  Дисковод  по умолчанию - это дисковод, к которому
будут обращаться  команды, в которых не указано имя
дисковода. После инициализации по умолчанию выбира-
ется дисковод A.
  TR-DOS поддерживает 4 дисковода (A, B, C, D).Фор-
мат команды  для  изменения  дисковода по умолчанию
следующий:
*<дисковод>
  Имя  дисковода  - это  строка, от которой берется
первый символ (A, B, C или D).

              Временный выбор дисковода.
 
  Постоянно изменять  дисковод  по  умолчанию - это
долго и неудобно. Поэтому в большинстве команд мож-
но указать дисковод, к которому команда будет иметь
доступ. Для этого перед именем файла нужно записать
имя дисковода с двоеточием, например:
LOAD"B:PROGRAM"
  Если  для  команды не требуется имя файла, то имя
дисковода с двоеточием указывается после нее:
CAT"B:"

            Пpодолжение следует ...




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

Похожие статьи:
Новости недили - Скоро выйдет bbsTOP #5.
Интерес - размышления: "сколько ещё существовать любимцу SРЕCCY"?
Работа - О лени и работе на аудиторию.

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