Сводный список записей блога

--->>>> Сводный список записей блога <<<<---

29 апреля 2023

Слово о паяльнике.


Картинка из интернета

За окном заканчивался 1985 год. В очередной раз сдохла лампочка в елочной гирлянде. Отцу надоело паять эти лампочки и он научил паять меня. С этого все и началось.

Первый мой паяльник - это была 100-ваттная бандура на 220 вольт. И размером в 2 раза больше, нежели на картинке выше. Что то типа ЭПСН-100. 

И были какие то простые схемы из серии мигалка на двух транзисторах или имитатор пения птиц... На транзисторах МП39-МП42, конденсаторах К50-6 и резисторах МЛТ-0.25. Как раз под стать паяльнику.

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

24 апреля 2023

Финальная версия прошивки. Работа с программами на SD-карте.

Все статьи по данной игровой консоли - по тегу G-BASIC


Настала пора обновляться. Текущая версия прошивки - 1.0.511. Брать тут.

Обновление большое, важное. И обязательное. Обновление затрагивает как компилятор, так и виртуальную машину. Обновился так же компилятор и отладчик для ПК.

Ранее скомпилированные программы могут работать неправильно. Их нужно повторно скомпилировать в новой версии компилятора. 

В обновлении исправлено несколько старых ошибок, добавлена куча новых :)

Заодно проведен тест времени работы консоли от литиевого аккумулятора емкостью 450 китайских мА*ч.
В режиме TURBO 0 консоль продержалась 4 часа 33 минуты. В режиме TURBO 3 - 3 часа 38 минут. 

Ниже описаны встроенные программы. Так же описан принцип сохранения и поиска программ на SD-карточке.

03 апреля 2023

G-BASIC Console. Финальное железо.

Все статьи по данной игровой консоли - по тегу G-BASIC

UPD: Вот тут обновление прошивки и дополнительное описание работы



Ну вот и настала пора готового устройства.

Аппаратная часть построена на базе отладочной платы STM32F411 и TFT-дисплея 240х240 пикселей с диагональю 1.54". 
Управление - 8 кнопок. Обратная связь - пьезопищалка и вибромотор. Программы хранятся на микроSD-карточке. Питание - литиевый аккумулятор.

Программная часть: Встроенный компилятор языка BASIC и среда выполнения скомпилированных программ. Доступно 60 000 байт для программы и 60 000 байт ОЗУ для переменных. Управление вибромотором, генератором звука, яркостью подсветки дисплея и скоростью работы процессора непосредственно из программы. Доступ из программы к файловой системе SD-карточки - чтение-запись данных, загрузка изображений в ОЗУ, прямая отрисовка изображений из файла непосредственно в дисплей, запуск других программ.

Оболочка: Поддержка категорий программ, возможность показа краткого описания и/или изображения для каждой программы. 
Глобальные настройки яркости дисплея, громкости звуков, запрет вибромотора. 
Автовыключение через 1..30 минут при отсутствии нажатий на кнопки. 
Настройка даты-времени (для работы с датой создания/изменения файлов).

Аппаратная часть - моя, программная - совместно с Fluffy.

Изображения в формате RGB565

Все статьи по данной игровой консоли - по тегу G-BASIC


Примененный в G-Basic Console дисплей оперирует 18- или 16-битным цветом. 18-битный цвет - по 6 бит на каждую компоненту RGB хранить неудобно. Поэтому для простых применений дисплей поддерживает работу с 16-битным цветом - на компоненту G отводится по прежнему 6 бит, а на компоненты R и B - по 5 бит. Коротко такой формат обозначается RGB565. 

Соответственно, вся работа с изображениями и цветом в консоли идет в 16-битном формате. Как задание цвета для пера, так и хранение спрайтов в памяти консоли. Для легкой и быстрой работы с изображениями было принято решение хранить в файлах преобразованные к 16-битному цвету изображения.

Ниже - описание формата файла и утилиты конвертации изображений в такой файл.