Christian Kroll
12 years ago
19 changed files with 1873 additions and 2 deletions
@ -0,0 +1,177 @@ |
|||
#include "../config.h" |
|||
#include "../makros.h" |
|||
|
|||
#include <avr/interrupt.h> |
|||
#include <avr/io.h> |
|||
#include <avr/wdt.h> |
|||
|
|||
#include "borg_hw.h" |
|||
|
|||
/*
|
|||
// those macros get defined via menuconfig, now
|
|||
|
|||
#define ROWPORT PORTB |
|||
#define ROWDDR DDRB |
|||
|
|||
#define COLPORT PORTD |
|||
#define COLDDR DDRD |
|||
|
|||
#define PIN_DATA PC4 |
|||
#define PIN_CLK PC6 //active low
|
|||
#define PIN_LINE_EN PC5 //active low
|
|||
|
|||
EN = 3 PD3 |
|||
RT 4 PD4 |
|||
GN 5 PD5 |
|||
Latch 6 PD6 |
|||
Clk 7 PD7 |
|||
Row a-d 10-13 PB2-5 |
|||
|
|||
Clk 13 PB5 |
|||
GN 11 PB3 |
|||
|
|||
|
|||
Row d-a A3-A0 PC3-0 |
|||
|
|||
*/ |
|||
|
|||
#define D_EN_H() PORTD |= (1<<PD3) |
|||
#define D_EN_L() PORTD &= ~(1<<PD3) |
|||
|
|||
#define D_RT_H() PORTD |= (1<<PD4) |
|||
#define D_RT_L() PORTD &= ~(1<<PD4) |
|||
|
|||
#define D_GN_H() PORTB |= (1<<PB3) |
|||
#define D_GN_L() PORTB &= ~(1<<PB3) |
|||
|
|||
#define D_LATCH_H() PORTD |= (1<<PD6) |
|||
#define D_LATCH_L() PORTD &= ~(1<<PD6) |
|||
|
|||
#define D_CLK_H() PORTB |= (1<<PB5) |
|||
#define D_CLK_L() PORTB &= ~(1<<PB5) |
|||
|
|||
#define ROW_PORT PORTC |
|||
|
|||
#define COLDDR DDR(COLPORT) |
|||
#define ROWDDR DDR(ROWPORT) |
|||
|
|||
unsigned char pixmap[NUMPLANE][NUM_ROWS][LINEBYTES]; |
|||
|
|||
inline void rowshow(unsigned char row, unsigned char plane) { |
|||
D_EN_L(); //blank display
|
|||
|
|||
// ROWPORT = (ROWPORT & 0xF8) | row;
|
|||
ROW_PORT = (ROW_PORT & 0xf0) | row; |
|||
|
|||
unsigned char d, x; |
|||
signed char b; |
|||
for (b = LINEBYTES - 1; b >= 0; b--) { |
|||
d = pixmap[plane][row][b]; |
|||
while (!(SPSR & (1 << SPIF))) |
|||
; |
|||
SPDR = ~d; |
|||
/*
|
|||
|
|||
for (x = 0; x < 8; x++) { |
|||
if (d & 0x80) { |
|||
D_GN_L(); |
|||
} else { |
|||
D_GN_H(); |
|||
} |
|||
d <<= 1; |
|||
D_CLK_L(); |
|||
D_CLK_H(); |
|||
} |
|||
*/ |
|||
} |
|||
while (!(SPSR & (1 << SPIF))); |
|||
|
|||
D_LATCH_H(); |
|||
asm volatile ("nop"); |
|||
D_LATCH_L(); |
|||
|
|||
D_EN_H(); // unblank display
|
|||
} |
|||
|
|||
ISR( TIMER0_COMPA_vect) { |
|||
static unsigned char plane = 0; |
|||
static unsigned char row = 0; |
|||
|
|||
if (row == 0) { |
|||
switch (plane) { |
|||
case 0: |
|||
OCR0A = 7; |
|||
break; |
|||
case 1: |
|||
OCR0A = 20; |
|||
break; |
|||
case 2: |
|||
OCR0A = 40; |
|||
} |
|||
} |
|||
|
|||
rowshow(row, plane); |
|||
|
|||
if (++row == NUM_ROWS) { |
|||
row = 0; |
|||
if (++plane == NUMPLANE) |
|||
plane = 0; |
|||
} |
|||
wdt_reset(); |
|||
} |
|||
|
|||
void timer0_on() { |
|||
/* TCCR0: FOC0 WGM00 COM01 COM00 WGM01 CS02 CS01 CS00
|
|||
CS02 CS01 CS00 |
|||
0 0 0 stop |
|||
0 0 1 clk |
|||
0 1 0 clk/8 |
|||
0 1 1 clk/64 |
|||
1 0 0 clk/256 |
|||
1 0 1 clk/1024 |
|||
|
|||
*/ |
|||
// CTC Mode, clk/256
|
|||
TCCR0A = 0x02; |
|||
TCCR0B = 0x04; |
|||
TCNT0 = 0; // reset timer
|
|||
OCR0A = 0x30; // compare with this value
|
|||
TIMSK0 = 0x02; // compare match Interrupt on
|
|||
} |
|||
|
|||
void timer0_off() { |
|||
cli(); |
|||
|
|||
D_EN_L(); //blank display
|
|||
|
|||
TCCR0B = 0x00; |
|||
sei(); |
|||
} |
|||
|
|||
void watchdog_enable() { |
|||
wdt_reset(); |
|||
wdt_enable(0x00); // 17ms
|
|||
|
|||
} |
|||
|
|||
void borg_hw_init() { |
|||
// COLPORT |= (1 << PIN_CLK) | (1 << PIN_LINE_EN);
|
|||
// COLDDR |= (1 << PIN_CLK) | (1 << PIN_LINE_EN) | (1 << PIN_DATA);
|
|||
|
|||
// ROWDDR |= 0x07;
|
|||
|
|||
DDRD |= 0xf8; |
|||
DDRB = 0x2f; |
|||
DDRC |= 0x0f; |
|||
|
|||
D_RT_H(); |
|||
D_GN_H(); |
|||
|
|||
SPCR = 0x50; |
|||
SPSR |= (1 << SPI2X); |
|||
SPDR = 0; |
|||
|
|||
watchdog_enable(); |
|||
timer0_on(); |
|||
} |
|||
|
@ -0,0 +1,344 @@ |
|||
#include "../config.h" |
|||
#include "../makros.h" |
|||
|
|||
#include <avr/interrupt.h> |
|||
#include <avr/io.h> |
|||
#include <avr/wdt.h> |
|||
#include "borg_hw.h" |
|||
|
|||
/*
|
|||
// those macros get defined via menuconfig, now
|
|||
|
|||
// 8x 74HC595 Shift-Registers on SPI with
|
|||
// additional load-pin
|
|||
|
|||
// 4x ROW-Drivers
|
|||
|
|||
*/ |
|||
|
|||
#define ROW1_ON() (PORTC &= ~(_BV(1))) |
|||
#define ROW2_ON() (PORTA &= ~(_BV(1))) |
|||
#define ROW3_ON() (PORTA &= ~(_BV(2))) |
|||
#define ROW4_ON() (PORTC &= ~(_BV(2))) |
|||
|
|||
#define ROW1_OFF() (PORTC |= (_BV(1))) |
|||
#define ROW2_OFF() (PORTA |= (_BV(1))) |
|||
#define ROW3_OFF() (PORTA |= (_BV(2))) |
|||
#define ROW4_OFF() (PORTC |= (_BV(2))) |
|||
|
|||
#define LOAD_OFF() (PORTA &= ~(_BV(4))) |
|||
#define LOAD_ON() (PORTA |= (_BV(4))) |
|||
|
|||
#define MUX_ROWS 4 |
|||
|
|||
#if defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644__) |
|||
/* more ifdef magic :-( */ |
|||
#define OCR0 OCR0A |
|||
#define SIG_OUTPUT_COMPARE0 SIG_OUTPUT_COMPARE0A |
|||
#endif |
|||
|
|||
#ifdef HC165_JOYSTICK_SUPPORT |
|||
extern volatile uint8_t hc165_joystick_val; |
|||
#endif |
|||
|
|||
// buffer which holds the currently shown frame
|
|||
unsigned char pixmap[NUMPLANE][NUM_ROWS][LINEBYTES]; |
|||
|
|||
unsigned char rowbuf[4][8]; |
|||
|
|||
static inline unsigned short bitgeschubse1(unsigned short x_in) { |
|||
unsigned short result; |
|||
//
|
|||
asm volatile ( |
|||
"bst %A1, 0" "\n\t" |
|||
"bld %A0, 7" "\n\t" |
|||
"bst %A1, 1" "\n\t" |
|||
"bld %A0, 5" "\n\t" |
|||
"bst %A1, 2" "\n\t" |
|||
"bld %A0, 3" "\n\t" |
|||
"bst %A1, 3" "\n\t" |
|||
"bld %A0, 1" "\n\t" |
|||
|
|||
"bst %A1, 4" "\n\t" |
|||
"bld %B0, 7" "\n\t" |
|||
"bst %A1, 5" "\n\t" |
|||
"bld %B0, 5" "\n\t" |
|||
"bst %A1, 6" "\n\t" |
|||
"bld %B0, 3" "\n\t" |
|||
"bst %A1, 7" "\n\t" |
|||
"bld %B0, 1" "\n\t" |
|||
|
|||
"bst %B1, 4" "\n\t" |
|||
"bld %B0, 6" "\n\t" |
|||
"bst %B1, 5" "\n\t" |
|||
"bld %B0, 4" "\n\t" |
|||
"bst %B1, 6" "\n\t" |
|||
"bld %B0, 2" "\n\t" |
|||
"bst %B1, 7" "\n\t" |
|||
"bld %B0, 0" "\n\t" |
|||
|
|||
"bst %B1, 0" "\n\t" |
|||
"bld %A0, 6" "\n\t" |
|||
"bst %B1, 1" "\n\t" |
|||
"bld %A0, 4" "\n\t" |
|||
"bst %B1, 2" "\n\t" |
|||
"bld %A0, 2" "\n\t" |
|||
"bst %B1, 3" "\n\t" |
|||
"bld %A0, 0" |
|||
: "=&r" (result) |
|||
: "r" (x_in) |
|||
); |
|||
|
|||
return result; |
|||
} |
|||
|
|||
static inline unsigned short bitgeschubse2(unsigned short x_in) { |
|||
unsigned short result; |
|||
//
|
|||
asm volatile ( |
|||
"bst %A1, 0" "\n\t" |
|||
"bld %A0, 1" "\n\t" |
|||
"bst %A1, 1" "\n\t" |
|||
"bld %A0, 3" "\n\t" |
|||
"bst %A1, 2" "\n\t" |
|||
"bld %A0, 5" "\n\t" |
|||
"bst %A1, 3" "\n\t" |
|||
"bld %A0, 7" "\n\t" |
|||
|
|||
"bst %A1, 4" "\n\t" |
|||
"bld %B0, 1" "\n\t" |
|||
"bst %A1, 5" "\n\t" |
|||
"bld %B0, 3" "\n\t" |
|||
"bst %A1, 6" "\n\t" |
|||
"bld %B0, 5" "\n\t" |
|||
"bst %A1, 7" "\n\t" |
|||
"bld %B0, 7" "\n\t" |
|||
|
|||
"bst %B1, 4" "\n\t" |
|||
"bld %B0, 0" "\n\t" |
|||
"bst %B1, 5" "\n\t" |
|||
"bld %B0, 2" "\n\t" |
|||
"bst %B1, 6" "\n\t" |
|||
"bld %B0, 4" "\n\t" |
|||
"bst %B1, 7" "\n\t" |
|||
"bld %B0, 6" "\n\t" |
|||
|
|||
"bst %B1, 0" "\n\t" |
|||
"bld %A0, 0" "\n\t" |
|||
"bst %B1, 1" "\n\t" |
|||
"bld %A0, 2" "\n\t" |
|||
"bst %B1, 2" "\n\t" |
|||
"bld %A0, 4" "\n\t" |
|||
"bst %B1, 3" "\n\t" |
|||
"bld %A0, 6" |
|||
: "=&r" (result) |
|||
: "r" (x_in) |
|||
); |
|||
|
|||
return result; |
|||
} |
|||
|
|||
// show a row
|
|||
static void rowshow(unsigned char row, unsigned char plane) { |
|||
// depending on the currently drawn plane, display the row for a specific
|
|||
// amount of time
|
|||
static unsigned char const ocr_table[] = { 3, 4, 22 }; |
|||
unsigned char i; |
|||
union u { |
|||
unsigned short sValue; |
|||
unsigned char cValue[2]; |
|||
} u1, u2; |
|||
|
|||
unsigned char *rowpointer = &rowbuf[row][0]; |
|||
|
|||
OCR0 = ocr_table[plane]; |
|||
|
|||
#ifdef PROJECTION_MODE |
|||
// upper half
|
|||
u1.cValue[0] = pixmap[plane][row][0]; |
|||
u1.cValue[1] = pixmap[plane][row + 4][0]; |
|||
u2.sValue = bitgeschubse2(u1.sValue); |
|||
rowbuf[row][3] = u2.cValue[0]; |
|||
rowbuf[row][2] = u2.cValue[1]; |
|||
|
|||
u1.cValue[0] = pixmap[plane][row][1]; |
|||
u1.cValue[1] = pixmap[plane][row + 4][1]; |
|||
u2.sValue = bitgeschubse2(u1.sValue); |
|||
rowbuf[row][1] = u2.cValue[0]; |
|||
rowbuf[row][0] = u2.cValue[1]; |
|||
|
|||
// lower half
|
|||
u1.cValue[0] = pixmap[plane][row + 8][0]; |
|||
u1.cValue[1] = pixmap[plane][row + 12][0]; |
|||
u2.sValue = bitgeschubse1(u1.sValue); |
|||
rowbuf[row][4] = u2.cValue[0]; |
|||
rowbuf[row][5] = u2.cValue[1]; |
|||
|
|||
u1.cValue[0] = pixmap[plane][row + 8][1]; |
|||
u1.cValue[1] = pixmap[plane][row + 12][1]; |
|||
u2.sValue = bitgeschubse1(u1.sValue); |
|||
rowbuf[row][6] = u2.cValue[0]; |
|||
rowbuf[row][7] = u2.cValue[1]; |
|||
|
|||
#else |
|||
// upper half
|
|||
u1.cValue[0] = pixmap[plane][row][0]; |
|||
u1.cValue[1] = pixmap[plane][row+4][0]; |
|||
u2.sValue = bitgeschubse1(u1.sValue); |
|||
rowbuf[row][0] = u2.cValue[0]; |
|||
rowbuf[row][1] = u2.cValue[1]; |
|||
|
|||
u1.cValue[0] = pixmap[plane][row][1]; |
|||
u1.cValue[1] = pixmap[plane][row+4][1]; |
|||
u2.sValue = bitgeschubse1(u1.sValue); |
|||
rowbuf[row][2] = u2.cValue[0]; |
|||
rowbuf[row][3] = u2.cValue[1]; |
|||
|
|||
// lower half
|
|||
u1.cValue[0] = pixmap[plane][row+8][0]; |
|||
u1.cValue[1] = pixmap[plane][row+12][0]; |
|||
u2.sValue = bitgeschubse2(u1.sValue); |
|||
rowbuf[row][7] = u2.cValue[0]; |
|||
rowbuf[row][6] = u2.cValue[1]; |
|||
|
|||
u1.cValue[0] = pixmap[plane][row+8][1]; |
|||
u1.cValue[1] = pixmap[plane][row+12][1]; |
|||
u2.sValue = bitgeschubse2(u1.sValue); |
|||
rowbuf[row][5] = u2.cValue[0]; |
|||
rowbuf[row][4] = u2.cValue[1]; |
|||
#endif |
|||
|
|||
#ifdef HC165_JOYSTICK_SUPPORT |
|||
HC165_JOYSTICK_PORT_LOAD &= ~(1 << HC165_JOYSTICK_BIT_LOAD); |
|||
asm volatile("nop\r\t"); |
|||
HC165_JOYSTICK_PORT_LOAD |= (1 << HC165_JOYSTICK_BIT_LOAD); |
|||
#endif |
|||
|
|||
ROW1_OFF(); |
|||
ROW2_OFF(); |
|||
ROW3_OFF(); |
|||
ROW4_OFF(); |
|||
|
|||
i = 8; |
|||
while (i--) { |
|||
SPDR = *(rowpointer++); |
|||
while (!(SPSR & _BV(SPIF))) { |
|||
} |
|||
#ifdef HC165_JOYSTICK_SUPPORT |
|||
if (i == 7) |
|||
hc165_joystick_val = SPDR; |
|||
#endif |
|||
} |
|||
|
|||
/* for(i=0;i<10;i++) {
|
|||
nop(); |
|||
} */ |
|||
|
|||
LOAD_ON(); |
|||
|
|||
LOAD_OFF(); |
|||
|
|||
switch (row) { |
|||
case 0: |
|||
ROW4_ON(); |
|||
break; |
|||
case 1: |
|||
ROW3_ON(); |
|||
break; |
|||
case 2: |
|||
ROW2_ON(); |
|||
break; |
|||
case 3: |
|||
ROW1_ON(); |
|||
break; |
|||
} |
|||
} |
|||
|
|||
// depending on the plane this interrupt triggers at 50 kHz, 31.25 kHz or
|
|||
// 12.5 kHz
|
|||
ISR( TIMER0_COMP_vect) { |
|||
static unsigned char plane = 0; |
|||
static unsigned char row = 0; |
|||
|
|||
// reset watchdog
|
|||
wdt_reset(); |
|||
|
|||
// increment both row and plane
|
|||
if (++plane == NUMPLANE) { |
|||
plane = 0; |
|||
if (++row == MUX_ROWS) { |
|||
row = 0; |
|||
} |
|||
} |
|||
|
|||
// output current row according to current plane
|
|||
rowshow(row, plane); |
|||
} |
|||
|
|||
void timer0_off() { |
|||
cli(); |
|||
|
|||
ROW1_OFF(); |
|||
ROW2_OFF(); |
|||
ROW3_OFF(); |
|||
ROW4_OFF(); |
|||
|
|||
#if defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644__) |
|||
TCCR0A = 0x00; |
|||
TCCR0B = 0x00; |
|||
#else |
|||
|
|||
TCCR0 = 0x00; |
|||
#endif |
|||
sei(); |
|||
} |
|||
|
|||
// initialize timer which triggers the interrupt
|
|||
static void timer0_on() { |
|||
/* TCCR0: FOC0 WGM00 COM01 COM00 WGM01 CS02 CS01 CS00
|
|||
CS02 CS01 CS00 |
|||
0 0 0 stop |
|||
0 0 1 clk |
|||
0 1 0 clk/8 |
|||
0 1 1 clk/64 |
|||
1 0 0 clk/256 |
|||
1 0 1 clk/1024 |
|||
*/ |
|||
|
|||
#if defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644__) |
|||
TCCR0A = 0x02; // CTC Mode
|
|||
TCCR0B = 0x04; // clk/256
|
|||
TCNT0 = 0; // reset timer
|
|||
OCR0 = 20; // compare with this value
|
|||
TIMSK0 = 0x02; // compare match Interrupt on
|
|||
#else |
|||
TCCR0 = 0x0C; // CTC Mode, clk/256
|
|||
TCNT0 = 0; // reset timer
|
|||
OCR0 = 20; // compare with this value
|
|||
TIMSK = 0x02; // compare match Interrupt on
|
|||
#endif |
|||
} |
|||
|
|||
void borg_hw_init() { |
|||
PORTA |= ((1 << 1) | (1 << 2)); // ROW2, ROW3, LOAD
|
|||
PORTA &= ~((1 << 4)); |
|||
PORTB |= ((1 << 4) | (1 << 5) | (1 << 6) | (1 << 7)); // MOSI, MISO, SCK
|
|||
PORTC |= ((1 << 1) | (1 << 2)); // ROW1, ROW4
|
|||
PORTD |= ((1 << 0) | (1 << 1)); // RxD, TxD
|
|||
|
|||
DDRA |= ((1 << 1) | (1 << 2) | (1 << 4)); // 1 = Output
|
|||
DDRB |= ((1 << 4) | (1 << 5) | (1 << 7)); |
|||
DDRB &= ~((1 << 6)); |
|||
DDRC |= ((1 << 1) | (1 << 2)); |
|||
DDRD |= ((1 << 1)); |
|||
DDRD &= ~((1 << 0)); |
|||
|
|||
SPCR = 0b01010000; |
|||
SPSR = 0x01; |
|||
|
|||
timer0_on(); |
|||
|
|||
// activate watchdog timer
|
|||
wdt_reset(); |
|||
wdt_enable(0x00); // 17ms watchdog
|
|||
} |
@ -0,0 +1,55 @@ |
|||
mainmenu_option next_comment |
|||
comment "Laufschrift-Borg Jochen port setup" |
|||
|
|||
|
|||
choice 'port for row select' \ |
|||
"PORTA PORTA \ |
|||
PORTB PORTB \ |
|||
PORTC PORTC \ |
|||
PORTD PORTD" \ |
|||
'PORTB' ROWPORT |
|||
|
|||
|
|||
choice 'Column shiftregister Port' \ |
|||
"PORTA PORTA \ |
|||
PORTB PORTB \ |
|||
PORTC PORTC \ |
|||
PORTD PORTD" \ |
|||
'PORTD' COLPORT |
|||
|
|||
comment "pin numbers on shiftregister port" |
|||
|
|||
choice 'CLK Pin' \ |
|||
"Pin0 0 \ |
|||
Pin1 1 \ |
|||
Pin2 2 \ |
|||
Pin3 3 \ |
|||
Pin4 4 \ |
|||
Pin5 5 \ |
|||
Pin6 6 \ |
|||
Pin7 7" \ |
|||
'Pin6' PIN_CLK |
|||
|
|||
choice 'DATA Pin' \ |
|||
"Pin0 0 \ |
|||
Pin1 1 \ |
|||
Pin2 2 \ |
|||
Pin3 3 \ |
|||
Pin4 4 \ |
|||
Pin5 5 \ |
|||
Pin6 6 \ |
|||
Pin7 7" \ |
|||
'Pin4' PIN_DATA |
|||
|
|||
choice 'LINE_EN Pin' \ |
|||
"Pin0 0 \ |
|||
Pin1 1 \ |
|||
Pin2 2 \ |
|||
Pin3 3 \ |
|||
Pin4 4 \ |
|||
Pin5 5 \ |
|||
Pin6 6 \ |
|||
Pin7 7" \ |
|||
'Pin5' PIN_LINE_EN |
|||
|
|||
endmenu |
@ -0,0 +1,11 @@ |
|||
mainmenu_option next_comment |
|||
comment "LedBrett setup" |
|||
|
|||
comment "fixing hardwareproblems in software" |
|||
|
|||
|
|||
bool "projection mode (mirrored)" PROJECTION_MODE n |
|||
|
|||
|
|||
|
|||
endmenu |
@ -0,0 +1,14 @@ |
|||
#include <avr/io.h> |
|||
#include "../makros.h" |
|||
#include "../config.h" |
|||
|
|||
#define HC165_JOYSTICK_DDR_LOAD DDR(HC165_JOYSTICK_PORT_LOAD) |
|||
volatile volatile uint8_t hc165_joystick_val; |
|||
// unsigned char waitForFire;
|
|||
|
|||
void joy_init(){ |
|||
HC165_JOYSTICK_PORT_LOAD |= (1<<HC165_JOYSTICK_BIT_LOAD); |
|||
HC165_JOYSTICK_DDR_LOAD |= (1<<HC165_JOYSTICK_BIT_LOAD); |
|||
} |
|||
|
|||
|
@ -0,0 +1,123 @@ |
|||
# |
|||
# Automatically generated by make menuconfig: don't edit |
|||
# |
|||
|
|||
# |
|||
# General Setup |
|||
# |
|||
MCU=atmega328 |
|||
FREQ=16000000 |
|||
|
|||
# |
|||
# Borg Hardware |
|||
# |
|||
NUM_ROWS=8 |
|||
NUM_COLS=80 |
|||
NUMPLANE=3 |
|||
BORG_HW=HW_BORG_LSJO |
|||
|
|||
# |
|||
# Laufschrift-Borg Jochen port setup |
|||
# |
|||
ROWPORT=PORTD |
|||
COLPORT=PORTD |
|||
PIN_CLK=6 |
|||
PIN_DATA=7 |
|||
PIN_LINE_EN=5 |
|||
|
|||
# |
|||
# Features |
|||
# |
|||
RANDOM_SUPPORT=y |
|||
# LAP_TIME_EXTENSION is not set |
|||
SCROLLTEXT_SUPPORT=y |
|||
SCROLLTEXT_FONT=FONT_C64 |
|||
SCROLLTEXT_BUFFER_SIZE=128 |
|||
SCROLL_X_SPEED=10 |
|||
SCROLL_Y_SPEED=20 |
|||
SCROLLTEXT_TEXT="</#COMMODORE C64 - All your base are belong to us!!!" |
|||
# RFM12_SUPPORT is not set |
|||
# JOYSTICK_SUPPORT is not set |
|||
# CAN_SUPPORT is not set |
|||
# MENU_SUPPORT is not set |
|||
|
|||
# |
|||
# Games |
|||
# |
|||
# GAME_TETRIS_CORE is not set |
|||
# GAME_TETRIS is not set |
|||
# GAME_BASTET is not set |
|||
# GAME_TETRIS_FP is not set |
|||
# GAME_SPACE_INVADERS is not set |
|||
# GAME_SNAKE is not set |
|||
# GAME_BREAKOUT is not set |
|||
|
|||
# |
|||
# Animations |
|||
# |
|||
ANIMATION_SCROLLTEXT=y |
|||
ANIMATION_SPIRAL=y |
|||
SPIRAL_DELAY=5 |
|||
# ANIMATION_JOERN1 is not set |
|||
ANIMATION_SNAKE=y |
|||
SNAKE_CYCLE_DELAY=40 |
|||
SNAKE_TERMINATION_DELAY=30 |
|||
SNAKE_MAX_LENGTH=64 |
|||
SNAKE_MAX_APPLES=10 |
|||
# ANIMATION_CHECKERBOARD is not set |
|||
ANIMATION_FIRE=y |
|||
FIRE_S=30 |
|||
FIRE_N=5 |
|||
FIRE_DIV=44 |
|||
FIRE_DELAY=50 |
|||
FIRE_CYCLES=400 |
|||
ANIMATION_MATRIX=y |
|||
MATRIX_STREAMER_NUM=30 |
|||
MATRIX_CYCLES=500 |
|||
MATRIX_DELAY=60 |
|||
ANIMATION_RANDOM_BRIGHT=y |
|||
# ANIMATION_STONEFLY is not set |
|||
ANIMATION_FLYINGDOTS=y |
|||
ANIMATION_GAMEOFLIFE=y |
|||
GOL_DELAY=10 |
|||
GOL_CYCLES=360 |
|||
# ANIMATION_BREAKOUT is not set |
|||
# ANIMATION_MHERWEG is not set |
|||
# ANIMATION_LTN_ANT is not set |
|||
# ANIMATION_TIME is not set |
|||
TIME_MASTER_ADDR=0x00 |
|||
TIME_UPDATE_TIMEOUT=23 |
|||
ANIMATION_BMSCROLLER=y |
|||
# ANIMATION_LABORLOGO is not set |
|||
# ANIMATION_AMPHIBIAN is not set |
|||
# ANIMATION_LOGO_OOS is not set |
|||
ANIMATION_FAIRYDUST=y |
|||
# ANIMATION_IDEENPARK is not set |
|||
|
|||
# |
|||
# Fixed-point math patterns |
|||
# |
|||
# ANIMATION_PLASMA is not set |
|||
FP_PLASMA_DELAY=1 |
|||
# ANIMATION_PSYCHEDELIC is not set |
|||
FP_PSYCHO_DELAY=15 |
|||
# ANIMATION_BLACKHOLE is not set |
|||
# ANIMATION_SQUARES is not set |
|||
# ANIMATION_TESTS is not set |
|||
# ANIMATION_OFF is not set |
|||
|
|||
# |
|||
# small Animations |
|||
# |
|||
# SMALLANIMATION_ROWWALK is not set |
|||
SMALLANIMATION_ROWWALK_SPEED=50 |
|||
SMALLANIMATION_ROWWALK_COUNT=10 |
|||
# SMALLANIMATION_COLWALK is not set |
|||
SMALLANIMATION_COLWALK_SPEED=50 |
|||
SMALLANIMATION_COLWALK_COUNT=10 |
|||
# SMALLANIMATION_ROWBOUNCE is not set |
|||
SMALLANIMATION_ROWBOUNCE_SPEED=50 |
|||
SMALLANIMATION_ROWBOUNCE_COUNT=10 |
|||
# SMALLANIMATION_COLBOUNCE is not set |
|||
SMALLANIMATION_COLBOUNCE_SPEED=50 |
|||
SMALLANIMATION_COLBOUNCE_COUNT=10 |
@ -0,0 +1,117 @@ |
|||
# |
|||
# Automatically generated by make menuconfig: don't edit |
|||
# |
|||
|
|||
# |
|||
# General Setup |
|||
# |
|||
MCU=atmega32 |
|||
FREQ=16000000 |
|||
|
|||
# |
|||
# Borg Hardware |
|||
# |
|||
NUM_ROWS=16 |
|||
NUM_COLS=16 |
|||
NUMPLANE=3 |
|||
BORG_HW=HW_LEDBRETT |
|||
|
|||
# |
|||
# LedBrett setup |
|||
# |
|||
PROJECTION_MODE=y |
|||
|
|||
# |
|||
# Features |
|||
# |
|||
RANDOM_SUPPORT=y |
|||
# LAP_TIME_EXTENSION is not set |
|||
SCROLLTEXT_SUPPORT=y |
|||
SCROLLTEXT_FONT=FONT_ARIAL8 |
|||
SCROLLTEXT_BUFFER_SIZE=128 |
|||
SCROLL_X_SPEED=20 |
|||
SCROLL_Y_SPEED=20 |
|||
SCROLLTEXT_TEXT="</#www.hackerspace-ffm.de" |
|||
# RFM12_SUPPORT is not set |
|||
JOYSTICK_SUPPORT=y |
|||
# PARALLEL_JOYSTICK_SUPPORT is not set |
|||
# NES_PAD_SUPPORT is not set |
|||
# RFM12_JOYSTICK_SUPPORT is not set |
|||
HC165_JOYSTICK_SUPPORT=y |
|||
HC165_JOYSTICK_PORT_LOAD=PORTD |
|||
HC165_JOYSTICK_BIT_LOAD=2 |
|||
# CAN_SUPPORT is not set |
|||
MENU_SUPPORT=y |
|||
|
|||
# |
|||
# Games |
|||
# |
|||
GAME_TETRIS_CORE=y |
|||
GAME_TETRIS=y |
|||
# GAME_BASTET is not set |
|||
# GAME_TETRIS_FP is not set |
|||
GAME_SPACE_INVADERS=y |
|||
GAME_SNAKE=y |
|||
GAME_BREAKOUT=y |
|||
|
|||
# |
|||
# Animations |
|||
# |
|||
ANIMATION_SCROLLTEXT=y |
|||
ANIMATION_SPIRAL=y |
|||
SPIRAL_DELAY=5 |
|||
# ANIMATION_JOERN1 is not set |
|||
# ANIMATION_SNAKE is not set |
|||
SNAKE_CYCLE_DELAY=100 |
|||
SNAKE_TERMINATION_DELAY=60 |
|||
SNAKE_MAX_LENGTH=64 |
|||
SNAKE_MAX_APPLES=10 |
|||
# ANIMATION_CHECKERBOARD is not set |
|||
ANIMATION_FIRE=y |
|||
FIRE_S=30 |
|||
FIRE_N=5 |
|||
FIRE_DIV=44 |
|||
FIRE_DELAY=50 |
|||
FIRE_CYCLES=400 |
|||
ANIMATION_MATRIX=y |
|||
MATRIX_STREAMER_NUM=30 |
|||
MATRIX_CYCLES=500 |
|||
MATRIX_DELAY=60 |
|||
ANIMATION_RANDOM_BRIGHT=y |
|||
ANIMATION_STONEFLY=y |
|||
ANIMATION_FLYINGDOTS=y |
|||
ANIMATION_GAMEOFLIFE=y |
|||
GOL_DELAY=100 |
|||
GOL_CYCLES=360 |
|||
# ANIMATION_BREAKOUT is not set |
|||
# ANIMATION_MHERWEG is not set |
|||
# ANIMATION_LTN_ANT is not set |
|||
# ANIMATION_TIME is not set |
|||
TIME_MASTER_ADDR=0x00 |
|||
TIME_UPDATE_TIMEOUT=23 |
|||
ANIMATION_BMSCROLLER=y |
|||
# ANIMATION_LABORLOGO is not set |
|||
ANIMATION_AMPHIBIAN=y |
|||
# ANIMATION_LOGO_OOS is not set |
|||
# ANIMATION_FAIRYDUST is not set |
|||
ANIMATION_PLASMA=y |
|||
ANIMATION_PSYCHEDELIC=y |
|||
ANIMATION_BLACKHOLE=y |
|||
ANIMATION_TESTS=y |
|||
ANIMATION_OFF=y |
|||
|
|||
# |
|||
# small Animations |
|||
# |
|||
# SMALLANIMATION_ROWWALK is not set |
|||
SMALLANIMATION_ROWWALK_SPEED=50 |
|||
SMALLANIMATION_ROWWALK_COUNT=10 |
|||
# SMALLANIMATION_COLWALK is not set |
|||
SMALLANIMATION_COLWALK_SPEED=50 |
|||
SMALLANIMATION_COLWALK_COUNT=10 |
|||
# SMALLANIMATION_ROWBOUNCE is not set |
|||
SMALLANIMATION_ROWBOUNCE_SPEED=50 |
|||
SMALLANIMATION_ROWBOUNCE_COUNT=10 |
|||
# SMALLANIMATION_COLBOUNCE is not set |
|||
SMALLANIMATION_COLBOUNCE_SPEED=50 |
|||
SMALLANIMATION_COLBOUNCE_COUNT=10 |
@ -0,0 +1,960 @@ |
|||
#include "font.h" |
|||
|
|||
unsigned int const fontIndex_c64[] PROGMEM = { |
|||
0, /* */ |
|||
8, /* ! */ |
|||
16, /* " */ |
|||
24, /* # */ |
|||
32, /* $ */ |
|||
40, /* % */ |
|||
48, /* & */ |
|||
56, /* ' */ |
|||
64, /* ( */ |
|||
72, /* ) */ |
|||
80, /* * */ |
|||
88, /* + */ |
|||
96, /* , */ |
|||
104, /* - */ |
|||
112, /* . */ |
|||
120, /* / */ |
|||
128, /* 0 */ |
|||
136, /* 1 */ |
|||
144, /* 2 */ |
|||
152, /* 3 */ |
|||
160, /* 4 */ |
|||
168, /* 5 */ |
|||
176, /* 6 */ |
|||
184, /* 7 */ |
|||
192, /* 8 */ |
|||
200, /* 9 */ |
|||
208, /* : */ |
|||
216, /* ; */ |
|||
224, /* < */ |
|||
232, /* = */ |
|||
240, /* > */ |
|||
248, /* ? */ |
|||
256, /* @ */ |
|||
264, /* A */ |
|||
272, /* B */ |
|||
280, /* C */ |
|||
288, /* D */ |
|||
296, /* E */ |
|||
304, /* F */ |
|||
312, /* G */ |
|||
320, /* H */ |
|||
328, /* I */ |
|||
336, /* J */ |
|||
344, /* K */ |
|||
352, /* L */ |
|||
360, /* M */ |
|||
368, /* N */ |
|||
376, /* O */ |
|||
384, /* P */ |
|||
392, /* Q */ |
|||
400, /* R */ |
|||
408, /* S */ |
|||
416, /* T */ |
|||
424, /* U */ |
|||
432, /* V */ |
|||
440, /* W */ |
|||
448, /* X */ |
|||
456, /* Y */ |
|||
464, /* Z */ |
|||
472, /* [ */ |
|||
480, /* \ */ |
|||
488, /* ] */ |
|||
496, /* ^ */ |
|||
504, /* _ */ |
|||
512, /* ` */ |
|||
520, /* a */ |
|||
528, /* b */ |
|||
536, /* c */ |
|||
544, /* d */ |
|||
552, /* e */ |
|||
560, /* f */ |
|||
568, /* g */ |
|||
576, /* h */ |
|||
584, /* i */ |
|||
592, /* j */ |
|||
600, /* k */ |
|||
608, /* l */ |
|||
616, /* m */ |
|||
624, /* n */ |
|||
632, /* o */ |
|||
640, /* p */ |
|||
648, /* q */ |
|||
656, /* r */ |
|||
664, /* s */ |
|||
672, /* t */ |
|||
680, /* u */ |
|||
688, /* v */ |
|||
696, /* w */ |
|||
704, /* x */ |
|||
712, /* y */ |
|||
720, /* z */ |
|||
728, /* { */ |
|||
736, /* | */ |
|||
744, /* } */ |
|||
752, /* ~ */ |
|||
}; |
|||
|
|||
|
|||
unsigned char const fontData_c64[] PROGMEM = { |
|||
/* character / ASCII code 32 / offsets: 39 / 32 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character ! / ASCII code 33 / offsets: 39 / 43 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x4f, /* .#..#### */ |
|||
0x4f, /* .#..#### */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character " / ASCII code 34 / offsets: 39 / 54 */ |
|||
0x00, /* ........ */ |
|||
0x07, /* .....### */ |
|||
0x07, /* .....### */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x07, /* .....### */ |
|||
0x07, /* .....### */ |
|||
0x00, /* ........ */ |
|||
/* character # / ASCII code 35 / offsets: 39 / 65 */ |
|||
0x14, /* ...#.#.. */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x14, /* ...#.#.. */ |
|||
0x14, /* ...#.#.. */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x14, /* ...#.#.. */ |
|||
/* character $ / ASCII code 36 / offsets: 39 / 76 */ |
|||
0x00, /* ........ */ |
|||
0x24, /* ..#..#.. */ |
|||
0x2e, /* ..#.###. */ |
|||
0x6b, /* .##.#.## */ |
|||
0x6b, /* .##.#.## */ |
|||
0x3a, /* ..###.#. */ |
|||
0x12, /* ...#..#. */ |
|||
0x00, /* ........ */ |
|||
/* character % / ASCII code 37 / offsets: 39 / 87 */ |
|||
0x00, /* ........ */ |
|||
0x63, /* .##...## */ |
|||
0x33, /* ..##..## */ |
|||
0x18, /* ...##... */ |
|||
0x0c, /* ....##.. */ |
|||
0x66, /* .##..##. */ |
|||
0x63, /* .##...## */ |
|||
0x00, /* ........ */ |
|||
/* character & / ASCII code 38 / offsets: 39 / 98 */ |
|||
0x00, /* ........ */ |
|||
0x32, /* ..##..#. */ |
|||
0x7f, /* .####### */ |
|||
0x4d, /* .#..##.# */ |
|||
0x4d, /* .#..##.# */ |
|||
0x77, /* .###.### */ |
|||
0x72, /* .###..#. */ |
|||
0x50, /* .#.#.... */ |
|||
/* character ' / ASCII code 39 / offsets: 39 / 109 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x04, /* .....#.. */ |
|||
0x06, /* .....##. */ |
|||
0x03, /* ......## */ |
|||
0x01, /* .......# */ |
|||
0x00, /* ........ */ |
|||
/* character ( / ASCII code 40 / offsets: 39 / 120 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x1c, /* ...###.. */ |
|||
0x3e, /* ..#####. */ |
|||
0x63, /* .##...## */ |
|||
0x41, /* .#.....# */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character ) / ASCII code 41 / offsets: 39 / 131 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x41, /* .#.....# */ |
|||
0x63, /* .##...## */ |
|||
0x3e, /* ..#####. */ |
|||
0x1c, /* ...###.. */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character * / ASCII code 42 / offsets: 39 / 142 */ |
|||
0x08, /* ....#... */ |
|||
0x2a, /* ..#.#.#. */ |
|||
0x3e, /* ..#####. */ |
|||
0x1c, /* ...###.. */ |
|||
0x1c, /* ...###.. */ |
|||
0x3e, /* ..#####. */ |
|||
0x2a, /* ..#.#.#. */ |
|||
0x08, /* ....#... */ |
|||
/* character + / ASCII code 43 / offsets: 39 / 153 */ |
|||
0x00, /* ........ */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x3e, /* ..#####. */ |
|||
0x3e, /* ..#####. */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x00, /* ........ */ |
|||
/* character , / ASCII code 44 / offsets: 39 / 164 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x80, /* #....... */ |
|||
0xe0, /* ###..... */ |
|||
0x60, /* .##..... */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character - / ASCII code 45 / offsets: 39 / 175 */ |
|||
0x00, /* ........ */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x00, /* ........ */ |
|||
/* character . / ASCII code 46 / offsets: 39 / 186 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x60, /* .##..... */ |
|||
0x60, /* .##..... */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character / / ASCII code 47 / offsets: 39 / 197 */ |
|||
0x00, /* ........ */ |
|||
0x40, /* .#...... */ |
|||
0x60, /* .##..... */ |
|||
0x30, /* ..##.... */ |
|||
0x18, /* ...##... */ |
|||
0x0c, /* ....##.. */ |
|||
0x06, /* .....##. */ |
|||
0x02, /* ......#. */ |
|||
/* character 0 / ASCII code 48 / offsets: 51 / 32 */ |
|||
0x00, /* ........ */ |
|||
0x3e, /* ..#####. */ |
|||
0x7f, /* .####### */ |
|||
0x49, /* .#..#..# */ |
|||
0x45, /* .#...#.# */ |
|||
0x7f, /* .####### */ |
|||
0x3e, /* ..#####. */ |
|||
0x00, /* ........ */ |
|||
/* character 1 / ASCII code 49 / offsets: 51 / 43 */ |
|||
0x00, /* ........ */ |
|||
0x40, /* .#...... */ |
|||
0x44, /* .#...#.. */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x40, /* .#...... */ |
|||
0x40, /* .#...... */ |
|||
0x00, /* ........ */ |
|||
/* character 2 / ASCII code 50 / offsets: 51 / 54 */ |
|||
0x00, /* ........ */ |
|||
0x62, /* .##...#. */ |
|||
0x73, /* .###..## */ |
|||
0x51, /* .#.#...# */ |
|||
0x49, /* .#..#..# */ |
|||
0x4f, /* .#..#### */ |
|||
0x46, /* .#...##. */ |
|||
0x00, /* ........ */ |
|||
/* character 3 / ASCII code 51 / offsets: 51 / 65 */ |
|||
0x00, /* ........ */ |
|||
0x22, /* ..#...#. */ |
|||
0x63, /* .##...## */ |
|||
0x49, /* .#..#..# */ |
|||
0x49, /* .#..#..# */ |
|||
0x7f, /* .####### */ |
|||
0x36, /* ..##.##. */ |
|||
0x00, /* ........ */ |
|||
/* character 4 / ASCII code 52 / offsets: 51 / 76 */ |
|||
0x00, /* ........ */ |
|||
0x18, /* ...##... */ |
|||
0x18, /* ...##... */ |
|||
0x14, /* ...#.#.. */ |
|||
0x16, /* ...#.##. */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x10, /* ...#.... */ |
|||
/* character 5 / ASCII code 53 / offsets: 51 / 87 */ |
|||
0x00, /* ........ */ |
|||
0x27, /* ..#..### */ |
|||
0x67, /* .##..### */ |
|||
0x45, /* .#...#.# */ |
|||
0x45, /* .#...#.# */ |
|||
0x7d, /* .#####.# */ |
|||
0x39, /* ..###..# */ |
|||
0x00, /* ........ */ |
|||
/* character 6 / ASCII code 54 / offsets: 51 / 98 */ |
|||
0x00, /* ........ */ |
|||
0x3e, /* ..#####. */ |
|||
0x7f, /* .####### */ |
|||
0x49, /* .#..#..# */ |
|||
0x49, /* .#..#..# */ |
|||
0x7b, /* .####.## */ |
|||
0x32, /* ..##..#. */ |
|||
0x00, /* ........ */ |
|||
/* character 7 / ASCII code 55 / offsets: 51 / 109 */ |
|||
0x00, /* ........ */ |
|||
0x03, /* ......## */ |
|||
0x03, /* ......## */ |
|||
0x79, /* .####..# */ |
|||
0x7d, /* .#####.# */ |
|||
0x07, /* .....### */ |
|||
0x03, /* ......## */ |
|||
0x00, /* ........ */ |
|||
/* character 8 / ASCII code 56 / offsets: 51 / 120 */ |
|||
0x00, /* ........ */ |
|||
0x36, /* ..##.##. */ |
|||
0x7f, /* .####### */ |
|||
0x49, /* .#..#..# */ |
|||
0x49, /* .#..#..# */ |
|||
0x7f, /* .####### */ |
|||
0x36, /* ..##.##. */ |
|||
0x00, /* ........ */ |
|||
/* character 9 / ASCII code 57 / offsets: 51 / 131 */ |
|||
0x00, /* ........ */ |
|||
0x26, /* ..#..##. */ |
|||
0x6f, /* .##.#### */ |
|||
0x49, /* .#..#..# */ |
|||
0x49, /* .#..#..# */ |
|||
0x7f, /* .####### */ |
|||
0x3e, /* ..#####. */ |
|||
0x00, /* ........ */ |
|||
/* character : / ASCII code 58 / offsets: 51 / 142 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x24, /* ..#..#.. */ |
|||
0x24, /* ..#..#.. */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character ; / ASCII code 59 / offsets: 51 / 153 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x80, /* #....... */ |
|||
0xe4, /* ###..#.. */ |
|||
0x64, /* .##..#.. */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character < / ASCII code 60 / offsets: 51 / 164 */ |
|||
0x00, /* ........ */ |
|||
0x08, /* ....#... */ |
|||
0x1c, /* ...###.. */ |
|||
0x36, /* ..##.##. */ |
|||
0x63, /* .##...## */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x00, /* ........ */ |
|||
/* character = / ASCII code 61 / offsets: 51 / 175 */ |
|||
0x00, /* ........ */ |
|||
0x14, /* ...#.#.. */ |
|||
0x14, /* ...#.#.. */ |
|||
0x14, /* ...#.#.. */ |
|||
0x14, /* ...#.#.. */ |
|||
0x14, /* ...#.#.. */ |
|||
0x14, /* ...#.#.. */ |
|||
0x00, /* ........ */ |
|||
/* character > / ASCII code 62 / offsets: 51 / 186 */ |
|||
0x00, /* ........ */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x63, /* .##...## */ |
|||
0x36, /* ..##.##. */ |
|||
0x1c, /* ...###.. */ |
|||
0x08, /* ....#... */ |
|||
0x00, /* ........ */ |
|||
/* character ? / ASCII code 63 / offsets: 51 / 197 */ |
|||
0x00, /* ........ */ |
|||
0x02, /* ......#. */ |
|||
0x03, /* ......## */ |
|||
0x51, /* .#.#...# */ |
|||
0x59, /* .#.##..# */ |
|||
0x0f, /* ....#### */ |
|||
0x06, /* .....##. */ |
|||
0x00, /* ........ */ |
|||
/* character @ / ASCII code 64 / offsets: 63 / 32 */ |
|||
0x00, /* ........ */ |
|||
0x3e, /* ..#####. */ |
|||
0x7f, /* .####### */ |
|||
0x41, /* .#.....# */ |
|||
0x4d, /* .#..##.# */ |
|||
0x4f, /* .#..#### */ |
|||
0x2e, /* ..#.###. */ |
|||
0x00, /* ........ */ |
|||
/* character A / ASCII code 65 / offsets: 63 / 43 */ |
|||
0x00, /* ........ */ |
|||
0x7c, /* .#####.. */ |
|||
0x7e, /* .######. */ |
|||
0x0b, /* ....#.## */ |
|||
0x0b, /* ....#.## */ |
|||
0x7e, /* .######. */ |
|||
0x7c, /* .#####.. */ |
|||
0x00, /* ........ */ |
|||
/* character B / ASCII code 66 / offsets: 63 / 54 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x49, /* .#..#..# */ |
|||
0x49, /* .#..#..# */ |
|||
0x7f, /* .####### */ |
|||
0x36, /* ..##.##. */ |
|||
0x00, /* ........ */ |
|||
/* character C / ASCII code 67 / offsets: 63 / 65 */ |
|||
0x00, /* ........ */ |
|||
0x3e, /* ..#####. */ |
|||
0x7f, /* .####### */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x63, /* .##...## */ |
|||
0x22, /* ..#...#. */ |
|||
0x00, /* ........ */ |
|||
/* character D / ASCII code 68 / offsets: 63 / 76 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x41, /* .#.....# */ |
|||
0x63, /* .##...## */ |
|||
0x3e, /* ..#####. */ |
|||
0x1c, /* ...###.. */ |
|||
0x00, /* ........ */ |
|||
/* character E / ASCII code 69 / offsets: 63 / 87 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x49, /* .#..#..# */ |
|||
0x49, /* .#..#..# */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x00, /* ........ */ |
|||
/* character F / ASCII code 70 / offsets: 63 / 98 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x09, /* ....#..# */ |
|||
0x09, /* ....#..# */ |
|||
0x01, /* .......# */ |
|||
0x01, /* .......# */ |
|||
0x00, /* ........ */ |
|||
/* character G / ASCII code 71 / offsets: 63 / 109 */ |
|||
0x00, /* ........ */ |
|||
0x3e, /* ..#####. */ |
|||
0x7f, /* .####### */ |
|||
0x41, /* .#.....# */ |
|||
0x49, /* .#..#..# */ |
|||
0x7b, /* .####.## */ |
|||
0x3a, /* ..###.#. */ |
|||
0x00, /* ........ */ |
|||
/* character H / ASCII code 72 / offsets: 63 / 120 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x00, /* ........ */ |
|||
/* character I / ASCII code 73 / offsets: 63 / 131 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x41, /* .#.....# */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x41, /* .#.....# */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character J / ASCII code 74 / offsets: 63 / 142 */ |
|||
0x00, /* ........ */ |
|||
0x20, /* ..#..... */ |
|||
0x60, /* .##..... */ |
|||
0x41, /* .#.....# */ |
|||
0x7f, /* .####### */ |
|||
0x3f, /* ..###### */ |
|||
0x01, /* .......# */ |
|||
0x00, /* ........ */ |
|||
/* character K / ASCII code 75 / offsets: 63 / 153 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x1c, /* ...###.. */ |
|||
0x36, /* ..##.##. */ |
|||
0x63, /* .##...## */ |
|||
0x41, /* .#.....# */ |
|||
0x00, /* ........ */ |
|||
/* character L / ASCII code 76 / offsets: 63 / 164 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x40, /* .#...... */ |
|||
0x40, /* .#...... */ |
|||
0x40, /* .#...... */ |
|||
0x40, /* .#...... */ |
|||
0x00, /* ........ */ |
|||
/* character M / ASCII code 77 / offsets: 63 / 175 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x06, /* .....##. */ |
|||
0x0c, /* ....##.. */ |
|||
0x06, /* .....##. */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
/* character N / ASCII code 78 / offsets: 63 / 186 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x0e, /* ....###. */ |
|||
0x1c, /* ...###.. */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x00, /* ........ */ |
|||
/* character O / ASCII code 79 / offsets: 63 / 197 */ |
|||
0x00, /* ........ */ |
|||
0x3e, /* ..#####. */ |
|||
0x7f, /* .####### */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x7f, /* .####### */ |
|||
0x3e, /* ..#####. */ |
|||
0x00, /* ........ */ |
|||
/* character P / ASCII code 80 / offsets: 75 / 32 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x09, /* ....#..# */ |
|||
0x09, /* ....#..# */ |
|||
0x0f, /* ....#### */ |
|||
0x06, /* .....##. */ |
|||
0x00, /* ........ */ |
|||
/* character Q / ASCII code 81 / offsets: 75 / 43 */ |
|||
0x00, /* ........ */ |
|||
0x1e, /* ...####. */ |
|||
0x3f, /* ..###### */ |
|||
0x21, /* ..#....# */ |
|||
0x61, /* .##....# */ |
|||
0x7f, /* .####### */ |
|||
0x5e, /* .#.####. */ |
|||
0x00, /* ........ */ |
|||
/* character R / ASCII code 82 / offsets: 75 / 54 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x19, /* ...##..# */ |
|||
0x39, /* ..###..# */ |
|||
0x6f, /* .##.#### */ |
|||
0x46, /* .#...##. */ |
|||
0x00, /* ........ */ |
|||
/* character S / ASCII code 83 / offsets: 75 / 65 */ |
|||
0x00, /* ........ */ |
|||
0x26, /* ..#..##. */ |
|||
0x6f, /* .##.#### */ |
|||
0x49, /* .#..#..# */ |
|||
0x49, /* .#..#..# */ |
|||
0x7b, /* .####.## */ |
|||
0x32, /* ..##..#. */ |
|||
0x00, /* ........ */ |
|||
/* character T / ASCII code 84 / offsets: 75 / 76 */ |
|||
0x00, /* ........ */ |
|||
0x01, /* .......# */ |
|||
0x01, /* .......# */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x01, /* .......# */ |
|||
0x01, /* .......# */ |
|||
0x00, /* ........ */ |
|||
/* character U / ASCII code 85 / offsets: 75 / 87 */ |
|||
0x00, /* ........ */ |
|||
0x3f, /* ..###### */ |
|||
0x7f, /* .####### */ |
|||
0x40, /* .#...... */ |
|||
0x40, /* .#...... */ |
|||
0x7f, /* .####### */ |
|||
0x3f, /* ..###### */ |
|||
0x00, /* ........ */ |
|||
/* character V / ASCII code 86 / offsets: 75 / 98 */ |
|||
0x00, /* ........ */ |
|||
0x1f, /* ...##### */ |
|||
0x3f, /* ..###### */ |
|||
0x60, /* .##..... */ |
|||
0x60, /* .##..... */ |
|||
0x3f, /* ..###### */ |
|||
0x1f, /* ...##### */ |
|||
0x00, /* ........ */ |
|||
/* character W / ASCII code 87 / offsets: 75 / 109 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x30, /* ..##.... */ |
|||
0x18, /* ...##... */ |
|||
0x30, /* ..##.... */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
/* character X / ASCII code 88 / offsets: 75 / 120 */ |
|||
0x00, /* ........ */ |
|||
0x63, /* .##...## */ |
|||
0x77, /* .###.### */ |
|||
0x1c, /* ...###.. */ |
|||
0x1c, /* ...###.. */ |
|||
0x77, /* .###.### */ |
|||
0x63, /* .##...## */ |
|||
0x00, /* ........ */ |
|||
/* character Y / ASCII code 89 / offsets: 75 / 131 */ |
|||
0x00, /* ........ */ |
|||
0x07, /* .....### */ |
|||
0x0f, /* ....#### */ |
|||
0x78, /* .####... */ |
|||
0x78, /* .####... */ |
|||
0x0f, /* ....#### */ |
|||
0x07, /* .....### */ |
|||
0x00, /* ........ */ |
|||
/* character Z / ASCII code 90 / offsets: 75 / 142 */ |
|||
0x00, /* ........ */ |
|||
0x61, /* .##....# */ |
|||
0x71, /* .###...# */ |
|||
0x59, /* .#.##..# */ |
|||
0x4d, /* .#..##.# */ |
|||
0x47, /* .#...### */ |
|||
0x43, /* .#....## */ |
|||
0x00, /* ........ */ |
|||
/* character [ / ASCII code 91 / offsets: 75 / 153 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character \ / ASCII code 92 / offsets: 75 / 164 */ |
|||
0x00, /* ........ */ |
|||
0x02, /* ......#. */ |
|||
0x06, /* .....##. */ |
|||
0x0c, /* ....##.. */ |
|||
0x18, /* ...##... */ |
|||
0x30, /* ..##.... */ |
|||
0x60, /* .##..... */ |
|||
0x40, /* .#...... */ |
|||
/* character ] / ASCII code 93 / offsets: 75 / 175 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character ^ / ASCII code 94 / offsets: 75 / 186 */ |
|||
0x00, /* ........ */ |
|||
0x08, /* ....#... */ |
|||
0x0c, /* ....##.. */ |
|||
0x06, /* .....##. */ |
|||
0x06, /* .....##. */ |
|||
0x0c, /* ....##.. */ |
|||
0x08, /* ....#... */ |
|||
0x00, /* ........ */ |
|||
/* character _ / ASCII code 95 / offsets: 75 / 197 */ |
|||
0xc0, /* ##...... */ |
|||
0xc0, /* ##...... */ |
|||
0xc0, /* ##...... */ |
|||
0xc0, /* ##...... */ |
|||
0xc0, /* ##...... */ |
|||
0xc0, /* ##...... */ |
|||
0xc0, /* ##...... */ |
|||
0xc0, /* ##...... */ |
|||
/* character ` / ASCII code 96 / offsets: 87 / 32 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x01, /* .......# */ |
|||
0x03, /* ......## */ |
|||
0x06, /* .....##. */ |
|||
0x04, /* .....#.. */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character a / ASCII code 97 / offsets: 87 / 43 */ |
|||
0x00, /* ........ */ |
|||
0x20, /* ..#..... */ |
|||
0x74, /* .###.#.. */ |
|||
0x54, /* .#.#.#.. */ |
|||
0x54, /* .#.#.#.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x78, /* .####... */ |
|||
0x00, /* ........ */ |
|||
/* character b / ASCII code 98 / offsets: 87 / 54 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x44, /* .#...#.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x38, /* ..###... */ |
|||
0x00, /* ........ */ |
|||
/* character c / ASCII code 99 / offsets: 87 / 65 */ |
|||
0x00, /* ........ */ |
|||
0x38, /* ..###... */ |
|||
0x7c, /* .#####.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x6c, /* .##.##.. */ |
|||
0x28, /* ..#.#... */ |
|||
0x00, /* ........ */ |
|||
/* character d / ASCII code 100 / offsets: 87 / 76 */ |
|||
0x00, /* ........ */ |
|||
0x38, /* ..###... */ |
|||
0x7c, /* .#####.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x00, /* ........ */ |
|||
/* character e / ASCII code 101 / offsets: 87 / 87 */ |
|||
0x00, /* ........ */ |
|||
0x38, /* ..###... */ |
|||
0x7c, /* .#####.. */ |
|||
0x54, /* .#.#.#.. */ |
|||
0x54, /* .#.#.#.. */ |
|||
0x5c, /* .#.###.. */ |
|||
0x58, /* .#.##... */ |
|||
0x00, /* ........ */ |
|||
/* character f / ASCII code 102 / offsets: 87 / 98 */ |
|||
0x00, /* ........ */ |
|||
0x08, /* ....#... */ |
|||
0x7e, /* .######. */ |
|||
0x7f, /* .####### */ |
|||
0x09, /* ....#..# */ |
|||
0x03, /* ......## */ |
|||
0x02, /* ......#. */ |
|||
0x00, /* ........ */ |
|||
/* character g / ASCII code 103 / offsets: 87 / 109 */ |
|||
0x00, /* ........ */ |
|||
0x98, /* #..##... */ |
|||
0xbc, /* #.####.. */ |
|||
0xa4, /* #.#..#.. */ |
|||
0xa4, /* #.#..#.. */ |
|||
0xfc, /* ######.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x00, /* ........ */ |
|||
/* character h / ASCII code 104 / offsets: 87 / 120 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x04, /* .....#.. */ |
|||
0x04, /* .....#.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x78, /* .####... */ |
|||
0x00, /* ........ */ |
|||
/* character i / ASCII code 105 / offsets: 87 / 131 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x7d, /* .#####.# */ |
|||
0x7d, /* .#####.# */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character j / ASCII code 106 / offsets: 87 / 142 */ |
|||
0x00, /* ........ */ |
|||
0x40, /* .#...... */ |
|||
0xc0, /* ##...... */ |
|||
0x80, /* #....... */ |
|||
0x80, /* #....... */ |
|||
0xfd, /* ######.# */ |
|||
0x7d, /* .#####.# */ |
|||
0x00, /* ........ */ |
|||
/* character k / ASCII code 107 / offsets: 87 / 153 */ |
|||
0x00, /* ........ */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x30, /* ..##.... */ |
|||
0x38, /* ..###... */ |
|||
0x6c, /* .##.##.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x00, /* ........ */ |
|||
/* character l / ASCII code 108 / offsets: 87 / 164 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x41, /* .#.....# */ |
|||
0x7f, /* .####### */ |
|||
0x7f, /* .####### */ |
|||
0x40, /* .#...... */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character m / ASCII code 109 / offsets: 87 / 175 */ |
|||
0x00, /* ........ */ |
|||
0x7c, /* .#####.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x18, /* ...##... */ |
|||
0x30, /* ..##.... */ |
|||
0x18, /* ...##... */ |
|||
0x7c, /* .#####.. */ |
|||
0x7c, /* .#####.. */ |
|||
/* character n / ASCII code 110 / offsets: 87 / 186 */ |
|||
0x00, /* ........ */ |
|||
0x7c, /* .#####.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x04, /* .....#.. */ |
|||
0x04, /* .....#.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x78, /* .####... */ |
|||
0x00, /* ........ */ |
|||
/* character o / ASCII code 111 / offsets: 87 / 197 */ |
|||
0x00, /* ........ */ |
|||
0x38, /* ..###... */ |
|||
0x7c, /* .#####.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x38, /* ..###... */ |
|||
0x00, /* ........ */ |
|||
/* character p / ASCII code 112 / offsets: 99 / 32 */ |
|||
0x00, /* ........ */ |
|||
0xfc, /* ######.. */ |
|||
0xfc, /* ######.. */ |
|||
0x24, /* ..#..#.. */ |
|||
0x24, /* ..#..#.. */ |
|||
0x3c, /* ..####.. */ |
|||
0x18, /* ...##... */ |
|||
0x00, /* ........ */ |
|||
/* character q / ASCII code 113 / offsets: 99 / 43 */ |
|||
0x00, /* ........ */ |
|||
0x18, /* ...##... */ |
|||
0x3c, /* ..####.. */ |
|||
0x24, /* ..#..#.. */ |
|||
0x24, /* ..#..#.. */ |
|||
0xfc, /* ######.. */ |
|||
0xfc, /* ######.. */ |
|||
0x00, /* ........ */ |
|||
/* character r / ASCII code 114 / offsets: 99 / 54 */ |
|||
0x00, /* ........ */ |
|||
0x7c, /* .#####.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x04, /* .....#.. */ |
|||
0x04, /* .....#.. */ |
|||
0x0c, /* ....##.. */ |
|||
0x08, /* ....#... */ |
|||
0x00, /* ........ */ |
|||
/* character s / ASCII code 115 / offsets: 99 / 65 */ |
|||
0x00, /* ........ */ |
|||
0x48, /* .#..#... */ |
|||
0x5c, /* .#.###.. */ |
|||
0x54, /* .#.#.#.. */ |
|||
0x54, /* .#.#.#.. */ |
|||
0x74, /* .###.#.. */ |
|||
0x20, /* ..#..... */ |
|||
0x00, /* ........ */ |
|||
/* character t / ASCII code 116 / offsets: 99 / 76 */ |
|||
0x04, /* .....#.. */ |
|||
0x04, /* .....#.. */ |
|||
0x3f, /* ..###### */ |
|||
0x7f, /* .####### */ |
|||
0x44, /* .#...#.. */ |
|||
0x64, /* .##..#.. */ |
|||
0x20, /* ..#..... */ |
|||
0x00, /* ........ */ |
|||
/* character u / ASCII code 117 / offsets: 99 / 87 */ |
|||
0x00, /* ........ */ |
|||
0x3c, /* ..####.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x40, /* .#...... */ |
|||
0x40, /* .#...... */ |
|||
0x7c, /* .#####.. */ |
|||
0x3c, /* ..####.. */ |
|||
0x00, /* ........ */ |
|||
/* character v / ASCII code 118 / offsets: 99 / 98 */ |
|||
0x00, /* ........ */ |
|||
0x1c, /* ...###.. */ |
|||
0x3c, /* ..####.. */ |
|||
0x60, /* .##..... */ |
|||
0x60, /* .##..... */ |
|||
0x3c, /* ..####.. */ |
|||
0x1c, /* ...###.. */ |
|||
0x00, /* ........ */ |
|||
/* character w / ASCII code 119 / offsets: 99 / 109 */ |
|||
0x00, /* ........ */ |
|||
0x1c, /* ...###.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x30, /* ..##.... */ |
|||
0x18, /* ...##... */ |
|||
0x30, /* ..##.... */ |
|||
0x7c, /* .#####.. */ |
|||
0x1c, /* ...###.. */ |
|||
/* character x / ASCII code 120 / offsets: 99 / 120 */ |
|||
0x00, /* ........ */ |
|||
0x44, /* .#...#.. */ |
|||
0x6c, /* .##.##.. */ |
|||
0x38, /* ..###... */ |
|||
0x38, /* ..###... */ |
|||
0x6c, /* .##.##.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x00, /* ........ */ |
|||
/* character y / ASCII code 121 / offsets: 99 / 131 */ |
|||
0x00, /* ........ */ |
|||
0x9c, /* #..###.. */ |
|||
0xbc, /* #.####.. */ |
|||
0xa0, /* #.#..... */ |
|||
0xa0, /* #.#..... */ |
|||
0xfc, /* ######.. */ |
|||
0x7c, /* .#####.. */ |
|||
0x00, /* ........ */ |
|||
/* character z / ASCII code 122 / offsets: 99 / 142 */ |
|||
0x00, /* ........ */ |
|||
0x44, /* .#...#.. */ |
|||
0x64, /* .##..#.. */ |
|||
0x74, /* .###.#.. */ |
|||
0x5c, /* .#.###.. */ |
|||
0x4c, /* .#..##.. */ |
|||
0x44, /* .#...#.. */ |
|||
0x00, /* ........ */ |
|||
/* character { / ASCII code 123 / offsets: 99 / 153 */ |
|||
0x00, /* ........ */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x3e, /* ..#####. */ |
|||
0x77, /* .###.### */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x00, /* ........ */ |
|||
/* character | / ASCII code 124 / offsets: 99 / 164 */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0xff, /* ######## */ |
|||
0xff, /* ######## */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
0x00, /* ........ */ |
|||
/* character } / ASCII code 125 / offsets: 99 / 175 */ |
|||
0x00, /* ........ */ |
|||
0x41, /* .#.....# */ |
|||
0x41, /* .#.....# */ |
|||
0x77, /* .###.### */ |
|||
0x3e, /* ..#####. */ |
|||
0x08, /* ....#... */ |
|||
0x08, /* ....#... */ |
|||
0x00, /* ........ */ |
|||
/* character ~ / ASCII code 126 / offsets: 99 / 186 */ |
|||
0x00, /* ........ */ |
|||
0x02, /* ......#. */ |
|||
0x03, /* ......## */ |
|||
0x01, /* .......# */ |
|||
0x03, /* ......## */ |
|||
0x02, /* ......#. */ |
|||
0x03, /* ......## */ |
|||
0x01, /* .......# */ |
|||
}; |
|||
|
|||
font font_c64 = {8, fontIndex_c64, fontData_c64, ' ', '~', '.', 1}; |
@ -0,0 +1,7 @@ |
|||
#ifndef FONT_C64_H |
|||
#define FONT_C64_H |
|||
|
|||
#include "font.h" |
|||
extern font font_c64; |
|||
|
|||
#endif /* FONT_SMALL6_H_ */ |
Loading…
Reference in new issue