mirror of
https://github.com/Polprzewodnikowy/SummerCart64.git
synced 2024-11-22 14:09:16 +01:00
421d0438f3
This PR completely removes `task.c / task.h` from `sw/controller` STM32 code. Additionally, these changes were implemented: - Updated IPL3 - Added new diagnostic data (voltage and temperature) readout commands for USB and N64 - Fixed some issues with FlashRAM save type - Joybus timings were relaxed to accommodate communication with unsynchronized master controller (like _Datel Game Killer_, thanks @RWeick) - N64 embedded test program now waits for release of button press to proceed - Fixed issue where, in rare circumstances, I2C peripheral in STM32 would get locked-up on power-up - LED blinking behavior on SD card access was changed - LED blink duration on save writeback has been extended - Minor fixes through the entire of hardware abstraction layer for STM32 code - Primer now correctly detects issues with I2C bus during first time programming - `primer.py` script gives more meaningful error messages - Fixed bug where RTC time was always written on N64FlashcartMenu boot - sc64deployer now displays "Diagnostic data" instead of "MCU stack usage"
104 lines
5.6 KiB
C
104 lines
5.6 KiB
C
// Manually converted font "Dogica" from https://www.dafont.com/dogica.font
|
|
|
|
#include "font.h"
|
|
|
|
|
|
const uint8_t font_data[96][FONT_CHAR_BYTES] = {
|
|
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, },
|
|
{ 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x18, 0x00, },
|
|
{ 0x00, 0x6C, 0x6C, 0x36, 0x00, 0x00, 0x00, 0x00, },
|
|
{ 0x00, 0x6C, 0xFE, 0x6C, 0x6C, 0xFE, 0x6C, 0x00, },
|
|
{ 0x00, 0x7C, 0xD6, 0x16, 0x7C, 0xD0, 0xD6, 0x7C, },
|
|
{ 0x62, 0x35, 0x37, 0x1A, 0x58, 0xAC, 0xEC, 0x46, },
|
|
{ 0x1C, 0x36, 0x36, 0x1C, 0xF6, 0x66, 0xFC, 0x00, },
|
|
{ 0x00, 0x30, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, },
|
|
{ 0x30, 0x18, 0x18, 0x18, 0x18, 0x18, 0x30, 0x00, },
|
|
{ 0x18, 0x30, 0x30, 0x30, 0x30, 0x30, 0x18, 0x00, },
|
|
{ 0x00, 0x18, 0x7E, 0x3C, 0x7E, 0x18, 0x00, 0x00, },
|
|
{ 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, 0x00, 0x00, },
|
|
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x18, },
|
|
{ 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, },
|
|
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, },
|
|
{ 0x60, 0x60, 0x30, 0x30, 0x18, 0x18, 0x0C, 0x0C, },
|
|
{ 0x3C, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00, },
|
|
{ 0x18, 0x1E, 0x18, 0x18, 0x18, 0x18, 0x7E, 0x00, },
|
|
{ 0x3C, 0x66, 0x60, 0x30, 0x18, 0x0C, 0x7E, 0x00, },
|
|
{ 0x3E, 0x60, 0x60, 0x3C, 0x60, 0x60, 0x3E, 0x00, },
|
|
{ 0x30, 0x38, 0x3C, 0x36, 0x7E, 0x30, 0x30, 0x00, },
|
|
{ 0x7E, 0x06, 0x3E, 0x60, 0x60, 0x66, 0x3C, 0x00, },
|
|
{ 0x3C, 0x66, 0x06, 0x3E, 0x66, 0x66, 0x3C, 0x00, },
|
|
{ 0x7E, 0x66, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x00, },
|
|
{ 0x3C, 0x66, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00, },
|
|
{ 0x3C, 0x66, 0x66, 0x7C, 0x60, 0x30, 0x1C, 0x00, },
|
|
{ 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, },
|
|
{ 0x00, 0x00, 0x00, 0x30, 0x00, 0x30, 0x30, 0x18, },
|
|
{ 0x00, 0x30, 0x18, 0x0C, 0x18, 0x30, 0x00, 0x00, },
|
|
{ 0x00, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x00, 0x00, },
|
|
{ 0x00, 0x18, 0x30, 0x60, 0x30, 0x18, 0x00, 0x00, },
|
|
{ 0x3C, 0x66, 0x60, 0x38, 0x0C, 0x00, 0x18, 0x00, },
|
|
{ 0x3E, 0x63, 0x7F, 0x7B, 0x3F, 0xC3, 0x7E, 0x00, },
|
|
{ 0x3C, 0x66, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x00, },
|
|
{ 0x3E, 0x66, 0x66, 0x3E, 0x66, 0x66, 0x3E, 0x00, },
|
|
{ 0x3C, 0x66, 0x06, 0x06, 0x06, 0x66, 0x3C, 0x00, },
|
|
{ 0x3F, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3E, 0x00, },
|
|
{ 0x7E, 0x06, 0x06, 0x3E, 0x06, 0x06, 0x7E, 0x00, },
|
|
{ 0x7E, 0x06, 0x06, 0x3E, 0x06, 0x06, 0x06, 0x00, },
|
|
{ 0x7C, 0x06, 0x06, 0x76, 0x66, 0x66, 0x7C, 0x00, },
|
|
{ 0x66, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00, },
|
|
{ 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, },
|
|
{ 0x3E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x0E, 0x00, },
|
|
{ 0x66, 0x36, 0x1E, 0x1E, 0x36, 0x36, 0x66, 0x00, },
|
|
{ 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x7C, 0x00, },
|
|
{ 0xC6, 0xC6, 0xEE, 0xFE, 0xC6, 0xC6, 0xC6, 0x00, },
|
|
{ 0x66, 0x6E, 0x7E, 0x76, 0x66, 0x66, 0x66, 0x00, },
|
|
{ 0x3C, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00, },
|
|
{ 0x3E, 0x66, 0x66, 0x3E, 0x06, 0x06, 0x06, 0x00, },
|
|
{ 0x3C, 0x66, 0x66, 0x66, 0x6E, 0x36, 0x7C, 0x00, },
|
|
{ 0x3E, 0x66, 0x66, 0x3E, 0x36, 0x66, 0x66, 0x00, },
|
|
{ 0x3C, 0x66, 0x06, 0x3C, 0x60, 0x66, 0x3C, 0x00, },
|
|
{ 0x7E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, },
|
|
{ 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00, },
|
|
{ 0x66, 0x66, 0x66, 0x66, 0x3C, 0x3C, 0x18, 0x00, },
|
|
{ 0xC3, 0xC3, 0xDB, 0xDB, 0xDB, 0xFF, 0x66, 0x00, },
|
|
{ 0x66, 0x66, 0x3C, 0x18, 0x3C, 0x66, 0x66, 0x00, },
|
|
{ 0x66, 0x66, 0x66, 0x3C, 0x18, 0x18, 0x18, 0x00, },
|
|
{ 0x7E, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x7E, 0x00, },
|
|
{ 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x38, 0x00, },
|
|
{ 0x0C, 0x0C, 0x18, 0x18, 0x30, 0x30, 0x60, 0x60, },
|
|
{ 0x38, 0x30, 0x30, 0x30, 0x30, 0x30, 0x38, 0x00, },
|
|
{ 0x00, 0x38, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, },
|
|
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, },
|
|
{ 0x1C, 0x63, 0x63, 0x1C, 0x00, 0x00, 0x00, 0x00, },
|
|
{ 0x00, 0x3C, 0x60, 0x7C, 0x66, 0x66, 0x7C, 0x00, },
|
|
{ 0x06, 0x06, 0x3E, 0x66, 0x66, 0x66, 0x3E, 0x00, },
|
|
{ 0x00, 0x3C, 0x66, 0x06, 0x06, 0x06, 0x7C, 0x00, },
|
|
{ 0x60, 0x60, 0x7C, 0x66, 0x66, 0x66, 0x7C, 0x00, },
|
|
{ 0x00, 0x3C, 0x66, 0x7E, 0x06, 0x06, 0x7C, 0x00, },
|
|
{ 0x78, 0x0C, 0x0C, 0x3E, 0x0C, 0x0C, 0x0C, 0x00, },
|
|
{ 0x00, 0x7C, 0x66, 0x66, 0x66, 0x7C, 0x60, 0x3C, },
|
|
{ 0x06, 0x06, 0x3E, 0x6E, 0x66, 0x66, 0x66, 0x00, },
|
|
{ 0x18, 0x00, 0x1C, 0x18, 0x18, 0x18, 0x3C, 0x00, },
|
|
{ 0x00, 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18, 0x0C, },
|
|
{ 0x00, 0x66, 0x36, 0x1E, 0x1E, 0x36, 0x66, 0x00, },
|
|
{ 0x00, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x38, 0x00, },
|
|
{ 0x00, 0x7E, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, },
|
|
{ 0x00, 0x38, 0x6E, 0x66, 0x66, 0x66, 0x66, 0x00, },
|
|
{ 0x00, 0x3C, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00, },
|
|
{ 0x00, 0x3E, 0x66, 0x66, 0x66, 0x3E, 0x06, 0x06, },
|
|
{ 0x00, 0x7C, 0x66, 0x66, 0x66, 0x7C, 0x60, 0x60, },
|
|
{ 0x00, 0x78, 0x1C, 0x0C, 0x0C, 0x0C, 0x0C, 0x00, },
|
|
{ 0x00, 0x3C, 0x06, 0x3C, 0x60, 0x66, 0x3C, 0x00, },
|
|
{ 0x0C, 0x0C, 0x7C, 0x0C, 0x0C, 0x0C, 0x78, 0x00, },
|
|
{ 0x00, 0x66, 0x66, 0x66, 0x66, 0x76, 0x7C, 0x00, },
|
|
{ 0x00, 0x66, 0x66, 0x66, 0x3C, 0x3C, 0x18, 0x00, },
|
|
{ 0x00, 0xC0, 0xDB, 0xDB, 0xDB, 0xDB, 0x7E, 0x00, },
|
|
{ 0x00, 0x66, 0x3C, 0x18, 0x18, 0x3C, 0x66, 0x00, },
|
|
{ 0x00, 0x6C, 0x6C, 0x6C, 0x38, 0x30, 0x1C, 0x00, },
|
|
{ 0x00, 0x7C, 0x60, 0x30, 0x18, 0x0C, 0x7C, 0x00, },
|
|
{ 0x30, 0x58, 0x08, 0x0C, 0x0C, 0x08, 0x58, 0x30, },
|
|
{ 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, },
|
|
{ 0x18, 0x34, 0x20, 0x60, 0x60, 0x20, 0x34, 0x18, },
|
|
{ 0x00, 0x00, 0x00, 0xDC, 0x76, 0x00, 0x00, 0x00, },
|
|
{ 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, },
|
|
};
|