ZX Review #7-8-9-10
08 ноября 1997

Форум - Проект ZX Config.

<b>Форум</b> - Проект ZX Config.
(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  уже
есть, но они рассчитаны только на одно ус-
тройство. Например, дополнительную  память
или мышь. Надо собрать их  все  воедино, и
тогда на этой основе можно  создать  целую
автоконфигурирующуюся ОС. Было бы неплохо,
если бы читатели на страницах нашего  жур-
нала поделились с остальным миром подобны-
ми подпрограммами.

           *   *   *




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

TR-DOS для начинающих - Окончание.

Компьютерная новелла - Prince of Persia.

Компьютерная новелла - Лазерная бригада (по игре Laser Squad).

Перекресток драконов - Игра Rapscallion.

Перекресток драконов - Игра The Runes of Zendos.

Перекресток драконов - Игра The Saga.

Перекресток драконов - Игра Witch's Cauldron.

Перекресток драконов - Создаём Адвентюру. Обзор редакторов.

Перекресток драконов - Создаём словарь к Адвентюрной игре.

Программы, которые мы выбираем - Возможные последствия использования недокументированных команд.

Программы, которые мы выбираем - О замеченных шероховатостях в работе некоторых программ и пожелания к следующим версиям.

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

Программы, которые мы выбираем - Несколько предложений по усовершенствованию ассемблера.

Программы, которые мы выбираем - Предложения по доработке ZX Word v2.5.

Программы, которые мы выбираем - Программа "Эмулятор Спектрума" v1.2.

Программы, которые мы выбираем - Что хотелось бы иметь в идеальном ассемблере.

Ретро - 40 лучших процедур: Копирование данных в памяти.

Ретро - 40 лучших процедур: Обмен токена.

Ретро - 40 лучших процедур: Определение адреса БЕЙСИК-строки.

Ретро - 40 лучших процедур: Определение длины БЕЙСИК-программы.

Ретро - 40 лучших процедур: Определение размера свободной памяти.

Ретро - 40 лучших процедур: Поиск и замещение строки.

Ретро - 40 лучших процедур: Поиск подстроки.

Ретро - 40 лучших процедур: Поиск строки.

Ретро - 40 лучших процедур: Составление списка переменных.

Ретро - 40 лучших процедур: увеличение и копирование экрана.

Ретро - 40 лучших процедур: Удаление REM-строк.

Ретро - 40 лучших процедур: Удаление блока программы.

Советы экспертов - Игра Fredloader.

Советы экспертов - Игра Robin of Sherwood: The Touchstones of Rhianon.

Советы экспертов - Игра Scorpions: Die Machines.

Советы экспертов - Игра Terropods.

Страничка iS-DOS - Описание рестартов системы IS DOS.

Форум - Алгоритм распознавания символов.

Форум - Время выполнения недокументированных команд процессора Z80.

Форум - Концепция экрана высокого цветового разрешения.

Форум - Несколько Pokes к играм. Программа Hacman96.

Форум - По поводу новых DOS и BIOS для Спектрума.

Форум - Программа Multicolor на любой модели компьютера. Использование 2-го экрана для Multicolor'а. Демонстрация текста. Электронные журналы.

Форум - Проект ZX Config.

Форум - Усовершенствование Art Studio. Идеи относительно компрессии файлов.

Форум - Эмулятор ZX Spectrum на IBM. По поводу шестнадцатеричной системы счисления. Программа ZX-Stars. Странности в Elita

Форум - Эффекты на бордюре и Multicolor.

Читатель-читателю - ZX Spectrum 128 - новые возможности, новые проблемы.

Читатель-читателю - Группа 'Light'. Спектрум и экспертная система.

Читатель-читателю - Драйвер принтера для Scorpion'а.

Читатель-читателю - Печать чисел в различных системах счисления.

Читатель-читателю - Программирование аркадной игры со скроллингом экрана.

Читатель-читателю - Процедура печати меток ассемблера XAS для монитора-отладчика STS 4.3.

Этюды - Атрибутная бегущая строка. "Гасилка" экрана. Упрощенный вариант процедуры "Занавес". Процедура гащения картинки. Процедура проявления картинки по точкам.

Этюды - Графический эффект "цветные полосы".

Этюды - Драйвер экрана для печати по 64 символа в строке.

Этюды - Комплект защит загрузчиков.

Этюды - Обращение к диску в режиме IM 2. Работа с диском нестандартного формата.

Этюды - Печать символа, увеличенного в 8 раз. Программа "наливания" экрана. Процедура гашения экрана по точкам. Очистка экрана как в Terminator'е. Поиск последовательности символов в памяти. Система перекодировки символьного набора.

Этюды - Программа - каталогизатор дисков.

Этюды - Программа вывода значений амплитуды каналов муз. сопроцессора на бордюр.

Этюды - Программа вывода картинки.

Этюды - Программа зажигания спрайта.

Этюды - Программа очистки заданного окна экрана.

Этюды - Программа сортировки массива по возрастанию. Процедура заполнения экрана заданным атрибутом. Процедура проявления картинки. Эффект летящих навстречу звезд. "Душ", идущий из верхнего левого угла экрана. Процедура "осыпания" картинки по пиксельным линиям. Программа "вытягивания" картинки под углом в 45 градусов. Три процедуры "Scroll".

Этюды - Процедура печати чисел.

Этюды - Процедура прорисовки символа с помощью атрибутов.

Этюды - Процедура проявления картинки. Fade-OUT эффект (картинка уходит за края экрана). Графический эффект "Фонтан". Fade-OUT эффект, имитирующий выключение телевизора. Процедура "зажигания" картинки. Программа плавной прорисовки картинки.

Этюды - Процедура рисования линии.

Этюды - Процедура составления оптимальной таблицы символов.

Этюды - Скроллинг строк текста в заданном окне. Атрибутный скроллер. Диагональный скроллинг.

Этюды - Спрайтовый скроллер. Процедуры проявления экрана.

Этюды - Укороченная процедура индикации амплитуды каналов муз. сопроцессора. Способ вычитания константы из регистровой пары HL.

Этюды - Формула для вычисления дня недели.


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

Похожие статьи:
Music - Вернёмся к давно обещанной теме "музыки на заданные сэмплы".
Чёртова дюжина неудобных вопросов членам жюри - Евгений Лукин.
Комьюнити - ZX Spectrum: Как это было в Рязани (1980-е).
Введение - Первый номер содержит мало полезной информации. поэтому особо слабонервных просим нажать RESET.
Версии - 2 версии игры: 48 Утюгов.

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