ZX-Ревю 1994 №3 1993 г.

Форум - большое письмо о адаптации программ под БЕТА-диск.


ФОРУМ

:

Вопросы защиты.

Александр Данилов из г. Кирова прислал большое письмо о своем хобби - адаптации программ под БЕТА-диск. Вот что он пишет.

К0РР: В последнее время при адаптации, а точнее при переносе программ на диск, мне стали попадаться загрузчики типа Speedlock Protection (судя по описанию, данному Родионовым в своей брошюре "Адаптация программ..."). Правда, судя по комментариям, выдаваемым при загрузке, понятно, что в них уже отметились BILL GILBERT или Nicolas Rodionov. Суть загрузчика такова: порядка десятка нулевых Basic-строк, состоящих из POKE и PEEK, которые переустанавливают ERR-SP (адрес перехода по ошибке) на начало блока кодов, который и запустится, как только Basic попытается выдать 0:0К. Мне встречались кодовые процедуры двух типов, один из которых мне

удалось раскрутить (назначение блока кодов - расксорка процедуры загрузки)._

Примечание редакции:

_расксорка - декодирование кодового массива с использованием команды XOR - исключающее ИЛИ._

В принципе, процедуры обоих типов похожи и имеют такую структуру:

XOR LD

Подготовительная часть A

R, A

LD

PUSH LD

PUSH

IY,ADR1 - адрес перехода на процедуру загрузки. IY

IY,ADR2 - адрес начала "заксоренного" блока. IY

:

IY,ADR3 - адрес области, которую "расксоривают' (совпадает с ADR1). IY

LD

PUSH

IY,LEN - длина блока.

LD

заксоренного"

PUSH IY

BC DE HL

A, R -(HL) SP SP

основная часть расксорена.

если ВС не равно 0, то переход по стеку, расксорки (LD A,R...).

PE -начала DEC SP

DEC SP

RET PO - если ВС=0, то переход по стеку на расксоренную процедуру

(самый первый PUSH IY).

При этом между операторами LD IY,XXXX и PUSH IY находится "мусор" - операторы типа LD L,L ... Вся расксорка занимает байтов 500 и, на первый взгляд, начало расксорки кажется бессмысленным.

POP

POP

POP

LD

XOR

DEC

DEC

DI

RET

Различие между кодовыми блоками первого и второго типа заключается в подготовительной части. Если при расксорке блока первого типа при помощи отладчика там нет никаких препятствий, то в блоке второго типа встречаются недокументированные команды Z-80, странные CALL, IM2 и т.д. и т.п. Причем отладчиками этот блок из-за IM2 не проходится. У меня просьба: "Если кто-нибудь сталкивался с такой защитой и понимает, как она работает, пусть мне ответит".

а на стеке - адрес

634041 г. Томск-41,

ул. Кирова, 56-а. Данилову Александру Александровичу.

ИФК: Мы согласны с Александром, что эта информация будет полезна и многим другим читателям, поэтому, друзья, если Вы обладаете сведениями или опытом, пишите нам, мы охотно их опубликуем. Кстати, Александр делится и своим опытом. Он описывает два интересных загрузчика, с которыми ему пришлось столкнуться.

КОРР: Первый загрузчик на вид не представлял из себя ничего знаменательного. В Basic-загрузчик был "вмонтирован" машинный код и управление передавалось ему. Эта процедура перебрасывала себя в конец памяти и там работала следующим образом. Устанавливался стек, необходимые регистры, флаг и вызывалась CALL собственно процедуру загрузки, затем управление передавалось загруженной игрушке. На первый взгляд процедура загрузки ничем не отличалась от процедуры ПЗУ, кроме двух байтов. Обычно при загрузке с магнитофона происходит следующее: в регистр L заносится 01, читается пара фронтов с магнитофона, определяется, что это - 0 или 1 и соответствующим образом устанавливается флаг CARRY, затем делается циклический сдвиг регистра L влево. В результате 8 таких сдвигов в регистре L будут 8 битов, последовательно прочитанных с ленты, и будет установлен флаг CARRY, т.к. в него будет сдвинута та самая единица, которая загружалась в L вначале. Затем этот байт записывается в память и дальше все с начала. Так вот, измененные два байта исполняли следующее. В регистр L загружалось не 01Н, а 80Н, т.е. устанавливался не нулевой, а седьмой бит и изменялся тип сдвига, не влево, а вправо. Таким образом, вся загрузка шла как обычно, но все биты в байте были зеркально перевернуты. Такой вот детективчик.

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

LD HL,START+1

LD BC,LEN - длина расксориваемой области.

NEXT LD A,XX - байт ксорки.

XOR (HL)

LD (HL) , A

INC HL

DEC BC

LD A, B

OR C

START JR NZ,XX

Последняя команда состоит из двух байтов. Первый байт показывает, что это JR NZ, а второй определяет смещение. Так вот, расксорка начиналась с байта смещения. За этим блоком следовал абсолютно идентичный блок, менялся только байт ксорки и длина блока. Длина всего кодового блока, загружаемого с ленты, составляла что-то порядка 1800 байтов. Если учесть, что длина расксоривающего блока 16 байтов, а непосредственно сам загрузчик игрушки - около 50 байтов, то получается что-то около 100 расксорок! В принципе их, конечно, можно было пройти и отладчиком (для этого необходимо вручную расксорить 4 байта (байт смещения плюс 3 байта для точки останова), ставить точку останова (например, MONS-3), выполнить расксорку и затем повторить процедуру опять. Но на это уйдет уйма времени. Можно написать свою процедуру расксорки, но здесь тоже есть свои трудности. Я же добрался до основного загрузчика при помощи прошивки "ТУРБ0-90", используя монитор, в который "вываливаешься" при выполнении NMI. Вот такие вот навороты.

ИФК: Александр затрагивает вопросы циклической защиты программ. Для тех, кто интересуется этой проблемой, в качестве дополнительного материала, можем посоветовать заглянуть в подшивку "РЕВЮ" за 1991 г. № 11-12 (стр. 254), а также за 1992 г. № 5-6 (стр. 117). Кстати, мы можем подтвердить и наш морально-нравственный взгляд на эту тему: к проблемам взлома программ мы относимся как к спорту, который может быть чистым, но может быть и грязным. Критериями должны быть здравый смысл, а также корректное и уважительное отношение к автору программы. Важна также цель. Если цель - исследование и самообразование, то это благородная цель.

ИФК: Александр Тасев из С-Петербурга задает вопросы и делится своими мыслями.

КОРР: Если кто-то из читателей знает о кросс-отладчике Z80 (и даже всего Спектрума) на IBM напишите. Какие у них возможности, Все ли команды Z80 (включая недокументированные) поддерживаются ими?

Я долго думал об аппаратной трассировке. Процессор приостанавливается по WAIT, и можно посмотреть, что он делал. Можно даже установить буфер и "подсовывать" Z80 не то, что идет из памяти или портов, а из нашего аппаратного отладчика. Правда, есть проблема, что динамические участки (DISK, TAPE) не могут быть оттрассированы, можно только посмотреть, как они работают, а данные мы загрузить не сможем. И то, это возможно, только если мы "подсовываем" свои данные Z80 (чтобы он думал, что данные с диска идут). На мой взгляд такая трассировка проще, чем программная. Учитывается ведь и злосчастный регистр R. Правда, нельзя учесть INT. Но если подавать и INT с нашего отладчика, то можно считать такты и через определенное количество их, соответствующее реальным 20 мс, подавать "наш" INT.

А с трассировкой "быстрых" кусков можно справиться так: смотрим в "медленном" режиме, как он думает, затем определяем место выхода из этого куска. А в отладчике есть схема сравнения, которая смотрит, что на адресах Z80. Этот конечный адрес запоминается, и управление отладчика передается сюда (в конце работы "быстрого" куска). Можно работать дальше.

Конечно, такую ломку можно обойти, если "быстрый" кусок усложнить: "засорять" память между считыванием байта с ленты, а потом на эту "засорку" проверять. С диском чуть сложнее...

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

ценно.

На мой взгляд, это должно быть любопытно для программистов, так как им важно знать, как могут ломать их защиту. Так, кстати, можно полностью раскрыть систему команд Z80 (все недокументированные команды), трассируя его таким способом.

Вопросы защиты и проблемы совместимости.

Нам пишет Степанов Андрей Николаевич из г. Новочеркасска.

К0РР: Читаю Вас уже 2 года и не могу нарадоваться. Журнал ценный! Особенно выделяю рубрики "Профессиональный подход", "Форум". Имею компьютер "Дельта-С" Чебоксарского Приборостроительного завода вот уже чуть больше двух лет. Он полностью схож с описанием С. Рубцова из г. Улан-Удэ, только POKE 23570,16 проходит нормально и без доработки машины.

Машинным кодом овладел по книге Ларченко и Родионова "ZX-Spectrum для пользователей и программистов", МП "Питер", 1991 г. Но прерывания и некоторые из команд были мне не ясны до тех пор, пока не приобрел Ваш трехтомник по программированию. Рекомендую его всем, кто имеет Спектрум-совместимые машины, т.к. этот материал доступен для понимания всем, кто отличает букву "А" от буквы "В".

Имея за спиной полтора года взламывания программ, с уверенностью подтверждаю слова Г.Б. Луппова из г. Кирова, что нераскалываемых защит нет (по крайней мере для "Спектрума"), есть только более защищенные и менее защищенные программы. Самая сильная защита, которую я пока встречал, в программе "INDIANA JONES AND LAST CRUSADE", поставленная хаккером D.J.S., потому что он применил защиту ALKATRAZ LOADER (РЕВЮ-91, № 1112). Но после Вашей статьи (РЕВЮ-92, № 5-6, стр. 117) эта защита перестала быть проблемой. Кстати, опубликованную там программу "декодер", очень легко можно переделать в кодировщик. Если будут пожелания, то могу выслать его текст. Кодировщик сам рассчитает все параметры, подставит числа, закодирует и выгрузит на ленту готовый блок, так что от пользователя требуется только составить саму защищаемую программу.

И еще насчет Bill Gilbert. Он ставит красивую, но не действенную защиту. Самую сложную защиту, которую он применял (на мой взгляд), можно встретить в программе "OVERLANDER". Там он оперирует с половинками индексных регистров IX и IY, используя в качестве подвязки по времени регистр R, переброску с помощью LDIR и кучу ненужных команд. Но ее также удалось просто снять, правда, перед этим немало поломав голову. Я исходил из того, что Bill Gilbert не кодирует загружаемые программы и рисунки у него закомпрессированы, т.е. вызываются командой CALL nn. Следовательно, надо узнать длину рисунка, написать программу типа: 9C4 0 9C42

LD

A, #BF

IN

A,(#FE)

RRA

JR

#C,9C4 0

LD

IX,#6000

LD

DE,#A000

LD

A, #FF

CALL

#04C2

RET

и записать на ленту блок кодов: SAVE "OVERLANDER" CODE 4E4, длина рисунка. Теперь запускаете загрузчик и, когда ему будет положено загружать рисунок, Вы ставите кассету с Вашей программой. После того, как она загрузится в память, последует вызов CALL nn, и будет исполняться программа, ожидающая нажатия ENTER и выгрузка на ленту содержимого памяти с 24576 по 65535. Потом, дисассемблируя программу, Вы можете просмотреть оригинальный загрузчик без особых хлопот. Конечно, может случиться, что загрузчика между адресами 40000 и 65535 нет, тогда в своем фальшивом рисунке поменяйте адрес и длину, например 23296 и 16704 соответственно.

ИФК: Насчет недокументированных команд с половинками индексных регистров - можете заглянуть в предыдущий номер РЕВЮ (ФОРУМ, стр. 57). Там был дан материал нашего читателя Комарова из г. Иркутска по этому поводу. Между тем, продолжаем письмо Степанова Андрея Николаевича. Речь идет о поиске POKES для "обессмерчивания" игр.

КОРР: В последнее время все чаще встречаются программы, где не применяется загрузка через аккумулятор количества жизней или времени. Так что, если Вы увидите во время игры надпись "Lives: 5", это еще не значит, что в программе это число получили последовательностью действий LD A,#05 затем LD (nn),A - ведь применяется и такая комбинация (Joe Blade 2, например): LD A,#35 - где #35 код ASCII символа "5", что, кстати, облегчает во многих случаях печать. Или так: LD (IX+0),#05 (CASANOVA), и так: LD HL,#0005 (CORSARIOS), или с помощью команды LDIR из места, где хранятся в неприкосновенности все переменные в рабочее пространство (PRINCE GLUMSY).

Уменьшение жизней (энергии, времени) обычно стандартно: LD A, (nn)

DEC A

JR Z, ...

LD (nn),A

или так:

LD HL,nn

DEC (HL)

JR Z,...

Для уменьшения времени обычно применяется следующий прием:

LD HL,(nn)

DEC HL

LD A, H

OR L

JP Z,...

LD (nn),HL Но есть, конечно, и такие хитрые приемы, как в программе "JUNGLE WARRIOR":

#AFA9

(#D51F),A #AAFD

A,(#D51F)

C,#AFA9

LD

CALL

RET

LD

RRCA JR

В #D51F изначально заслали 2. В качестве команды уменьшения количества энергии применен оператор RRCA. Герой будет жить до тех пор, пока после циклического сдвига аккумулятора вправо флаг переноса не сбросится.

ИФК: В своем письме наш корреспондент останавливается также и на некоторых важных моментах совместимости компьютеров. КОРР: На некоторых моделях "Дельта-С" не идет программа "Rick Dangerous". После вскрытия программы удалось установить, что ошибка происходит в опросе клавиатуры:

LD BC,#FEFE IN A, (C) BIT 7,A RET Z

Программа проверяет 7-й бит порта #FE, но так как он постоянно установлен, то выхода с нужными флагами из подпрограммы нет. Но, как ни странно, на других компьютерах игра работает и не зависает. Для устранения этого явления вместо команды BIT 7,A я поставил BIT 1,A (POKE 41265,79). И программа заработала! Аналогичная проблема и с "The Train". Ошибка с прерываниями. В оригинале:

6BC4 DI

HL, (# 6BCD) (#F7F7),HL

LD

LD

EI

RET

EI

RET

6BCD

I

9403 DI

. LD A,#C3

. LD (#F7F7),A

. LD HL,#8A87

. LD ( #F7F8) ,HL

. EI

. RET

После отработки подпрограммы по адресу 9403: F7F7 JP #8A87

F7FA EI

F7FB RET I

Но после того, как программа вызовет процедуру по адресу 6ВС4: F7F7 FB EI

F7F8 ED ???

F7F9 8A

и с приходом следующего прерывания процессор, наталкиваясь на последовательность #ED, #8A сбрасывает всю программу. Если исправить подпрограмму по адресу #6ВС4 (27588) на следующую:

6BC4 DI

. LD HL,#0000

. LD (#F7F7),HL

. LD ( #F7F8) ,HL

. EI

. RET

Дамп этого блока будет следующим: 243, 33, 0, 0, 34, 247, 247, 34, 248, 247, 251, 201.

Прерывания 2-го рода ипроблемы совместимости.

Ширтов Павел из г. Сим Челябинской области столкнулся с проблемой в "BETA-BASIC 1.0". КОРР: Если на своем компьютере я даю команду CLOCK, то система зависнет или сбросится. Это происходит из-за того, что должны включиться прерывания 2 рода. А так как на моем компьютере порт FFH выдает чушь, то прерывания 2 рода не работают.

Чтобы справиться с этим эффектом, я сделал программу, которая помещает процедуру включения прерываний 2 рода в буфер принтера и изменяет рабочий код программы "BETA-BASIC 1.0". Вот она:

10 FOR a=61369 TO 61374 : READ s: POKE a,s: NEXT a 20 DATA 229,205,0,91,225,0

30 FOR a=232 96 TO 23320 : READ s: POKE a,s: NEXT a

40 DATA 33, 27, 239, 243, 62, 195, 50, 244, 255, 34, 245, 255, 62, 24, 50, 255, 255,

62, 58, 237, 71, 237, 94, 251, 201 5 0 NEW

Если эту программу набрать в BETA-BASIC 1.0, а затем выгрузить командой SAVE "имя" LINE 10, то ею можно будет воспользоваться таким образом. Загрузить BETA-BASIC 1.0, подать команду LOAD "имя", загрузить предлагаемую программу и затем, когда она отработает, можно начинать работать в BETA-BASIC обычным порядком.

Этой программой можно воспользоваться и на других компьютерах, на которых не идут прерывания 2 рода. ИФК: На всякий случай приводим дисассемблер кодового блока этой программы. В результате ее работы фрагмент BETA-BASIC будет выглядеть так:

EFB9

E5

PUSH

HL

EFBA

CD005B

CALL

#5B00

EFBD

E1

POP

HL

EFBE

00

NOP

А вот сама процедура, расположенная

5B00

211BEF

LD

HL,#EF1B

5B03

F3

DI

5B04

3EC3

LD

A, #C3

5B06

32F4FF

LD

(#FFF4),

A

5B09

22F5FF

LD

(#FFF5),

HL

5B0C

3E18

LD

A, #18

5B0E

32FFFF

LD

(#FFFF),

A

5B11

3E3A

LD

A, #3A

5B13

ED47

LD

I,A

5B15

ED5E

IM

2

5B17

FB

EI

5B18

C9

RET

128 K

Наконец-то в нашей почте стали появляться письма по 128-ым машинам. Как говорится, процесс пошел... Вот что сообщает Н.А.Авдошкин из Владимира:

КОРР: Может быть, подобная информация заинтересует всех владельцев "Пентагон 128" или других подобных машин.

Дело в том, что у данной версии есть меню, а в нем опция TR-DOS. Это очень удобно, но к сожалению не подходит для загрузки тех программ, которые в режиме 128К не работают. Для запуска таких программ нужно выйти в 48К-Бейсик и там набирать RANDOMIZE USR 15616. Необходимость нажимать кучу клавиш меня очень раздражала и я давно хотел придумать, как этого избежать. Сначала была идея переделать ПЗУ 0 и, убрав из него опцию TAPE LOADER, вставить TR-DOS 48. Было бы конечно очень удобно, но это довольно хлопотное дело и я пока не смог найти дисассемблер ПЗУ 0, а войти в него монитором, чтобы посмотреть, у меня почему-то не выходит -все время попадаю в ПЗУ 1 или компьютер сбрасывается._

Может, кто поможет в этом вопросе?

Но это я отвлекся. Так вот, для загрузки таких программ я предлагаю немного переделать загрузчик "boot". Нужно в него стартовой строкой вставить:

CLEAR 64399: FOR x=64000 TO 64052: READ y: POKE x,y: NEXT x: RANDOMIZE USR 64000: GO

TO START и в любом месте вставить строку:

DATA 237, 123, 61, 92, 225, 33, 3, 19, 229, 33, 118, 27, 229, 42, 69, 92, 34, 66, 92, 58, 71, 92, 60, 50, 68, 92, 6, 0, 17, 190, 21, 58, 59, 92, 230, 239, 176, 50, 59, 92, 42, 79, 92, 1, 15, 0, 9, 235, 14, 4, 237, 176, 201

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

Эта программа в кодах взята из Вашего журнала ZX-РЕВЮ № 3 за 1991 год. Из нее удалено все, что должно осуществлять обратный переход. Остаются всего 53 байта и программа становится полностью релоцируемой:

FA00

ED7B3D5C

LD

SP,(#5C3D)

FA04

E1

POP

HL

FA05

210313

LD

HL,#1303

FA08

E5

PUSH

HL

FA09

21761B

LD

HL,#1B7 6

FA0C

E5

PUSH

HL

FA0D

2A455C

LD

HL,(#5C45)

FA10

22425C

LD

(#5C42),HL

FA13

3A475C

LD

A,(#5C4 7)

FA16

3C

INC

A

FA17

32445C

LD

(#5C44),A

FA1A

0600

LD

B, #00

FA1C

11BE15

LD

DE,#15BE

FA1F

3A3B5C

LD

A,(#5C3B)

FA22

E6EF

AND

#EF

FA24

B0

OR

B

FA25

323B5C

LD

(#5C3B),A

FA28

2A4F5C

LD

HL,(#5C4F)

FA2B

010F00

LD

BC,#000F

FA2E

09

ADD

HL, BC

FA2F

EB

EX

DE, HL

FA30

0E04

LD

C, #04

FA32

EDB0

LDIR

FA34

C9

RET

Такая переделка загрузчика приводит к тому, что после загрузки в режиме 128К он переводит компьютер в режим 48К без остановки работы программы. Таким образом, пользователь даже не замечает, что он уже в другом режиме. Сохраняются все удобства работы с меню и нет нужды нажимать кучу клавиш.

Естественно, для загрузки 128К программ такой загрузчик уже не подходит. Их придется отсортировывать и держать на отдельных дисках с обычными загрузчиками. При запуске данной программы в режиме 48К или на 48К машинах переделка на ее работоспособности никак не отражается.

Любовь Шитягина из г. Прокопьевска пишет, что купила случайно одну из наших книжек, а когда прочитала, то скупила все, что смогла достать. Все ей понравилось, но один момент все-таки вызвал огорчение: "Сколько прочитала, а ни одного письма от девушек. Неужели я одна? Сестрички, отзовитесь!"

653044, г.Прокопьевск, Кемеровской обл., ул.Гайдара, 15-60, Шитягиной Л.Р.

Да, Люба, как ни печально, но Вы правы. 3а четыре года это только третье письмо от девушки. Но, наверное, это и не страшно. Зато у нас столько читателей в Кемеровской области и в самом Прокопьевске, что Вы всегда будете в центре внимания. Но, судя по Вашему письму, у Вас есть проблемы.

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

Впрочем, мы сейчас готовим книгу "Языки программирования", к которой будет приложена дискета с шестью языками: Бета-Бейсик, Лазер-Бейсик, Паскаль, Форт, Лого, Мега-Бейсик. Может быть, эти программы Вам пригодятся. Рассчитываем начать рассылку этой книги в конце лета - начале осени.

Нам пишет Бульканов Михаил Михайлович из г.Калининград, Московской области.

Ему всего 14 лет, но он уже давно программирует на "Спектруме" в машинных кодах и пишет, что наши книги ему очень помогли. Михаил прислал пару программ в кодах для печати символов по заданным координатам и для увеличения символов в несколько раз. Поскольку эти идеи уже находили освещение в наших книгах ("Элементарная графика"), то мы воздержимся от того, чтобы давать здесь их листинг, хотя все равно большое спасибо Михаилу за заботу.

Еще он интересуется, почему ему совсем не попадаются в программах команды типа INI, INIR, OUTI, OTIR, IND,INDR, OTDR и OUTD. По-видимому, все дело в классе программ, с которыми Вы, Михаил, имеете дело. Вот если бы Вы занимались коммуникационными программами, т.е. теми, с помощью которых компьютеры обмениваются информацией друг с другом и с внешним миром, то что-то из этих команд Вам безусловно бы попалось.

Михаил фактически освоил растровую графику (печать символов, спрайтов и манипуляции с ними). Сейчас его интересуют вопросы быстрой трехмерной векторной графики.

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

Наши проблемы с "Динамической графикой" как раз и связаны с трехмерной векторной графикой. Дело в том, что математический аппарат, который там задействуется, базируется на аналитической геометрии и на матричной алгебре. А поскольку даже и в вузах не во всех эти предметы изучают, нам приходится так строить книгу, чтобы суметь без всего этого обойтись. В этом-то и проблема.

Книга идет тяжело, но мы все-таки сделаем ее так, что она будет понятна и доступна всем нашим читателям.

В заключение Михаил сообщает, что работает сейчас над программой-редактором шрифтов и спрашивает, сможет ли он защитить на нее авторское право, ведь у него нет пока паспорта.

Уважаемый Михаил! По вопросу об авторских правах у наших читателей есть несколько усложненный взгляд на вещи. Наверное, надо дать пояснения.

Дело в том, что авторское право - это не патент на изобретение. Его не надо защищать и доказывать, что то, что Вы сделали это Ваше. Авторское право - это право на интеллектуальную собственность и оно поначалу НЕ ЗАЩИЩАЕТСЯ, а просто ЗАЯВЛЯЕТСЯ.

Если вы поставите значок "копирайт" перед своим произведением, укажете свою фамилию и дату, то это уже достаточная заявка на авторство. Никаких других защит не требуется. И пусть кто-нибудь попробует его оспорить.

А вот если же действительно кто-то его оспорит (то есть подаст на Вас в суд), вот тогда и потребуется его ЗАЩИЩАТЬ. Суд, как известно, руководствуется фактами. Он опрашивает свидетелей (друзей, знакомых), изучает документы (черновики, рукописи). Убедительнейшим доводом для него будет сообщение о Вашем авторстве в любом издании, например у нас.

Но мы слишком далеко зашли. Ведь вряд ли Вы думаете о том, чтобы защищать свои права в суде? Слава Богу, до этого дело практически никогда не доходит. Наверное, Вас интересует чисто моральный аспект: "Я сделал работу, горжусь ею и хочу, чтобы все знали, что ее сделал именно я! Кто мне даст на это справку?"

Вся прелесть в том, что она Вам не нужна. Смело ставьте свой знак "копирайт" - никакого паспорта для этого не требуется.

Обращаем Ваше внимание на то, что сейчас появились "фирмы", которые "регистрируют авторские права" за Ваш счет. Это если и не жульничество, то по крайней мере пустая трата времени и денег. Вся их "регистрация" сводится к тому, что Вас просят заполнить гору бумаг, а потом их поставят на самую дальнюю полку. Закон никакой регистрации не требует.

Если все идет нормально, то и без такой "регистрации" Вы живете и работаете спокойно. Если же кто-то покусится на Ваш труд и присвоит его себе, то наказать обидчика сможет только суд, а для него все такие регистрации имеют ничуть не больше веса, чем например сообщение в газете, журнале или обычные показания свидетелей.

Есть простой народный способ доказательства авторских прав. Кладете свои черновики в конверт. Идете на почту и направляете этот конверт самому себе (обязательно заказным или ценным письмом с сургучной печатью). Вот для получения такого письма Вам и понадобится паспорт, поэтому можете его отправить не себе, а например своей маме. Получив конверт, уже не распечатывайте его, а оставьте "на всякий случай". Самое важное на нем - это четкий почтовый штемпель с датой. Если штемпель смазан, можете повторить операцию еще раз. Это и недорого и надежно.

Что же такое iS-DOS?

Бамычев Олег Юрьевич из Воркуты спрашивает:

Я хотел бы поподробнее узнать об iS-DOS. Насколько я понял, это программа, которая должна работать в ОЗУ. Но тогда ее нельзя назвать операционной системой, это, скорее, дополнение стандартной операционной системы TR-DOS. И еще, я хотел бы узнать, требуется ли для ее работы 128-килобайтная машина или можно ограничиться 48К?

ИФК: Прежде всего, давайте разберемся с операционной системой. Что же это такое? Обратимся к профессионалам. Вот, что говорится в хорошо известной книге В.Э. Фигурнова "IBM-PC для пользователя". "Операционная система - это программа, которая загружается при включении компьютера. Она производит диалог с пользователем, осуществляет управление компьютером, его ресурсами (оперативной памятью, местом на дисках и т.д.), запускает другие (прикладные, игровые) программы на исполнение. Операционная система обеспечивает пользователю и прикладным программам удобный способ общения (интерфейс) с устройствами компьютера".

То, что у нас Спектрум, а не IBM, принципиально ничего не меняет. Также и носитель программы. В ПЗУ программа расположена только для того, чтобы сократить время от момента включения питания до завершения загрузки. Кстати, в IBM тоже есть ПЗУ, которое является составной частью операционной системы. Это BIOS -базовая система ввода-вывода.

Теперь об iS-DOS. При включении компьютера управление передается ПЗУ с системой TR-DOS, но это только первый момент обращения к диску, тут же управление перехватывается загрузчиком iS-DOS и дальше работает новая операционная система, загруженная в ОЗУ, объем которого, кстати, совсем не обязателен 128К. Можно вполне пользоваться и 48К. Правда, при этом не будет возможности организовать RAM-диск, на который в режиме 128К можно скопировать все системные программы - это повышает скорость работы самой операционной системы, так как чтение служебных файлов при обращении к ним происходит практически мгновенно. Но, повторяем, это удобство - не главное, что позволяет iS-DOS, и может быть рассмотрено как один лишь небольшой плюс, предоставляемый этой системой.

Когда верстался номер, к нам пришло письмо от Александра Гмарь, автора программы Memory Editor. Он прислал полностью релоцируемую версию программы. К сожалению, в верстку уже пошли доработки, присланные нашими читателями и при всем уважении к автору мы не можем занять место под еще один дамп программы.

Александр просит побольше давать материалы по iS-DOS:

КОРР: Это новый уровень программирования. Я теперь готовлю тексты в iS-DOS, а распечатываю их на IBM. Хочу попросить ISKRA-SOFT об ассемблере под iS-DOS.

ИФК: У нас много писем по поводу iS-DOS. Читатели высоко оценили новую систему, но в большинстве своем указывают, что без форматирующей программы работа с ней выглядит сомнительной.

Мы связались по этому поводу с фирмой "СЛОТ" и вот что нам сообщили.

1. Во-первых, относительно АССЕМБЛЕРа. Не просто АССЕМБЛЕР, а МАКРОАССЕМБЛЕР подготовлен для дистрибуции.

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

Причина, по которой форматер был задержан - чисто организационная. Нестандартный формат часть защиты системы от несанкционированного копирования. Решение о реализации системы без форматера было принято как временное, только на первый этап распространения системы. Предполагалось, что первые месяцы пользователи должны осваивать и изучать систему, а к началу активной работы форматер должен быть предоставлен.

Это безусловное неудобство, но фирма должна была как-то выжить. Сейчас "СЛОТ" крепко стоит на ногах и продолжает работу над новыми программами.

Александр положительно отзывается о новом виде "ZX-РЕВЮ", за что мы очень признательны. Он отмечает наш важный недостаток, слишком редко мы выходим.

Увы, выходить ежемесячно мы не сможем никак. То, что рук на все не хватает - это понятно, это у всех так. Но гораздо хуже дело обстоит с типографиями. Ну, никак не могут они делать выпуск быстрее, чем за два месяца. То у них идет печать каких-то избирательных бюллетеней, то двухнедельные "каникулы", то аварии. В общем, мы бы вытянули и раз в месяц, но гарантировать не можем, а потому не беремся.

Правда, кое-что мы все-таки сделаем. Начнем с того, что очень скоро выпустим объемной книжкой "ZX-ФОРУМ", подготовленный по неопубликованным в ZX-РЕВЮ трудам наших читателей. И неопубликованным не потому, что они неинтересны, а потому, что особо объемны и никак не вписывались в наш объем.

Есть у нашего корреспондента и несколько вопросов по поводу игровых программ. Во-первых, он отвечает на вопрос Алексея Царева по поводу игры PUZZNIC и дает POKE 46049,0 - время, но и сам просит помощи от тех, кто прошел игру TITANIC 2 - исследовав все игровое пространство, он не нашел пути к победе. Непонятно также, как быть в комнате, в которой водолаз все время погибает.

Другой вопрос касается игры SWITCH BLADE 2 (Gremlin Graphics). Собрав все мечи, он тем не менее не может победить основного противника. А POKE для этой игры - 38478,0.

Музыкальный сопроцессор.

О том, как произошло его знакомство с музыкальным сопроцессором, рассказывает Евгений Крюков из г. Дзержинска Нижегородской обл.

КОРР: У меня был компьютер "Москва-128", без сопроцессора. И в этом состоянии он действительно был ничем не лучше обычного ZX-SPECTRUM-48K". Но и это меня вполне удовлетворяло. Но вот однажды, у меня появились две игры - Dizzy-3 и Dizzy-4. Они мне безумно понравились (я к этому еще вернусь в конце письма). Только после полного прохождения этих двух игр, я позволил себе заглянуть в описание (500 игр для "Спектрума", изд. "VA PRINT"). И каково же было мое удивление, когда в описании игры Dizzy-3 я увидел, что эта игра имеет "...хорошую точечную графику и замечательную музыку..."! Вот это да! Насчет графики я не могу не согласиться, она там действительно классная, но музыка? Т.к. не доверять составителям сборника оснований не было, то некоторое время я находился в замешательстве. Только потом, когда один мой друг, владеющий компьютером "PENTAGON-128+" со встроенным музыкальным сопроцессором, сказал мне, что музыка это - для 128К, я понял, в чем дело. А когда я пришел к нему и услышал ее, я навсегда полюбил ее и понял, что не смогу спать спокойно, пока у меня тоже не будет такой же музыки. Тогда в компьютерном магазинчике как раз продавалась плата с сопроцессором. Плата изготовлялась фирмой "SIMETRON LTD" и снабжалась инструкцией, которая гласила, что эта плата подходит к музыкальным сопроцессорам AY-3-8910 или AY-3-8912. Вместе с этой платой я купил (не буду говорить сколько я копил на это дело) и музыкальный сопроцессор. Правда, это был не AY-3-8910, a YM-2149F.

Никакого упоминания о нем я нигде не нашел, но впоследствии оказалось, что они идентичны.

А что же было дальше? А вот что. Я подключил эту плату к своему компьютеру, и с этого момента моя "Москва-128" стала действительно полноценным компьютером 128К. Как здорово было слушать музыку из Dizzy-4 и других игр. Да, насчет Dizzy-4. Я наконец-то понял тогда, почему не брался последний файл на ленте "diz4.M" в

Dizzy-4. Оказалось, он содержал в себе музыку и предназначался только для 128К-режима. А вот Dizzy-3 так и не заработала как следует. Тут дело вот в чем: эта игра (в моей версии) содержит пять файлов, включая загрузчик и заставку. И последний из них, "DIZZY-4" не загружался, как и "diz4.M" в Dizzy-4.

Я не без оснований полагал, что он должен загрузиться в 128К-режиме с подключенным сопроцессором. Но не тут-то было. Этот последний файл не брался даже тогда с завидным упорством. Тогда я вскрыл загрузчик и посмотрел в чем там дело. Там я увидел условный переход на загрузку этого файла, но я так и не понял, какие же условия должны были быть выполнены, чтобы этот файл загрузился. Поэтому мой первый крик о помощи:

ПОМОГИТЕ! Помогите разобраться в этой задачке.

(К другу я не могу обратиться, т.к. у него дисковая версия этой игры). Листинг загрузчика Dizzy-3 у меня такой:

10 REM LOADER FOR DIZZY-3

2 0 BORDER NOT PI: CLEAR VAL "24317": POKE VAL "2 37 3 9",CODE "o": RANDOMIZE USR VAL

"4e4": LOAD "DIZZY.2"CODE: LOAD "DIZZY.3"CODE: POKE VAL "23627",NOT PI 30 POKE VAL "23760",PEEK VAL " 49152": OUT VAL "32765",VAL "16": POKE VAL "49152",VAL

"30": OUT VAL "32765",VAL "19" 40 IF PEEK VAL "49152"=VAL "30 " THEN POKE VAL "49152",PEEK VAL "23760": RANDOMIZE USR VAL "24832"

50 LOAD "DIZZY.4" CODE: OUT VAL "32765",VAL "16": POKE VAL "49152",PEEK VAL "23760": POKE VAL "23627",VAL "255": RANDOMIZE USR VAL "24832"

Да, кстати, еще насчет сериала "Dizzy". Сейчас я собрал уже все шесть этих игр аркадно-адвентюрного жанра (как Вы его называете, я называю его короче - KBECT (от английского QUEST - "поиски предмета" или "вопрос"). И еще есть у меня игра "Dizzy Downs The Rapids" аркадного жанра. Но это так, к слову. Я вот к чему веду. У меня версия Dizzy-5 вскрыта и обесмерчена Дупановым Алексеем 7 июня 1992 года. Так написано в загрузчике. Там же есть запись: DIZZY V FOR 48K". У меня появилась навязчивая мысль - а что, если есть версия этой фантастически интересной и трудной игры для 128К? Если Вы что-нибудь знаете, то ответьте мне.

Тоже самое и с Dizzy 6, Prince Yolkfolk. Моя версия вскрыта FANATIC STAS и тоже предназначается для 48К-памяти. А ведь игра сама дает понять, что в ней присутствует музыка-128, особенно в конце, когда игра на несколько секунд застывает, а потом возвращается в начальное меню. По-моему в это время там играет музыка 128К. К сожалению, в нашем городе распространены версии для 48К. Поэтому второй крик о помощи: ПОМОГИТЕ!

Помогите достать версии для 128К, если они существуют!_

606039, Нижегородская обл. г. Дзержинск, б. Космонавтов

д.1/77, кв.284 Крюкову Евгению Евгеньевичу

ИФК: Сходные проблемы изложены в письме нашего читателя из Подмосковного города Люберцы Маркова Василия Петровича.

Василий Петрович обратил внимание на то, что в "Dizzy-4" второй кодовый блок ("diz4.M") не грузится. Действительно, этот блок содержит музыку для музыкального сопроцессора и загружается только в режиме 128К. Поэтому даже если в Вашем 48К компьютере установлен музыкальный сопроцессор, этот кодовый блок не загрузится. Однако, мы можем подсказать,как все же прослушать эту музыку, правда отдельно от игры: 10 CLEAR 40000 20 LOAD "diz4.M" CODE 30 RANDOMIZE USR 4 9152 40 RANDOMIZE USR 49180

После инициализации в строке 30 произойдет необходимая модификация и блок кодов примет рабочий вид. Теперь можно запускать музыку (строка 40). Музыка будет продолжаться до нажатия на SPACE. Если после остановки подать команду RANDOMIZE USR 49180, то музыка будет начата сначала. Если подать команду RANDOMIZE USR 49183, то музыка будет продолжена с того места, на котором была остановлена нажатием SPACE.

Думаем, этого достаточно для того, чтобы можно было воспользоваться этим музыкальным блоком. Василий Петрович сообщает также о том, что самостоятельно нашел "вечную жизнь" для "Dizzy-4" - POKE 30273,180.

Мы получаем немало писем относительно сериала DIZZY. Многие просят помощи в тех или иных местах. Этих вопросов так много, что мы никак не смогли бы ответить на них, на страницах ZX-РЕВЮ. К счастью, нам на помощь пришел вышеупомянутый Алексей Царев. Он прошел все игры этого сериала и готов помогать

заблудившимся. Спасибо, Алексей, даем Ваш адрес:_

603115, Нижний Новгород, ул. Генкиной, д.18/12, кв.2.

_Цареву А.В._

Алексей горячо поддерживает наш раздел "Компьютерная Новелла" и добрым словом отзывается о Dark Wheel. Спасибо и ему и другим читателям, выразившим свою поддержку, все-таки у нас это был первый опыт художественного перевода, а это совсем не то же самое, что перевод технический. Долгое время мы вообще не были уверены, что у нас что-то получится, но, судя по отзывам читателей, вроде все-таки получилось.

В одном из прошлых наших "ФОРУМов" был вопрос к читателям относительно игры "Тай-Пэн". Особенно приятно, когда поднятые у нас вопросы не остаются без внимания и находят поддержку среди читателей. Вот так и с этой игрой. Помощь пришла от Евгения Крюкова (интересующегося не только Dizzy и музыкальным процессором). Он хорошо разобрался с этой игрой, но имеет только 1-й уровень. Может быть, кто-то, у кого есть прочие уровни, поможет Евгению? Его адрес опубликован выше. Надеемся, что помощь придет. А вот, что Евгений пишет о самой игре:

КОРР: Игра классная! И я бы приписал ей следующие жанры: ARCADE / ADVENTURE / STRATEGY / MANAGEMENT / TRADITIONAL, а может быть, на более высоких уровнях есть еще и ACTION?

ИФК: Игра, должно быть, действительно классная, хоть мы ее и не имеем. Но зато знакомы с великолепным одноименным романом Джеймса Клавеля. Тай-Пэн - это верховный военный лидер в средневековом Китае. В романе дело происходит в 1841 году. Английский моряк, торговец и авантюрист Дирк Струан захватывает остров Гонконг, лежащий в самой большой и удобной гавани, которая есть не только в Китае, но и во всем мире. Этот остров - как кинжал под ребрами у Китая. Выжить, выстоять и превратить Гонконг в дальневосточный форпост Британии - задача Струана. Столкнуться придется и с пиратством, и с торговлей опиумом (а не только чаем) и, конечно, с реками крови. Он-то и должен стать тай-пэном.

По нашим сведениям сейчас книги Клавеля наконец-то начали переводиться на русский язык и издаваться. Не исключено, что очень скоро этот роман станет, доступен и Вам. Не пропустите, он входит в десятку лучших приключенческих романов мира.

Но возвратимся к письму нашего корреспондента.

КОРР: Цель игры, по-видимому, заработать как можно больше денег, плавая из одного порта в другой и торгуя различными товарами. В основном это контейнеры с чаем. На первом уровне предстоит купить корабль и снарядить его для плавания.

Начать следует с добывания капитала, для чего следует разыскать портовый кабак (он же и игорный дом). Здесь Вам предложат обед за 100 монет, но раз денег у Вас нет, от него придется отказаться.

В конце зала идет игра на деньги в некую национальную китайскую азартную игру, а новичку готовы дать в долг 300000. Если Вы человек рассудительный, то сыграете разок ради любопытства и поспешите унести отсюда ноги в поисках более надежного способа добычи денег. А добыть их необходимо, ведь заем Вам дали только на полтора года.

Время идет неумолимо, примерно 1 день в минуту. Кстати, Вы начинаете игру 1 января 1840 года и потому забудьте о лазерах и бортовых компьютерах, а вспомните лучше о фрегатах и клипперах.

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

В казино везет немногим. Невезучим же (как я) лучше прямиком отправиться в банк, где можно купить корабль. В начале игры выбор невелик - это LORCHA или CLIPPER. Первый гораздо хуже, но зато дешевле (150000). Можно купить и клиппер, но тогда не хватит денег на его экипировку.

Следующая задача - набрать команду. Это можно сделать в таверне (INN). Команда всего 13 матросов и набрать ее не составит труда, но надо запастись продовольствием и водой. Без провианта в море делать нечего. Гнев команды падет на Вашу голову. Продовольствие покупается на складах (STORE).

Последняя задача - вооружение корабля и команды. Это можно сделать в арсенале (ARMOURY).

Если все прошло нормально, то должны остаться деньги и их следует потратить на товар, хотя бы на пару контейнеров чая. Где его купить Вы наверное уже нашли сами, пока блуждали по городу. С этого товара Вы и начнете делать капитал.

Все, теперь можете отправляться в плавание. Для этого идите на пристань (там табличка с названием порта) и грузитесь. Если у Вас есть другие уровни, то сможете даже и отплыть. А если нет (как у меня) - Вам останется только шляться по городу, хоть и это тоже интересно.

О ролевых играх.

Когда в первом номере ZX-РЕВЮ мы опубликовали статью об истории жанра RPG, то рассчитывали просто ознакомить наших читателей с еще одним жанром, который на "Спектруме" обойден стороной. На развитие этой темы мы не полагались, но оказались неправы. У него тоже есть поклонники и приверженцы. Вот что пишет по этому поводу В.А.Исаев (подпись неразборчива возможна ошибка, город не указан).

КОРР: За свои пять лет общения со "Спектрумом" я прошел через многое. Этакая эволюция от Бетаи Мега-Бейсика к машинным кодам (спасибо Вам огромное за Ваш "трехтомник"). Была эволюция и в играх от "стрелялок-убивалок" через Tomahawk, Elite, Sir Fred к аркадным адвентюрам типа Dizzy, Seymour и к стратегическим играм -Stalingrad, Overlord, Rebel Star II. Затем - к экономическим (Sim City и Rock Star II). И, наконец, к многочисленным играм жанра Adventure.

И вот недавно, получив доступ к IBM, узрел ясными очами, что такое RPG на игре "Хроники Эмбера" по роману Роджера Желязны. Вполне естественно, что начал искать что-то подобное и для "Спектрума". Первой находкой стала "Quest for Mindstone". Но она вызвала раздражение. Некачественная графика, плохая анимация.

Основная проблема - сохранить деньги и силы, а загадки спрятаны в назначениях предметов и их взаимодействии. Разгадываются очень просто.

ИФК: Если это та же игра, которую видели мы, то это вроде бы и не RPG, а D&D (Dungeons & Dragons). Жанр немного схожий, но задача там другая. Если в RPG главное - обследовать игровое пространство и "воспитывать героев" (их обязательно несколько), то в D&D - именно как Вы и сказали - проложить оптимальный маршрут так, чтобы и сил и денег хватило дойти до цели (и герой там один). Играть в нее не играли не понравилась.

КОРР: Зато вторая моя находка вызвала восхищение. Это игра "Gates of Assenot", помеченная "копирайт" R.S.G.C. Игра в лучших традициях RPG, к тому же то ли переведена на русский, то ли сделана в России. Графика очень хороша (лучшее, что я видел на ZX). Дата - январь-94. В целом игра напоминает Slainking, но более качественная.

Мой друг, тоже любитель RPG, посоветовал разыскать игру Bard's Tales, он говорит, что это лучшая RPG для "Спектрума".

Но это все прелюдия. Суть же в том, что хотелось бы, чтобы Вы продолжили публикации статей об RPG-играх. Уверен, что это нужно. Многие мои знакомые не могут проводить время за чистыми адвентюрами, но с удовольствием играют в RPG. Я думаю, что эти игры привлекли бы многих. Вы говорили о статьях "Учет параметров персонажей в играх RPG", "Средневековое оружие и доспехи в играх RPG". Дайте названия лучших RPG, имеющихся для "Спектрума". Может быть собрать и сделать сборники типа сборников Adventure Games, которые у Вас были несколько лет назад? Может быть сделать такой раздел в ZX-РЕВЮ по типу раздела, посвященного адвентюрам? Уверен, что найдутся и читатели и поклонники этого жанра.

ИФК: Нам нечего сказать. Готовы подписаться под каждым словом. Все это было бы действительно здорово, если бы...

Где на все взять рук и сил? Возможно, что на "Спектруме" и найдется с десяток RPG, но чтобы их собрать, "прогнать", изучить, обобщить и опубликовать, на это уйдет не менее, чем год работы одного человека. RPG-игры, как Вы понимаете, слишком обширны. Их за пару дней не пройдешь. Короче, нужен энтузиаст, готовый на это год положить. Увы, у нас такого пока нет. Вот в IBM-овском направлении такой человек есть, а у него свои связи, своя история, многолетняя база за плечами - там дело и идет бурными темпами, а для "Спектрума" - пока нет, поскольку и самих-то RPG здесь до последнего времени не было.

Мысль опубликовать статьи из PC-REVIEW была бы хороша, но уж очень там сейчас таких статей много и уж очень они велики. Закидают нас за это гнилыми помидорами наши поклонники-синклеристы. Ну напечатали один раз - про эволюцию жанра - так пора, наверное, и честь знать.

Давайте сделаем так. Если есть в Москве или поблизости знаток и ценитель RPG для "Спектрума", пусть с нами свяжется по телефону для обсуждения возможности разворачивания этого направления. Захочет - станет редактором соответствующего раздела. Ну, а если уж такового энтузиаста нигде нет, то тут уж, извините, ничего не поделаешь.

ДЛЯ РАБОТЫ ПО СОВМЕСТИТЕЛЬСТВУ "ИНФОРКОМУ" ТРЕБУЮТСЯ РЕДАКТОРЫ ОТДЕЛОВ:

- адвентюрных игр;

- стратегических игр;

- имитаторов;

- ролевых игр (RPG);

ХАРАКТЕР РАБОТЫ - НАДОМНЫЙ.

Перспективы:

- участие в выпуске книг и журналов;

- при желании переход на тематику игр для IBM-PC.

С предложениями обращаться по тел. 956-16-31 в любое время.

Это первое, что мы можем сейчас сделать. Но есть и второй шаг. "ИНФОРКОМ-ПРЕСС" готовит сейчас новый интересный проект. Скоро начнется выпуск серии книг-игр. Первая книга должна выйти уже в августе. Этот литературный жанр имеет колоссальные многомиллионные тиражи на Западе, а у нас практически неизвестен. Во втором номере ZX-РЕВЮ Вы могли видеть интервью с Дмитрием Браславским - автором лучших из известных нам книг этого жанра (его книги превосходят лучшие английские и французские образцы).

В этом году выйдут первые три книги пробными тиражами по 10 тысяч экземпляров. По результатам пробных тиражей на будущий год планируется выпуск еще девяти книг этой новой серии.

Читатели наших журналов "ZX-РЕВЮ" и "PC-REVIEW" первыми узнают об этих выпусках и смогут их заказать.

ИФК: Немного о программах рассказывает Александр Шарапов из г. Уфа.

КОРР: Игра ELITE. У меня версия JK. Статус DANGEROUS.

Летаю 1,5 года. Первую миссию мне никогда не предлагали, и я так и не увидел взрыва сверхновой. CLOAKING DEVICE я получил у Таргонов т.к. никогда не собираю обломки кораблей и астероидов. А тут перепутал обломок с ALIEN ITEMS. "Кораблей поколений" похожих на астероид, очень маневренных видел много. Но чтоб они выпускали по дюжине истребителей такого не было. Обычно 2-3, их подобьешь - еще партия и т.д. Подбить такой корабль удалось только один раз. Пара обломков и пара контейнеров - вот и все его содержание. Но мне сразу выключили приводящий сигнал со станции (хотя до этого я его уже ловил), а при попытке залететь вручную корабль захватили пираты (у самого входа!). Трюм у меня был забит мехами (чуть не сказал: "фурсами") и рядом никого не было.

Это месть программы!

Игра QUAZATRON. Мне просто любопытно:

1. Как пользоваться детектором?

2. На каком этаже - какой аккумулятор заряжается?

3. Есть ли у программы конец? (Я 2 раза подряд очищал город).

Игра ACADEMY. У меня есть только первый уровень игры и я хотел бы поделиться оптимальной, на мой взгляд комплектацией и советом. Не жалейте ракет. Почаще заезжайте перезаряжаться. Все низкое считайте за камикадзе и уничтожайте двойным ударом ракет.

Миссии:

1 и 4

2 и

Сканер

V

V

Компас

V

-

Прицел

-

-

Jamp

-

V

Infra

V

-

Miss

8

4

Amm

-

4

Flare

-

-

Bomb

-

4

Laser

H

H

Drive

M

M

Shield

H

H

Steer

L

L

Ориентация без компаса производится по солнцу.

Оборот вокруг оси на 360о скиммер делает приблизительно за 7 секунд.

ИФК: Для тех, кто интересуется программой ACADEMY, более подробную информацию прислали Яржинский Игорь Эдуардович и Горковенко Анатолий Лукьянович из поселка Усть-Куйга из Якутии. Они делятся своим опытом прохождения первого уровня.

КОРР: Прежде всего очень удобно пользоваться измененными скиммерами. В I уровне первая миссия /ЕСЛИ ОНО ДВИЖЕТСЯ/ - уничтожение всех роботов. Очень подходит такой скиммер:

1. Scanner Unit - сканер.

2. Compass /Adf - компас/азимут.

3. Missiles - ракеты - 8 шт;

4. Flares - осветительные ракеты - 8 шт.

5. Laser Power Level - High уровень мощности лазера - высокий.

6. Main Driver Power - Med энергетический привод - средний.

7. Shield Power Lewel - High энергия защиты - высокая.

8. Steering Unit - Low - блок управления - низкий.

Первую миссию следует проходить поэтапно. После набора 25 % повреждений, рекомендуем незамедлительно вернуться на базу для ремонта. Начинать боевые действия удобнее всегда с правой стороны от станции по ходу скиммера. Здесь мы сбиваем 3-х роботов, одну летающую тарелку и, самое главное, 2-х камикадзе. Камикадзе следует расстреливать лазером, т.к. попадание ракетой с первого раза его не уничтожает.

ИФК: Чтобы не терялся интерес к игре, дальше думать наши корреспонденты предлагают самим. КОРР: Миссия 2 - КРАСНЫЙ РАССВЕТ. Цель: уничтожение заводов. 3десь очень хорош скиммер с такими параметрами:

1. Сканер.

2. Компас/азимут.

3. Гиперпрыжок/стыковка.

4. Противоракетные снаряды - - 4 шт.

5. Бомбы замедленного действия - 4 шт.

6. Высокий уровень мощности лазера.

7. Средний уровень главного энергетического привода.

8. Высокий уровень энергии защиты.

9. Низкий уровень блока управления.

Рекомендуем начинать, как и в первой миссии, с правой стороны. Но предварительно нужно расстрелять прыгающих роботов вокруг себя. Будьте очень внимательны! Среди множества враждебной техники находится Ваша платформа гиперпрыжка. Достаточно одного попадания по ней, чтобы она взорвалась. По бокам от платформы два камикадзе. Атакуют они почти одновременно.

Уничтожение заводов. После того, как Вы уничтожите всех ползающих и летающих захватчиков, Вам остается только взорвать заводы при помощи бомбы замедленного действия. Но не считайте, что это очень легко, т.к. заводы способны постоять за себя. Пока Вы мчитесь к ним на полной скорости, они интенсивно "поливают" Вас ракетами. При уходе от заводов, после сброса бомбы, желательно отстреливаться через задний экран. Сброс бомбы удобно производить, пролетая между заводами. Нажимать "сброс" следует только тогда, когда оба завода будут находиться по бокам экрана, но в пределах видимости, иначе сброс произойдет вхолостую. Во втором квадрате Вас ждет уже три завода, не считая всех остальных захватчиков. Самое главное - чаще залетайте на станцию.

Миссия 3 - ПЛАВКА.

Цель: уничтожение реактора.

Здесь удобен скиммер со следующим оборудованием:

1. Компас/азимут.

2. Цель/курс.

3. Инфракрасное видение.

4. Высокий уров. мощности лазера.

5. Средний уровень главного энергетического привода.

6. Высокий уровень энергии защиты.

7. Низкий уровень блока управления.

8. Ракеты 4 шт.

9. Противоракеты 4 шт.

Боевые действия лучше всего начинать с правой стороны от базы. После того, как будут уничтожены левые три "тарелки", рекомендуем вернуться на базу для ремонта и заправки. К реактору лучше всего лететь так, чтобы маяки оставались с правой стороны по ходу скиммера. Будьте внимательны! Чаще осматривайте горизонт! Очень много мин! Реактор можно уничтожить ракетами, но только тогда, когда будут расстреляны все роботы и после хорошей очереди лазером. Можно применить также бомбу.

Миссия 4. ТИХО-ТИХО.

Цель: возврат на базу.

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

ИФК: Наши корреспонденты из Якутии сообщают, что, к сожалению, в их маленьком поселке очень мало владельцев ПК "ZX-SPECTRUM". У всех, у кого есть эта увлекательная игра, она неполная - отсутствуют остальные четыре уровня, догружаемые с магнитофона.

Проблема дополнительных уровней для магнитофонной версии программы ACADEMY, кажется, выглядит всеобщей. Во всяком случае, мы получаем много писем с просьбой помочь их разыскать. По нашим данным этой проблемы нет у дисковой версии ACADEMY. В частности, редакция журнала "Спектрофон" располагает дисковой версией игры с 5-ю догружаемыми уровнями.

ИФК: Бамычев Олег Юрьевич из г. Воркута вносит дополнения и задает вопросы по играм.

КОРР: Я хотел бы внести пояснения в описание программы A.T.F., которое было опубликовано в моем любимом ZX-РЕВЮ. Автопилот включается клавишей "L", но включать его можно лишь на расстоянии менее 80 км до своей базы. В некоторых случаях автопилот может не работать (очень поздно выпущены шасси и т.д.), и самолет, пролетев над аэродромом, начнет удаляться. В этом случае нужно выключить автопилот, вручную развернуть самолет и снова включить автопилот. Кстати, шасси выпускаются клавишей "U" менее, чем за 25 км до аэродрома.

Теперь один вопрос по ELITE. Наверное, интерес к этой игре не пропадет никогда. Я играл с версией "M128", но сейчас перешел на дисковую версию "Joystick club". Так, по крайней мере, отмечено на картинке. Но отгрузочный блок имеет вместо 102 байтов - 255 и, по-видимому закодирован, так как при его просмотре обнаружить даже имя пилота не удается. Может быть, эта кодировка выполняется в Бейсик-загрузчике блоком кодов, расположенным за оператором REM?

ИФК: Уважаемые читатели, у кого есть "ключик" к кодировке отгрузочного 255-байтного блока ELITE этой версии, напишите нам, пожалуйста.

ИФК: Патранин В.В. из г. Оленегорска задает вопрос по игре ROBOCOP. Он спрашивает, как убить террориста на 3 уровне в игре (он указывает, что пользуется версией с бессмертием).




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



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

Похожие статьи:
PC-RULEZ - Непутевые заметки или как я стал писюком.
Конкурс - Конкурс на лучший вирус.
Роман с баобабом - STRYKER купил и поджег ракетку китайского производства!
intro - на первый номер ACiDpaper мы получили несколько откликов.
Послесловие - Что ж, вот и конец OPEX#3...

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