ZX Spectrum
Game

Moving Graphics of the Horizontal Kind

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

Автор:

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


Язык

  • Русский
  • English

Управление

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

Игроков

  • Один

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

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

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

Неофициальное издание
Играть!
  •  Описание (авт.пер.)
  •  Информация
Описание Moving Graphics of the Horizontal Kind (автоматический перевод)

! 0 ^ ^ ^ ..

! B H10 H07 ДВИЖЕНИЕ графические H10 H00 H11 H07 H O R я Z О Н Т А Л H10 H07 ВИД

! 2 ^ ^ ^ ^ ^ ^

То и дело вы можете почувствовать непреодолимое желание написать своего рода компьютерной программы. (Не Там никакого известного лечения для этого Навязчивое, хотя было предложено, что длинные праздники в сельская местность может возможно сделать трюк.) Но, например,  что вы будете делать, если вы хотите, чтобы прокрутить экран боком и  не малейшего представления, с чего начать? Ну, забыть телефону самаритяне, потому что Тони Бейкер собирается предложить что один      Ответ на многие ваши проблемы лежит в машинный код. ! 1 ^ ^ ^ ^

Я вам скажу, что – типа в этом основной программы,

которая составлена ​​на основе программы из Mastering Машинный код на указанный Вами ZX Spectrum (написана некоторые Looney не в миллионе миль от этих страницах – Подключите! – И опубликованы Interface).

! 0 ^ ^ ^ ..

10 INPUT “Машинный код Адрес”;    х 20 LET $ = “” 30 ЕСЛИ $ = “”, затем введите $ 40 Пусть у = CODE $ -48: ЕСЛИ у>9 ТОГДА    Пусть у = у-7 50 Пусть Z = CODE $ (2) -48: ЕСЛИ г>9    Тогда пусть г = г-7 60 POKE х, 16 * у + г 70 LET х = х + 1 80 Пусть $ = (до 3) в $ 90 GO TO 30 ! 1 ^ ^ ^ ^ ! B (Обратите внимание, что в книге, если у вас есть это, есть ошибка на странице 13 в результате чего линия 60 должна иметь Знак плюс вместо знака равенства.)   Программа выше спрашивает в первую очередь для адрес где-то в памяти, который необходимо ввести.

Запустите программу и введите номер 28801. В шестнадцатеричное это число 7081h. Причина что я выбрал этот адрес, потому что I намерены использовать все адреса из 7000H к 7080h для хранения различных кусочки данных, Все объясняется в минуту. Во-первых, хотя программа. Ниже приводится машинный код Программа. Все, что вам нужно сделать, это ввести Буквы и цифры в левой колонке. Для Экземпляр, вы должны начать с ввода “3A87070” а затем “3C”, а затем “E67F”. Когда у вас есть через весь список необходимо нажать EDIT (CAPS SHIFT и 1), чтобы удалить кавычки, а затем STOP (СИМВОЛ SHIFT) без кавычек, а затем ENTER, и это будет вырваться из Программа.

  Для тех из вас, кто понимает машинный код, Я также включены в средней колонке А перечень программы машинного кода сам, и в правой колонке некоторые замечания по какой программа делает. Если вы не понимаете, машинный код это действительно не имеет значения – все вас нужно сделать, это ввести в материал в левой колонка только. Хорошо, здесь мы идем. Обратите внимание, что все ‘0’ на самом деле являются нулями, и все ‘1’ в факт те.

  Теперь у нас есть, чтобы заполнить те области данных. Стереть основной программы на одну строку за один раз (не набрав NEW) и теперь войти в эту программу вместо: ! 0 ^ ^ ^ ..

  • 10 Ибо я = 28672 К 28800 20 POKE я, INT (9 * RND) 30 Затем я ! 1 ^ ^ ^ ^ Это служит для хранения случайной число от нуля до восьми в каждой адресу от 7000H до 7080h. Теперь стереть эти строки и вход этом Базовая программа: ! 0 ^ ^ ^ ..
  • 10 Ибо я = 1 TO 200 20 RANDOMIZE USR 28801 30 Затем я 40 Я = 1 TO 100 50 RANDOMIZE USR 28826 60 Затем я 70 GO TO 10 ! 1 ^ ^ ^ ^ Когда вы сейчас запустите эту программу, вы должны получить Интересный эффект. Строка 20 фактически прокручивает экран влево, и линия 50 прокручивает Экран справа. Оба из них будет также привлечь в новом краю левой или правой, как требуется. Данные в адреса 7000H в 707Fh хранить высот различных местах особенности и адрес 7080h используется для хранения запись о местонахождении экран в отношении к горизонту. Если добавить еще две линии Основные: ! 0 ^ ^ ^ ..
  • 25 PRINT AT 10,10; “- + -” 55 PRINT AT 10,10; “- + -” ! 1 ^ ^ ^ ^ Вы увидите, что у вас есть начало простой игра. Для работы в Basic высоту земля особенность в колонке X экрана (с левая колонка быть 0, а крайний правый будучи 31) я предлагаю вам использовать следующие под- подпрограмма, которая возвращает высоту, Y: ! 0 ^ ^ ^ ..
  • 2000 лет у = 28672 + PEEK 28800 2010 ЕСЛИ у>28799 то пусть у = Y-128 2020 Пусть Y = PEEK (х + у) 2030 ВОЗВРАЩЕНИЕ ! 1 ^ ^ ^ ^ И чтобы изменить высоту столбца X на высоте : ! 0 ^ ^ ^ ..
  • 3000 Пусть Y = 28672 + PEEK 28800 3010 ЕСЛИ у>28799 то пусть у = Y-128 3020 POKE х + у, 3030 ВОЗВРАЩЕНИЕ ! 1 ^ ^ ^ ^ Есть весело. Что вы делаете из этой рутины это полностью зависит от вас, но он должен, конечно, оставить вас довольствоваться.

! 2 ^ ^ ^ ^ ^ ^

! B Машина код ассемблера Комментарии 3A8070 ЛЕВЫЙ LD, (должность): = координата левой                                       край экрана 3C INC E67F И # 7F 328070 LD (ПОЛОЖЕНИЕ), экран Move R вдоль данных F5 PUSH AF 210140 LD HL, # 4001 HL: = второй байт на экране 110040 LD DE, # 4000 DE: = первый байт на экране 01FF1A LD BC, # 1AFF BC: = # байтов в экране                                       менее одного Экран EDB0 LDIR Прокрутка влево 0E1F LD C, # 1F C: = координата Rmost седловине 1815 JR CONT 3A8070 ПРАВО LD, (должность): = координата левых                                       край экрана 3D декабря E67F И # 7F 328070 LD (ПОЛОЖЕНИЕ), экран Move L вдоль данных F5 PUSH AF 21FE5A LD HL, # 5AFE HL: = второе место до последнего байта на                                       экран 11FF5A LD DE, # 5AFF DE: = последний байт на экране 01FF1A LD BC, # 1AFF BC: = # байтов в экране                                       менее одного EDB8 LDDR Выделите экран прямо; C: = 00 2640 CONT LD H, # 40 69 LD L, C HL: = адрес первого ряда                                       Сегмент стереть 112000 LD DE, # 0020 06C0 LD B, # C0 B: = # строк в экране 3600 ERASE LD (HL), # 00 Erase следующий сегмент ряд 19 ДОБАВИТЬ HL, DE точка для следующего сегмента строки                                       стереть 10FB DJNZ УДАЛЕНИЕ Повторите для всех строк 0618 LD B, # 18 В: = # строк в экране 3A8D5C LD, (ATTR_P): = атрибут байт 77 NEW_ATTRS LD (HL), Смена следующий байт атрибут 19 ДОБАВИТЬ HL, DE найденные в NXT поз атрибута 10FC DJNZ NEW_ATTRS Повторите для всех атрибутов                                       в колонне F1 POP AF: = коорд из левой части экрана 81 ДОБАВИТЬ A, C E67F И # 7F: = коорд колонны стерты 6F LD L, 2670 LD H, DATA высокой HL: = в соответствующие                                       байт данных 46 LD B, (HL) B: = высоту земли 3EE0 LD A, # E0 81 ДОБАВИТЬ A, C 6F LD L, 2657 LD H, # 57 Точка HL для последнего ряда                                       сегмент в колонке 04 INC B 5 декабря B C8 RET Z Возврат если высота = ноль 11E007 LD DE, # 07E0 3E08 GROUND_1 LD A, # 08: = число сегментов строк                                       за квадрат 36FF GROUND_2 LD (HL), # FF Draw в землю 25 декабря H HL: = к следующему сегменту строки 3D декабря 20FA JR NZ, GROUND_2 Нарисуйте всю площадь 19 ДОБАВИТЬ HL, DE Для нижнего сегмента строки                                       следующего площади 10F5 DJNZ GROUND_1 Повторите для необходимого количества                                       квадратов C9 RET ! 1 ^ ^ ^ ^

! B – с Вашего Spectrum # 1 (Jan.1984) – $

?

Краткая информация о Moving Graphics of the Horizontal Kind

Запустите Moving Graphics of the Horizontal Kind и играйте. Это приложения для разработки программ на бейсике, которое создал Toni Baker, было издано командой Your Spectrum в 1984 году в Великобритании.

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

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

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

  

Справка[X]

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

  • x1
  • x2
  • x3

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

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

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

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

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

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