Jump to content

Супер Экспандер 64

Super Expander 64 — это картриджное расширение встроенного BASIC интерпретатора Commodore 64 домашнего компьютера . Он был опубликован Commodore Business Machines в 1983 году. Встроенный BASIC C64 был адаптирован из PET и VIC 20 , и этот язык не имеет прямой поддержки звукового и графического оборудования системы. Super Expander 64 добавляет функции для рисования графики, использования спрайтов, чтения джойстиков, воспроизведения звука и другие функции.

Дополнительный код отображается в 8-килобайтной области «нижнего картриджа» по цене от 8000 до 9FFF, что сокращает 38 911 байт для пользовательских программ на указанные 8 КБ.

После инициализации экрана для графики «высокого разрешения» (320 × 200 монохромных пикселей) или многоцветной (ширина 160 × 200 пикселей в четырех цветах) с помощью команды ГРАФИК можно было рисовать линии, круги, эллипсы, дуги, прямоугольники и многое другое, используя команды РИСОВАНИЕ, КРУГ и КОРОБКА. PAINT «заполнит» область, ограниченную линиями, например, внутреннюю часть КРУГА или КОРОБКИ. Команда CHAR использовалась для «печати» символов из ПЗУ генератора символов на экран растровой графики. SSHAPE и GSHAPE сохраняли содержимое прямоугольной области графики высокого разрешения в строковую переменную, а GSHAPE «отпечатывал» его обратно на экран в произвольных местах. Подобную «графику в строке» можно также использовать для переноса чего-либо, нарисованного на экране высокого разрешения, в один из восьми шаблонов спрайтов.

Помимо набора команд для инициализации, позиционирования и перемещения спрайтов (или блоков подвижных объектов, как их называл Commodore; графические элементы с аппаратной поддержкой, которые могли свободно перемещаться по экрану независимо от другой графики и текста на экране), Super Expander имел встроенную функцию в инструменте для редактирования шаблона из 8 спрайтов (вызывается с помощью команды SPRDEF) либо в высоком разрешении (24 × 21 пиксель), либо в многоцветном (12 ширины × 21 пиксель) режиме.

Был даже способ реализовать «прерывания» в программе BASIC, если два спрайта столкнулись, если спрайт столкнулся с другой графикой и/или текстом на экране, или если было активировано прикрепленное световое перо. Команда COLINT устанавливает прерывание, указывая на начальный номер строки BASIC «обработчика прерываний», который должен заканчиваться оператором RETURN (часть стандартного, нерасширенного BASIC), чтобы передать управление обратно прерванной «основной линии». «часть программы.

Воспроизведение последовательности музыкальных нот было привязано к стандартной БЕЙСИКОВОЙ команде «ПЕЧАТЬ» с помощью специального «управляющего символа», очень похожего на управление курсором, изменение цвета и другие управляющие символы. Например PRINT CHR$(6);"CDEFGAB" играл нарастающую гамму. Такие команды, как TEMPO и TUNE, использовались для установки темпа воспроизведения и тембра последовательности нот.

«Особенностью» этой функции является то, что при вводе специального управляющего символа (нажатием CTRL+ F) вместе с кавычкой, а затем удалив кавычку, машина «проиграет» все, что было набрано во время редактирования программы; нажмите клавишу G, и машина произнесла «Плинг!» с высотой ноты соль...!

Аппаратный ввод/вывод

[ редактировать ]

Такие функции, как RJOY, RPEN и RPOT, будут считывать состояние подключенного джойстика, светового пера или аналогового «манипулятора». В сочетании с командами, связанными с движением спрайтов, потребовалась всего одна строка кода BASIC, чтобы заставить спрайт двигаться в направлении, указанном подключенным джойстиком.

Разнообразный

[ редактировать ]

Была доступна команда KEY, которая настраивала четыре функциональные клавиши на клавиатуре 64 для «ввода» произвольной строки. По умолчанию эти клавиши были настроены для ввода таких команд, как RUN, LIST, SPRDEF, GRAPHICS и других, но пользователь мог изменить это с помощью команды KEY либо в прямом режиме, либо под управлением программы.

Технические проблемы

[ редактировать ]

Во всех версиях BASIC на 8-битных машинах Commodore использовалась схема замены ключевых слов BASIC однобайтовым кодом — например, словом « PRINT" будет заменено однобайтовым значением или токеном , а не пятью ASCII-кодами для пяти букв в слове. Super Expander добавил больше команд, чем могла вместить эта система, поэтому для нового команды были реализованы.

Из-за особенности интерпретатора BASIC (обработка «THEN-части» конструкции IF/THEN не перескакивала через вектор в ОЗУ, а вместо этого выполняла прямой JuMP к стандартной, нерасширенной процедуре декодирования команд BASIC) Операторы IF/THEN должны были вставлять дополнительное двоеточие (:) сразу после ключевого слова THEN, если следующая команда была одним из нестандартных ключевых слов BASIC Super Expander. Например, IF (condition) THEN DRAW ... даст ?SYNTAX ERROR сообщение — нужно было написать его так IF (condition) THEN:DRAW ... — обратите внимание на двоеточие между THEN и командой DRAW, добавленной Super Expander.


Руководство доступно онлайн в виде электронного текста. [1]


  1. ^ «Руководство пользователя картриджа SUPER EXPANDER 64» . Архивировано из оригинала 29 сентября 2007 года.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 0e49f66d05428a27650f7b73cdeebf05__1717001160
URL1:https://arc.ask3.ru/arc/aa/0e/05/0e49f66d05428a27650f7b73cdeebf05.html
Заголовок, (Title) документа по адресу, URL1:
Super Expander 64 - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)