ZX Spectrum
Game

Earth Attack

ZX Computing (Великобритания),

Автор:

Жанр: Стрелялки


Доступные версии

 Неофициальное издание
Играть!

Язык

  • Русский
  • English

Управление

  • Клавиатура(?)

Игроков

  • Один
  • Описание
  • Описание (авт.пер.)
  • Информация

ЗЕМЛЯ ATTACK

Дэвид Mold от ZX Computing октября / Nov.1983

[Примечание: Эта программа требует Выпуск 2 эмуляции из-за способа]

[Он использует ПО для сканирования клавиатуры. JimG]

С помощью всего лишь окроплением машинного кода, Дэвид плесень

Чесхант разработал захватывающую космическую приключение для вашего ZX Спектр.

Написано для 16K и 48K Spectrum, об этом объявлении подарки Вы с увлекательной игрой, которая делает большое использование машины Код для сохранения жизненного пространства памяти. Эта программа состоит из из четырех основных разделов. Эти:

1) Линии 1 180 содержат всю инициализацию и прыжки

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

2) Линии 200 до 999 содержат основной цикл игры, в том числе его

   слуга подпрограммы (скоринг, “умные бомбы” и высокая оценка    Процедуры). Этот цикл вызывает все процедуры в коде машины,    и связывает воедино их ответы и любые другие соответствующие    ОСНОВНЫЕ необходимы для ‘действия’ игры.

3) Линии 1000 до 2400 содержат данные и подпрограммы POKEing    создать первый определяемые пользователем графику, то    машинный код.

4) Линии 3000 до 3250 содержат три страницы инструкций

   и детали игры которой компьютер циклы через    между играми.

Заглавные буквы в кавычках в следующих строках следует

вводится в графическом режиме и при запуске программы производить соответствующие пользовательские графики в этом ключе:

140, 180, 200, 230, 245, 701, 715, 725, 3140

Переменные

Переменные используются, в порядке их появления, являются:

с $ – Инициалы высшей бомбардира.

ч $ – Высокая общая оценка.

ы – Текущая оценка.

бо – INT ы / 1000 – используется при расчете бонуса бомбы.

н – Используется на протяжении всей программы в качестве контроля Переменная в FOR … NEXT петли.

$ – Отображает количество кораблей оставшихся (первоначально четыре). л – Количество лазерных выстрелов.

сб – умных бомб готов к использованию ряд.

х, у – Координаты корабля.

р – байт экран прямо перед Корабль (старший байт позиции символов).

RG – случайная величина используется при выборе чужеродных видов. б – переменная, используемая для POKEing в машине Код (адрес 32477) для обозначения высоты Следующее здание.

– фиктивная переменная для прыжков в машинный код.

р $ – Используется в высоком рутины оценка принять инициалы.

Есть множество других переменных, используемых в программе, но

они в основном управлять или фиктивные переменные, которые только использован только один раз, и их использование является достаточно пояснений.

Добро пожаловать в машине

Есть три основных процедуры машинного кода, используемые в

Программа. Данные для них начинается с линии 2000 года, и у меня есть разобрал их для вас на рис. 3а, 4а и 4b.

Во-первых это “умная бомба” рутина. Это давно 26 байт и

начинается с адреса 32400 Использование файла атрибуты Дисплей Спектр, он меняет цвет бумаги каждого Позиция символа в центральной трети дисплея ( часть которых «действие» этой игры использует) до красного. В то время как делать это он также рассчитывает, сколько Позиции символов ранее содержали желтый как их INK цвет. Это число, которое возвращает в переменную с, когда она возвращается в BASIC, который затем умножается на 10 чтобы увеличить ваш счет в соответствии с тем, как много иностранцев ваш умная бомба уничтожена.

Далее идет “SIDE SCROLL” и “построить город” подпрограммы,

которые реально работать вместе, и называются по ЕГР 32426. Высота, что небоскребы строятся на зависит от переменная б, который ткнул в месте 32477. The подпрограмма работает снова только на центральной трети дисплей. Причины этого являются:

1) Это в соответствии с характером игры;

2) он ускоряет, как работает код, который должен работать на    тысячи байтов в D_FILE спектра в; и 3) из-за того, что называют любопытный строительство    Дисплей файл, он делает манипуляции треть экрана    в то время, довольно простая задача, но пересечения между    трети достаточно сложный.

Последний из этих трех основных подпрограмм является “ПРОВЕРКА ТОПЛИВО”

рутина. На самом деле он делает гораздо больше, чем его название предполагает. Его действие состоит в следующем:

Первый лазерный огонь корабля обращается. На каждом шаге

это проверка, чтобы увидеть, был ли удар иностранец или нет.

Если иностранец был поражен, он проверяет, является ли это блюдце

или монстр, и регулирует величину до нашей эры соответственно. Это затем создает две стадии взрыва.

Затем процедура стирает лазерный огонь и возвращается в BASIC.

Вкратце …

Есть два других подпрограмм короче машина код также

включены. Процедура, которая начинается с адреса 32350 и показано 3б является слугой подпрограмма для “Проверить ТОПЛИВО: “код. При вызове из другой рутины, его печатает символ на экран с помощью POKEing восемь байт которые следуйте инструкциям вызова в положение персонажа, начало которого определяется HL.

Процедура, начиная с адреса 32300 производит дисплей

города разрушается в конце программы, и разбирается в Fig.3c.

Я уже говорил, задержку, вызванную создание

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

Ответ, конечно, чтобы сохранить код и пользовательские

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

Так, когда-то ваша программа была набрали в и вы запустите его

один или два раза, чтобы убедиться, что нет никаких ошибок в typed- в версии, вы можете стереть все строки программы между 1000 и 2400 включительно. Затем введите в строки программы показано на рис.1. Не волнуйтесь, что некоторые из этих линий перезаписи строки, которые все еще существуют – это предназначено.

Теперь, найти номер на кассете где-то, и сэкономьте

Программа и два кода файлов, набрав:

RUN 2000

При повторной загружены, программа автоматически загрузит два

Файлы, а затем запустить себя.

Время для веселья!

А теперь, после всех этих усилий, самое интересное – играть

игра Рис.2 показывает ключи, используемые для управления своей ракете Корабль как это крылья его пути над земной ландшафт. К добавить аттракционов есть целый урожай маленьких чужеродных блюдца чтобы получить Вас. Хотя они на самом деле не стрелять в вас, происходит обильное снабжение из них, и вы можете быть уничтожены в любой из трех способов: с помощью врезаться в них, по врезаться в городе ниже вас, или случайное перемещение в ‘гиперпространство »выше. На самом деле, ваш маленький корабль не очень прочная вообще, но у вас есть одно оружие на вашей стороне – Ваши лазеры!

Для начала у вас есть 20 лазеров, и ваш счетчик лазер

уменьшается на единицу каждый раз, когда вы используете их. Вы забиваете 10 указывает для каждого блюдца вы попали, и 20 для каждого инопланетного существа (Маленькие желтые “гадости”, которые стоят на крышах домов и очень трудно попасть). Каждый раз, когда вы приносите нос своего корабля в связаться с зеленым топливной базы, ваша количество лазеров увеличивается на 20. Это не имеет значения, если вы пахать право через эти топливных баз.

Вы получаете три умные бомбы в 1000 набранных очков. В то время как

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

Игра заканчивается, когда все пять из ваших кораблей были

уничтожены.

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Рис.1

  30 LOAD “MCode” КОД   40 LOAD “обугливает” КОД USR “” 2000 SAVE “атака” LINE 2050 2010 SAVE “MCode” КОД 32300.300 2020 SAVE “символы” КОД USR “”, 6 * 8 2030 PRINT “сохранение на носители закончил”: СТОП 2050 RUN

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Рис.2

         ЗЕМЛЯ ATTACK

Используйте клавиши:          1-5 До          Q-T Вниз          6-0 Огонь          SHIFT Extra Speed          КОСМИЧЕСКИЕ Умные бомбы Нажмите ‘S’ НАЧАТЬ

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

“Умная бомба” 3а разобрали

LD HL, ATTR_FILE

LD C, 0 LD B, 255 LOOP INC HL LD, гл ср 6 JR NZ, ИЗМЕНЕНИЕ вкл с LD, 8 LD (HL), DJNZ LOOP в отставке ИЗМЕНЕНИЕ добавить, 16 LD (HL), DJNZ LOOP в отставке

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

3б ‘CPOKE “разобрали

LD B, 8

LOOP поп-де- LD, (де) вкл де толчок де LD (HL), LD DE, 256 ADD HL, де DJNZ LOOP в отставке

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Fig.3c Конец игры дисплее разобрали

LD, 7

LOOP2 LD HL, ATTR_FILE LD B, 255 LOOP1 LD (HL), INC HL DJNZ LOOP1 остановка Декабрь JR NZ, LOOP2 LD B, л LOOP5 LD HL, D_FILE LOOP4 LD C, 32 исключающее Loop3 LD, (гл) SRL LD (HL), Декабрь гл Декабрь с JR NZ, Loop3 LD, 71 ср ч JR NZ, LOOP4 DJNZ LOOP5 в отставке

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Рис.4а ‘SIDE SCROLL “и” СТРОЙ СИТИ “разобрали

SIDE SCROLL:

LD B, 64 LD HL, D_FILE LD DE, 32 LD, 0 LOOP1 LD (HL), ADD HL, де DJNZ LOOP1 LD HL, ATTR_FILE LD B, 8 LD DE, 32 LD, 7 LOOP2 LD (HL), ADD HL, де DJNZ LOOP2 LD BC, 2048 LD DE, D_FILE LD HL, D_FILE + 1 LDIR LD BC, 256 LD DE, ATTR_FILE LD HL, ATTR_FILE + 1 LDIR Построить город: LD B, 0 LD C, 15 Loop3 LD, 22 первый 16 LD, с первый 16 LD, 31 первый 16 LD, 16 первый 16 LD, 5 первый 16 LD, 17 первый 16 LD, 0 первый 16 LD, 148 первый 16 Декабрь с DJNZ Loop3

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Рис.4б ‘ПРОВЕРКА ТОПЛИВО “разобрали

LD C, 0

LD HL, (DFCC) LD DE, 768 ADD HL, де PUSH HL LD B, 5 LOOP1 LD, (гл) ср 129 младший г, X1 ср 127 младший г, X2 LD (HL), 255 INC HL DJNZ LOOP1 остановка остановка остановка остановка младший X3 X2, включая дополнительные с X1 толчок н.э.

SBC HL, де PUSH HL позвоните CPOKE DEFB 0,66,36,24,24,36,66,0 остановка остановка POP HL PUSH HL позвоните CPOKE DEFB 153,90,16,199,227,8,90,153 остановка остановка POP HL позвоните CPOKE DEFB 0,0,0,0,0,0,0,0 поп н.э.

вкл с X3 POP HL LD, 5 LOOP2 LD (HL), 0 INC HL вкл б ср б JR NZ, LOOP2 LD B, 0 в отставке

– Другой прекрасный продукт расшифрованы: Джим Grimwood (jimg@globalnet.co.uk), Weardale, Англия –

?

Для игры в Earth Attack не нужны эмуляторы. Это игра-шутер, которую создал David Mold, была выпущена творческой группой ZX Computing в 1983 году в Великобритании.

Не запускается или глючит игра, или не можете пройти? Спросите в комментариях.

Отправить ответ

Уведомлять об
avatar
wpDiscuz
 

Сохранённые игры[X]

  

Справка[X]

Помощь уже в пути!

Не забывайте периодически сохранять игровой прогресс на сервере (клавишей F8), чтобы уверенно продвигаться вперёд!

Если вы гость на сайте, то прогресс будет сохранён только в памяти браузера и потеряется при закрытии. Чтобы этого не произошло - просто войдите в свой профиль.

Для загрузки сохранённой игры жмите F3 или откройте меню "Диск" кнопкой на правой панели.

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

Помощь

Размер

  • x1 [256x192]
  • x2 [512x384]
  • x3 [768x576]
  • Полный

Диск

Кликни в окно эмулятора, чтобы управлять!
<<<<
Close