ZX Spectrum
Game

Spectrum Extended BASIC

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

Автор:

Жанр: Программирование: BASIC


Язык

  • Русский
  • English

Управление

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

Игроков

  • Один

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

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

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

Неофициальное издание
Играть!
  •  Описание (авт.пер.)
  •  Информация
Описание Spectrum Extended BASIC (автоматический перевод)

СПЕКТР РАСПРОСТРАНЕНИЯ BASIC

(ZX Computing, ноябрь 1986 г.)

[Примечание: сборка листинг упоминается в тексте]

[Не была напечатана в журнале. JimG]

Интерфейс Один владельцы могут добавить некоторые новые команды

на Sinclair Basic, с помощью этой программы.

Пол Мэтьюз

Любой пользователь Спектр с интерфейсом я буду знать, что это

позволяет использовать микродрайвы, RS232 устройств, и ZX сети. Тем не менее, менее известно особенностью является средство для расширения Спектр BASIC, изменяя синтаксис определенных ключевых слов.

Эта функция используется моей жизни, чтобы обеспечить Spectrum Пользователь с шести дополнительных команд. Они: –

УЧАСТОК * х, у которых будет сюжет в любом месте экрана.

Координаты (0,0) находятся в самом низу левом углу, где его не всегда возможно построить. Так нормальный УЧАСТОК 0,0 становится УЧАСТОК * 0,16 и УЧАСТОК 0175 становится УЧАСТОК * 0191.

POKE * а, б, где б это число от 0-65535. Это означает, что

16-разрядное число, может быть тычут Младший байт собирается в ячейки а и байт высокого порядка вдаваясь в расположение (+ 1), то есть. POKE * 23735,64900 эквивалентно POKE 23735.132 и POKE 23736.253.

Тыкать в, с $, который будет тыкать шестнадцатеричное значение состоявшейся в $

в ячейки а; например Тыкать в 23296, “C9” поставит С9 (201 декабрь) в месте 23296. Если есть больше, чем один шестнадцатеричный Количество (которые могут быть разделены пробелами), то они ставятся в местах следующих; например Тыкать в 23296, “3EFEC9” и тыкать в 23296, “3E FE C9” возможны и будет POKE 3E (62 декабря) в месте 23296, FE (254) в 23297 и С9 (201) в 23298. Таким образом, эта команда может использоваться для ввода машины-код легко и быстро.

ATTR е, р, я НФ, пр, Ni, который будет искать указанные атрибуты и заменить часть или все друг нашел, с новым атрибутом. е является вспышка и яркость интенсивности быть изменены (0 = нет, 1 = ярко-только, 2 = флэш только, 3 = оба, 8 = любая комбинация). р и я являются бумаги и чернил цвета, чтобы быть изменились (0-7 = Черно-белый, 8 = все цвета). NF является новая вспышка и Интенсивность яркости (0 = ни, 1 = яркий, 2 = флэш, 3 = оба, 8 = оставить, как есть). Наконец, пр и п являются новым БУМАГИ и INK цвета (0-7 = Черно-белый, 8 = оставить как есть, 9 = контрастность). ATTR 1,0,6 К 1,7,1 изменится все символы, которые ярко желтые чернила на черной бумаге до ярко-синими чернилами на белой бумаге. ATTR 8,8,0 К 1,8,9 изменится все символы черными чернилами (нет важен цвет бумаги и вспышку или яркости интенсивности) в яркий контраст INK (черный или белый) на обычной бумажной цвет. Примечание: один из мощных функций из этой команды в том, что весь экран может быть изменено путем установки первой три цифры к “8”; например ATTR 8,8,8 К 8,1,8 изменится Весь экран с синей бумаге.

INVERSE который меняет течение бумаги и чернил цветов в

атрибутов файла, не изменяя флеш и яркости интенсивности.

SIN которая выступает за “Screen инвертировать” и будет инвертировать все символы на экране.

ПРИМЕЧАНИЕ: INVERSE и SIN имеют тот же визуальный эффект, но

INVERSE влияет ATTR (как биты 0,1 & 2 и биты 3, 4 & 5 каждого атрибут перепутаны), но не влияет POINT время SIN влияет POINT (как все пиксели набор сбрасываются и наоборот), но не ATTR.

Новый вектор

Ключ к расширению основных является “новым” системная переменная

VECTOR. Всякий раз, когда ошибка синтаксиса происходит, “теневой” ПЗУ (т.е. что в интерфейсе 1) является выгружен в и проверяет синтаксис, чтобы увидеть, если это одна из команд Micro-дисков; если нет, то переходит к Место, на который указывает VECTOR. Поэтому, чтобы добавить команды, которые вы нужно только изменения VECTOR, чтобы указать на начало вашего собственный распорядок машина-код. Это делается в наладки рутины (Линии 210-240 из листинга сборки; линии 210-20 [так в оригинале] настроить “Новые” системные переменные, так как они не обычно не создана до ошибка). Прежде чем вы сможете использовать дополнительные команды в настройку подпрограмма должна вызываться линии, такие как LET = USR 64900 (64900, где я поместил рутину в памяти. Однако, если Вы собрать его, вы можете поместить его в любом месте вы хотите, изменение линий 10 и 20. После сборки, тем не менее, подпрограмма не могут быть перемещены.) Когда нестандартные команда найдена, подпрограмма будет называться. Тем не менее, “тень” ПЗУ будет выгружен в Это означает, что если вы хотите использовать какой-либо из «основного» диска процедуры, которые вы не можете использовать ВЫЗОВ как назвали бы “тень” рутина. Вместо этого, вы должны использовать RST # 0010 инструкция (# Обозначает HEX) с последующим адрес “главного” рутины.

Это “тень” обычные страницы в “главной” ПЗУ, называет требуется “Главный” рутинные и затем страниц из «основного» диска. В этой статье, процедура перезапуска было дано имя CALBAS. На входе в рутину, указанном вектором, другой системная переменная CH-ADD будет указывать на команду Ошибка заявление. Чтобы выяснить, что команда это, “главный” подпрограмма GET CHAR (# 0018) используется. Это ставит характер указывает CH-ADD в реестр A. Следующие символы в Заявление может быть найдено с помощью СЛЕДУЮЩИЙ CHAR (# 0020) который увеличивает CH-ADD одним и помещает символ теперь указал на, в регистр A.

Ключевые слова

Я использовал пять различных ключевых слов и, как вы можете видеть,

они не все должны быть общие команды; например ATTR ( функция) используется. Также обратите внимание, что если синтаксис ваш новая команда является такой же, как у исходного (например, сюжета и POKE в этой статье) другого персонажа (например, звездочка) должен быть размещены после ключевого слова или ROM не будет признавать его. Тем не менее, если вам не нравится нынешние ключевые слова, вы можете сделать свой собственный вверх », например, * * RENUM или удалить, но они должны быть напечатал в полном объеме и каждая буква должна быть проверена путем увеличения CH-ADD и затем сравнивая характер. Звездочка, которая может быть любой смещается символ, необходимо получить курсор из режима K.

Видно (в линиях 270-380), что первое, что нужно быть сделано, когда-то называли в ПЗУ, чтобы получить код ошибки команду в, а затем проверить это на пять новых Команды (не шесть, POKE используется дважды). Если один из них Команды находится соответствующая подпрограмма вызывается, в противном случае нормальная рутинная ошибка (* 01F0) называется вместо этого, которая производит либо мигающий знак вопроса или “чушь в BASIC “.

Интересные моменты необходимо обратить внимание в моей рутины включают тот факт, что POKE используется дважды. Это делается, прыгнув на секунду рутина, когда звездочка после мешке не удается. Только если характер также не быть признаком “AT” является подпрограмма обработки ошибок называется. Другое дело, следует отметить, что процедура сканирования ATTR (т.е.. когда он на самом деле смотрит на экран) действительно только четыре линии в Длина. Тем не менее, это также увеличена путем позволяя иметь ATTR Новые чернила и бумага цвета 9, которые не могут быть легко изменены таким же образом.

Я надеюсь, что моя рутина дает полезные команды и что это статья поможет вам писать свои собственные команды. Для дальнейшего Информация, советую получить “Microdrive Spectrum Яна Логана Книга “, и” Полный спектр ROM Разборка “по

Ян Логан и Фрэнк О’Хара.

Краткая информация о Spectrum Extended BASIC

Играйте в Spectrum Extended BASIC без эмуляторов прямо на сайте. Приложения для разработки программ на бейсике, изданное в Великобритании в 1986 году творческой группой ZX Computing, которое разработал Paul Matthews.

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

Subscribe
Уведомлять об
guest
0 комментариев
Inline Feedbacks
View all comments

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

  

Справка[X]

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

  • x1
  • x2
  • x3

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

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

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

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

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

Поделиться
Close
0
Would love your thoughts, please comment.x