Игра Simon (HP 50g, 49, 48)

Игра Simon тренирует память путем запоминания нот мелодии или соответствующего им расположения кнопок. Последний вариант пригоден не только для лишенных музыкального восприятия, но и для людей с нарушениями слуха.

Если ваш программируемый калькулятор обладает встроенным динамиком, как, например, ПМК серии HP 48/49/50, то портативный вариант Simon вполне может заменить программа.

Хотя игре уже более 30 лет, но она до сих пор производится в разных вариантах: от настольных до карманных.


Фото настольного варианта игрушки из википедии (© 2005 Larry D. Moore)

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

При ошибке программа предлагает начать новую игру или завершить. Также игру можно прервать на любом шаге клавишами "Q" или "F2", а переиграть - "R" или "F6".

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

Программа получилась очень компактной: несмотря на сервисный блок и заставки, сам код занимает порядка 100 байт, а остальные 5 Кб ушли под графику.

О принципах показа графики в программах на UserRPL мы уже писали на примере разработки динамического симулятора лунолета. Они использованы и здесь. Для редактирования растровой графики большую помощь оказал редактор Calculator Picture Editor, работающий не только с форматами ПМК HP 50/49/48, но и серией TI-8x, а также с обычными bitmap.

Прикрепленные в конце текста файлы содержат исходный текст и скомпилированный код.

Видео, демонстрирующее игру.

File attachments: 
Прикрепленный файлРазмер
Binary Data simon.rpl8 KB
Binary Data simon.hp5.07 KB
Метки публикаций: 
Undefined