Adventurer #08: Презентация HELP_Z80: Руководство пользователя и особенности

     (C) Иван Рощин, 9. 04. 1997.

╔════════════════════════════╗
║ ║░
║ HELP_Z80 (beta-version) ║░
║ ║░
║ Руководство пользователя ║░
║ ║░
╚════════════════════════════╝░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░

┌──────────┐
│ Введение │
└──────────┘

HELP_Z80 - это бесплатная (freeware), не имеющая аналогов утилита, которая представляет собой электронный справочник по командам микропроцессора Z80. С его помощью можно узнать мнемонику (и ее смысл), кодировку, влияние на флаги и время выполнения для каждой команды процессора, а также другую полезную информацию. HELP содержит описание 1136 команд, в том числе и недокументированных, занимает в памяти около девяти килобайт и может работать на ZX SPECTRUM 48... 512K. Бета-версия программы отличается от полной лишь тем, что для команд Z80 не указываются соответствующие им машинные коды.

┌───────────────────┐
│ Загрузка и запуск │
└───────────────────┘

В простейшем случае для запуска HELP'а достаточно ввести команду TR-DOS:

RUN "HELP_Z80"

Эта команда запускает Бейсик-загрузчик, который выполняет следующие действия:

- если запуск произведен из режима 128K, компьютер переходит в режим 48K с открытыми страницами;
- в седьмую страницу памяти загружается файл "help_z80";
- управление передается на адрес 56064 = #DB00.

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

а) BASIC. Загрузка в 1-ю страницу:

RANDOMIZE USR 0
CLEAR 24999
OUT 32765, 17
RANDOMIZE USR 15616
LOAD "help_z80" CODE
RANDOMIZE USR 56064

Повторный запуск:

OUT 32765, 17: RANDOMIZE USR 56064

б) STS. Загрузка в 1-ю страницу:

[B] #11
[L] help_z80, #DB00, #2500
[J] #DB00

При использовании STS версии 5. 0 и выше можно запускать HELP с помощью команды [C] #DB00. В этом случае после выхода из HELP'а произойдет возврат в STS.

в) Запуск уже загруженного в 1-ю страницу HELP'а из программы на ассемблере:

LD BC, #7FFD
LD A, #11
OUT (C), A
CALL #DB00

┌──────────────────┐
│ Работа с HELP'ом │
└──────────────────┘

После появления небольшого сообщения с названием программы и сведениями об авторе нажмите любую клавишу, и вы увидите основной экран программы:

┌───────────────────────────────────────┐
│ │
│ Система команд процессора Z80 │
│ │
│ Условные обозначения │
│ │
│ - флаг не изменяется; │
│ флаг устанавливается в соответствии │
│ с результатом операции; │
│ 1 флаг включается; │
│ 0 флаг выключается; │
│ ? флаг неопределен; │
│ P флаг переполнения/четности работает │
│ как флаг четности; │
│ V флаг переполнения/четности работает │
│ как флаг переполнения; │
│ │
│ Для некоторых команд в колонке t указано два значения: │
│ │
│ - для условных команд JR,CALL,RET второе значение -это количество тактов при ВЫПОЛНЕНИИ условия. │
│ │
│ - для "цикличных" команд (DJNZ, LDIR,..) │
└───────────────────────────────────────┘

Имеется возможность просматривать информацию, как обычный текст, используя управляющие клавиши:

[CS+6], [CS+7] (CURSOR) - перемещение на строку вниз и вверх;
[CS+3] - PageUp;
[CS+4] - PageDown;

[CS+1] (EDIT) - переключение экранов (как в STS). Действует, только если HELP использует второй экран. Эту функцию удобно использовать, если HELP загружен вместо STS и вызывается из ассемблера. При этом можно "одновременно" видеть исходный текст программы и информацию о командах Z80.

[Q] - выход из HELP'а (в ассемблер или в вызывавшую программу). При выходе восстанавливается состояние процессора на момент запуска HELP'а (см. раздел "Системная информация"). Чтобы выйти в ассемблер, HELP устанавливает 4 страницу памяти и выполняет команду JP #C000. При этом портятся значения регистров A, B, C, а также пять байтов памяти с адреса #57E0 (впрочем, это не имеет особого значения). В некоторых случаях, во избежание неприятностей, вместо выхода в ассемблер произойдет выход в вызывавшую программу. Выход в ассемблер невозможен, если:
- ассемблер не загружен (по адресу #C000 находится 0);
- HELP запущен в режиме 48K;
- HELP находится в 4 странице;
- стек располагается выше 25000.

При нажатии комбинации клавиш [CS+SS] (EXT. MODE) активизируется режим Command, в котором действуют следующие клавиши:

[CS+7] (стрелка вверх) - переход к началу текста;
[CS+6] (стрелка вниз) - переход к концу текста;
[Q] - альтернативный способ выхода из HELP'а;

[S] - поиск информации о какой-либо команде процессора. Необходимо ввести мнемонику команды в таком же виде, в каком она представлена в тексте HELP'а (можно указать лишь несколько первых символов). Если команда будет найдена, информация о ней появится в верхней строке экрана, иначе HELP просигнализирует изменением цвета бордюра. Поиск всегда начинается с той строки HELP'а, которая находится вверху экрана, и продолжается циклически. В любой момент его можно прервать нажатием клавиши BREAK.

Пример: поиск информации о команде LD L, N

┌───────────────────────────────────────┐
│▒▒▒Command: Search LD L,N ▒▒▒▒▒▒▒▒▒▒▒▒▒│
│ Система команд процессора Z80 │
│ │
│ Условные обозначения │
│ │
│ - флаг не изменяется; │
...................................
└───────────────────────────────────────┘

После завершения поиска:

┌───────────────────────────────────────┐
││LD L,N │2E N │- - - -│7 ││
│├───────────┼───────────┼──────────┼──┤│
││LD HX,N │DD 26 N │- - - -│11││
││LD LX,N │DD 2E N │- - - -│11││
││LD HY,N │FD 26 N │- - - -│11││
││LD LY,N │FD 2E N │- - - -│11││
...................................
└───────────────────────────────────────┘

С помощью этой же функции можно узнать, каков смысл той или иной мнемоники ассемблера. Для этого нужно перейти к началу текста и указать в качестве строки для поиска нужную мнемонику.

Пример: поиск информации о мнемонике LD

┌───────────────────────────────────────┐
│▒▒▒Command: Search LD ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
│ Система команд процессора Z80 │
│ │
│ Условные обозначения │
│ │
│ - флаг не изменяется; │
..................................
└───────────────────────────────────────┘

После завершения поиска:

┌───────────────────────────────────────┐
│ LD - LoaD │
│┌───────────┬────────┬─────────────┬──┐│
││ │ │ Флаги │t ││
││Мнемоника │ Код ├─────────────┤ ││
││ │ │C Z P/V S N H│ │
│├───────────┼────────┼─────────────┼──┤│
││LD A,N │3E N │- - - - - -│7 ││
...................................
└───────────────────────────────────────┘

[M] - вся справочная информация записывается в область памяти с адреса #6000=24576 в обычном текстовом формате. Эта функция может пригодиться, если вы захотите записать содержимое HELP'а в текстовый файл, например, для последующей печати. Так как текст очень велик по объему (1670 строк, более 66K), он будет разбит на три части, и при каждом вызове функции в памяти сформируется очередная часть. При этом на экран выводится сообщение вида:

Command:
Making part 1, 24576, 23936

Первое число обозначает адрес начала текста, а второе его длину. Для записи текста на диск можно использовать средства TR-DOS или STS.

┌────────────────┐
│ HELP_Z80 + ASM │
└────────────────┘

Вы можете загрузить HELP в любой ассемблер вместо отладчика STS. Например, в ассемблере "ZX ASM 3. 0", которым я пользуюсь, имеется опция "Load sts". При ее выборе нужно указать имя файла, который будет загружен в качестве отладчика. Можно указать имя "help_z80", поработать с HELP'ом, а потом, если нужно, загрузить STS и работать с ним. В других ассемблерах (TASM, MASM, ALASM) такой полезной опции нет, так что в этом случае придется или переименовать файл "help_z80", скажем, в "sts5. 1a", или загружать HELP вручную. Что поделаешь, нет еще такого ассемблера, который бы полностью поддерживал все возможности HELP'а, но будем надеяться, что это временное явление.

┌──────────────────────┐
│ HELP_Z80 + ASM + STS │
└──────────────────────┘

Если в памяти есть свободное место, можно одновременно разместить в ней и ассемблер, и отладчик, и HELP. В этом случае можно вызывать HELP из Бейсика или из STS так, как это было указано в разделе "Загрузка и запуск". Можно также написать User-функцию для STS и вызывать HELP с ее помощью (см. пример). Для пользователей ассемблера ZX ASM 3. 0 могу посоветовать разместить HELP в 3 банке памяти, при этом у вас останется возможность использования STS. Учтите, что часть этого банка, ограниченная величиной Pool size, используется для подгрузки с диска при компиляции. Чтобы HELP не оказался затертым, необходимо установить Pool size=7168 байт. Если используется двойная вложенность текстов, эту величину придется уменьшить еще вдвое (до 3584 байт).

Пример User-функции для вызова HELP'а в случае, когда STS находится в 7 странице, HELP в 3-й, а резидент располагается по адресу #5B90:

LD HL,HLP_RES
LD DE,#5B90;адрес резидента STS
LD BC,14 ;его длина
LDIR ;устанавливаем новый
;резидент
LD BC,#7FFD
LD HL,#1B1F ;банки памяти
LD (#5B9B),SP;сохранили SP
JP #5B90 ;вызов резидента

HLP_RES OUT (C),H ;установили банк
;HELP'а
LD SP,#0000 ;новое значение SP
;(чтобы запомнить адрес возврата)
CALL #DB00 ;вызвали HELP
OUT (C),L ;установили банк STS
LD SP,#0000 ;восстановили старое
;значение SP
RET ;и вернулись в STS.

Более короткий вариант этой функции для STS 5.1:

#FE2A: LD HL,#FE33 ;Установили адрес.
CALL #E354 ;Эта подпрограмма
;установит резидент,
JP #E33D ;а эта - запустит его.

;Этот фрагмент будет работать на адресах #5B90-#5BA4:

#FE33: LD HL,#1B1F ;это номера банков
;памяти
LD (#5BA2),SP;сохранили SP
OUT (C),H ;установили банк
;HELP'а
LD SP,#0000 ;новое значение SP
;(чтобы запомнить адрес возврата)
CALL #DB00 ;вызов HELP'а
OUT (C),L ;установили банк STS
LD SP,#0000 ;восстановили старое значение SP
RET ;и вернулись в STS.

┌──────────────────────┐
│ Системная информация │
└──────────────────────┘

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

┌──────────────────────┐
│ Распределение памяти │
└──────────────────────┘

Как вы уже могли заметить, по распределению памяти HELP очень похож на широко известный отладчик STS. Это сделано специально для того, чтобы обеспечить удобное использование HELP'а совместно с ассемблером. HELP может располагаться в любой странице ОЗУ с адреса #DB00=56064 и занимает #24FE байт до адреса #FFFD (последние два байта не используются). Поддерживается расширение памяти до 512K с помощью порта #7FFD. Определение собственного местонахождения и используемого экрана происходит при каждом запуске HELP'а, поэтому имеется возможность свободно перемещать его из одной страницы памяти в другую. Возможно наличие в памяти нескольких копий HELP'а. Если HELP загружен в 7 страницу или при запуске он обнаружил, что в 7 странице находится STS, для вывода информации будет использоваться второй экран, иначе стандартный. У вас может возникнуть вопрос: а как же HELP узнает, есть в 7 странице STS или нет? Дело в том, что в любой версии STS содержится строка символов "SZ5", которую и ищет HELP.

┌────────────────────┐
│ Особенности работы │
└────────────────────┘

При запуске HELP'а по адресу #DB00 происходит следующее:

- запоминается SP, после чего стек переустанавливается;
- сохраняются значения всех регистров процессора;
- проверяется режим работы прерываний (разрешены/запрещены), после чего они запрещаются;
- проверяется, какое ПЗУ подключено, после чего подключается 48-е ПЗУ.

При выходе из HELP'а все возвращается на свои места:

- включается стандартный экран (если HELP был запущен в полноэкранном режиме);
- подключается ПЗУ, которое было на момент запуска;
- восстанавливаются значения регистров, включая SP, и режим работы прерываний.

Определение подключенного ПЗУ происходит так же, как и в одной из процедур TR-DOS, на основе анализа содержимого ячейки памяти по адресу 949. Если в ней содержится число 243, считается, что подключено 48-е ПЗУ, иначе 128-е.

HELP не портит значение ни одной ячейки памяти, исключая самого себя и экранную область. Таким образом, он полностью автономен.

Значение регистра R после окончания работы HELP'а (т. е. после выполнения команды RET) будет на 1 больше того, которое было сразу после его запуска (т. е. после выполнения команды CALL #DB00). Таким образом, после выполнения любой из двух указанных ниже команд содержимое R будет одинаковым (по адресу #0052, как известно, находится просто RET):

1. CALL #DB00 2. CALL #0052

Это сделано для того, чтобы после запуска HELP'а из STS с помощью команды [C] содержимое регистров отлаживаемой программы не изменилось. Впрочем, при таком запуске изменяются два байта из стека отлаживаемой программы (в них STS запоминает адрес возврата).

┌────────────────────────────┐
│ Дополнительные возможности │
└────────────────────────────┘

Возможности HELP'а не ограничиваются простым просмотром справочной информации. Представьте себе, например, такую ситуацию: вы набираете программу на ассемблере и изучаете ее с помощью отладчика. Курсор установлен на какой-либо команде. Вы нажимаете определенную комбинацию клавиш, и на экране появляется окно со справочной информацией по этой команде. Для пользователей IBM PC это привычный стиль работы, а вот на Speccy я ничего подобного не видел. Конечно, чтобы использовать эту возможность, нужно внести существенные изменения в ассемблер и/или отладчик. Вот все необходимые сведения по используемой для этой цели точке входа с адресом #DB02:

При вызове процедуры по адресу #DB02 на экране будет построено окно с информацией о требуемой команде, после чего управление будет возвращено вызывавшей программе. Сохранение содержимого экрана под окном не производится, атрибуты также не устанавливаются, так что об этом должна позаботиться вызывающая программа. После вызова этой процедуры, в отличие от точки входа #DB00, регистры AF, B, DE изменят свои значения. Возможна такая ситуация, когда HELP не смог найти нужную информацию, например, из-за некорректного задания строки с мнемоникой команды. В этом случае будет выведена надпись "Not found".

Параметры:

IX - указывает на строку с текстом команды, справку по которой нужно получить. Строка заканчивается нулевым байтом и должна располагаться в памяти ниже #C000.

A - указывает, на каком экране будет производиться вывод информации. 0 соответствует стандартному экрану, 1 второму экрану.

Текст команды должен указываться с заданными значениями операндов. Мнемоника должна отделяться от них одним пробелом, например, так:

LD HL,( 12345)
ADD A, #87
IM 0
SET 4, A,( IX+31)

Пример: изобразим на основном экране окно со справочной информацией о команде EX AF, AF':

LD IX, TEXT
XOR A
CALL #DB02
...
TEXT DB "EX AF, AF'", 0

┌─────────────────────┐
│ Точка входа для STS │
└─────────────────────┘

Эта точка входа, расположенная по адресу #DB04, предназначена для вывода на экран справки по команде ассемблера, на которой стоит курсор в отладчике STS. В принципе, она выполняет те же действия, что и #DB02, но при этом специально рассчитана на то, чтобы вносимые в STS изменения были минимальными и допускали легкую адаптацию любой версии этого отладчика. От пользователя требуется указать нужную команду с помощью курсора, два раза нажать ENTER (или нажать ENTER и BREAK), чтобы войти в режим редактирования и выйти из него, а потом использовать комбинацию клавиш [SS+U] для вызова функции пользователя (которая, в свою очередь, вызовет #DB04). Вызываемая функция изображает в центре экрана окно с информацией о команде, устанавливает атрибуты (цвет окна такой же, как и цвет листинга), ждет нажатия на любую клавишу и возвращается в STS. После окончания ее работы значение регистров AF, B, DE будет изменено.

┌────────────────────────────────────────┐
│ #0000 F3 AF 11 FF FF C3 CB 11 s/▒ccCK▒│
│PC #0000 #0000 F3 DI │
│SP #5FE8 #0001 AF XOR A │
│IX #8685 #0002 11FFFF LD DE,#FFFF │
│IY #5C3A #0005 C3CB11 ▒JP #11CB▒▒▒▒▒▒▒▒│
│HL #C07A #0008 2A5D5C LD HL,(#5C5D) │
│DE #5B45 #000B 225F5C LD (#5C5F),HL │
│BC #7FFD #000E 1843 JR #0053 │
│AF #172C #0010 C3F215 JP #15F2 │
│IR #3F16 #001┌──────────────┐38 │
│ INT #001│JP NN │░8 │
│ 5 3P #001│ │░8 │
│ #001│CZP/VSNH t=10 │░8 │
│ #001│-- - --- │░8 │
│ #001└──────────────┘░(#5C5D) │
│ #001B░░░░░░░░░░░░░░░░HL) │
│ #001C CD7D00 CALL #007D │
│ #001F D0 RET NC │
│ #0020 CD7400 CALL #0074 │
│ #0023 18F7 JR #001C │
│ #0025 FF RST #38 │
│ #0026 FF RST #38 │
│ #0027 FF RST #38 │
│ │
└────────────────────────────────Bank #18┘

Параметры:

IX - указывает на адрес буфера для редактирования строки в STS. В дальнейшем будем обозначать этот адрес как BEGIN_S. В версии STS 5. 1 он равен #FF80.

A - указывает, на каком экране будет производиться вывод информации. 0 соответствует стандартному экрану, 1 второму экрану.

L - номер банка памяти, в котором находится STS, т. е. число, которое нужно занести в порт #7FFD для установки этого банка.

Пример User-функции для вызова HELP'а в случае, когда STS находится в 7 странице, HELP в 3-й, а резидент располагается по адресу #5B90:

LD IX,BEGIN_S;адрес буфера
LD A,1 ;номер экрана
LD HL,HLP_RES
LD DE,#5B90 ;адрес резидента STS
LD BC,14 ;его длина
LDIR ;устанавливаем новый резидент
LD BC,#7FFD
LD HL,#1B1F ;банки памяти
LD (#5B9B),SP;сохранили SP
JP #5B90 ;вызов резидента

HLP_RES OUT (C),H ;установили банк HELP'а
LD SP,#0000 ;новое значение SP
;(чтобы запомнить адрес возврата)
CALL #DB04 ;вызвали HELP
OUT (C),L ;установили банк STS
LD SP,#0000 ;восстановили старое
;значение SP
RET ;и вернулись в STS.

Обратите внимание: если заменить адрес #DB04 на #DB00, эта же User -функция будет вызывать HELP в полноэкранном режиме.

┌────────────┐
│ Литература │
└────────────┘

1. А. Ларченко, Н. Родионов "ZX Spectrum и TR-DOS для пользователей и программистов".

2. ИНФОРКОМ "Программирование в машинных кодах и на языке ассемблера".

3. А. Евдокимов, А. Капульцевич, И. Капульцевич "Как написать игру на ассемблере для ZX Spectrum".

4. С. П. Шутов, М. М. Мухаметшин "Микропроцессор Z-80. Справочное пособие".

5. П. Ю. Федин "Полное описание и полный дизассемблер ПЗУ TR-DOS 5. 04T (5. 03)".

6. VA PRINT "Ассемблер Z80".

7. Стив Кремер "Операционная система СПЕКТРУМ".

8. "ZX-REVЮ", "SPECTROFON", "ZX-FORMAT", "ON-LINE" и т. д.

Оглавление издания: Adventurer #08

  • От автора - Shaitan
    Технические детали нового интерфейса программы для ZX Spectrum. Обсуждаются улучшения и функции, такие как прокрутка и изменение цвета. Предоставлены инструкции по навигации с помощью клавиатуры и кнопок.
  • От автора
    Введение от автора и информация о редакционной команде.
  • Презентация
    Статья представляет программный установщик для создания автозапускаемых дисков и знакомит с новой адвентюрной игрой, созданной с помощью QUILL доктором Лазером.
  • Презентация программного обеспечения TRICK
    Статья представляет TRICK, новое программное обеспечение для защиты программ, разработанное Eternity Industry, и обсуждает его бета- и коммерческие версии. Автор, Александр Калинин (aka Paracels/EI), обращает внимание на предыдущие недостатки программного обеспечения и подчеркивает его улучшенный интерфейс. В статье также содержатся детали приобретения программы и приглашение читателям заказать её.
  • Презентация
    Статья содержит подробное руководство пользователя для HELP_Z80, бесплатной утилиты для ZX Spectrum, которая служит электронным справочником по командам микропроцессора Z80. В ней описывается, как загрузить и использовать программное обеспечение, включая объяснения команд, функции поиска и интеграцию с ассемблерами. Кроме того, включены распределение памяти, функциональные особенности и ссылки для дальнейшего чтения.
  • Интерфейс
    Статья обсуждает отзывы читателей о интерфейсе журнала, касаясь вопросов цен и тенденций программного обеспечения в сообществе ZX Spectrum. В ней представлено письмо от читателя, который высказывает мысли о ценах на игры и уменьшении числа пользователей платформы. Также обсуждаются разработки программного обеспечения и вовлеченность пользователей.
  • Интерфейс
    Статья делится опытом автора после покупки Амиги, сравнивая ее с ПК и обсуждая ее использование для игр, графики и музыки, отмечая при этом некоторые ограничения программного обеспечения.
  • Интерфейс
    Статья обсуждает проблемы поддержки пользователей со стороны производителей 'железа' SCORPION и NEMO для устройств ZX Spectrum. Критика SCORPION за плохое обслуживание клиентов при том, что они являются лидерами рынка, и похвала NEMO за оперативную поддержку. Автор выражает беспокойство о текущем состоянии рынка 'железа' для ZX Spectrum.
  • Интерфейс
    Статья обсуждает будущее платформы Spectrum, затрагивая демографию пользователей, проблемы производства софта и возможности эволюции аппаратного обеспечения.
  • Интерфейс
    Статья обсуждает разочарования пользователя Speccy в связи с проблемами аппаратного обеспечения, трудностями современной вычислительной техники и преданностью платформе Speccy.
  • Интерфейс
    Статья рассматривает жизнь и судьбы пользователей ZX Spectrum, включая личные воспоминания автора о друзьях и их взаимодействии с компьютерами.
  • Система
    Статья рассматривает различные программы для ZX Spectrum, включая текстовые редакторы, аудиоплееры и графические утилиты. В ней представлены независимые мнения о их характеристиках и удобстве использования, выделяя как сильные, так и слабые стороны. В статье подчеркивается эволюция и улучшение программных средств, доступных для этой классической платформы.
  • Обзор игрушек
    Обзор заметных игр для ZX Spectrum с акцентом на графику, звук и игровые механики. Каждая игра сопровождается кратким описанием и рейтингом. Рекомендуется любителям ретро-игр.
  • Обзор игрушек
    Статья рассматривает демо-версии различных игр, подчеркивая их потенциал и уникальные особенности. Акцентируется внимание на дефиците таких релизов на рынке и оцениваются качество и механика выбранных игр. Автор делится мнениями о прогрессе и ожиданиях к будущим полным версиям этих игр.
  • Гости
    Статья описывает образование и деятельность группы Eternity Industry, её участников, проекты и планы на будущие релизы и соревнования.
  • Гости - Dr. John
    Интервью с Феликсом из Virtual Brothers о его переходе от ZX Spectrum к ПК, разработке игры 'Винни-Пух' и планах на будущее.
  • Гости
    Интервью с музыкантами Маратом и Демоном из группы 'Disgust', обсуждающими свою музыкальную эволюцию, влияния и взгляды на жизнь и творчество.
  • Раскрутка
    Статья представляет собой подробный мануал к игре 'ENCYCLOPEDIA of WAR', описывающий выбор армий, типы юнитов и механики битвы.
  • Раскрутка
    Статья представляет собой руководство по игре, описывающее необходимые предметы и стратегии для преодоления различных испытаний, включая столкновения с динозаврами и навигацию по деревням.
  • Раскрутка
    Статья представляет собой обзор игры в жанре arcade adventure 'ELOPEMENT' от Omega HG, описывая ее особенности и давая советы по прохождению.
  • Раскрутка
    Статья описывает текстовую адвентюру 'Остров тьмы' на QUILL, предлагая советы для игроков. Упоминаются механики и персонажи, включая загадки и взаимодействия. В конце представлена карта острова.
  • Раскрутка 'Knightmare'
    Статья описывает игру 'Knightmare', подробно рассказывая о командах, механике игрового процесса и начальных квестах. Игрок управляет рыцарем, который должен взаимодействовать с персонажами и решать загадки для продвижения. Это руководство по навигации в игровом окружении и целям.
  • Обмен опытом
    Статья критикует адвентюрную игру 'Island of Darkness' Пауля Москоу, подчеркивая её нелогичный дизайн, отсутствие подробных описаний предметов и нехватку подсказок для игроков.
  • Обмен опытом
    Статья представляет собой мануал по доработке ассемблера ZX ASM 3.0, вводя функции отладки и управления выполнением программ на ZX Spectrum.
  • Обмен опытом
    Статья описывает феномен, наблюдаемый с видеоконтроллером ZX Spectrum, когда переключение между двумя экранами может создавать неожиданные визуальные артефакты. В ней изложена конкретная программа, которая демонстрирует этот эффект за счет быстрой смены экранов. Автор обсуждает последствия и возможные применения данного поведения.
  • Обмен опытом - Иван Рощин
    Статья представляет собой руководство по переносу эффекта заставки 'iris.ss' из Dos Navigator на ZX Spectrum, включая исходный код и советы по модификации.
  • Обмен опытом - Иван Рощин
    Описание процедуры OPEN_W для создания границ окна. Включает детали о настройке символов и размеров. Используется PRSYM для печати символов.
  • Обмен опытом - Maximum
    Введение в операции с длинными числами для разработки игр на ZX Spectrum, включая сложение, вычитание и преобразование в ASCII.
  • Обмен опытом
    Статья обсуждает кастомизацию графического редактора ART STUDIO путем создания дополнительных модулей, которые улучшают его функциональность, включая функции воспроизведения музыки и отображения координат курсора.
  • Обмен опытом
    Статья описывает программу, разработанную для улучшения визуального качества атрибутного сообщения с пиксельным движением на ZX Spectrum. Приведены детали реализации, включая использование массивов данных для задания траектории движения и рендеринга изображений. Программа снабжена комментариями для облегчения понимания и может быть изменена для создания различных эффектов.
  • Оттяг
    Статья содержит юмористические зарисовки и комментарии о различных аспектах жизни и технологий, включая анекдоты о вымышленном персонаже и его опыте с процессором Pentium.
  • Тест фармацевта
    Статья представляет собой юмористические тесты, предназначенные для определения, является ли человек настоящим фармацевтом или самозванцем, с ситуационными вопросами и оценкой знаний.
  • Странности и самооценка в 'Оттяг'
    Статья 'Оттяг' представляет собой юмористическую и критическую самооценку автора, исследующую различные жизненные опыты и причуды, подчеркивающие его необычные черты личности.
  • Юмористический Тест: Оцени Свое Чувство Юмора
    Статья представляет собой юмористический тест для оценки чувства юмора и сексуальных установок через различные ситуационные вопросы, раскрывающие абсурдные и комические перспективы.
  • Оттяг
    Статья представляет собой юмористический тест для определения, какой ты студент — от весельчака до старательного ученика. В ней есть ряд вопросов оtypичных студенческих действиях и реакциях. Результаты классифицируют студентов по набранным баллам от беззаботных до ботаников.
  • Как Правильно Мучить Windows 95 - Maximum
    Статья описывает иронический подход к установке и эксплуатации операционной системы Windows 95, включая способы ее 'мучения' и троллинга. В тексте используются гиперболизированные примеры взаимодействия с ОС для создания комичного эффекта. Это развлекательный материал с элементами юмора.
  • Оттяг
    Статья - это юмористическая нарративная история о Винни-Пухе и его друзьях, которые возвращаются в Вечнозеленый лес, где их беззаботная жизнь превращается в хаос. Описываются их шалости, включая пьянство и злоключения, когда они воссоединяются и сталкиваются с различными трудностями. История раскрывает личности персонажей и их взаимодействия в комедийном ключе.
  • Новелла
    Статья описывает юмористическую новеллу, в которой капрал Джонлан рассказывает о своем первом военном задании и общении с внуком за пивом.
  • Новелла
    Новелла описывает приключенческий побег из базы глотов на старом космическом корабле, подчеркивая столкновения и хитрые маневры главного героя.
  • Новелла
    Статья рассказывает о забавной истории о двух ежиках, Пухлом и Заразe, которые после странного события обзаводятся крыльями и должны справляться с новыми обстоятельствами. История сочетает фантазию и юмор, поскольку персонажи сталкиваются с неожиданными изменениями и трудностями. Это новелла, демонстрирующая imaginative storytelling.
  • Новости
    Статья обсуждает последние новости из Рыбинска, связанные с пати FunTop, описывая вклад различных участников и команд в журнал 'Adventurer' и конкурс демо.
  • Новости
    Статья сообщает о событиях в сообществе Спектрумистов Ярославля, включая информацию о разработчиках программного обеспечения и их текущих проектах.
  • Реклама
    Статья представляет собой сборник рекламных объявлений и анонсов, связанных с ZX Spectrum, приглашая к сотрудничеству программистов, художников и музыкантов, а также подробно описывая, как получить журнал и программное обеспечение.