Зачем нужен аккаунт на Viva-Games?
Пользователи, у которых есть аккаунт, могут сохранять игровой процесс на сервер в любой игре и создавать списки игр (как на Youtube, например).
Создание аккаунта абсолютно бесплатно и займёт всего минуту Вашего времени.
Для создания аккаунта просто кликните в блоке "Войти на сайт" иконку социальной сети, в которой у вас уже есть активный профиль и следуйте подсказкам.
Scope II
https://viva-games.ru/game/scope-iiInteractive Software People (Великобритания), 1985
Автор неизвестен
Жанр: Программы и утилиты
Язык
- Русский
- English
Управление
- Клавиатура(?)
Игроков
- Один
Рассказать друзьям
Доступные версии
Доступные версии
- Описание (авт.пер.)
- Информация
S к о р е
II Игр ДИЗАЙНЕР
ИНСТРУКЦИЯ
РУКОВОДСТВО
S к о р е
II Игр ДИЗАЙНЕР
Программа разработана и написана
Аллен E Pendle
Sprite Подпрограммы по P J Richards Круг Подпрограммы Майк Уильямс “XPUT” по М Пробертом Руководство по ISP Marketing Limited Copyright ISP Marketing Limited
Введение
Обл2 является полностью structurable язык средний уровень в первую очередь предназначен для обработки высокоскоростного графики, цвета звуком и анимацией как быстро работать, и простой в использовании альтернативу в машинный код.
Обл2 состоит из 36 командных слов, которые написаны в BASIC
REM заявления, а затем будут сведены к разделу памяти, определенной пользователем для этой цели, и запустить с помощью команды USR.
Хотя многие СФЕРА слова обрабатывать только целые числа в диапазоне от 0 до
255, есть также несколько слов, которые обрабатывать 16-битные целые числа в Диапазон от 0 до 65535.
Обработка цвета и звука, несколько отличается от подхода
принято BASIC, но соответствующие разделы в рамках данного руководства будет объяснить это полностью с вами.
Насколько было возможно, ОБЛАСТЬ слова были внесены
напоминают их основными таким образом, чтобы помочь программистам, многие из которых уже будут знакомы с основными, но не очень хорошо знакомы с различные другие языки, доступные для Sinclair Spectrum.
Тем не менее, с визуальным сходством, так что сравнение заканчивается, как
СФЕРА версии переводятся в чистом машинном коде, который, конечно, работает гораздо быстрее, чем BASIC.
Код генерируется ОБЛАСТЬ операционной системы не зависит
на СФЕРА быть резидентом в памяти для того, чтобы запустить, так что любая программа написано с СФЕРА будет работать полностью независимо от СФЕРА. Вы можете, если Вы хотите написать игру, используя ОБЛАСТЬ, и предоставить копию другу, чтобы играть даже если он не является владельцем копию СФЕРА.
Одно последнее слово в отношении машинного кода, СФЕРА не было написано, как
средством обучения машинный код, но из-за этого больше первородной подход к программированию (!), чем BASIC, у него есть определенные сходства в машинный код, и в этом качестве можно использовать, если вам так хочется, как средство прогрессирующей от BASIC в машинный код, если только понимать, лучше Понимание того, как и почему ваш компьютер работает.
2
Инструкции по загрузке
Сторона – СФЕРА НАГРУЗКИ Программа “”
Сторона Б – Sprite Дизайнер НАГРУЗКИ “Дизайнер” Демо Плановые 1 Load “Фигуры” Демо Регулярное 2 НАГРУЗКИ “Мистер провайдер” КОД Демо Регулярное 2а НАГРУЗКИ “Мульти” Демо Регулярное 3 НАГРУЗКИ “Пейзаж” Демо Плановые 4 НАГРУЗКИ “главами” Демо Регулярное 5 НАГРУЗКИ “Blip”
Все демонстрационные процедуры, за исключением “г-провайдера”, когда загружен
введите RUN и ENTER или СПИСОК изучить.
Синтаксис
Основной формат синтаксис инструкций СФЕРА является достаточно простым и
следует следующим правилам: –
1) Все инструкции должны быть напечатаны в Основные положения РЗМ.
2) Все ключевые слова сразу после запятой “;”
3) Все операнды разделяются запятой “,”
4) Все инструкции, за исключением “PUT” и “XPUT” и тех,
которые не имеют никаких операндов должны быть прекращены в толстой кишке “:”
5) Все ключевые слова должны быть напечатаны строчными буквами “а”, например
а не “” формате, показанном в словаре должно следовать точно.
Любая ошибка синтаксиса вызовет сообщение об ошибке “Ошибка синтаксиса” и
номер строки, в которой произошла ошибка синтаксиса.
Несмотря на всю тщательность было уделено Проверка ошибок, помните, что если
Вы спросите ОБЛАСТЬ сделать что-то глупое, как прыжок в неопределенное этикетке, это будет выполнять ваши указания и, возможно, привести к нежелательным Эффект, или крах. Это рекомендуется сохранить копию вашей программы еще до того, компиляции, на всякий случай!
3
Организация памяти
Так ОБЛАСТЬ переводит программу вы пишете в машинный код, вы
необходимо сначала назначить область, где будет написано это машинный код. Машина код написан СФЕРА, будет состоять из двух частей, первая воля быть основной программы, а вторая часть будет состоять из любого “подпрограммы”, которые написаны.
Самый простой способ представить себе эту сегрегацию представить себе, что вы находитесь
можно писать программы на BASIC, и каждый раз, когда вы написать подпрограмму для назвать по “GO SUB” инструкции, что вы пишете подпрограмму в номера строк выше 5000, например, и основная программа на линии Числа под 5000.
Область, в которой ОБЛАСТЬ напишу это процедуры должны быть назначены на Начало программы SCOPE, а также выдвижения где главная Программа будет написана. Инструкция выдвинуть эти области является “орг;” который является сокращением для “организовать”, потому что он указывает сферу Программа перевода “организовать” в дальнейшем письменное машины Код для назначенных районах памяти. Формат “орг;” состоит в следующем;
10 REM орг; х, у:
Там, где “х” обозначает адрес памяти, при котором запись Основная программа начнется, и “у” относится к адресу памяти где написание подпрограмм начнется.
Там нет ограничений на ли у>х или х>у, пока они не являются
то же самое, но пожалуйста, обратите внимание, что если X и Y являются такими же, то ошибка Отчет НЕ будет дано, и ваша программа будет переведена и переписать на тот же адрес, как для программы, и это подпрограммы, который, должно ваша программа содержит подпрограммы будет иметь катастрофические эффекты!
Единственные ограничения на котором вы можете назначить свою программу, чтобы быть написано сведены в памяти карты спектра в поле ниже: –
Адрес Useage
0-16383 ROM (не доступен)
16384-22527 отображения файлов (не доступен) 22528-23295 атрибуты (Нет в наличии) 23296-23551 принтера БУФЕР 23552-23733 системные переменные (не доступен) 23734-23754 CHANNEL INFO (не доступен) 23755-37999 BASIC RAM 38000-39999 ОБЛАСТЬ PROG (не доступен) 40000-59999 BASIC RAM 60000-65467 ОБЛАСТЬ ОП СИСТЕМА (НЕ) 65368-65535 U.D.G. ОБЛАСТЬ
Как вы можете видеть, лучший район для организации вашей программы SCOPE быть
Написано между адресами 40000 и 59999, в результате чего нижняя бесплатно Площадь BASIC для РЗМ отчетности основные программы.
Это дальнейшем предполагается, что вы решите организовать свой ОБЛАСТИ
Программа начинается с адреса 40000, и ваш ОБЛАСТЬ рутина площадь 10000
4
байты дальше на 50000, в результате чего примерно 14K написать ваш
СФЕРА программа в, и 20K для того, чтобы перевести на.
Таким образом ваша первая линия программы будет читать;
10 REM орг; 40000,50000:
Или то, что номер строки вы решите использовать.
Обратите внимание на точку с запятой после ключевого слова “орг”, запятая отделения два операнда (40000 и 50000), а также толстой кишки прекращения линию.
Пожалуйста, не последняя строка любой программы СФЕРА всегда должен быть выход.
например 200 REM выход;
Компиляция и работает
Написав программу SCOPE в РЗМ заявления, вам нужно
скомпилировать его в это заключительном сверхбыстрый формате машинного кода. Это делается путем простого ввода в непосредственном подчинении;
PRINT USR 60500 и нажмите ENTER
После небольшой задержки, которые будут меняться в зависимости от продолжительности вашего
Программа, либо номер появится в верхней части экрана, или Синтаксис Сообщение об ошибке будет отображаться в нижней части Экран.
Если сообщение об ошибке дается, оно также будет отображаться номер строки, где ошибка синтаксиса была обнаружено, и вам потребуется, чтобы проверить и исправить рассматриваемой линии.
После исправлена ошибка, попытка компиляции снова, набрав в прямая команда, как и раньше.
Не удивляйтесь, если другое сообщение об ошибке дается, как сообщения об ошибке сообщит только первую ошибку синтаксиса, который обнаружил, и там может более всей вашей программе.
Наиболее распространенными причинами синтаксические ошибки;
1) Правописание ключ-слово с большой буквы, чтобы начать.
2) Выход из толстой кишки от конца инструкции линии. Помните, его
только PUT и XPUT которые не требуют завершающего двоеточия.
3) Не поставив достаточные операнды в PUT или инструкции XPUT.
Окончательно составлен программу, вы увидите ряд в верхней
экрана.
Это число указывает на первую свободную байт, из которых любой последующий Программа будет написана.
Важно понимать, что это первый свободный байт, и не последний один используется, как если вам потребуется использовать ОБЛАСТЬ написать серию программы машинного кода, которые будут использоваться в качестве подпрограмм из BASIC Программа, тогда вы будете ORG; Следующая программа ОБЛАСТЬ, чтобы начать на число отображается в верхней части экрана.
Чтобы реально работать скомпилированный и супер-быстрый машинный код ОБЛАСТИ Программа, типа как непосредственным командованием или выполнить как строки программы;
Пусть L = USR первый адрес орг
5
Экономия
Проведя много приятных часов написании программы с СФЕРА, вы
будет, очевидно, хотите сохранить установленную программу на кассету. Это может быть просто сделать с помощью экономии байт Синклер спектра в средство, таким образом, в следующем примере будем считать, что вы должны составлен программу SCOPE по адресам 40000 и 50000.
1] Первый шаг, чтобы узнать, сколько памяти ваш составлен
Программа использует до. Это будет число выводится на экран, если нет Процедуры были написаны. В противном случае введите в качестве прямого команды PRINT PEEK 60484 + 256 * PEEK 60485.
2] Следующим шагом является, чтобы сохранить программу;
SAVE “имя” КОД 38000, N
Где N это адрес задается командой PEEK или адрес
выводятся на экран, меньше 38000. 38000 это где ОБЛАСТЬ, посвященный Процедуры хранятся, и вы должны всегда сохранять с этого адреса.
Ваш составлен программа будет затем сохранить в кассете, и может быть перезагружается, без СФЕРА настоящее время в компьютере, по; LOAD “имя” КОД
Набор номера
Часто это очень полезно для сохранения номера, так что это значение может быть
изменилось по отношению к существующим это значение, а не к новым и определенная Значение.
Такая система известна как “переменной”, и в пределах основных переменных являются используется практически во всех программах от самых простых до самых участие. Так же и с программой, написанной в СФЕРА.
Тем не менее, область видимости переменных незначительно отличаться от основных переменных, наиболее существенное различие в том, что область видимости переменных может быть “названы” только одним или двумя имена персонажей.
СФЕРА также, однако имеет два типа переменной, это “вары” и “bvars”.
Во-первых, вары.
Вар может занимать какую-либо значение от 0 до 255 включительно, отмечают, что отрицательные числа не предусмотрено.
Название вар может быть любой буквой алфавита в любом верхнем регистре или формат нижнего регистра, каждый из которых рассматривается как индивидуальный, таким образом, “” не так же, как “А”.
Формат слово для инициализации в вар выглядит следующим образом;
вар; имя, вар или номер:
Так, например;
20 REM переменная;, 10:
30 REM переменная; B,:
6
Будет установлен как вар “в” и переменная “B”, чтобы провести значение 10.
Вар может быть увеличена в стоимости путем слова “вкл”, который следует следующий формат;
вкл; вар, вар или номер:
Где второй операнд указывает значение для первого операнда
быть увеличена путем.
Например;
40 REM вкл; B, 10:
50 REM вкл;, В:
Вырастет стоимость обоих Вар “а” и “В”, но обратите внимание, что вар
“” Будет увеличена в стоимости на 20, а не к увеличению 10 применяется для вар “B”.
Как и следовало ожидать, вар также может быть уменьшена в стоимости, и это
поставляется под словом “декабря”, который следует в следующем формате;
“Декабрь; вар, вар или номер:”
Обратите внимание, что любое переполнение значений от 0 до 255 приведет к “обертке
вокруг “значение ввода в вар Таким образом,. вар держит значение 255, и увеличились в цене на 1 будет Resultantly хранения значения;
255 + 1 = 256, но происходит переполнение, и 256 вычитается оставляя 0
Точно так же, если переменная держит значение 15 увеличивается в цене на 250, то
значение результате будет;
15 + 250 = 265
265-256 = 9
Это известно в математических кругах как “арифметических операций по модулю”, где
что вары работать по модулю 256.
В качестве другого примера, рассмотрим на следующие;
Вар назначается со значением 12, а затем снизился в цене на 18,
Полученное значение;
12-18 = -6
-6 + 256 = 250
Если вы страдаете какой-либо трудности с схватив этот принцип, рисовать себя в
круг, и количество его от 0 вверху, чтобы вокруг 127 на дне и до 255 в левом верхнем углу, как раз перед 0.
Теперь поместите указатель на значение проведенного вар, например номер 12, и перейти от числа размещенных требуется, таким образом, чтобы вычесть или уменьшения значения перемещения против часовой стрелки, и, чтобы увеличить значение шаг по часовой стрелке.
Таким образом, с указателем на 8 подсчета вокруг против часовой стрелки 18 мест, начиная отсчет как “1” на 7. Обратите внимание, как вы в конечном итоге от количества 250!
Вар являются одним из самых универсальных и полезных функций СФЕРА, и есть использования, начиная от счетчиков циклов с колебаниями координаты и в читать клавиатуры, но больше об этих особенностей поздних!
7
Теперь мы перейдем к старшему брату в скромном вар, “BVAR” или
“Большой переменной”.
BVAR может занимать какую-либо ценность между 0 и 65535 включительно, и работает
в модулю 65536 форме.
BVAR может быть назван по букве алфавита, но она должна быть Столица.
Формат слова для инициализации в BVAR чтобы значение; BVAR; имя, номер:
Обратите внимание, что BVAR; имя; BVAR: не допускается.
Таким образом, в следующем примере оба BVAR “A” и BVAR “B” будет установлен
к значению 123;
20 REM BVAR;
30 REM переменная; B, 123:
Как и в Вар, BVAR также может быть увеличена или уменьшена в значении,
Форматы являются;
добавить; BVAR, а вар или номер:
Для увеличения значения BVAR по стоимость которых не превышает 255, а;
минус, BVAR, вар или номер:
Чтобы уменьшить значение BVAR по стоимость которых не превышает 255.
Обратите внимание на то, что, как и Вар, если значение удерживается в рамках BVAR перетекает
Диапазон от 0 до 65535, то “обтекать” эффект ощущается, только в этот случай 65536 либо добавить или вычесть, как в зависимости от обстоятельств.
Bvars имеют уникальную способность для отображения их стоимости на экране, это достигается с помощью слова “номер”, который следует следующее Формат;
пит; вар или номер, BVAR, вар или номер, вар или номер:
Первый операнд определяет значение атрибута для числа состоявшейся в
Второй операнд, который будет отображаться в на линии и столбцов координат как определено с помощью последних двух операндов соответственно.
Таким образом,
20 REM BVAR;, 12345:
30 REM пит; 56,, 10,10:
Будет печатать номер “12345” в координатах 10, 10 черными чернилами на белом
бумага.
Наконец мы подошли к системе случайных чисел осциллографа. Любой, кто
пишет игры расскажет вам, случайные, полученные цифры являются неотъемлемой элемент.
Это слово, “RND” следует следующий формат;
РНД; вар, число, номер:
Он назначает на указанный вар, значение, которое случайная величина между
0 и 1 меньше первого числа, и к этому добавляется вторая число.
8
20 REM РНД;, 10,0:
присвоит переменной “а” со значением, которое находится между 0 и 9. Это
эквивалентно BASIC заявлении;
“Пусть A = INT (RND * 10) +0”
Цвет & Графика
В данном руководстве, цвета называются комбинации
Бумаги и чернил цвета, в сочетании с яркой и мигает состоянии из персонажей вопрос, этот цвет, являющегося значение “атрибут”, и выводится из приведенной ниже таблицы;
Чернила черный синий красный пурпурный Зеленый Голубой Желтый Белый
Бумага
Черный 0 1 2 3 4 5 6 7 Синий 8 9 10 11 12 13 14 15 Красный 16 17 18 19 20 21 22 23 Пурпурный 24 25 26 27 28 29 30 31 Зеленый 32 33 34 35 36 37 38 39 Голубой 40 41 42 43 44 45 46 47 Желтый 48 49 50 51 52 53 54 55 Белый 56 57 58 59 60 61 62 63
Обратите внимание, что, чтобы добавить дополнительную яркость отображаемого символа, 64 добавляется
в значении атрибута, и для FLASH, 128 добавляется, таким образом, как для ярких, и FLASH добавить 192 к значению в таблице выше.
В условиях, которые требуют только один номер цвета, например,
цвет рамки, значение, используемое в объем программ является таким же, как значения, используемые внутри основной.
Эти два слова, имеющие отношение к цвету, являются “BDR” и “Изм”.
“BDR”, который является сокращением для “границы” используется для изменения цвета от границы, так же, как «граница» используется с BASIC.
Формат слова “БДР” заключается в следующем;
BDR; число или переменная:
Значение числа или вар может быть любое значение до 7
Таким образом, чтобы изменить цвет границы на красный, вы могли бы использовать следующая короткая программа;
10 REM орг; 40000,50000:
20 REM BDR; 2: 30 REM выход;
Или, как вариант, вы можете использовать вар, а затем программа хотели
это;
10 REM орг; 40000,50000:
20 REM переменная;, 2: 30 REM BDR;: 40 REM выход;
9
Слово «Изм», который является сокращением для “изменения” меняет
постоянные атрибуты, и очищает экран таким образом, чтобы их реализовать. Это означает, что он изменяется как цвет бумаги, и цвет чернил, хотя изменение цвета чернил не будет замечено, пока ваша программа не является перечислены.
Формат слова “Изм” заключается в следующем;
Изм; номер или вар:
Значение числа или вар следует из приведенной выше таблицы.
Таким образом, чтобы изменить цвет экрана в синий можно использовать следующие Программа;
10 REM орг; 40000,50000:
20 REM Изм; 8: 30 REM выход;
Обратите внимание, что на экране будут синий, но чернила остается черным.
Если вы измените значение в строке 20 к, например, 15, то документ будет синеют, а чернила изменится на белый.
Теперь мы перейдем к отличной графикой Синклер Spectrum в.
Пожалуйста, обратите внимание, что СФЕРА лечит графики с низким разрешением спектра в и UDGs, как будто они были стандартные символы, и, как таковые, не имеет отношения к этой секции.
Синклер Спектр имеет потенциал для высоких выводить изображение с разрешением в
форма “заговор”, “рисовать” и “Круг”. СФЕРА сохраняет все эти, и даже улучшили команду “КРУГ”, чтобы дать больше гибкость.
Обратите внимание, однако, что “обратной” не удовлетворяются за непосредственно, как цвета Комбинации всегда должен быть указан.
Первый “УЧАСТОК”, СФЕРА слово, чтобы осветить один пиксель также называют
“Сюжет”, и имеет следующий формат;
Сюжет, цвет, колонка, строка:
Обратите внимание, что цвет, линия и столбцов операнды могут все быть либо
Количество в вар, таким образом, чтобы осветить пиксель в центре экрана мы могли бы использовать следующее;
10 REM орг; 40000,50000:
20 REM участок; 56,128,88: 30 REM выход;
Если ваш экран уже в белую бумагу, с черными чернилами, вы заметите,
Маленькая точка появится в центре экрана при запуске выше Программа.
Но, допустим, что вы хотите построить центральную пиксель в “обратном”, СФЕРА не имеет команды “обратной”, но это не сложно в immitate;
Изменение линии 20 читать;
20 REM участок; 7,128,88:
А теперь запустите его.
10
На свой собственный, “сюжет” не очень полезная команда, однако важно
при использовании “рисовать”, так как она обеспечивает точку отсчета для начала рисования линий. Говоря о “рисовать”, слово осциллографа “нарисовать” линия Также называется “рисовать” и имеет следующий формат; рисовать; цвет, + или – влево или вправо, + или – вверх или вниз.
Обратите внимание, пожалуйста, что все операнды могут быть числами или вары. “+/- Вправо или влево” операнд указывает, во-первых с знаком + или – является ли линия должна быть обращено на правом + или слева -, а во-вторых по тому, как много пикселей. Третий операнд, работает аналогичным образом, чтобы составить + или вниз – и по тому, как много пикселей. Обратите внимание на то, что направление Операнды должны иметь префикс либо + или – знак. Рисование линии происходит, начиная с одного из четырех возможных положений;
1] в левом нижнем углу экрана, координаты (0,0), если нет Pixel ранее была построена.
2] Из координат последней Pixel нанесены.
3] С конца последней строки нарисовать, используя либо “нарисовать” или “земной шар”
4] С правом нижнем углу последнего символа, который был
“XPUT” изд к экрану.
Вы можете назначить начальную точку для линии, созданные с помощью “привлечь” в одном
из двух способов;
1] Сюжет соответствующий пиксель, используя “Участок”.
2] ткнуть координаты начальной точки в Sinclair Переменная система “со-ords” Спектр, адресов 23677 (колонка) и 23678 (линия).
Хорошо, время для примера “рисовать”. Первый пример свяжет два
точки (0,0) и (30,20);
10 REM орг; 40000,50000:
20 REM ничья; 56, + 30, + 20: 30 REM выход;
Этот пример будет провести линию от левого края экрана к далеко
Право, по центру экрана;
10 REM орг; 40000,50000:
20 REM участок; 56,0,0: 30 REM рисовать; 56, + 255,0: 40 REM выход;
Чуть более интересным это, который четверти экрана;
10 REM орг; 40000,50000:
20 REM участок; 56128175: 30 REM ничья; 56,0, -175: 40 REM участок; 56,0,88: 50 REM рисовать; 56, + 255,0: 60 REM выход;
На чертеже дуг с использованием третьего параметра не дро
удовлетворяются за СФЕРА.
11
Теперь, чтобы “шара”, слово осциллографа для рисования кругов!
“Глобус” имеет следующий формат;
Глобус; колонка, строка, радиус:
Обратите внимание на то, что еще раз любой или все из операндов может быть либо числом
или вар.
“Глобус” рисует круг, в три раза превышает скорость обычной ПЗУ в, вокруг центральной точки, указанной в строке и колонке операндов, и из радиусе указанный радиус операндов.
Введите в следующем примере, и вы получите представление;
10 REM орг; 40000,50000:
20 REM глобус; 128,88,50: 30 REM выход;
Ладно, скомпилировать и запустить его.
Великий, появляется круг в центре экрана, не составило большого труда. Тем не менее, в настоящее время изменить линию 20, чтобы прочитать таким образом;
20 REM глобус; 128,88,100:
Теперь попробуйте его.
Цвет всегда будет преобладающие постоянные цвета, как установлено
CHG; Существует одна окончательное слово в этом разделе, “над”, который работает в же образом, как это BASIC коллега.
Формат “за” заключается в следующем;
более; 0 или 1:
Если присутствует 1, то “над” состояние устанавливается, где, как
Наличие 0 сбрасывает состояние над.
Чтобы оценить это, попробуйте следующее;
10 REM орг; 40000,50000:
20 REM над; 1: 30 REM глобус; 128,88,50: 40 REM глобус; 128,88,50: 50 REM выход;
Обратите внимание, как окружность, а затем неиспользованными?
Это потому, что “за” устанавливает отображение экрана для отображения всех персонажи и сюжет все пиксели и т.д. в XOR образом.
В пользу тех из вас, кто не знаком с логическим операторы, операции XOR выполняет следующие;
Когда “1” или “на” или “нанесены” пиксель соответствует “0” или “выключено” или
“Не-нанесены” пиксель затем пиксель нанесены.
Однако, когда “1” или “на” или “нанесены” пиксель отвечает другой, Затем исходный установлен на “0” или “выключено” или “unplotted”.
12
Печать Персонажи
СФЕРА есть два пути, в котором знаки могут быть отображены на
Экран, они называются “положить” и “XPUT”.
От базовых, когда это требуется для отображения символа на экране, обычный формат является “PRINT” характер, эквивалентную осциллографа к это “положить”. Формат “положить” заключается в следующем;
положить; цвет, линия, колонка, тест
Обратите внимание, что “цвет”, “Линия” и “колонка” может все быть либо числом
или вар, и что ни один КОЛОН не требуется в конце линии.
Это отсутствие конца-линии толстой кишки является лишь кажущимся с двумя словами, “Положить” и “XPUT”, и позволяет толстой кишки, которое будет отображаться на экране если это необходимо. На первый взгляд, слово “положить” появляется довольно сложной, так вот это BASIC эквивалент;
“PRINT; INK;? БУМАГИ;? AT строка, столбец;” TEXT “”
Обратите внимание, как осциллографа “положить” включает в себя как бумага и чернила цвета в
одно значение, это значение берется из таблицы цветов, приведенной в Раздел “цветом и графикой” Таким образом, в качестве примера, давайте предположим, что вы хотите, чтобы отобразить слово “СФЕРА” в строке 7 и столбце 3 части экрана черными чернилами, на зеленый бумага назад земля. Для этого вы будете использовать на следующие пример;
10 REM орг; 40000,50000:
20 REM поставить; 32,7,3, СФЕРА 30 REM выход;
Попробуйте изменить значение цвета в строке 20, чтобы убедиться, что вы знакомы
с системой приписывает Синклера Spectrum в.
Теперь для новой революционной идеи; “XPUT”.
В предыдущем разделе, по цвету и графике Вы заметили, как все пиксели на экране могут быть освещены с помощью «заговор», и что есть 256 пикселей по экрану, и 176 вниз.
Но, вы заметите, что обычно вы можете отобразить только символ в одном 32 позиций по экрану, на 22 вниз.
“XPUT” однако, дает вам способность отображать характер началом в любом из 256 горизонтальных пикселей и 168 от вертикали пикселей.
Таким образом, появился символ, как говорят, “начать” с верхнего левого угол характера.
Кроме того, “XPUT” также имеет возможность отображения символов в стандарте, двойной или половина ширины!
Формат слова “XPUT” заключается в следующем;
XPUT; линия, колонка, цвет, режим, текст
Обратите внимание, что цвет, линия и столбцов операнды могут все быть либо
цифры или вары, и что число режима выводится из этого списка;
0 Стандартная ширина
1 двойной ширины Ширина 2 Half
13
“XPUT” имеет некоторые специфические свойства, которые, надеюсь, чтобы иметь возможность проиллюстрировать
с демонстрационных программ, которые будут найдены позже, однако, для Пока, попробуйте следующее:
10 REM орг; 40000,50000:
20 REM XPUT; 175,1,56,1, СФЕРА 30 REM поставить; 56,1,1, СФЕРА 40 REM выход;
Вы должны быть в состоянии ясно видеть в отдельности назначаемой пиксель
Смещение особенность “XPUT” из этого примера.
Следует отметить,, что “XPUT” будет также отображать UDGs, а также стандартный персонажи, и будет работать с перепроектированных кодировок, но не с графические символы, доступные с клавиатуры с низким разрешением.
В качестве дополнительного примера попробовать это;
10 REM орг; 40000,50000:
20 REM вар; х, 2: 30 REM переменная; у, 10: 40 REM XPUT; х, у, 56,0, СФЕРА 50 REM выход;
Она не работает, делает это! Вместо этого, “INTEGER OUT OF RANGE” ошибка
Отчет задается Sinclair Spectrum.
Но, если мы изменим строку 20 читать;
20 REM вар; х, 20:
А теперь попробуйте его, он работает хорошо.
Попробуйте это в течение некоторого удовольствия;
10 REM орг; 40000,50000:
20 REM XPUT; 88,247,56,0, СФЕРА 30 REM выход;
Обратите внимание, как на экране “обтекает”, так что отображается СПРАВЬТЕСЬ
в левой части S в правой части экрана.
14
Структура
Как мы уже говорили, это программа, написанная с использованием СФЕРА является
сформулированы в двух отдельных областях, «программы» и «подпрограмм». Эти две области могут быть различал по следующему обобщение; “‘Подпрограмма’ представляет собой набор инструкций, предназначенных для выполнения конкретной задачи. “Программа” представляет собой серию управляющих операторов которые общаются с и отвечать на действия «подпрограмм» “.
Я подчеркну, в этот момент, что это основная идея, которая является очень
основой СФЕРА программирования очень отличается от основной, и как таковой часто трудно ОСНОВНЫЕ программистам понять и примириться с.
Машина код программисты и программисты, знакомые с Forth, не должны испытывать какие-либо трудности с этим структурирования идеи, но, как я ожидать подавляющее большинство из вас являются основными программисты, я попытаюсь Для объяснения этого структурирования идею так просто, как я могу.
Чтобы проиллюстрировать эту идею структуры я буду использовать творческий компанию Ситуация.
Давайте представим, то простой компанию, которая производит продукт, его Не имеет значения, какой продукт, это может быть то, что когда-либо вы хотите !!
Компания имеет следующие отделы;
1] Дизайн
2] Производство
3] Маркетинг
4] Кредиторская
5] Исследование рынка
6] Управление
Как я уже сказал, очень простая ситуация
Мы можем проиллюстрировать эту компанию в также схематическое форме, таким образом;
[1]
| | [5] — (6) — [2] / / [3] [4]
[] Единиц На указывают различные департаменты по числу в
квадратные скобки, и центральный (6) указывает на управленческий раздел компании.
Линии указывают пути взаимодействия, пожалуйста, помните
что, как это просто пример, отдельные департаменты не могут взаимодействуют друг с другом.
15
Уведомление то, как работает в компании контролируется
управленческий отдел, который просит действия от различных отделы и обрабатывает результаты этой акции.
Таким образом, Например давайте предполагать, что управленческий отдел решит, что они требуют нового продукта.
Во-первых они называют исследование рынка по телефону, чтобы узнать, что это за продукт будет продаваться лучше.
Тогда они называют дизайн на скорую руку прототип.
Далее, счета называются, чтобы решить, стоит ли компания может получением продукта.
Решив, что они могут позволить себе продукт, вызов выходит отдел производства, чтобы начать производство, а звонок идет через для маркетинга, чтобы начать продавать новый продукт.
Так структура компании такова, что центральной системе управления
(Управление) может вызвать различные подсистемы (счета и т.д.) таким образом, чтобы создать конечный результат.
Таким образом с программой СФЕРА центральной системе управления (программ) звонки
различные подсистемы (подпрограмм) для получения окончательного результата.
Таким образом стандартная игра аркадном стиле, состоит из ряда подпрограмм,
и центральная программа управления, которая вызывает различные процедуры, и интерпретирует любые эффекты, и в результате вызывает другие подпрограммы. Вскоре становится ясно, что в то время это стиль программирования является достаточно прост в использовании и легко следовать, она очень долго наматывается, но это быстро. Лучше всего, чтобы ознакомиться с “структурированной” программирования, написав короткие и простые программы, прежде чем даже думать большая, сложной и участие Программа таких как аркадная игра.
В качестве примера то, что мы создадим основу для очень простой рисунок
Программа. Идея состоит в том, что линии могут быть сделаны в любом из четырех стандартных компас направления и нажимая соответствующие клавиши управления курсором. Подобно тип “гравер-Sketch” идеи.
Очевидно, то, что мы требуем, четыре подпрограммы рисовать линии, каждый
подпрограмма будет сюжет один пиксель в соответствующем направлении. Мы также требуем, рутину, которая будет обнаруживать нажатие клавиши.
И, наконец, центральная программа, которая управления свяжет вместе Процедуры.
Вот тогда это также схематическое изображение подразделений программы;
[1]
| | [5] — [6] — [2] / / [3] [4]
16
Отделы следующим образом;
[1] Обнаружение нажатия клавиши
[2] составить
[3] Draw право
[4] Draw вниз
[5] Нарисуйте слева
[6] Контроль
Просто, программа управления вызовов “Обнаружение нажатия клавиши”, и чеки
какой ключ число возвращается, называя отделы [2] [5] как уместно.
Или, если будет установлено, что ни одна клавиша не нажата, то программа управления будет петля вокруг продолжая называть не “Обнаружение нажатия клавиш” рутину, пока действительный ключ нажмите обнаружен.
Из этого простого примера, вы должны быть в состоянии выработать свой собственный
конструкции для любых целей вам требуется.
Для страха показаться страшной отверстие, я хотел бы напомнить вам, пожалуйста об этом дьявольская система “блок-схема”, которая, несмотря на то утомительным и скучно очень часто важное значение для хорошего программирования.
Если больше бы-быть-программисты использовали блок-схем и разработаны их
идеи на бумаге, прежде чем даже прикасаясь к клавиатуре, было бы больше хорошие программисты, и намного меньше бы-быть-программисты.
Это все очень хорошо разработки программы, состоящий из центрального управления Система и многочисленные процедуры, но важно, чтобы иметь некоторые средства из их имен, и передать управление программы на указанный рутины или неважно.
В BASIC, когда требуется передать управление программой с плановым или раздел программы, мы используем “GOTO” или “GOSUB” с последующим соответствующий номер линии. Тем не менее, СФЕРА не использовать номера строк, и вместо направления программы названы или более правильно “помечены”.
СФЕРА слово “лейблом” площадью программы “метка” и следующим
следующий формат;
Этикетка; имя:
“Имя” может быть любой буквой алфавита, в верхнем или нижнем
Дело и в случае необходимости он может быть определен с помощью символа #. Таким образом, 104 метки могут быть использованы, и они;
А до Я
А до Я #a к #Z # А для #Z
Таким образом инструкция этикетка может выглядеть следующим образом;
50 REM этикетки;:
или
50 REM этикеток; #S:
17
Так как меченый Название содержит только один алфавитный знак, то есть
не очень описательный функции, выполняемой рутина или раздела программы, которые это значит.
По этой причине СФЕРА есть слово под названием “Примечание”, которая работает в Точно так же в “REM” заявление BASIC, то есть программа игнорирует его и продолжается на следующей строке программы в последовательном порядке. Формат “ноты” заключается в следующем;
обратите внимание, текст:
Таким образом, мы могли бы назначить процедуру или область программы таким образом;
50 REM этикетки; S:
60 REM записка; Увеличение и оценка дисплей:
Теперь, когда мы можем назвать и справочные процедуры и области программы, ее
необходимо указывать в информирует систему формулировка области применения, какие части Программа являются подпрограммы, а какие программы.
Обычно любые инструкции будут переведены в машинный код и переписать проживать в программной области, назначенного “орг”
рутина;
Заявление.
в конечном;
…
подпрограмма.
18
Как
40 GOTO 20
следующее;
Почему это?
19
Программа;
20
выполнена.
21
|
_ / | /
Формат;
22
Таким образом,
23
Экран.
“”.
24
Экран.
Формат;
25
26
Прокрутка
27
28
Звук
29
встретиться.
число.
30
вычитание.
игра.
31
Время.
функционировать автоматически.
32
-5.
договорились? хорошо!
есть!
33
ночь.
потому что;
Таким образом,
34
начало.
35
Вход
36
“ENTER”.
условия;
37
580 590
38
39
40
должным образом.
когда. , ,
произошло.
являются;
Программа.
Линии.
41
Если
42
будет сделано.
43
Словарь
Приставка.
44
Второй.
45
ширина.
46
, , ,
рутина; в конечном;
, , , рутина;
47
в конечном; рутина; в конечном;
48
Строки
49
Приложение 1
повторяющийся.
повторяющийся.
0.
50
51
52
граница.
достигнуты.
53
255
закончится
54
55
56
57
личный вкус.
58
Также вас
В
Код рутина машина.
ПРИЛОЖЕНИЯ
59
ПРИМЕЧАНИЯ
60
СФЕРА
предлагает.
ISP
Запустите Scope II и играйте. Эта приложение для программирования, изданное в Великобритании в 1985 году командой Interactive Software People, которое написал неизвестный автор.
Сохранённые игры[X]
Справка[X]
Помощь уже в пути!
- x1
- x2
- x3
<<<<
<<<<
<<<<
Не забывайте периодически сохранять игровой прогресс на сервере (клавишей F8), чтобы уверенно продвигаться вперёд!
Если вы гость на сайте, то прогресс будет сохранён только в памяти браузера и потеряется при закрытии. Чтобы этого не произошло - просто войдите в свой профиль.
Для загрузки сохранённой игры жмите F3 или откройте меню "Диск" кнопкой на правой панели.
Если игра не запускается, или у вас есть вопросы по игре - задайте их ниже.
Не запускается или глючит игра, или не можете пройти? Спросите в комментариях.