код на калькуляторе игры

Программирование на калькуляторах МК: как я делал графические игры

После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

На первой странице фломастером гордо накарябан урл сайта на народе, который мы делали чуть ли всем двором. Я периодически буду на него ссылаться.

Начало записей — основы программирования (код был написан для МК-61, но будет работать и на подобных устройствах).
Для перехода в соответствующий режим нужно нажать — Fпрг, для выхода — Fавт.

Базовый приём, которым я пользовался при написании программ — работа с регистрами.
Для записи в регистр используется кнопка П → Х, для вывода X → П. Например, последовательность нажатий 72 П → X 1 записывает число 72 в регистр RG1, а Х → П 1 выводит значение из регистра RG1 в регистр X.

Содержимое регистра X всегда отображается на экране — это один из стековых регистров (X, Y, Z, T). Для работы со стековыми регистрами используются команды:
— В↑ (копирует содержимое регистра X в Y, Y в Z, и т.д).
— (меняет содержимое регистров X и Y местами)
— СХ (стирает содержимое регистра Х)

Также я активно использовал функцию if — за это отвечают клавиши Fx=0, Fx=/0, Fx 0. Синтаксис:
Fx#0 (шаг для перехода, если условие не выполняется) (последующая команда при выполнении условия).

Подробнее о синтаксисе можно почитать в этой статье.

Перейдём к самому интересному. В те годы и при тех обстоятельствах ни у кого из моей компании не было устройств, на которых можно было бы программировать — мы проводили у калькулятора целые часы, и нам это действительно нравилось. Как любые дети, мы хотели играть, и заметили, что функция «инв» (логическое инвертирование) может преобразовать числа, например, в символ «Г». «Е» или «C», а если вывести на экран «8-E-C» и перевернуть калькулятор по часовой — то мы увидим что-то, похожее на человечка.

код на калькуляторе игры. image loader. код на калькуляторе игры фото. код на калькуляторе игры-image loader. картинка код на калькуляторе игры. картинка image loader. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Игра, код которой был разрисован в тетради краше всего, называлась «Lamer Andrew meets America».

Инструкция гласит: «Вы можете посмотреть мультфильм (нажав ВО СП), выстрелить в монстра (БП 53), сломать машину врага (БП 74). Если вы умрёте, то увидите символы ‘8 *****’, если выиграете — ‘ECC’. В этой игре можете использовать сразу несколько видов — спереди и сверху». Незамысловато.

В значения регистров командой П (например, 80013 инв П 0) заносилась «анимация»:

РегистрЗначение для «нормального вида»Значение для «продвинутого вида»
080013 инв80013 инв
18 инв8 инв
281 инв81 инв
3801 инв8573 инв
4800077 инв857 инв
580109 инв81308333 инв
680108 инв81300876 инв
78077099 инв8570757 инв
88015 инв8135 инв
980105 инв81305 инв
a, b5 инв5 инв
c807799 инв857757 инв
d80779 инв8577333 инвa

Сам код (для сокращения записи операции «П→x», «x→П» и «С/П» обозначены как «ИП», «П» и «СП») простой и длинный:

Итак, наша программа в основном состоит из операторов вывода на экран «анимации» (последовательности значений регистров), операторов остановки и безусловного перехода. Например, «стреляет» наш человечек вот так:

код на калькуляторе игры. image loader. код на калькуляторе игры фото. код на калькуляторе игры-image loader. картинка код на калькуляторе игры. картинка image loader. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Реальный калькулятор перед новым выводом на экран гасил его на доли секунды — это придавало больше реалистичности «стрельбе».

Просто, но результат нам очень нравился, а родители даже нарисовали нам грамоту 🙂

Не наигрались? Второй (и последний) код из той самой тетради — тамагочи (да, тоже с графикой):

[ип1] [ип1] [ип1] [ип1] [ип1] [с\п] [ипВ] [В^] [2] [0] [-] [Fx>/=0] [19] [8] [0] [0] [1] [3] [Kинв] [С\П] [ипВ] [в^] [1] [+] [пВ] [С\П] [Сх] [ипС] [В^] [1] [0] [-] [Fx>/=0] [35] [ип3] [с\п] [ипD] [В^] [1] [5] [-] [Fx>/=0] [44] [ип3] [с\п] [ип8] [В^] [1] [0] [-] [Fx>/=0] [] [53] [ип3] [сп] [ВО] [ипD] [B^] [2] [-] [ПD] [C/П] [ип6] [ип7] [8] [ВО] [ипС] [B^] [2] [-] [пс] [о] [сп] [ип9] [ипА] [ВО] [ип8] [В^] [3] [-] [п8] [с\п] [ип4] [с\п] [BО] [ипВ] [B^] [10] [-] [Fx>/=0] [93] [ип2] [п1] [ВО]

Инструкция, переведённая с того языка, который я принимал в детстве за английский:

Нажмите С\П — вы увидите Андрея. Нажмите С\П ещё раз, и он начнёт программировать. Вы увидите какие-то цифры — это вывод с его программ. Нажмите С\П. После пяти программ Андрей вырастет на пять лет. Ваша цель — дорастить его до 20ти, помогая Андрею:

1. Кормите его. Нажмите БП 65 и С\П. Он поест, и коэффициент голода понизится. Если значение коэффициента достигнет 10 — он умрёт, а вы увидите отличное видео.

2. Гуляйте с ним. Нажмите БП 84 и С\П. Он погуляет и сходит в туалет. Если значение «антипрогулочного» коэффициента достигнет 10 — он умрёт. С видео!

3. Сон. Когда Андрей устал, нажмите БП 75 С\П. Чтобы разбудить — нажмите С\П. С видео.

4. Посещение врача. Когда Андрею исполнится 10, ему нужно будет сходить к врачу. Нажмите БП 55 С\П.

Если вы выиграете — вы увидите » 8 ЕС «, если проиграете — » 8——8 «. Андрей меняется по мере роста!

Источник

Программирование на калькуляторе

код на калькуляторе игры. f2d6c8b5. код на калькуляторе игры фото. код на калькуляторе игры-f2d6c8b5. картинка код на калькуляторе игры. картинка f2d6c8b5. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.Здравствуйте, хабражители. Думаю, многие из вас слышали о программируемых калькуляторах (а некоторые даже использовали их). Как ни странно, здесь я не нашел ни одной статьи, рассказывающей о такой интересной вещи, и поэтому решил восполнить этот пробел и рассказать об основах программирования на калькуляторах.

Некоторое время назад я нашел у себя в кладовке старый «Электроника МК-61», принадлежавший моему папе. Естественно, я не мог упустить такой шанс освоить не совсем «стандартное» программирование на калькуляторе. (В случае, если у вас нет программируемого калькулятора, вы можете скачать эмулятор здесь)

Память

Прежде всего необходимо понять, как устроена память в этом калькуляторе. В распоряжении пользователя имеется 4 стековых регистра: X, Y, Z, T. Содержимое регистра X всегда показывается на экране (в режиме расчетов), ввод чисел тоже идет в него. По сути, стековая память после включения калькулятора выглядит так:

то после значения станут

Команда [] меняет содержимое регистров X и Y местами.

Команда [CX] стирает содержимое регистра X.

Важно помнить, что после выключения калькулятора значения всех регистров стираются.

Расчеты

После нажатия клавиш [2] [В↑] [3] :

Программирование

код на калькуляторе игры. 4fbd872f. код на калькуляторе игры фото. код на калькуляторе игры-4fbd872f. картинка код на калькуляторе игры. картинка 4fbd872f. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Основы
Безусловный и условный переходы

С помощью команды [БП] (51) можно осуществить безусловный перезод (goto) по нужному адресу. Для этого в режиме программирования нужно нажать [БП] а затем две цифры адреса, по которому мы хотим перейти. Когда калькулятор при выполнении программы дойдет до этого оператора, он продолжит выполнение уже с команды по указанному адресу. Например:

В данном случае после шага 12 калькулятор перейдет сразу к шагу 42.

Циклы

Заключение

Конечно, эта статья — далеко не полное руководство по программированию на МК-61. Интересующимся в более глубоком освоении этой темы рекомендую почитать инструкцию (pdf, 6 MB) к этому замечательному калькулятору.

Источник

Выжимаем максимум из графических калькуляторов: игры на TI-83

код на калькуляторе игры. image loader. код на калькуляторе игры фото. код на калькуляторе игры-image loader. картинка код на калькуляторе игры. картинка image loader. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

В 80-х и 90-х не каждому ребёнку родители покупали Game Boy. Я был одним из таких детей, и оставался единственным на игровой площадке, у кого не было GB.

Вместо консоли у меня был графический калькулятор. Мой отец горел сильным желанием с детства готовить меня к SAT. Поэтому я пользовался TI (Texas Instruments) 83 и ПО для Windows, необходимым для синхронизации калькулятора с компьютером. Предполагалось, что я буду использовать ПО для скачивания учебных программ и сохранения резервных копий хранимых в калькуляторе результатов.

Но вместо этого я играл на нём в игры. Даже тогда уже существовали хранилища монохромных видеоигр с низким разрешением, написанных специально для графических калькуляторов Texas Instruments. Большинство из них было отстойными (да, Drug Warz, я имею в виду тебя), но некоторые оказались на удивление хорошими, учитывая особенности платформы.

Вот например, Zelda для TI-83, в которой использовались спрайты, выдранные из серии Zelda для Gameboy:

Однако это была полностью оригинальная игра с уникальным внешним миром и совершенно новыми подземельями. Но не стоит особо радоваться, очень немногие игры выглядели столь же хорошо. Более характерным примером качества игр для TI-83 была Penguins Билла Нэйджела:

Она была довольно популярной, и я активно обменивался ею в средней школе, где наконец-то был не единственным человеком с TI-83. Мои одноклассники, не знавшие о том, что на графических калькуляторах можно запускать игры, начали считать меня гением-волшебником за умение переносить игры с калькулятора на калькулятор с помощью моего линк-кабеля. Одной из таких игр была Mario83:

Как и на любой другой платформе, на нём был клон Tetris. Эта игра хорошо подходила к столь ограниченному формату, ведь она состояла всего лишь из блоков:

Ещё одной игрой, которую портировали на все возможные платформы, был Doom. Что, Doom? На платформе более слабой, чем первый Gameboy? Но разработчикам как-то удалось это сделать. Хотя движок намного проще, в игре всё равно можно узнать Doom:

Gemini — это ещё одна псевдотрёхмерная игра, работавшая на TI-83, и отличавшаяся впечатляющими текстурированными стенами. Хоть она находилась примерно на одном техническом уровне с Wolfenstein 3D, для такой простой машины это было серьёзным достижением:

Иногда игры оказывались на удивление сложными. Не ожидаешь увидеть на каком-то паршивом калькуляторе глубокую RPG, но их было несколько, и одной из лучших считалась «Desolate»:

А как насчёт демо? Разумеется, были и они. Например, «Two by Two» разработчика Noice. Те же эффекты, которые можно было видеть на Gameboy, хоть и немного более неуклюжие, разумеется:

Тот же автор создал и это красивое демо «Monochromatic». Подходящее название для системы, в которой даже невозможны были истинные оттенки серого и их приходилось имитировать включением и отключением пикселей с нужной частотой:

Это демо 3D-движка работает на TI-84 plus, а не на TI-83, но я не мог его пропустить, ведь в нём есть полигональная графика с плоским затенением. Демо выглядит как подражание Elite:

Хоть моё сердце навсегда принадлежит старому доброму TI-83, должен признать, что более поздние графические калькуляторы намного превосходили его по графическим возможностям. Только посмотрите на Mario на TI-89 и сравните с нем, что видели выше:

Вполне предсказуемо, что TI-89 (по сути являющийся урезанной версией огромного, размером с Game Gear, TI-92) намного лучше проявлял себя в 3D. Взгляните на Counterstrike (по-прежнему работает на движке в стиле Wolf3D, но выглядит намного красивее):

А ещё на калькуляторах была Kirby’s Dreamland. Так как экран TI-89 больше по разрешению, чем у Gameboy (а в TI-83, напротив, пикселей меньше), он стал более популярным для копирования графических ресурсов из игр для Gameboy и создания на их основе новых однопользовательских кампаний:

Prince of Persia работал на этой платформе достаточно неплохо. Если вы ещё не поняли, то 89 стал огромным шагом вперёд по сравнению с 83 и был лучшим, пока на рынке не появились цветные графические калькуляторы с подсветкой. Как по мне, так они растеряли всё очарование:

И никак нельзя обойти вниманием Metroid. Как можно играть в него на размытом экране TI-89? Не лучше и не хуже, чем на экране первого Gameboy. Как и во всех других играх, в нём нет звука, потому что у калькулятора не было звукового чипа. Но это не останавливало некоторых разработчиков: они реализовали поддержку звука, выполнявшуюся в основном 8-битном процессоре, и выводили его через порт соединительного кабеля, совместимого с некоторыми наушниками:

Более примитивная 3D-графика. В следующий раз мы увидели на портативном устройстве полигональную графику с заливкой только на Handspring Visor. То, что разработчикам-любителям удалось добиться этого на графическом калькуляторе конца 80-х, должно вдохновлять вас:

King of Fighters? Серьёзно? Да, действительно. Игра, как я полагаю, портирована с Neo Geo Pocket (монохромной версии) или с Wonder Swan (тоже без цвета. У обеих консолей поначалу были монохромные версии). Здесь спрайтовая графика выглядит замечательно:

Некоторые из игр выглядели по-настоящему красиво, и они, вероятно, стали началом карьеры многих студентов, которые после распространения смартфонов вышли на рынок мобильных игр. Если добавить цвета, то Air Mission выглядела бы вполне уместной на старом телефоне с поддержкой java-приложений:

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

Это была настоящая находка. Никакого звука, обычно плохая графика, размытый экран без подсветки… зато бесплатные игры! Сколько захочешь! Половина удовольствия заключалась в отыскивании новых шедевров и в обмене ими по кабелю с друзьями на игровой площадке или в школьном коридоре. Меня даже удивляет, почему Texas Instruments никогда не обращала внимания на андерграундную игровую культуру, возникшую вокруг этих калькуляторов, и у неё никогда не возникало мысли «о, а ведь мы можем создать настоящую игровую портативную консоль».

Я бы её купил. Но надо учитывать то, что в течение долгих лет я покупал почти все игровые устройства, в том числе и отстойные. Если хотите узнать, какие игры есть для вашего графического калькулятора, то рекомендую посетить сайты TiCalc.org и Omnimaga.

Процессор: Zilog Z80 с частотой 6 МГц.

Язык программирования: TI-BASIC, ассемблер.

Пользовательская память: 32 кБ ОЗУ.

Экран: монохромный, 96×64 пикселя, 16×8 символов.

Источник

Как делать интересные вещи с калькулятором

Фокус 1

Попросите добровольца выбрать в уме число от 1 до 9. Объясните, что назовете это число в конце фокуса. Сделайте вид, что читаете мысли добровольца, когда он или она будут загадывать число.

Попросите добровольца с помощью калькулятора умножить выбранное число на 9, а затем на 12345679. Обратите внимание, что во втором числе нет цифры 8. Убедитесь, что доброволец умножил выбранное число на 9, а затем на 12345679 (без 8).

Попросите добровольца показать результат умножения или возьмите калькулятор в свои руки. Скажите, что по результату умножения вы способны узнать исходное число.

Подсказка: если вы не хотите раскрывать секрет фокуса, попросите добровольца нажать на клавишу со знаком равенства (=) и сразу передать вам калькулятор, чтобы доброволец не видел результат умножения.

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

Фокус 2

Как показать фокус с числом 73

Напишите число «73» на листе бумаги, сложите его и отдайте добровольцу. Никому не показывайте написанное число. Вы раскроете это «секретное» число в конце фокуса.

Попросите добровольца загадать 4-значное число и дважды ввести его в калькулятор. Можно загадать любое 4-значное число — передайте калькулятор добровольцу и попросите его ввести число.

Заявите, что число нацело делится на 137. Затем попросите добровольца разделить 8-значное число на 137. Запомните: любое 8-значное число, составленное из двух одинаковых 4-значных чисел, нацело делится на 137.

Подсказка: это работает, потому что составление двух одинаковых 4-значных чисел равнозначно умножению одного 4-значного числа на 10001, а число 10001 нацело делится на 137.

Попросите добровольца разделить полученный результат на исходное 4-значное число. Если доброволец правильно следовал вашим инструкциям, он получит число 73 (при любом загаданном числе).

Подсказка: это работает, потому что 10001 = 137 x 73. Разделив 8-значное число на 137, вы получите число, равное загаданному число, умноженному на 73. Таким образом, если разделить это число на загаданное 4-значное число, каждый раз будет получаться число 73.

Попросите добровольца огласить «секретное» число. Для этого доброволец должен развернуть сложенный лист бумаги и показать его аудитории — люди будут в восторге, увидев на бумаге число 73.

ФОКУС 3

Попросите добровольца в уме загадать 3-значное число и дважды ввести его в калькулятор. Экран калькулятора показывать вам не нужно. Смотрите на добровольца так, как будто читаете его или ее мысли.

Заявите, что число делится на 11, и попросите добровольца проверить это. Пусть доброволец проверит это и скажет аудитории, что вы правы.

Попросите добровольца разделить полученный результат на 13. Заявите, что последнее полученное число делится на 13. Пусть доброволец разделит результат на 13, чтобы подтвердить ваше заявление.

Попросите добровольца разделить полученный результат на загаданное трехзначное число. Напомните, что загадывалось трехзначное число, которое дважды вводилось в калькулятор. Попросите добровольца проверить, что он или она разделили результат именно на 3-значное, а не на 6-значное число.

Заявите, что на экране калькулятора отображается число 7. Скажите это аудитории, не глядя на экран калькулятора. Попросите добровольца показать экран аудитории, чтобы подтвердить, что вы правы.

Разделите результат на 13 в шаге 3 — получится число 7 и вы предскажете удачу, или разделите результат на 7 в шаге 3 — получится число 13 и вы предскажете невезение.

Источник

Код на калькуляторе игры

Сообщество интересующихся Вселенной Чужих, фанатов вселенной ( Чужефанов ) и просто любителей данной франшизы.

Пикабу в мессенджерах

Активные сообщества

код на калькуляторе игры. 1629974735225142203. код на калькуляторе игры фото. код на калькуляторе игры-1629974735225142203. картинка код на калькуляторе игры. картинка 1629974735225142203. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1632257236228051396. код на калькуляторе игры фото. код на калькуляторе игры-1632257236228051396. картинка код на калькуляторе игры. картинка 1632257236228051396. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1629436916126967651. код на калькуляторе игры фото. код на калькуляторе игры-1629436916126967651. картинка код на калькуляторе игры. картинка 1629436916126967651. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1605016081289356325. код на калькуляторе игры фото. код на калькуляторе игры-1605016081289356325. картинка код на калькуляторе игры. картинка 1605016081289356325. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1575307602233365511. код на калькуляторе игры фото. код на калькуляторе игры-1575307602233365511. картинка код на калькуляторе игры. картинка 1575307602233365511. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1591223531280353275. код на калькуляторе игры фото. код на калькуляторе игры-1591223531280353275. картинка код на калькуляторе игры. картинка 1591223531280353275. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1631356957286523645. код на калькуляторе игры фото. код на калькуляторе игры-1631356957286523645. картинка код на калькуляторе игры. картинка 1631356957286523645. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1627455674131825104. код на калькуляторе игры фото. код на калькуляторе игры-1627455674131825104. картинка код на калькуляторе игры. картинка 1627455674131825104. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1625498625294018522. код на калькуляторе игры фото. код на калькуляторе игры-1625498625294018522. картинка код на калькуляторе игры. картинка 1625498625294018522. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1619444464242219579. код на калькуляторе игры фото. код на калькуляторе игры-1619444464242219579. картинка код на калькуляторе игры. картинка 1619444464242219579. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Тенденции

код на калькуляторе игры. m3243026 935282320. код на калькуляторе игры фото. код на калькуляторе игры-m3243026 935282320. картинка код на калькуляторе игры. картинка m3243026 935282320. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618595798147559022. код на калькуляторе игры фото. код на калькуляторе игры-1618595798147559022. картинка код на калькуляторе игры. картинка 1618595798147559022. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Как я делал шпору, а в итоге получилась игра «змейка»

Дело было во время обучения в институте. Шел первый курс, а может и второй, неважно. Все первые года 3 матан и все что с ним связано сильно меня доставало. А вот по линалу, к слову, мои дела были куда лучше.

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

И вот у меня родилась мысль: а что если взять калькулятор и в него запихать шпоры. Погуглив не нашел таких девайсов. Все какие-то, в лучшем случае, визуально приметные.

С другой стороны, посмотрев на возможности своего калькулятора, пришел к выводу, что в него ничего не записать:
— во-первых у него экран специфичный, может рисовать только цифры

— во-вторых он полностью закрыт: такая черная блямба-микросхема к которой никак не подпаяещься, а еще она нигде не продукоментирована КАК СЕЙЧАС ПОЧТИ ВСЕ ОБОЖАЮТ ДЕЛАТЬ.

Что же делают настоящие разработчики? XD Разрабатывают! Мы не ищем легких путей, от калькулятора можно использовать только корпус. Кстати, а вот и мой итоговый вариант (смог найти фото):

код на калькуляторе игры. 161832858814411463. код на калькуляторе игры фото. код на калькуляторе игры-161832858814411463. картинка код на калькуляторе игры. картинка 161832858814411463. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Работает он на одной ААА батарейке. В качестве микроконроллера использовал для начала атмегу на 28 ног. Потом атмегу на 32 ноги (могу путать число ног). Потом SMD использовал, вроде тоже атмегу.

В качестве экрана использовал MT510 какой-то там вроде наш жк чб экран (на экране умещалось 3-4 строки). Пиксели большие, но он хорошо маскировалс под экран обычного калькулятора(выглядел допотопно), что меня устраивало. Стоил правда этот чудо-экран за 500р, а выглядел примерно так (плата была поменьше и экран не зеленый):

код на калькуляторе игры. 1618310221170729821. код на калькуляторе игры фото. код на калькуляторе игры-1618310221170729821. картинка код на калькуляторе игры. картинка 1618310221170729821. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Собрал себе программатор и коробку для него. Коробку не купил так как чет для простого студента все дорого, особенно кусок пластика за пару сотен рублев, когда можно из сидибокса можешь какой хошь (ну прямо совсем какой хошь) корпус сделать и дешевле будет:

код на калькуляторе игры. 1618310514146840636. код на калькуляторе игры фото. код на калькуляторе игры-1618310514146840636. картинка код на калькуляторе игры. картинка 1618310514146840636. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618310526185317203. код на калькуляторе игры фото. код на калькуляторе игры-1618310526185317203. картинка код на калькуляторе игры. картинка 1618310526185317203. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618310554166528321. код на калькуляторе игры фото. код на калькуляторе игры-1618310554166528321. картинка код на калькуляторе игры. картинка 1618310554166528321. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618310548149798950. код на калькуляторе игры фото. код на калькуляторе игры-1618310548149798950. картинка код на калькуляторе игры. картинка 1618310548149798950. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618310534144050900. код на калькуляторе игры фото. код на калькуляторе игры-1618310534144050900. картинка код на калькуляторе игры. картинка 1618310534144050900. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618310541158328967. код на калькуляторе игры фото. код на калькуляторе игры-1618310541158328967. картинка код на калькуляторе игры. картинка 1618310541158328967. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

И да, компоненты были дорогими. Когда жил с родителями, помню у отца было все. Ну или не все, но недостающие детали можно было выпаять. Всех эих резисторов / конденсаторов тогда было море. Хоть в окно выкидывай. Тогда я этого не ценил и не знал что они, оказывается, сумасшедших денег стоят.
Помню, ходил по митино, 1 резистор стоил 20-25р. Ребята, 1 стандартный резистор из самого стандартного ряда, с самой стандартной погрешностью, эта проволочка за 20 руб.

Первая версия калькулятора была с LED, сохранились только эти фотки (не знаю куда сейчас калькуль потерялся со всеми переездами). Собрал все на картонке так как мне так всегда было удобно. Когда учился в школе, собирал на картонке, которая была у отца. Это была какая-то особо прочная картонка, наверно даже для таких целей. А в общаге только был. гринфилд. Ну ладно, не для презентации делаем, так что прототип из каках и палок. Главное чтобы работал (и так уже разорился с покупкой конденсаторов, резисторов, МК-ов. ):

код на калькуляторе игры. 1618310846120888451. код на калькуляторе игры фото. код на калькуляторе игры-1618310846120888451. картинка код на калькуляторе игры. картинка 1618310846120888451. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618310868125934065. код на калькуляторе игры фото. код на калькуляторе игры-1618310868125934065. картинка код на калькуляторе игры. картинка 1618310868125934065. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

код на калькуляторе игры. 1618310837116040626. код на калькуляторе игры фото. код на калькуляторе игры-1618310837116040626. картинка код на калькуляторе игры. картинка 1618310837116040626. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Через какое-то время много усмешек отгреб от своих товарищей, которые тоже что-то паяли : «че это у нас тут за сопли на картонке?» «Ха-ха-ха-ха, Лёх, такой редкостной фигни мы еще никогда не видели».

Но девайс работал: склыдвал / вычитал / умножал / делил. Шпоры залил через программатор в память МК и понеслась.

За это время, к слову, я выучил часть билетов. Но вопрос с памятью все еще стоял остро. Итого было решено купить SD-карту, на нее залить txt со шпорами (выбрал этот формат так как писать-читать в файл очень просто впрямо в windows).

Ну что, шпоры на SD, а экзамен на носу, 80% билетов знаю. Как так? Когда надо они не учились, а теперь запомнились сами. Ну ладно, у нас другая цель: нужно подключить карту к МК. Дело непростое. Дело в том, что интерфейс взаимодействия там. Ну как сказать, если вы никогда не работали с картами памяти напрямую через подачу сигналов с учетом тайминага, стробирующего сигнала и прочей фигни, а еще и с учетом того, что SD карта может иметь несколько чипов с памятью в которые нужно писать правильно, то вам не понять. В итоге я угрохал где-то 3 сдэшки. Кажется я сбивал им основную программу. Не знаю как так получилось, но они стали работать только на чтение.

В итоге дней через 5 все получилось. Фотка того как подключал SD-шку:

код на калькуляторе игры. 1618328668195082880. код на калькуляторе игры фото. код на калькуляторе игры-1618328668195082880. картинка код на калькуляторе игры. картинка 1618328668195082880. После прочтения статьи о программируемом микрокалькуляторе на iOS на меня накатил такой приступ ностальгии, что я полез копаться в книжный шкаф, и, после продолжительного поиска, нашёл старую тетрадь с конспектами по программированию и самостоятельно разработанными играми.

Круто, что, едем дальше. Соответствие пикселей и символов задал сам. Была моя библиотека для CAVR, которая декодировала символы из txt и выводила каждый символ на экран. Кстати, каждый символ я нарисовал-закодировал «попиксельно», пришлось как всегда заморочиться.

И де, еще была проблема с выводом и прокруткой. Проишлось ползунок рисовать и делать алгоритм вывода части текста на экэкран (оказывается для этого в word «специальные» алгоритмы используются, но там нет ничего такого сложного).

В итоге калькулятор работал так, что есть 2 режима:

— шпаргалка (вызывается когда держишь точку более 2.5с)

Ну круто, что. Собираем все в корпус, только зачем? Билеты я знал. Что сделал: запрогал в калькулятор игру змейку и играл иногда. Про мой калькулятор мало кто знал кроме соседей. Ну а теперь, как говорится, по секрету всему свету 🙂 Конечно моя змейка не разошлась тиражом более чем 1 экземпляр, но я и этому очень рад 😀

Воодушевленый калькулятором у меня были платны собрать телефон или компьютер, даже знакомым ребятам предлагал. Но никому вообще не сдалось собирать телефоны или компьютеры кроме меня. Так что прикинув сколько усилий ушло на калькулятор, я все же решил притормозить коней и занялся исключительно разработкой ПО.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *