/C-OSD/trunk/CHANGE.LOG |
---|
18,6 → 18,12 |
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * |
****************************************************************************/ |
20090419-1245 |
*compass characters bigger |
*battery position |
+voltage-symbol to battery-voltage |
(Character Set 208 needs to be reflashed since compass chars are in it) |
20090418-2015 |
*fixed bug in Character Set 128 (reflash it if you already flashed it!) |
+another set of vario chars |
/C-OSD/trunk/c-osd.mcm |
---|
13512,39 → 13512,42 |
01010101 |
01010101 |
01010101 |
01010000 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010100 |
01010100 |
01010101 |
01010010 |
00010010 |
00010101 |
01010010 |
10000010 |
00010101 |
00000010 |
10000010 |
00000000 |
00000101 |
01001010 |
00010100 |
10100001 |
01001010 |
10000100 |
10100001 |
01001010 |
10000000 |
10100001 |
01001010 |
10100000 |
10100001 |
00001010 |
00101000 |
10100000 |
10001010 |
00101000 |
10100010 |
00100010 |
00101010 |
00000010 |
00001010 |
00000000 |
01010010 |
00001010 |
00010101 |
01010010 |
10100000 |
01001010 |
00000010 |
10100001 |
01001010 |
00010010 |
00010101 |
01010100 |
01010100 |
10100001 |
01001010 |
00010100 |
10100001 |
01010000 |
01010101 |
00000101 |
01010101 |
01010101 |
01010101 |
13574,40 → 13577,43 |
01010101 |
01010101 |
01010101 |
00000000 |
01010101 |
01010100 |
10101010 |
00010101 |
01010010 |
10101010 |
10000101 |
01010010 |
10000000 |
10000101 |
01010010 |
10000101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
00000001 |
01010101 |
01010100 |
00000010 |
10101010 |
00000000 |
10101000 |
01010101 |
10101010 |
10001010 |
00000000 |
00000010 |
10000000 |
01010010 |
00000010 |
00010101 |
00000100 |
10000100 |
01000000 |
10100001 |
00100001 |
00101010 |
00000100 |
01001000 |
01000000 |
10000101 |
01010010 |
00000010 |
10101010 |
10000101 |
01010000 |
10101010 |
00000101 |
01010101 |
00000000 |
00010101 |
01010100 |
10101000 |
01010101 |
01010101 |
00000001 |
01010101 |
01010101 |
01010101 |
13634,44 → 13640,42 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010100 |
00000000 |
01010101 |
00010101 |
01010010 |
10101010 |
10000101 |
01010010 |
10101010 |
10000101 |
01010010 |
10000000 |
00010101 |
01010010 |
00000000 |
10000101 |
01010101 |
00000010 |
00000101 |
01000000 |
10101000 |
00000000 |
10100010 |
10100001 |
00101010 |
10101000 |
10101010 |
00000010 |
00000101 |
01000000 |
10000000 |
00000000 |
01010010 |
00000000 |
10000000 |
01010101 |
01010010 |
10101010 |
00010101 |
10000101 |
01010010 |
10101010 |
10000101 |
01010100 |
00000000 |
00010101 |
01010101 |
01010101 |
01010101 |
13700,42 → 13704,42 |
01010101 |
01010101 |
01010101 |
01010000 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010100 |
01010100 |
01010101 |
01010010 |
00010010 |
00010101 |
01010010 |
00010010 |
00010101 |
00000010 |
00000010 |
00000101 |
01001010 |
00010100 |
10100001 |
01001010 |
00010100 |
10100001 |
01001010 |
00010100 |
10100001 |
01001010 |
00000000 |
10100001 |
00001010 |
00101000 |
10100000 |
10100010 |
00100010 |
00101010 |
00101000 |
10001010 |
00000010 |
10001010 |
00000000 |
00101000 |
10000000 |
01010010 |
10001010 |
00010101 |
10000010 |
10000101 |
01010010 |
00010010 |
10000010 |
10000101 |
01010010 |
10000010 |
10000101 |
01010100 |
00000000 |
00010101 |
01010100 |
01010100 |
01010101 |
01010101 |
01010101 |
13774,10 → 13778,6 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01010101 |
01000101 |
01010101 |
01010101 |
/C-OSD/trunk/characters.c |
---|
936,38 → 936,38 |
// compass north |
unsigned char cd3[54] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, |
0x54, 0x55, 0x52, 0x12, 0x15, 0x52, 0x82, 0x15, |
0x02, 0x82, 0x00, 0xa2, 0x22, 0x2a, 0x02, 0x0a, |
0x00, 0x52, 0x0a, 0x15, 0x52, 0x12, 0x15, 0x54, |
0x54, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x50, 0x55, 0x05, 0x4a, 0x14, 0xa1, 0x4a, |
0x84, 0xa1, 0x4a, 0x80, 0xa1, 0x4a, 0xa0, 0xa1, |
0x0a, 0x28, 0xa0, 0x8a, 0x28, 0xa2, 0x0a, 0x0a, |
0xa0, 0x4a, 0x02, 0xa1, 0x4a, 0x12, 0xa1, 0x4a, |
0x14, 0xa1, 0x50, 0x55, 0x05, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55}; |
// compass south |
unsigned char cd4[54] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x01, 0x55, 0x54, 0xa8, 0x55, 0x52, 0x02, 0x15, |
0x04, 0x84, 0x40, 0xa1, 0x21, 0x2a, 0x04, 0x48, |
0x40, 0x52, 0x02, 0x15, 0x54, 0xa8, 0x55, 0x55, |
0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x00, 0x55, 0x54, 0xaa, 0x15, 0x52, |
0xaa, 0x85, 0x52, 0x80, 0x85, 0x52, 0x85, 0x55, |
0x02, 0xaa, 0x00, 0xa8, 0xaa, 0x8a, 0x00, 0x02, |
0x80, 0x52, 0x02, 0x85, 0x52, 0xaa, 0x85, 0x50, |
0xaa, 0x05, 0x55, 0x00, 0x15, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55}; |
// compass east |
unsigned char cd5[54] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, |
0x00, 0x55, 0x52, 0xaa, 0x15, 0x52, 0x00, 0x55, |
0x02, 0x05, 0x40, 0xa2, 0xa1, 0x2a, 0x02, 0x05, |
0x40, 0x52, 0x00, 0x55, 0x52, 0xaa, 0x15, 0x54, |
0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x54, 0x00, 0x15, 0x52, 0xaa, 0x85, 0x52, |
0xaa, 0x85, 0x52, 0x80, 0x15, 0x52, 0x85, 0x55, |
0x02, 0xa8, 0x00, 0xa2, 0xa8, 0xaa, 0x02, 0x80, |
0x00, 0x52, 0x80, 0x55, 0x52, 0xaa, 0x85, 0x52, |
0xaa, 0x85, 0x54, 0x00, 0x15, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55}; |
// compass west |
unsigned char cd6[54] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, |
0x54, 0x55, 0x52, 0x12, 0x15, 0x52, 0x12, 0x15, |
0x02, 0x02, 0x00, 0xa2, 0x22, 0x2a, 0x02, 0x8a, |
0x00, 0x52, 0x8a, 0x15, 0x52, 0x12, 0x15, 0x54, |
0x54, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, |
0x55, 0x50, 0x55, 0x05, 0x4a, 0x14, 0xa1, 0x4a, |
0x14, 0xa1, 0x4a, 0x14, 0xa1, 0x4a, 0x00, 0xa1, |
0x0a, 0x28, 0xa0, 0xa2, 0x28, 0x8a, 0x02, 0x28, |
0x80, 0x52, 0x82, 0x85, 0x52, 0x82, 0x85, 0x52, |
0x82, 0x85, 0x54, 0x00, 0x15, 0x55, 0x55, 0x55, |
0x55, 0x55, 0x55, 0x55, 0x55, 0x55}; |
// compass between |
/C-OSD/trunk/main.c |
---|
142,7 → 142,7 |
* timer kicks in every 1000uS ^= 1ms |
*/ |
ISR(TIMER0_OVF_vect) { |
OCR0 = 6; // preload |
OCR0 = 15; // preload |
if (!timer--) { |
uptime++; |
timer = 999; |
621,7 → 621,7 |
// set up timer |
TCCR0 |= (1 << CS00) | (1 << CS01); // timer0 prescaler 64 |
OCR0 = 6; // preload |
OCR0 = 15; // preload |
TIMSK |= (1 << TOIE0); // enable overflow timer0 |
// enable interrupts |
671,7 → 671,7 |
usart1_request_mk_data(1, 'o', 100); |
// and disable debug... |
//usart1_request_mk_data(0, 'd', 0); |
usart1_request_mk_data(0, 'd', 0); |
// disable TXD-pin |
usart1_DisableTXD(); |
698,18 → 698,18 |
while (1) { |
// write icons at init or after menu/mode-switch |
if (!(COSD_FLAGS & COSD_ICONS_WRITTEN) && (COSD_FLAGS & COSD_FLAG_HUD)) { |
write_char_xy(5, top_line, 203); // km/h |
write_char_xy(10, top_line, 202); // RC-transmitter |
write_char_xy(16, top_line, 208); // degree symbol |
write_char_xy(27, top_line, 204); // small meters m height |
write_char_xy(20, top_line+1, 0xb0); // left circle |
write_char_xy(22, top_line+1, 0xb2); // right circle |
write_char_xy(27, top_line+1, 204); // small meters m home |
//write_ascii_string(6, bottom_line, "V"); // voltage |
write_char_xy(14, bottom_line, 209); // on clock |
write_char_xy(22, bottom_line, 210); // fly clock |
write_char_xy(26, bottom_line, 200); // sat1 |
write_char_xy(27, bottom_line, 201); // sat2 |
write_char_xy(5, top_line, 0xCB); // km/h |
write_char_xy(10, top_line, 0xCA); // RC-transmitter |
write_char_xy(16, top_line, 0xD0); // degree symbol |
write_char_xy(27, top_line, 0xCC); // small meters m height |
write_char_xy(20, top_line+1, 0xB0); // left circle |
write_char_xy(22, top_line+1, 0xB2); // right circle |
write_char_xy(27, top_line+1, 0xCC); // small meters m home |
write_char_xy(7, bottom_line, 0x9E); // small v |
write_char_xy(14, bottom_line, 0xD1); // on clock |
write_char_xy(22, bottom_line, 0xD2); // fly clock |
write_char_xy(26, bottom_line, 0xC8); // sat1 |
write_char_xy(27, bottom_line, 0xC9); // sat2 |
COSD_FLAGS |= COSD_ICONS_WRITTEN; |
} |
if (rxd_buffer_locked) { |
806,16 → 806,17 |
} |
// bottom line |
write_ndigit_number_u_10th(2, bottom_line, naviData.UBat, 100, 0); |
draw_battery(2, bottom_line, naviData.UBat); |
write_ndigit_number_u_10th(3, bottom_line, naviData.UBat, 100, 0); |
if (naviData.UBat <= UBAT_WRN && last_UBat > UBAT_WRN) { |
for (uint8_t x = 0; x < 7; x++) |
for (uint8_t x = 2; x < 8; x++) |
write_char_att_xy(x, bottom_line, BLINK); |
} else { |
for (uint8_t x = 0; x < 7; x++) |
for (uint8_t x = 2; x < 8; x++) |
write_char_att_xy(x, bottom_line, 0); |
} |
draw_battery(6, bottom_line, naviData.UBat); |
write_time(8, bottom_line, uptime); |
write_time(16, bottom_line, naviData.FlyingTime); |