(c) Кузнецов А.В., г.Сосново-
борск
Решил написать вам о своих
идеях насчет совместимости. К
этому меня подтолкнули как и ва-
ши многочисленные публикации на
эту тему, так и программы, рас-
пространяемые вами. Так, напри-
мер, на моем Пентагоне-128 Laser
Squad Editor и Virus-2 загоня-
ли курсор в угол, потому что на
моем компьютере нет Kempston-
джойстика. Пришлось лезть внутрь
программы и убирать команды ти-
па IN A,(31). Но этим можно по-
править только следствие, а я же
задался целью исправить причину.
Но поскольку я не разбираюсь
в "железе", то никаких схемных
решений предложить не могу. По-
этому я предлагаю следующее:
Всем, кто хочет, чтобы у него
корректно работали любые прог-
раммы, следует поместить на каж-
дом диске файл ZXCONFIG (его
формат в таблице 1). В нем бу-
дет храниться информация о ком-
пьютере пользователя. Используя
эту информацию, программы смо-
гут работать корректно. Информа-
цию в этот файл может занести
сам пользователь, причем прог-
рамма, формирующая ZXCONFIG, мо-
жет быть написана на Бейсике и
состоять из N-го количества ко-
манд PRINT и INPUT, а может,
кто-нибудь и оболочку напишет.
Таблица 1. Формат и содержимое ZXCONFIG-а
──┬─────────────────────────────────────────────────────────────
N│назначение, возможные значения.
──┼─────────────────────────────────────────────────────────────
00│Байт настройки. Показывает, происходила ли настройка на
│данный тип компьютера. 0 - нет, 1 - да.
01│Модель компьютера: 01 - Ленинград-1
│ 02 - Ленинград-2
│ 03 - Пентагон
│ 04 - Scorpion
│ 05 - ATM
│ 06 - PROFI
│ 07 - ZX-NEXT
│Я думаю, жтот список можно продолжить после обсуждения на
│страницах ZX-Ревю.
02│Количество памяти: 01 - 48 кб
│ 02 - 128 кб
│ 03 - 256 кб
│ 04 - больше 512
03│Механизм переключения страниц памяти: 01 - механизм 1
│ 02 - механизм 2
│ ...............
│В этом вопросе я не силен, оставляю его на суд читателей.
04│Наличие дискового интерфейса. 0 - нет, 1 - есть.
05│Количество дисководов (1 - 4).
06│Номер версии TR-DOS: 01 - X.XX
│ .........
│Здесь я тоже пока не располагаю полной информацией, но я
│думаю, смысл понятен, и здесь просто нужно перечислить все
│возможные версии TR-DOS.
07│Наличие принтера. 0 - нет, 1 - есть.
08│тип принтера (01 - 0n - все возможные типы принтеров).
09│Использовать внешний драйвер принтера. 0 - Нет, 1 - есть.
10│Наличие музыкального сопроцессора (00 - нет, 01 - есть).
11│Наличие COVOX-а. 0 - нет, 1 - есть.
12│Наличие Kempston-а. 0 - нет, 1 - есть.
13│Наличие мыши. 0 - нет, 1 - есть.
14│Тип мыши. 01 - 0n - все возможные типы мыши.
15│Раскладка клавиатуры: 01 - ЯВЕРТЫ
│ 02 - ЙЦУКЕН
│ 03 - раскладка пользователя
│ Я думаю, тут необходимы пояснения насчет кода 03.
│ Программа, настраивающаяся по ZXCONFIG-у, встретив этот
│код, пытается найти файл USERKEYS, в котором должна храниться
│таблица раскладки национального шрифта. Может, кто-нибудь
│возьмется за разработку стандарта для файла USERKEYS.
16│Предпочтительное управление: 00 - задание клавиш
│ 01 - курсорные клавиши
│ 02 - Синклер-1 и Синклер-2
│ 03 - Kempston
│ 04 - мышь
│ 05 - Q,A,O,P,Space
17│В этих ячейках хранятся предпочтительные коды клавиш,
18│задаваемые по умолчанию, если в 16-ой ячейке записпно 0.
19│
20│
21│
22│Версия ПЗУ-48: 01 - 1982 г.
│ 02 - 1990 г.
│ ............
│ Все возможные версии ПЗУ.
23│Версия ПЗУ-128. Все возможные версии.
24│Наличие турбо-режима. 0 - нет, 1 - есть.
25│Наличие винчестера. 0 - нет, 1 - есть.
26│Наличие модема. 0 - нет, 1 - есть.
27│Наличие микродрайва. 0 - нет, 1 - есть.
──┴─────────────────────────────────────────────────────────────
Как вы могли заметить, в таб-
лице 1 очень много еще не опре-
делено. Вот что я предлагаю:
этот проект (назовем его ZXCON-
FIG) выносится на обсуждение
(дополнение), скажем, до конца
этого года. Далее вы (Редакция)
принимаете окончательный вид
этого стандарта и СТАВИТЕ (!!!)
перед всеми разработчиками прог-
раммного обеспечения, которые
хотят распространять программы
через вас, следующее условие:
любая программа ДОЛЖНА (!) перед
своим запуском искать файл ZX-
CONFIG и настраиваться по нему.
Я думаю, это может устранить
большинство проблем с несовмес-
тимостью.
Прим. ред.: Что ж, идея ZXCONGIG-а, в
общем-то, неплохая, только вот есть нес-
колько замечаний. Размер файла можно еще
сократить. Например, за мышь отвечают два
байта. Один - за наличие, второй - за ин-
терфейс. Их можно обьединить. Скажем, если
там 0, то мыши нет вообще, а если что-то
другое, то это признак типа мыши. Дальше,
совершенно неуместно здесь упоминание о
микродрайве и компьютере без дисковода.
Ибо Интерфейс-1 в России отсутствует, а на
машине с лентой это просто неприменимо -
сколько же времени уйдет на поиск в ящике
кассеты с ZXCONFIGом! Да и где вы видели
столь развитый компьютер без дисковода?
А зато забыты такие вещи, как последо-
вательный порт, дополнительные видеорежи-
мы... Да и интерфейсов винчестера сущес-
твует несколько. Также тут стоит упомя-
нуть об одном интересном протоколе, кото-
рый именуется Autoconfig на Амиге и Plug
And Play на IBM PC. Речь идет о системе
автоматического распознавания подключен-
ных устройств. Мы считаем, что гораздо ин-
тереснее было бы вести работы в этом нап-
равлении. Такие процедуры на Speccy уже
есть, но они рассчитаны только на одно ус-
тройство. Например, дополнительную память
или мышь. Надо собрать их все воедино, и
тогда на этой основе можно создать целую
автоконфигурирующуюся ОС. Было бы неплохо,
если бы читатели на страницах нашего жур-
нала поделились с остальным миром подобны-
ми подпрограммами.
* * *