ZX Spectrum
Game

Spectrum Tool Kit [1]

Your Computer (Великобритания),

Автор:

Жанр: Программы и утилиты


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

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

Язык

  • Русский
  • English

Управление

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

Игроков

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

Набор инструментов Спектр

          Бобби Рао предлагает несколько полезных советов на

          будущим пользователям машина-код. Вот             некоторые полезные вне-колышек процедуры.

Здесь около 20 машина-код графические процедуры, любой ком-

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

  Нет понимания машинного кода не нужно использовать Процедуры – просто хорошее практическое знание спектра и его руководство. Машинный код является первым LAN-компьютера ждения – это только говорит Основные из уважения к человеку – и его использование приводит к большей скорости, гибкости и более экономное использование памяти, чем делает использование Basic.

  Чтобы получить машинный код в компьютер с шестигранной погрузчика должны быть использованы – см программ 1. Укажите его в и сохранить его. Машинный код может быть либо сохранены выше RAMTOP или в REM Заявление в начале программы. Я предпочитаю Последний метод, для каждого различного подпрограммы могут быть сохранены в REM заявление с различным числом линий, а затем объединены в программу по мере необходимости. Тем не менее, если вы хотите использовать первый метод, то изменить линию 5, как показано понять Нит листинг программы. [То есть “изменение линии 5 читать 5 Снимите х: А = х, где х это адрес, они должны двигаться RAMTOP к “Обратите внимание, что это не так, хотя:. Он должен читать “Очистить х-1”, если вы не хотели запутать SUB стек GO.]   Вот examnple, как вы идете по поводу загрузки в памяти осталось рутина, рис 1. [вернее, перечисляя 1; это на TZX как “memoryleft”.] Первый нагрузки в шестнадцатеричном погрузчик и тип в REM и убытках в строке 1. Это REM Заявление должно состоять из 14 полных остановок, потому что памяти осталось рутина 14 байт – персонажи – длинные. Если вас являются использованием метода RAMTOP то вам не нужно будет делать это – просто снимите себе достаточно места в памяти выше RAMTOP. Теперь осторожно введите в строке данных на рисунке 1 и после проверки этой линии запустить программу. Листинг будет показать, что линия 1 является сейчас бессмысленно беспорядок – если у вас есть Линия 1, то есть – но не волнуйтесь, для этого предполагается чтобы это произошло. Также вполне вероятно, что листинг программы, когда REM линия находится в этом состоянии может привести компьютер в остановить с доклада об ошибке. Чтобы избежать этого и просмотра остальной программы вы всегда должны использовать СПИСОК -line количество Первая строка после REM line- так что Спектрум делает Не пытайтесь перечислить unlistable REM линию.

  Теперь процедура готов быть сохранены. Стереть все шестигранной погрузчик кроме REM линии – Не используйте новые все Вы делаете – и сохранить это с именем файла, как “Мем левых».

Теперь NEW компьютер и перезагрузите шестигранный погрузчик. Повторите Описанный выше процесс для остальных подпрограмм, но убедитесь, Вы никогда не использовать тот же номер REM линии для двух разных Процедуры, потому что это вызовет проблемы, когда вы приходите к слияния процедуры вместе. [Какой бы хороший трюк, видя, что REM должна быть первая строка программы и Первая строка погрузчика линия 5 …]   Пользователи RAMTOP-метод может спасти их рутины с помощью SAVE метод файла CODE подробно в руководстве на страницах 143 и 180.

[А теперь метод для TZX пользователей, которые еще проще.

Загрузите программу под названием “Hexloader”, а затем объединить требуется процедура (например, “memoryleft”). Обратите внимание, что.

объединяемые процедуры есть свои необходимые заявления REM уже добавил; б. каждый из них имеет другую линию число; с. для размещения этого, hexloader начинается линия 1000, а не в 5. Отметим также, что вы получите Ошибка “E Из ДАННЫХ, 1010: 2”; это нормально и будет Также имели место, хотя и в строке 10 вместо, имел вас набрали в листингах самостоятельно.

  И если вы хотите еще проще: в конце TZX, Вы найдете предварительно REMmed версии всех процедур, с все остальные строки удалены. Просто объединить их в ваш Программа и вы готовы пойти. Они те, с капиталы в названиях (например, “ScrInvert”, где версия для загрузчика будет “scrinvert”.]   После утомительной задачей, набрав в и сохранения рутинный Зубья было достигнуто [добро пожаловать] вы готовы использовать эти процедуры. Если вы хотите использовать некоторые из рутинный Зубья в одной из Ваших программ, то начать эту программу в, например, строки 100, оставив прежние номера строк бесплатно для машины-кода РЗМ линий. После ввода в Программа, слить в подпрограммах вам требуется. Чтобы запустить машину Код нежели Basic функция USR должны быть использованы.

  Аргумент этой функции является адрес первого байт рутины машина-кода вы хотите запустить, и это можно найти, если вы используете метод REM, с помощью Программа 2 [на TZX как “linefinder”]. На работы в этом Программа – в то время как машины-кода подпрограммы в номера строк и начальные адреса – компьютер Процедуры в этом направлении не будут напечатаны, пока компьютер находит без REM линию, когда он остановится. Примечание эти старт обращается вниз, или, еще лучше, определять переменные, равные эти значения путем размещения много выпускаемой отчетности где- в вашей программе, например:         ПУСТЬ инв = 23760 Теперь просто набрав PRINT инв скажу вам адрес Первый байт рутины инвертировать экраном.

  RAMTOP пользователи метод не нужно будет использовать программу 2 потому что они уже знают адреса их рутинный Зубья или они не были бы в состоянии получить их выше RAMTOP в первую очередь.

  Чтобы использовать подпрограммы используйте команду RANDOMIZE 0 * USR X, где X представляет собой адрес рутины вы используете.

Результат функции USR умножается на 0, чтобы сохранить RND действительно случайные, то есть, он действует, как команда RANDOMIZE 0.

  Ниже приводится описание всех процедур и, как

использовать их. В этих описаниях переменная X стоит адрес первого байта рутины в вопрос ции. Все числа в десятичной, а если иное не Указанные все подпрограммы экран работает на всех 24 линиях экран.

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

  Память Слева: работает это, перечислив 1 [“memoryleft”], с помощью PRINT USR X скажет вам точное количество бесплатно байт памяти у вас осталось.

  Привет-Res Up Scroll: это, перечисляя 2 [“hiscrup”], рутина Прокрутка экрана вверх на одну привет разрешением пикселя, заменив Суть пикселей с пробелами.

  Привет-Res вниз Прокрутка: как в листинге 2, но это – список 3 [“Hiscrdown”] – прокручивает вниз, прикрывая верхнюю линию пикселей.

  Привет-Res влево Прокрутка: эта прокручивает экран влево один пиксель, заменив правый столбец пикселей с Заготовки. В листинге 4 [“hiscrleft”].

  Привет-Res вправо Прокрутка: как в листинге 4, но листинг 5 [“hiscrright”] Прокрутка вправо, заглушки самый левый столбец пикселей.

  Один символ слева Свиток: листинг 6 [“chscrleft”] рутинные свитки экран влево на один символ, заменив правый столбец или с пробелами – для этого эффекта POKE X + 16,54 – или предыдущей статье крайний левый, wrap- вокруг эффекта – для этого ткнуть X + 16119.

  Один символ справа Свиток: листинг 7 [“chscrright”] рутинные свитки право. POKE X + 16,54 вызывает самое левое колонка будет отображаться и тыкать X + 16119 заменяет это колонка с предыдущим правой колонке.

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

Приведенная ниже таблица расскажет вам, как настроить процедуры. Первый колонка говорит вам, какая часть экрана должна быть прокручивается. В следующих двух столбцах сказать вам, что тыкать в X + 1 и в X + 4 соответственно для левого рутины прокрутки.

Последние две колонки скажу вам, что тыкать в X + 1 и X + 4 соответственно для правого обычной прокрутки.

    Топ треть 64 64 64 71     Средний треть 64 72 64 69     Нижняя треть 64 80 64 87     Лучшие две трети 128 64 128 79     Нижние две трети 128 72 128 87   [Всего экрана 192 64 192 87 – это были не В статье приведены, будучи по умолчанию, когда вы не совать вообще ничего, но они полезны, чтобы знать, если вы хотите чтобы восстановить их после использования других.]   Обратить экрана: список 8 [“scrinvert”] переворачивает Фактические пикселей на экране, то есть, все пикселей на это выключен и все пиксели прочь включены, и поэтому он является отличается от функции, обратной по Spectrum, который только инвертирует чернил и бумаги цвета – которые эта процедура не изменяет.

  Экран Fill: эта процедура, перечисляя 9 [“scrfill”], заполняет в коробке высотой а, шириной Ь, и верхнем левом углу в точке с, d – где с и d являются координаты, используемые ПЕЧАТЬ НА системы – с любого характера по вашему выбору.

    POKE X + 1, код символа POKE X + 3,     POKE X + 4, C POKE X + 6, б POKE х + 7, d Так что, если в = 22, б = 32, с = 0 и г = 0, то нормального 22-линии экран заполнен. Вы должны напечатали что-то где-то Перед использованием этой рутины или он не будет работать должным образом. Также обратите внимание, что вы не можете печатать на линии 24 с этим рутина.

  Чернила Изменить: это – листинг 10 [“chngink”] – изменения чернила цвет экрана, не изменяя ничего еще. Совать X + 1, количество цвета, который вы хотите изменить чернила для.

  Бумага Изменить: как листинг 10, но меняет цвет бумаги.

Совать X + 1, количество цвета, который вы хотите изменить бумага для. Смотрите список 11 [“chngpaper”].

  Включение / отключение вспышки: эта процедура, перечисляя 12 [“chngflash”], устанавливает весь экран мигает – для этого ткнуть X + 9254 – или возвращает к режиму нормального режима немигающий – для этого POKE X + 9190.

  Яркий On / Off: подпрограмма показано в листинге 13 [“Chngbright”] делает весь экран яркий – POKE X + 9246 – Или возвращает его в режим нормальной яркости – POKE X + 9182.

  Атр Fill: четырнадцатый листинга [“attrfill”] изменения атрибуты для высоты коробки, ширина б и из верхней левшей углу в точке с, д Колесо с и d являются координаты используется PRINT AT системе для обозначения точки на Экран.

    POKE X + 3, D POKE X + 4, C POKE X + 6, б     POKE X + 7,   POKE X + 1, значение, которое вы хотите изменить атрибуты.

Это значение может быть вычислено следующим образом: сначала считать, что Новое значение ATTR является Y и первоначально Y = 0. Если вспышка на дополнения 128 в Y, если от добавления 0. Если яркий на добавление 64 к Y, если от добавить 0. Добавить в восемь раз количество цвета бумаги к Y.

Добавить номер цвета чернил к Y.

  Это означает, что атрибут мигания, яркое Yelllow чернила на синей бумаге будет 128 + 64 + (1×8) + 6 = 206.

  С этой рутины можно изменить атрибуты Весь экран 24-линия.

  Атр Up Scroll: эта процедура, перечисляя 15 [“atscrup”], позволяет прокручивать вверх атрибуты для высоты ящик, Ширина B, и верхний угол левой в точке с, д. Дно Линия коробки заменяется атрибутом значение Y – см атр Заполните для как вычислить Y.

    POKE X + 1, у POKE X + 3, D POKE X + 4, с     POKE X + 6, б POKE X + 7,   Атр вниз Прокрутка: список 16 [“atscrdown”] свитки вниз заменяя верхнюю линию коробки с новым атрибутом.

В тычет такие же, как в предыдущем рутина.

  Атр влево Прокрутка: как листинг 16, но прокручивается влево повторно размещение правой колонке окна либо с новым атрибутов – для этого ткнуть X + 36,0 – с тем, что было ранее в крайнем левом столбце окна – для этого ткнуть X + 36,26.

Этот последний эффект, оберните вокруг, позволяет эта процедура будет полностью использованы с одним характера рутины оставили прокрутки данного выше. Смотрите список 17 [“atscrleft”].

  Атр вправо Прокрутка: подпрограмма показано в листинге 18 [“atscrright”] свитки право, replacint самый левый столбец коробки с любой новый атрибут – для этого ткнуть X + 43,0 – или с тем, что было ранее в крайний правый колонка из коробки – для этого ткнуть X + 43,26. Этот последний эффект позволяет эта процедура будет использоваться в полной мере с одной характеризуются тер право прокрутки приведены ранее.

  Следующие три программы позволяют Вам хранить экраны те-

мя отображается в свободное память, а затем вызывать их на дисплее, что делает их либо поменять положение памяти с экрана, отображаемый, или надпечатки их на текущем экране. Для хранения экраны вы должны во-первых освободить место памяти, так что вы можете хранить экраны. Каждый экран – с атрибутами – это 6912 байт длиной, так что это много места требуется для каждого экрана.   Расположение память RAMTOP – последний байт Память компьютера – можно найти с помощью PRINT PEEK 23730+ 256 * PEEK 23731. Если это число W, то WQ * 6912 – где Q является количество экранов, которые будут храниться – скажу вам решения для очистки RAMTOP к – см справочную страницу 168. Вы должны очистили это место или подпрограммы не будет работать правильно.

  Если у вас есть только 16К памяти, то пространство существует для хранения только один экран так ясно 25685 все, что нужно, чтобы использовать. Для того, что подпрограммы знать, где в памяти а Экран должен быть получен с или отправлены вы должны сделать следующее для всех подпрограмм:         POKE X + 1, W-256 * INT (W / 256)         POKE X + 2, INT (W / 256) Если у вас есть 48К и вы хотите хранить больше, чем один экран то было бы целесообразно, чтобы оставить зазор в несколько байт в между экранами так, чтобы снизить риск одном экране работает над к другому случайно.

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

  Магазин экрана: Это заменяет текущий дисплей с одной уже в памяти. Смотрите список 19 [“scrstore”].

  Своп экраны: Эта процедура меняет текущий дисплей с один выше в памяти так, чтобы экран, что было отображается хранится в памяти и экраном, который был в памяти теперь отображается. Смотрите список 20.

[“Scrswap”. В списки для этой и следующей рутина были печатается в другую сторону ‘вокруг в журнале. Приказ о TZX является одним в этом тексте.]   Overprint экраны: Это надпечатки экран от выше в памяти на текущем экране. Старый дисплей теряется в своем первоначальном виде – это не хранится на эта процедура перед ней меняется – но экран используется для Печать по старой дисплее остается нетронутым выше в памяти. [Обратите внимание, что это, и обратимый характер свыше, означает, что вы можете получить исходный экран назад вызвав программу второй раз.] Атрибуты не изменено путем этой процедуры таким образом, после того, как процедура была использована атрибуты отображается те из старого дисплей. Смотрите список 21 [“scrover”].

  Обозначить: эту процедуру, листинг 22 [“пронумеровать” …],

мгновенно перенумеровывает все номера строк вашей программы начиная с первой строки на заданное значение и повышение это значение на определенную величину, как это перенумеровывает остальное из линий. Отметим, что это не меняет GO TO, и GO подводные лодки, так что вы должны будете изменить их вручную. Если Первая линия перенумеровывается L и значение, на которое L является In- сминаться М затем         POKE Х + 5, М-256 * INT (М / 256)         POKE X + 6, INT (M / 256)         POKE X + 8, L-256 * INT (L / 256)         POKE X + 9, INT (L / 256) Для удовольствия вы можете попробовать перенумерации все линии 0 или попробуйте использовать начальное значение больше, чем 9999.

  Использование этих процедур, многочисленны и разнообразны, ограничено

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

  В чернил и бумаги для переодевания процедуры могут быть использованы для создания Эффект сюрприз, сначала рисуя картину на экране используя тот же чернила и цвет бумаги, а затем изменения либо так, что изображение кажется мгновенно. Анимационный мультипликационные эффекты возможны с помощью экрана замену Процедуры и потрясающие эффекты взрыва можно моделировать используя подпрограмму Screen Invert неоднократно – в цикле.

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

  Так же, как немного забавы попробовать следующий POKE следующий раз вы

есть программа в вашем Spectrum: POKE 23606,8. Это делает компьютер говорят на русском – почти. POKE 23606,0 восстанавливает нормальность. [Нет, я понятия не имею, что это имеет отношение к

Остальная часть статьи, либо.]

Игра Spectrum Tool Kit [1] запускается прямо на сайте. Это приложение для программирования, которое создал Bobby Rao, было выпущено компанией Your Computer в 1983 году в Великобритании.

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

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

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

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

  

Справка[X]

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

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

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

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

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

Помощь

Размер

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

Диск

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