# HG changeset patch # User heinrichsweikamp # Date 1403537399 -7200 # Node ID 46ef1e1388f13dc6faf9cbccef6d062f8f62751d # Parent e57e8045527d2d59d938eb5381f8f6321cb7ce2e# Parent 9635f6276c3e718a4be920051af65eacd49a5dc5 Merge diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/aa_fonts.asm --- a/code_part1/OSTC_code_asm_part1/aa_fonts.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/aa_fonts.asm Mon Jun 23 17:29:59 2014 +0200 @@ -195,7 +195,24 @@ aa_font90_end: ; Make sure this is coherent... if aa_font90_nbbits != 3 - error SMALL fount should be encoded with 3bits anti-aliasing... + error LARGE fount should be encoded with 3bits anti-aliasing... endif -;============================================================================= +;---- HUGE font description and data ---------------------------------------- +aa_font120_block: + DB ' ', 0x2F + DB 0 + DB c120_aa_firstChar + DB c120_aa_chars + DB 0x2F-c120_aa_firstChar + DB c120_aa_height + 0x80 ; AA flag. +; +#include "c120_aa_idx.inc" +#include "c120_aa.inc" +aa_font92_end: +; Make sure this is coherent... + if aa_font90_nbbits != 3 + error HUGE fount should be encoded with 3bits anti-aliasing... + endif + +;============================================================================= \ No newline at end of file diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/aa_wordprocessor.asm --- a/code_part1/OSTC_code_asm_part1/aa_wordprocessor.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/aa_wordprocessor.asm Mon Jun 23 17:29:59 2014 +0200 @@ -102,11 +102,24 @@ ; LARGE font --------------------------------------------------------- aa_char_2: + decfsz WREG,A ; This is medium font ??? + bra aa_char_2a + ; Font LARGE block: movlw LOW aa_font90_block movwf TBLPTRL,A movlw HIGH aa_font90_block movwf TBLPTRH,A + bra aa_char_3 + + ; HUGE font --------------------------------------------------------- +aa_char_2a: + ; Font HUGE block: + movlw LOW aa_font120_block + movwf TBLPTRL,A + movlw HIGH aa_font120_block + movwf TBLPTRH,A + ; Execute font block ------------------------------------------------- aa_char_3: diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/c120_aa.inc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/code_part1/OSTC_code_asm_part1/c120_aa.inc Mon Jun 23 17:29:59 2014 +0200 @@ -0,0 +1,633 @@ +;========================================================================== +; Font data exported lun. mars 17 2014 by FontIO.cpp,v 50eb4d95b392 2014/03/17 12:06:30 jDG $ +;========================================================================== +c120_aa_height EQU .120 +c120_aa_width EQU .80 +c120_aa_nbbits EQU .3 +; +c120_aa_bits: +; . dot + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFD, 0x60, 0x40, 0x20, 0x05 + DB 0x20, 0x40, 0x60, 0xE9, 0x40, 0x0D, 0x40, 0xE5 + DB 0x40, 0x11, 0x40, 0xE2, 0x20, 0x13, 0x20, 0xE0 + DB 0x20, 0x15, 0x20, 0xDE, 0x40, 0x17, 0x40, 0xDC + DB 0x60, 0x19, 0x60, 0xDB, 0x20, 0x19, 0x20, 0xDB + DB 0x1B, 0xDB, 0x1B, 0xDB, 0x1B, 0xDB, 0x1B, 0xDB + DB 0x20, 0x19, 0x20, 0xDB, 0x60, 0x19, 0x40, 0xDC + DB 0x20, 0x17, 0x20, 0xDD, 0x60, 0x17, 0x60, 0xDE + DB 0x60, 0x15, 0x60, 0xE1, 0x20, 0x11, 0x20, 0xE4 + DB 0x60, 0x20, 0x0D, 0x20, 0x60, 0xE7, 0x60, 0x40 + DB 0x20, 0x07, 0x20, 0x40, 0x60, 0xED, 0x61, 0x41 + DB 0x61, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xB0 +; / slash + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF +; 0 0 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBA, 0x60, 0x42 + DB 0x24, 0x10, 0x25, 0x41, 0x61, 0xCC, 0x60, 0x41 + DB 0x21, 0x1F, 0x07, 0x22, 0x41, 0xC1, 0x40, 0x21 + DB 0x1F, 0x14, 0x20, 0x41, 0xB8, 0x60, 0x21, 0x1F + DB 0x1C, 0x21, 0x40, 0xB1, 0x60, 0x20, 0x1F, 0x1F + DB 0x04, 0x20, 0x60, 0xAB, 0x60, 0x40, 0x1F, 0x1F + DB 0x0A, 0x40, 0x60, 0xA6, 0x60, 0x20, 0x1F, 0x1F + DB 0x0E, 0x20, 0x60, 0xA2, 0x60, 0x20, 0x1F, 0x1F + DB 0x12, 0x20, 0xA0, 0x20, 0x1F, 0x1F, 0x16, 0x60 + DB 0x9C, 0x60, 0x1F, 0x1F, 0x19, 0x40, 0x9A, 0x40 + DB 0x1F, 0x1F, 0x1B, 0x20, 0x98, 0x20, 0x1E, 0x24 + DB 0x53, 0x24, 0x1F, 0x00, 0x20, 0x96, 0x20, 0x17 + DB 0x21, 0x41, 0x61, 0xA2, 0x60, 0x41, 0x21, 0x19 + DB 0x20, 0x94, 0x20, 0x14, 0x20, 0x40, 0x60, 0xB0 + DB 0x60, 0x40, 0x20, 0x15, 0x40, 0x92, 0x20, 0x11 + DB 0x20, 0x40, 0x60, 0xB8, 0x60, 0x40, 0x20, 0x12 + DB 0x60, 0x90, 0x40, 0x10, 0x20, 0x60, 0xBE, 0x60 + DB 0x20, 0x10, 0x20, 0x8F, 0x60, 0x0F, 0x40, 0xC3 + DB 0x60, 0x20, 0x0F, 0x60, 0x8E, 0x20, 0x0D, 0x20 + DB 0x60, 0xC6, 0x60, 0x20, 0x0D, 0x20, 0x8D, 0x60 + DB 0x0D, 0x40, 0xCA, 0x20, 0x0D, 0x8D, 0x20, 0x0C + DB 0x60, 0xCC, 0x20, 0x0C, 0x40, 0x8C, 0x0C, 0x40 + DB 0xCE, 0x0C, 0x40, 0x8B, 0x40, 0x0B, 0x20, 0xCF + DB 0x40, 0x0B, 0x20, 0x8B, 0x20, 0x0B, 0x60, 0xD0 + DB 0x0C, 0x8B, 0x20, 0x0A, 0x20, 0xD1, 0x20, 0x0B + DB 0x8B, 0x0B, 0x40, 0xD1, 0x40, 0x0B, 0x8B, 0x0B + DB 0x40, 0xD1, 0x40, 0x0B, 0x8B, 0x0B, 0x60, 0xD1 + DB 0x60, 0x0B, 0x8B, 0x0B, 0x40, 0xD1, 0x40, 0x0B + DB 0x8B, 0x0B, 0x40, 0xD1, 0x40, 0x0B, 0x8B, 0x0B + DB 0x20, 0xD1, 0x20, 0x0A, 0x20, 0x8B, 0x0C, 0xD0 + DB 0x60, 0x0B, 0x40, 0x8B, 0x20, 0x0B, 0x40, 0xCF + DB 0x20, 0x0B, 0x60, 0x8B, 0x40, 0x0C, 0xCE, 0x40 + DB 0x0C, 0x8C, 0x60, 0x0C, 0x20, 0xCC, 0x40, 0x0C + DB 0x40, 0x8D, 0x0D, 0x20, 0xCA, 0x20, 0x0D, 0x8E + DB 0x20, 0x0D, 0x20, 0x60, 0xC6, 0x40, 0x0E, 0x40 + DB 0x8E, 0x60, 0x0F, 0x40, 0xC3, 0x60, 0x20, 0x0E + DB 0x20, 0x90, 0x20, 0x10, 0x40, 0xBF, 0x40, 0x20 + DB 0x10, 0x60, 0x91, 0x12, 0x20, 0x40, 0xB8, 0x60 + DB 0x40, 0x20, 0x12, 0x60, 0x92, 0x40, 0x14, 0x21 + DB 0x40, 0x60, 0xAF, 0x60, 0x40, 0x20, 0x15, 0x40 + DB 0x94, 0x40, 0x18, 0x21, 0x41, 0x61, 0xA1, 0x61 + DB 0x41, 0x21, 0x18, 0x40, 0x96, 0x40, 0x1F, 0x24 + DB 0x53, 0x24, 0x1F, 0x60, 0x98, 0x40, 0x1F, 0x1F + DB 0x1A, 0x20, 0x60, 0x9A, 0x40, 0x1F, 0x1F, 0x18 + DB 0x40, 0x9D, 0x60, 0x20, 0x1F, 0x1F, 0x14, 0x20 + DB 0x60, 0xA0, 0x40, 0x1F, 0x1F, 0x11, 0x20, 0x60 + DB 0xA4, 0x40, 0x1F, 0x1F, 0x0D, 0x20, 0x60, 0xA8 + DB 0x40, 0x20, 0x1F, 0x1F, 0x08, 0x20, 0x60, 0xAC + DB 0x60, 0x20, 0x1F, 0x1F, 0x03, 0x20, 0x40, 0xB2 + DB 0x60, 0x40, 0x20, 0x1F, 0x1B, 0x21, 0x60, 0xB9 + DB 0x41, 0x20, 0x1F, 0x13, 0x20, 0x40, 0x60, 0xC1 + DB 0x60, 0x41, 0x21, 0x1F, 0x07, 0x21, 0x41, 0x60 + DB 0xCC, 0x61, 0x42, 0x24, 0x10, 0x24, 0x41, 0x61 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xC3 +; 1 1 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0x8A, 0x22, 0x40, 0x61, 0xC9, 0x2C, 0x99, 0x40 + DB 0x06, 0x22, 0x41, 0x60, 0xC2, 0x0C, 0x60, 0x98 + DB 0x0D, 0x40, 0xC1, 0x0C, 0x60, 0x97, 0x40, 0x0D + DB 0xC2, 0x0C, 0x60, 0x97, 0x0D, 0x40, 0xC2, 0x0C + DB 0x60, 0x96, 0x40, 0x0D, 0xC3, 0x0C, 0x60, 0x96 + DB 0x0D, 0x40, 0xC3, 0x0C, 0x60, 0x95, 0x40, 0x0C + DB 0x20, 0xC4, 0x0C, 0x60, 0x95, 0x0D, 0x60, 0xC4 + DB 0x0C, 0x60, 0x94, 0x40, 0x0C, 0x20, 0xC5, 0x0C + DB 0x60, 0x94, 0x0D, 0x60, 0xC5, 0x0C, 0x60, 0x93 + DB 0x40, 0x0C, 0x20, 0xC6, 0x0C, 0x60, 0x93, 0x0D + DB 0x60, 0xC6, 0x0C, 0x60, 0x92, 0x40, 0x0C, 0x40 + DB 0xC7, 0x0C, 0x60, 0x92, 0x0D, 0xC8, 0x0C, 0x60 + DB 0x91, 0x40, 0x0C, 0x40, 0xC8, 0x0C, 0x60, 0x91 + DB 0x0D, 0xC9, 0x0C, 0x60, 0x90, 0x40, 0x0C, 0x40 + DB 0xC9, 0x0C, 0x60, 0x90, 0x0C, 0x20, 0xCA, 0x0C + DB 0x60, 0x8F, 0x40, 0x0C, 0x60, 0xCA, 0x0C, 0x60 + DB 0x8F, 0x0D, 0x3F, 0x3F, 0x2B, 0x0C, 0x60, 0x8E + DB 0x40, 0x1F, 0x1F, 0x1F, 0x06, 0x60, 0x8E, 0x1F + DB 0x1F, 0x1F, 0x07, 0x60, 0x8E, 0x1F, 0x1F, 0x1F + DB 0x07, 0x60, 0x8E, 0x1F, 0x1F, 0x1F, 0x07, 0x60 + DB 0x8E, 0x1F, 0x1F, 0x1F, 0x07, 0x60, 0x8E, 0x1F + DB 0x1F, 0x1F, 0x07, 0x60, 0x8E, 0x1F, 0x1F, 0x1F + DB 0x07, 0x60, 0x8E, 0x1F, 0x1F, 0x1F, 0x07, 0x60 + DB 0x8E, 0x1F, 0x1F, 0x1F, 0x07, 0x60, 0x8E, 0x1F + DB 0x1F, 0x1F, 0x07, 0x60, 0xE9, 0x0C, 0x60, 0xE9 + DB 0x0C, 0x60, 0xE9, 0x0C, 0x60, 0xE9, 0x0C, 0x60 + DB 0xE9, 0x0C, 0x60, 0xE9, 0x0C, 0x60, 0xE9, 0x0C + DB 0x60, 0xE9, 0x0C, 0x60, 0xE9, 0x0C, 0x60, 0xE9 + DB 0x0C, 0x60, 0xE9, 0x0C, 0x60, 0xE9, 0x0C, 0x60 + DB 0xE9, 0x0C, 0x60, 0xE9, 0x0C, 0x60, 0xE9, 0x0C + DB 0x60, 0xE9, 0x0C, 0x60, 0xE9, 0x0C, 0x60, 0xE9 + DB 0x2C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x97 +; 2 2 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xEB, 0x4B + DB 0x96, 0x21, 0x40, 0x60, 0xCE, 0x60, 0x20, 0x0B + DB 0x95, 0x20, 0x04, 0x21, 0x40, 0x60, 0xC8, 0x40 + DB 0x0D, 0x94, 0x40, 0x0A, 0x20, 0x41, 0xC3, 0x20 + DB 0x0E, 0x93, 0x60, 0x0D, 0x40, 0xC1, 0x60, 0x10 + DB 0x93, 0x20, 0x0C, 0x40, 0xC1, 0x40, 0x11, 0x92 + DB 0x40, 0x0C, 0x40, 0xC0, 0x60, 0x20, 0x12, 0x91 + DB 0x60, 0x0C, 0x20, 0xC0, 0x40, 0x14, 0x91, 0x20 + DB 0x0C, 0x60, 0xBF, 0x40, 0x15, 0x91, 0x0C, 0x40 + DB 0xBE, 0x60, 0x20, 0x16, 0x90, 0x40, 0x0B, 0x20 + DB 0xBE, 0x40, 0x18, 0x90, 0x0C, 0x60, 0xBD, 0x20 + DB 0x19, 0x8F, 0x60, 0x0B, 0x20, 0xBC, 0x60, 0x20 + DB 0x1A, 0x8F, 0x20, 0x0B, 0x40, 0xBB, 0x40, 0x1C + DB 0x8F, 0x0C, 0xBB, 0x20, 0x1D, 0x8E, 0x60, 0x0B + DB 0x20, 0xB9, 0x60, 0x10, 0x40, 0x20, 0x0C, 0x8E + DB 0x40, 0x0B, 0x40, 0xB8, 0x40, 0x10, 0x60, 0x80 + DB 0x20, 0x0C, 0x8E, 0x20, 0x0B, 0x60, 0xB6, 0x60 + DB 0x20, 0x0F, 0x20, 0x82, 0x20, 0x0C, 0x8E, 0x20 + DB 0x0B, 0xB6, 0x40, 0x10, 0x40, 0x83, 0x20, 0x0C + DB 0x8E, 0x0C, 0xB5, 0x40, 0x10, 0x60, 0x84, 0x20 + DB 0x0C, 0x8E, 0x0C, 0xB3, 0x60, 0x20, 0x0F, 0x20 + DB 0x86, 0x20, 0x0C, 0x8E, 0x0C, 0xB2, 0x40, 0x10 + DB 0x40, 0x87, 0x20, 0x0C, 0x8E, 0x0C, 0xB1, 0x20 + DB 0x10, 0x60, 0x88, 0x20, 0x0C, 0x8E, 0x0C, 0x60 + DB 0xAE, 0x60, 0x10, 0x20, 0x60, 0x89, 0x20, 0x0C + DB 0x8E, 0x0C, 0x40, 0xAD, 0x20, 0x10, 0x40, 0x8B + DB 0x20, 0x0C, 0x8E, 0x0C, 0x20, 0xAB, 0x60, 0x20 + DB 0x10, 0x40, 0x8C, 0x20, 0x0C, 0x8E, 0x20, 0x0C + DB 0x60, 0xA9, 0x40, 0x10, 0x20, 0x60, 0x8D, 0x20 + DB 0x0C, 0x8E, 0x20, 0x0C, 0x20, 0xA7, 0x60, 0x20 + DB 0x10, 0x20, 0x8F, 0x20, 0x0C, 0x8E, 0x40, 0x0D + DB 0x60, 0xA4, 0x60, 0x20, 0x11, 0x40, 0x90, 0x20 + DB 0x0C, 0x8F, 0x0E, 0x60, 0xA2, 0x40, 0x11, 0x20 + DB 0x60, 0x91, 0x20, 0x0C, 0x8F, 0x20, 0x0E, 0x60 + DB 0x9F, 0x40, 0x20, 0x11, 0x20, 0x93, 0x20, 0x0C + DB 0x8F, 0x40, 0x0F, 0x60, 0x9C, 0x60, 0x20, 0x12 + DB 0x40, 0x94, 0x20, 0x0C, 0x90, 0x10, 0x20, 0x99 + DB 0x40, 0x20, 0x12, 0x20, 0x60, 0x95, 0x20, 0x0C + DB 0x90, 0x40, 0x11, 0x40, 0x94, 0x60, 0x40, 0x14 + DB 0x40, 0x97, 0x20, 0x0C, 0x91, 0x20, 0x12, 0x20 + DB 0x40, 0x60, 0x8D, 0x60, 0x40, 0x20, 0x14, 0x20 + DB 0x60, 0x98, 0x20, 0x0C, 0x91, 0x60, 0x16, 0x21 + DB 0x46, 0x22, 0x17, 0x20, 0x9A, 0x20, 0x0C, 0x92 + DB 0x40, 0x1F, 0x17, 0x20, 0x60, 0x9B, 0x20, 0x0C + DB 0x93, 0x20, 0x1F, 0x15, 0x40, 0x9D, 0x20, 0x0C + DB 0x94, 0x20, 0x1F, 0x12, 0x20, 0x60, 0x9E, 0x20 + DB 0x0C, 0x95, 0x20, 0x1F, 0x10, 0x40, 0xA0, 0x20 + DB 0x0C, 0x96, 0x40, 0x1F, 0x0D, 0x40, 0xA2, 0x20 + DB 0x0C, 0x97, 0x60, 0x1F, 0x0A, 0x40, 0xA4, 0x20 + DB 0x0C, 0x99, 0x20, 0x1F, 0x06, 0x40, 0xA6, 0x20 + DB 0x0C, 0x9A, 0x60, 0x20, 0x1F, 0x01, 0x20, 0x40 + DB 0xA8, 0x20, 0x0C, 0x9C, 0x60, 0x40, 0x1C, 0x20 + DB 0x40, 0x60, 0xAA, 0x20, 0x0C, 0x9F, 0x60, 0x40 + DB 0x20, 0x15, 0x20, 0x40, 0x60, 0xAD, 0x20, 0x0C + DB 0xA3, 0x60, 0x40, 0x22, 0x08, 0x22, 0x41, 0xB2 + DB 0x20, 0x0C, 0xE9, 0x20, 0x0C, 0xE9, 0x20, 0x0C + DB 0xE9, 0x2D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0x8F +; 3 3 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE3 + DB 0x61, 0x42, 0x22, 0x02, 0x40, 0x92, 0x20, 0x00 + DB 0x23, 0x42, 0x61, 0xCB, 0x20, 0x0B, 0x20, 0x91 + DB 0x60, 0x0C, 0xC9, 0x60, 0x0C, 0x60, 0x90, 0x20 + DB 0x0B, 0x40, 0xCA, 0x20, 0x0B, 0x40, 0x8F, 0x60 + DB 0x0B, 0x20, 0x9D, 0x0A, 0x20, 0xA1, 0x40, 0x0B + DB 0x20, 0x8F, 0x20, 0x0B, 0x60, 0x9D, 0x0A, 0x40 + DB 0xA2, 0x0C, 0x8E, 0x60, 0x0B, 0x40, 0x9E, 0x0A + DB 0x40, 0xA2, 0x20, 0x0B, 0x60, 0x8D, 0x40, 0x0B + DB 0x9F, 0x0A, 0x60, 0xA2, 0x40, 0x0B, 0x40, 0x8D + DB 0x20, 0x0A, 0x40, 0x9F, 0x0A, 0x60, 0xA2, 0x60 + DB 0x0B, 0x40, 0x8C, 0x60, 0x0B, 0x60, 0x9E, 0x60 + DB 0x0A, 0xA4, 0x0B, 0x20, 0x8C, 0x40, 0x0A, 0x20 + DB 0x9F, 0x60, 0x0A, 0xA4, 0x20, 0x0A, 0x20, 0x8C + DB 0x20, 0x0A, 0x40, 0x9F, 0x60, 0x0A, 0xA4, 0x20 + DB 0x0B, 0x8C, 0x0B, 0xA0, 0x40, 0x0A, 0xA4, 0x40 + DB 0x0B, 0x8B, 0x60, 0x0A, 0x20, 0xA0, 0x40, 0x0A + DB 0xA4, 0x40, 0x0B, 0x8B, 0x40, 0x0A, 0x20, 0xA0 + DB 0x40, 0x0A, 0xA4, 0x40, 0x0B, 0x8B, 0x20, 0x0A + DB 0x40, 0xA0, 0x20, 0x09, 0x20, 0xA4, 0x40, 0x0B + DB 0x8B, 0x20, 0x0A, 0x60, 0xA0, 0x20, 0x09, 0x20 + DB 0xA4, 0x60, 0x0B, 0x8B, 0x20, 0x0A, 0x60, 0xA0 + DB 0x0B, 0xA4, 0x40, 0x0B, 0x8B, 0x0B, 0x60, 0x9F + DB 0x60, 0x0B, 0xA4, 0x40, 0x0B, 0x8B, 0x0B, 0xA0 + DB 0x40, 0x0B, 0xA4, 0x40, 0x0A, 0x20, 0x8B, 0x0B + DB 0x60, 0x9F, 0x20, 0x0B, 0x60, 0xA3, 0x20, 0x0A + DB 0x20, 0x8B, 0x0B, 0x60, 0x9E, 0x60, 0x0C, 0x40 + DB 0xA3, 0x20, 0x0A, 0x20, 0x8B, 0x0B, 0x40, 0x9E + DB 0x40, 0x0C, 0x40, 0xA3, 0x0B, 0x40, 0x8B, 0x0B + DB 0x20, 0x9E, 0x0D, 0x20, 0xA2, 0x40, 0x0B, 0x60 + DB 0x8B, 0x0B, 0x20, 0x9D, 0x40, 0x0E, 0xA2, 0x20 + DB 0x0B, 0x8C, 0x20, 0x0B, 0x60, 0x9C, 0x0F, 0x40 + DB 0xA0, 0x60, 0x0B, 0x20, 0x8C, 0x20, 0x0B, 0x20 + DB 0x9B, 0x40, 0x10, 0xA0, 0x20, 0x0B, 0x40, 0x8C + DB 0x40, 0x0C, 0x60, 0x99, 0x60, 0x11, 0x40, 0x9E + DB 0x60, 0x0C, 0x8D, 0x60, 0x0C, 0x20, 0x98, 0x60 + DB 0x13, 0x60, 0x9D, 0x20, 0x0B, 0x20, 0x8E, 0x0D + DB 0x20, 0x96, 0x60, 0x14, 0x20, 0x9C, 0x40, 0x0C + DB 0x60, 0x8E, 0x40, 0x0D, 0x20, 0x94, 0x60, 0x16 + DB 0x20, 0x9A, 0x40, 0x0C, 0x20, 0x8F, 0x60, 0x0E + DB 0x20, 0x60, 0x91, 0x40, 0x0A, 0x20, 0x0C, 0x20 + DB 0x98, 0x40, 0x0D, 0x60, 0x90, 0x20, 0x0F, 0x20 + DB 0x60, 0x8D, 0x40, 0x0C, 0x40, 0x20, 0x0C, 0x20 + DB 0x60, 0x95, 0x20, 0x0D, 0x20, 0x91, 0x60, 0x11 + DB 0x20, 0x40, 0x60, 0x86, 0x60, 0x40, 0x20, 0x0D + DB 0x20, 0x80, 0x40, 0x0E, 0x40, 0x92, 0x40, 0x0F + DB 0x60, 0x92, 0x20, 0x16, 0x20, 0x13, 0x60, 0x80 + DB 0x60, 0x10, 0x40, 0x60, 0x8C, 0x60, 0x40, 0x10 + DB 0x40, 0x94, 0x1F, 0x0A, 0x40, 0x82, 0x20, 0x11 + DB 0x21, 0x40, 0x62, 0x80, 0x62, 0x40, 0x21, 0x11 + DB 0x20, 0x95, 0x60, 0x1F, 0x08, 0x20, 0x83, 0x60 + DB 0x1F, 0x0F, 0x20, 0x97, 0x40, 0x1F, 0x06, 0x20 + DB 0x85, 0x40, 0x1F, 0x0E, 0x60, 0x98, 0x40, 0x1F + DB 0x04, 0x20, 0x87, 0x20, 0x1F, 0x0C, 0x60, 0x9A + DB 0x40, 0x1F, 0x02, 0x20, 0x89, 0x20, 0x1F, 0x09 + DB 0x20, 0x60, 0x9C, 0x60, 0x20, 0x1F, 0x40, 0x8B + DB 0x20, 0x1F, 0x07, 0x20, 0xA0, 0x40, 0x1C, 0x20 + DB 0x60, 0x8D, 0x20, 0x1F, 0x05, 0x40, 0xA3, 0x40 + DB 0x18, 0x20, 0x60, 0x90, 0x40, 0x1F, 0x02, 0x20 + DB 0x60, 0xA6, 0x40, 0x20, 0x12, 0x20, 0x40, 0x94 + DB 0x60, 0x20, 0x1E, 0x20, 0x60, 0xAB, 0x60, 0x40 + DB 0x21, 0x07, 0x22, 0x40, 0x60, 0x99, 0x60, 0x20 + DB 0x1A, 0x20, 0x60, 0xDB, 0x40, 0x20, 0x14, 0x20 + DB 0x40, 0xE1, 0x40, 0x21, 0x0B, 0x21, 0x40, 0x60 + DB 0xE9, 0x61, 0x42, 0x62, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xA2 +; 4 4 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0x82, 0x40, 0x00, 0x23, 0x43, 0x61, 0xE8 + DB 0x60, 0x40, 0x0D, 0xE5, 0x60, 0x20, 0x0F, 0xE3 + DB 0x60, 0x20, 0x11, 0xE1, 0x60, 0x20, 0x13, 0xDF + DB 0x60, 0x20, 0x15, 0xDD, 0x60, 0x20, 0x17, 0xDB + DB 0x60, 0x20, 0x19, 0xD9, 0x60, 0x20, 0x1B, 0xD7 + DB 0x40, 0x20, 0x1D, 0xD5, 0x40, 0x20, 0x1F, 0xD3 + DB 0x40, 0x14, 0x21, 0x0B, 0xD1, 0x40, 0x14, 0x20 + DB 0x60, 0x80, 0x20, 0x0B, 0xCF, 0x40, 0x14, 0x40 + DB 0x60, 0x82, 0x20, 0x0B, 0xCD, 0x40, 0x14, 0x40 + DB 0x85, 0x20, 0x0B, 0xCB, 0x40, 0x14, 0x40, 0x87 + DB 0x20, 0x0B, 0xC8, 0x60, 0x20, 0x14, 0x40, 0x89 + DB 0x20, 0x0B, 0xC6, 0x60, 0x20, 0x14, 0x40, 0x8B + DB 0x0C, 0xC4, 0x60, 0x20, 0x14, 0x40, 0x8D, 0x0C + DB 0xC2, 0x60, 0x20, 0x14, 0x40, 0x8F, 0x0C, 0xC0 + DB 0x60, 0x20, 0x14, 0x40, 0x91, 0x0C, 0xBE, 0x60 + DB 0x20, 0x14, 0x40, 0x93, 0x0C, 0xBC, 0x60, 0x20 + DB 0x14, 0x40, 0x95, 0x0C, 0xBA, 0x40, 0x20, 0x13 + DB 0x20, 0x40, 0x97, 0x0C, 0xB8, 0x40, 0x20, 0x13 + DB 0x20, 0x40, 0x99, 0x0C, 0xB6, 0x40, 0x20, 0x13 + DB 0x20, 0x40, 0x9B, 0x0C, 0xB4, 0x40, 0x14, 0x20 + DB 0x40, 0x9D, 0x0C, 0xB2, 0x40, 0x14, 0x20, 0x60 + DB 0x9F, 0x0C, 0xB0, 0x40, 0x14, 0x20, 0x60, 0xA1 + DB 0x0C, 0xAE, 0x40, 0x14, 0x20, 0x60, 0xA3, 0x0C + DB 0xAB, 0x60, 0x20, 0x14, 0x20, 0x60, 0xA5, 0x0C + DB 0xA9, 0x60, 0x20, 0x14, 0x20, 0x60, 0xA7, 0x0C + DB 0xA7, 0x60, 0x20, 0x14, 0x20, 0x60, 0xA9, 0x0C + DB 0xA7, 0x14, 0x20, 0x60, 0xAB, 0x0C, 0xA7, 0x12 + DB 0x20, 0x60, 0xAD, 0x0C, 0xA7, 0x10, 0x20, 0x60 + DB 0xAF, 0x0C, 0xA7, 0x0E, 0x20, 0x60, 0xB1, 0x0C + DB 0xA7, 0x1F, 0x1F, 0x1F, 0x07, 0x8F, 0x1F, 0x1F + DB 0x1F, 0x07, 0x8F, 0x1F, 0x1F, 0x1F, 0x07, 0x8F + DB 0x1F, 0x1F, 0x1F, 0x07, 0x8F, 0x1F, 0x1F, 0x1F + DB 0x07, 0x8F, 0x1F, 0x1F, 0x1F, 0x07, 0x8F, 0x1F + DB 0x1F, 0x1F, 0x07, 0x8F, 0x1F, 0x1F, 0x1F, 0x07 + DB 0x8F, 0x1F, 0x1F, 0x1F, 0x07, 0x8F, 0x1F, 0x1F + DB 0x1F, 0x07, 0x8F, 0x5F, 0x5F, 0x42, 0x0C, 0x57 + DB 0xD2, 0x0C, 0xEA, 0x0C, 0xEA, 0x0C, 0xEA, 0x0C + DB 0xEA, 0x0C, 0xEA, 0x0C, 0xEA, 0x0C, 0xEA, 0x0C + DB 0xEA, 0x0C, 0xEA, 0x0C, 0xEA, 0x0C, 0xEA, 0x0C + DB 0xEA, 0x2C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xCF +; 5 5 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xD8, 0x60, 0x2C, 0xEA, 0x0C, 0x40, 0x8F, 0x1F + DB 0x14, 0x60, 0xA3, 0x40, 0x0B, 0x20, 0x8F, 0x1F + DB 0x14, 0xA4, 0x60, 0x0B, 0x20, 0x8F, 0x1F, 0x14 + DB 0xA5, 0x0C, 0x8F, 0x1F, 0x13, 0x20, 0xA5, 0x20 + DB 0x0B, 0x60, 0x8E, 0x1F, 0x13, 0x20, 0xA5, 0x40 + DB 0x0B, 0x40, 0x8E, 0x1F, 0x13, 0x40, 0xA5, 0x60 + DB 0x0B, 0x20, 0x8E, 0x1F, 0x13, 0x40, 0xA6, 0x0B + DB 0x20, 0x8E, 0x1F, 0x13, 0x40, 0xA6, 0x20, 0x0A + DB 0x20, 0x8E, 0x1F, 0x13, 0x60, 0xA6, 0x20, 0x0A + DB 0x20, 0x8E, 0x0D, 0x39, 0x0B, 0x60, 0xA6, 0x20 + DB 0x0B, 0x8E, 0x0C, 0x20, 0x99, 0x40, 0x0A, 0x60 + DB 0xA6, 0x40, 0x0B, 0x8E, 0x0C, 0x20, 0x99, 0x20 + DB 0x0A, 0x60, 0xA6, 0x40, 0x0B, 0x8E, 0x0C, 0x20 + DB 0x99, 0x20, 0x0A, 0xA7, 0x40, 0x0B, 0x8E, 0x0C + DB 0x20, 0x99, 0x20, 0x0A, 0xA7, 0x40, 0x0B, 0x8E + DB 0x0C, 0x20, 0x99, 0x20, 0x0A, 0xA7, 0x60, 0x0B + DB 0x8E, 0x0C, 0x20, 0x99, 0x20, 0x0A, 0xA7, 0x40 + DB 0x0B, 0x8E, 0x0C, 0x20, 0x99, 0x20, 0x0A, 0x60 + DB 0xA6, 0x40, 0x0B, 0x8E, 0x0C, 0x20, 0x99, 0x20 + DB 0x0A, 0x60, 0xA6, 0x40, 0x0B, 0x8E, 0x0C, 0x20 + DB 0x99, 0x20, 0x0A, 0x40, 0xA6, 0x20, 0x0A, 0x20 + DB 0x8E, 0x0C, 0x20, 0x99, 0x20, 0x0A, 0x20, 0xA6 + DB 0x20, 0x0A, 0x20, 0x8E, 0x0C, 0x20, 0x99, 0x20 + DB 0x0A, 0x20, 0xA6, 0x0B, 0x40, 0x8E, 0x0C, 0x20 + DB 0x99, 0x20, 0x0B, 0xA5, 0x60, 0x0B, 0x60, 0x8E + DB 0x0C, 0x20, 0x99, 0x40, 0x0B, 0x40, 0xA4, 0x20 + DB 0x0B, 0x8F, 0x0C, 0x20, 0x99, 0x40, 0x0B, 0x20 + DB 0xA3, 0x60, 0x0B, 0x20, 0x8F, 0x0C, 0x20, 0x99 + DB 0x60, 0x0C, 0x60, 0xA2, 0x20, 0x0B, 0x40, 0x8F + DB 0x0C, 0x20, 0x9A, 0x20, 0x0B, 0x20, 0xA1, 0x60 + DB 0x0C, 0x90, 0x0C, 0x20, 0x9A, 0x20, 0x0C, 0x40 + DB 0xA0, 0x0C, 0x20, 0x90, 0x0C, 0x20, 0x9A, 0x40 + DB 0x0D, 0x60, 0x9E, 0x20, 0x0C, 0x60, 0x90, 0x0C + DB 0x20, 0x9B, 0x0E, 0x60, 0x9C, 0x20, 0x0C, 0x20 + DB 0x91, 0x0C, 0x20, 0x9B, 0x20, 0x0E, 0x60, 0x99 + DB 0x60, 0x20, 0x0D, 0x60, 0x91, 0x0C, 0x20, 0x9B + DB 0x60, 0x0F, 0x40, 0x97, 0x40, 0x0E, 0x20, 0x92 + DB 0x0C, 0x20, 0x9C, 0x20, 0x10, 0x40, 0x93, 0x40 + DB 0x0F, 0x20, 0x93, 0x0C, 0x20, 0x9D, 0x12, 0x20 + DB 0x60, 0x8C, 0x60, 0x40, 0x20, 0x11, 0x60, 0x93 + DB 0x0C, 0x20, 0x9D, 0x40, 0x14, 0x21, 0x46, 0x21 + DB 0x14, 0x40, 0x94, 0x0C, 0x20, 0x9E, 0x20, 0x1F + DB 0x12, 0x40, 0x95, 0x0C, 0x20, 0x9F, 0x20, 0x1F + DB 0x10, 0x40, 0x96, 0x0C, 0x20, 0x9F, 0x60, 0x1F + DB 0x0F, 0x40, 0x97, 0x0C, 0x20, 0xA0, 0x60, 0x1F + DB 0x0D, 0x40, 0x98, 0x0C, 0x20, 0xA1, 0x60, 0x20 + DB 0x1F, 0x09, 0x20, 0x60, 0x99, 0x0C, 0x20, 0xA3 + DB 0x40, 0x1F, 0x07, 0x40, 0x9B, 0x0C, 0x20, 0xA4 + DB 0x60, 0x20, 0x1F, 0x03, 0x20, 0x60, 0x9C, 0x0C + DB 0x20, 0xA6, 0x40, 0x1F, 0x00, 0x20, 0x60, 0x9E + DB 0x6D, 0xA8, 0x40, 0x20, 0x1A, 0x20, 0x40, 0xDA + DB 0x60, 0x40, 0x20, 0x14, 0x20, 0x40, 0xE1, 0x60 + DB 0x40, 0x22, 0x07, 0x22, 0x40, 0x60, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xA0 +; 6 6 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xCB, 0x61, 0x41, 0x24 + DB 0x0D, 0x23, 0x41, 0x61, 0xD2, 0x60, 0x40, 0x21 + DB 0x1F, 0x01, 0x21, 0x40, 0x60, 0xC8, 0x60, 0x40 + DB 0x20, 0x1F, 0x0C, 0x20, 0x40, 0x60, 0xC0, 0x60 + DB 0x40, 0x20, 0x1F, 0x14, 0x20, 0x60, 0xBA, 0x60 + DB 0x40, 0x20, 0x1F, 0x1A, 0x40, 0xB6, 0x40, 0x20 + DB 0x1F, 0x1F, 0x20, 0x60, 0xB0, 0x60, 0x20, 0x1F + DB 0x1F, 0x04, 0x20, 0x60, 0xAC, 0x60, 0x20, 0x1F + DB 0x1F, 0x08, 0x40, 0xA9, 0x60, 0x20, 0x1F, 0x1F + DB 0x0B, 0x20, 0x60, 0xA5, 0x60, 0x20, 0x1F, 0x1F + DB 0x0F, 0x40, 0xA3, 0x40, 0x1D, 0x22, 0x43, 0x1F + DB 0x0D, 0x40, 0xA1, 0x20, 0x18, 0x21, 0x40, 0x60 + DB 0x85, 0x40, 0x20, 0x0E, 0x20, 0x46, 0x21, 0x16 + DB 0x40, 0x9E, 0x60, 0x16, 0x20, 0x40, 0x60, 0x88 + DB 0x60, 0x20, 0x0C, 0x20, 0x40, 0x60, 0x8C, 0x60 + DB 0x40, 0x20, 0x12, 0x40, 0x9C, 0x40, 0x14, 0x20 + DB 0x60, 0x8B, 0x60, 0x0C, 0x20, 0x60, 0x92, 0x60 + DB 0x40, 0x11, 0x40, 0x9A, 0x40, 0x12, 0x20, 0x60 + DB 0x8D, 0x40, 0x0B, 0x20, 0x60, 0x97, 0x40, 0x20 + DB 0x0F, 0x60, 0x98, 0x40, 0x11, 0x40, 0x8F, 0x40 + DB 0x0B, 0x40, 0x9B, 0x40, 0x0E, 0x20, 0x97, 0x40 + DB 0x10, 0x40, 0x90, 0x40, 0x0A, 0x20, 0x60, 0x9D + DB 0x60, 0x20, 0x0D, 0x40, 0x95, 0x40, 0x0F, 0x40 + DB 0x91, 0x40, 0x0A, 0x20, 0xA1, 0x20, 0x0D, 0x94 + DB 0x60, 0x0E, 0x20, 0x60, 0x91, 0x60, 0x0A, 0x20 + DB 0xA3, 0x20, 0x0C, 0x40, 0x93, 0x0E, 0x40, 0x93 + DB 0x0B, 0x60, 0xA4, 0x20, 0x0B, 0x20, 0x92, 0x20 + DB 0x0D, 0x40, 0x93, 0x40, 0x0A, 0x60, 0xA5, 0x60 + DB 0x0C, 0x91, 0x60, 0x0D, 0x60, 0x94, 0x0A, 0x20 + DB 0xA7, 0x40, 0x0B, 0x40, 0x90, 0x20, 0x0C, 0x60 + DB 0x94, 0x40, 0x0A, 0x60, 0xA8, 0x0B, 0x20, 0x8F + DB 0x40, 0x0C, 0x40, 0x95, 0x0A, 0x20, 0xA9, 0x20 + DB 0x0A, 0x20, 0x8F, 0x0C, 0x20, 0x95, 0x60, 0x0A + DB 0x40, 0xA9, 0x40, 0x0B, 0x8E, 0x40, 0x0B, 0x20 + DB 0x96, 0x40, 0x0A, 0x60, 0xA9, 0x60, 0x0B, 0x8E + DB 0x20, 0x0B, 0x40, 0x96, 0x20, 0x0A, 0xAB, 0x0B + DB 0x8D, 0x60, 0x0B, 0x20, 0x97, 0x0A, 0x20, 0xAB + DB 0x0B, 0x8D, 0x40, 0x0B, 0x60, 0x97, 0x0A, 0x20 + DB 0xAB, 0x0B, 0x8D, 0x20, 0x0A, 0x20, 0x98, 0x0B + DB 0xAB, 0x0B, 0x8D, 0x0B, 0x40, 0x98, 0x0B, 0xAA + DB 0x60, 0x0A, 0x20, 0x8C, 0x60, 0x0B, 0x60, 0x98 + DB 0x0B, 0x60, 0xA9, 0x40, 0x0A, 0x20, 0x8C, 0x40 + DB 0x0B, 0x99, 0x0B, 0x40, 0xA9, 0x20, 0x0A, 0x40 + DB 0x8C, 0x20, 0x0A, 0x20, 0x99, 0x20, 0x0A, 0x20 + DB 0xA8, 0x60, 0x0B, 0x60, 0x8C, 0x20, 0x0A, 0x20 + DB 0x99, 0x20, 0x0B, 0x40, 0xA7, 0x20, 0x0A, 0x20 + DB 0x8D, 0x0B, 0x40, 0x99, 0x40, 0x0B, 0x20, 0xA6 + DB 0x60, 0x0B, 0x40, 0x8D, 0x0B, 0x40, 0x99, 0x60 + DB 0x0C, 0x40, 0xA4, 0x60, 0x0C, 0x60, 0x8D, 0x0B + DB 0x40, 0x9A, 0x0D, 0x40, 0xA2, 0x60, 0x20, 0x0B + DB 0x20, 0x8E, 0x0B, 0x60, 0x9A, 0x20, 0x0D, 0x40 + DB 0xA0, 0x60, 0x0D, 0x60, 0x8E, 0x0B, 0x40, 0x9A + DB 0x60, 0x0E, 0x20, 0x9E, 0x40, 0x0D, 0x20, 0x8F + DB 0x0B, 0x40, 0x9B, 0x20, 0x0E, 0x20, 0x60, 0x9A + DB 0x60, 0x20, 0x0E, 0x90, 0x0B, 0x40, 0x9B, 0x60 + DB 0x10, 0x20, 0x60, 0x96, 0x60, 0x20, 0x0F, 0x60 + DB 0x90, 0x0B, 0x40, 0x9C, 0x20, 0x12, 0x40, 0x60 + DB 0x90, 0x60, 0x40, 0x20, 0x10, 0x40, 0x91, 0x0B + DB 0x40, 0x9D, 0x20, 0x14, 0x21, 0x41, 0x62, 0x80 + DB 0x62, 0x41, 0x21, 0x13, 0x20, 0x92, 0x20, 0x0A + DB 0x20, 0x9D, 0x60, 0x1F, 0x16, 0x20, 0x93, 0x20 + DB 0x0A, 0x20, 0x9E, 0x60, 0x1F, 0x14, 0x40, 0x94 + DB 0x20, 0x0B, 0x9F, 0x60, 0x1F, 0x12, 0x40, 0x95 + DB 0x60, 0x4B, 0xA0, 0x60, 0x20, 0x1F, 0x0E, 0x20 + DB 0x60, 0xC6, 0x20, 0x1F, 0x0C, 0x40, 0xC9, 0x40 + DB 0x1F, 0x09, 0x20, 0x60, 0xCC, 0x40, 0x1F, 0x05 + DB 0x20, 0x60, 0xD0, 0x40, 0x20, 0x1F, 0x20, 0x40 + DB 0xD5, 0x60, 0x40, 0x20, 0x19, 0x20, 0x40, 0x60 + DB 0xDA, 0x60, 0x40, 0x21, 0x10, 0x21, 0x40, 0x60 + DB 0xE3, 0x61, 0x43, 0x21, 0x44, 0x61, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xC2 +; 7 7 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xA7, 0x4D, 0xE9, 0x0D, 0x60 + DB 0xE8, 0x0D, 0x60, 0xE8, 0x0D, 0x60, 0xE8, 0x0D + DB 0x60, 0xE8, 0x0D, 0x60, 0xE8, 0x0D, 0x60, 0xE8 + DB 0x0D, 0x60, 0xE8, 0x0D, 0x60, 0xE8, 0x0D, 0x60 + DB 0xE8, 0x0D, 0x60, 0xE8, 0x0D, 0x60, 0xD7, 0x40 + DB 0x8F, 0x0D, 0x60, 0xD3, 0x60, 0x40, 0x20, 0x01 + DB 0x8F, 0x0D, 0x60, 0xCF, 0x60, 0x40, 0x20, 0x05 + DB 0x8F, 0x0D, 0x60, 0xCC, 0x60, 0x21, 0x08, 0x8F + DB 0x0D, 0x60, 0xC9, 0x40, 0x20, 0x0C, 0x8F, 0x0D + DB 0xC6, 0x60, 0x40, 0x20, 0x0F, 0x8F, 0x0D, 0xC3 + DB 0x60, 0x40, 0x20, 0x12, 0x8F, 0x0D, 0xC0, 0x60 + DB 0x20, 0x16, 0x8F, 0x0D, 0xBD, 0x60, 0x20, 0x19 + DB 0x8F, 0x0D, 0xBA, 0x60, 0x20, 0x1C, 0x8F, 0x0D + DB 0xB7, 0x60, 0x20, 0x1F, 0x8F, 0x0D, 0xB4, 0x60 + DB 0x20, 0x1F, 0x02, 0x8F, 0x0D, 0xB1, 0x60, 0x20 + DB 0x1F, 0x05, 0x8F, 0x0D, 0xAE, 0x60, 0x40, 0x20 + DB 0x1F, 0x04, 0x21, 0x40, 0x8F, 0x0D, 0xAB, 0x60 + DB 0x40, 0x20, 0x1F, 0x04, 0x20, 0x40, 0x93, 0x0D + DB 0xA9, 0x40, 0x20, 0x1F, 0x03, 0x20, 0x40, 0x60 + DB 0x96, 0x0D, 0xA6, 0x40, 0x20, 0x1F, 0x02, 0x20 + DB 0x40, 0x60, 0x9A, 0x0D, 0xA3, 0x60, 0x20, 0x1F + DB 0x02, 0x20, 0x40, 0x9E, 0x0D, 0xA0, 0x60, 0x40 + DB 0x1F, 0x01, 0x21, 0x60, 0xA1, 0x0D, 0x9E, 0x40 + DB 0x20, 0x1F, 0x00, 0x20, 0x40, 0x60, 0xA4, 0x0D + DB 0x9B, 0x60, 0x20, 0x1F, 0x00, 0x20, 0x40, 0xA8 + DB 0x0D, 0x98, 0x60, 0x40, 0x1F, 0x00, 0x20, 0x40 + DB 0xAB, 0x0D, 0x96, 0x40, 0x20, 0x1F, 0x20, 0x60 + DB 0xAE, 0x0D, 0x93, 0x60, 0x20, 0x1F, 0x20, 0x60 + DB 0xB1, 0x0D, 0x90, 0x60, 0x40, 0x1F, 0x20, 0x60 + DB 0xB4, 0x0D, 0x8E, 0x40, 0x20, 0x1E, 0x20, 0x60 + DB 0xB7, 0x0D, 0x8B, 0x60, 0x20, 0x1E, 0x20, 0x60 + DB 0xBA, 0x0D, 0x89, 0x40, 0x20, 0x1D, 0x20, 0x40 + DB 0xBD, 0x0D, 0x86, 0x60, 0x20, 0x1D, 0x20, 0x40 + DB 0xC0, 0x0C, 0x20, 0x84, 0x40, 0x20, 0x1C, 0x20 + DB 0x40, 0xC3, 0x0C, 0x20, 0x81, 0x60, 0x20, 0x1C + DB 0x20, 0x40, 0x60, 0xC5, 0x0C, 0x20, 0x40, 0x20 + DB 0x1C, 0x20, 0x60, 0xC8, 0x1F, 0x09, 0x20, 0x60 + DB 0xCB, 0x1F, 0x06, 0x20, 0x40, 0xCE, 0x1F, 0x03 + DB 0x20, 0x40, 0x60, 0xD0, 0x1F, 0x01, 0x20, 0x60 + DB 0xD3, 0x1E, 0x20, 0x40, 0xD6, 0x1B, 0x20, 0x40 + DB 0x60, 0xD8, 0x19, 0x20, 0x60, 0xDB, 0x16, 0x20 + DB 0x40, 0xDE, 0x14, 0x40, 0x60, 0xE0, 0x11, 0x20 + DB 0x40, 0xE3, 0x0F, 0x40, 0x60, 0xE5, 0x0C, 0x20 + DB 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8 +; 8 8 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xE6, 0x60, 0x40, 0x21 + DB 0x07, 0x22, 0x40, 0x60, 0xE3, 0x40, 0x20, 0x12 + DB 0x20, 0x40, 0xAD, 0x60, 0x40, 0x22, 0x07, 0x21 + DB 0x41, 0x9E, 0x60, 0x40, 0x18, 0x20, 0x60, 0xA7 + DB 0x40, 0x20, 0x12, 0x20, 0x40, 0x60, 0x99, 0x40 + DB 0x1C, 0x20, 0xA3, 0x60, 0x40, 0x18, 0x20, 0x40 + DB 0x95, 0x40, 0x1F, 0x00, 0x40, 0xA0, 0x40, 0x1C + DB 0x20, 0x60, 0x92, 0x20, 0x1F, 0x02, 0x20, 0x9D + DB 0x40, 0x1F, 0x00, 0x20, 0x8F, 0x60, 0x20, 0x1F + DB 0x04, 0x20, 0x9B, 0x20, 0x1F, 0x03, 0x60, 0x8C + DB 0x60, 0x1F, 0x07, 0x20, 0x98, 0x60, 0x20, 0x1F + DB 0x05, 0x40, 0x8A, 0x60, 0x1F, 0x09, 0x20, 0x96 + DB 0x60, 0x1F, 0x08, 0x40, 0x88, 0x60, 0x1F, 0x0B + DB 0x40, 0x94, 0x60, 0x20, 0x1F, 0x09, 0x40, 0x86 + DB 0x60, 0x14, 0x21, 0x16, 0x60, 0x93, 0x20, 0x1F + DB 0x0B, 0x60, 0x85, 0x20, 0x0E, 0x20, 0x40, 0x60 + DB 0x86, 0x60, 0x40, 0x20, 0x11, 0x20, 0x92, 0x20 + DB 0x11, 0x26, 0x14, 0x60, 0x83, 0x20, 0x0D, 0x20 + DB 0x60, 0x8D, 0x40, 0x20, 0x0F, 0x60, 0x90, 0x60 + DB 0x0F, 0x20, 0x60, 0x88, 0x60, 0x40, 0x11, 0x20 + DB 0x82, 0x40, 0x0C, 0x20, 0x60, 0x91, 0x40, 0x0E + DB 0x20, 0x90, 0x20, 0x0D, 0x40, 0x8E, 0x40, 0x10 + DB 0x40, 0x80, 0x60, 0x0C, 0x40, 0x94, 0x60, 0x20 + DB 0x0D, 0x60, 0x8E, 0x40, 0x0C, 0x20, 0x60, 0x91 + DB 0x40, 0x0F, 0x60, 0x20, 0x0B, 0x60, 0x97, 0x20 + DB 0x0C, 0x40, 0x8E, 0x20, 0x0B, 0x20, 0x94, 0x60 + DB 0x1B, 0x60, 0x98, 0x60, 0x0C, 0x20, 0x8D, 0x60 + DB 0x0B, 0x20, 0x96, 0x60, 0x19, 0x60, 0x9A, 0x40 + DB 0x0C, 0x8D, 0x20, 0x0B, 0x98, 0x60, 0x17, 0x60 + DB 0x9C, 0x20, 0x0B, 0x60, 0x8C, 0x0B, 0x40, 0x99 + DB 0x60, 0x15, 0x40, 0x9D, 0x40, 0x0B, 0x40, 0x8B + DB 0x60, 0x0A, 0x20, 0x9B, 0x40, 0x13, 0x20, 0x9F + DB 0x0B, 0x20, 0x8B, 0x40, 0x0A, 0x40, 0x9C, 0x20 + DB 0x12, 0xA0, 0x20, 0x0A, 0x20, 0x8B, 0x20, 0x0A + DB 0x9D, 0x60, 0x11, 0x60, 0xA0, 0x40, 0x0B, 0x8B + DB 0x20, 0x09, 0x20, 0x9E, 0x40, 0x0F, 0x20, 0xA1 + DB 0x60, 0x0B, 0x8B, 0x0A, 0x20, 0x9F, 0x20, 0x0E + DB 0xA3, 0x0B, 0x8B, 0x0A, 0x20, 0x9F, 0x60, 0x0D + DB 0x40, 0xA3, 0x0B, 0x8B, 0x0A, 0x20, 0xA0, 0x20 + DB 0x0C, 0x40, 0xA3, 0x0B, 0x8B, 0x0A, 0x20, 0xA0 + DB 0x40, 0x0D, 0x60, 0xA2, 0x0B, 0x8B, 0x0A, 0x20 + DB 0xA0, 0x0E, 0x20, 0xA2, 0x0B, 0x8B, 0x0B, 0x9F + DB 0x20, 0x0F, 0x60, 0xA1, 0x0A, 0x20, 0x8B, 0x20 + DB 0x0A, 0x9E, 0x60, 0x10, 0x20, 0xA0, 0x40, 0x0A + DB 0x20, 0x8B, 0x20, 0x0A, 0x40, 0x9D, 0x12, 0x60 + DB 0x9F, 0x20, 0x0A, 0x40, 0x8B, 0x20, 0x0A, 0x20 + DB 0x9C, 0x20, 0x13, 0x9F, 0x0B, 0x60, 0x8B, 0x40 + DB 0x0B, 0x60, 0x9A, 0x40, 0x14, 0x20, 0x9D, 0x40 + DB 0x0B, 0x8C, 0x60, 0x0B, 0x20, 0x99, 0x40, 0x16 + DB 0x40, 0x9C, 0x20, 0x0A, 0x20, 0x8D, 0x20, 0x0B + DB 0x40, 0x97, 0x40, 0x18, 0x60, 0x9A, 0x40, 0x0B + DB 0x40, 0x8D, 0x40, 0x0C, 0x40, 0x95, 0x40, 0x1A + DB 0x60, 0x98, 0x60, 0x0C, 0x8E, 0x60, 0x0D, 0x40 + DB 0x93, 0x20, 0x0B, 0x20, 0x40, 0x0E, 0x60, 0x96 + DB 0x60, 0x0C, 0x20, 0x8F, 0x20, 0x0D, 0x20, 0x40 + DB 0x8F, 0x40, 0x0D, 0x60, 0x80, 0x20, 0x0E, 0x40 + DB 0x94, 0x60, 0x0D, 0x60, 0x8F, 0x60, 0x0F, 0x20 + DB 0x40, 0x60, 0x89, 0x60, 0x40, 0x0E, 0x40, 0x81 + DB 0x60, 0x0F, 0x20, 0x60, 0x91, 0x40, 0x0D, 0x20 + DB 0x91, 0x40, 0x12, 0x27, 0x10, 0x40, 0x83, 0x40 + DB 0x10, 0x20, 0x40, 0x8C, 0x60, 0x40, 0x0F, 0x60 + DB 0x92, 0x20, 0x1F, 0x09, 0x20, 0x85, 0x20, 0x12 + DB 0x20, 0x41, 0x62, 0x80, 0x61, 0x41, 0x20, 0x10 + DB 0x40, 0x93, 0x60, 0x1F, 0x08, 0x20, 0x86, 0x60 + DB 0x1F, 0x0E, 0x20, 0x95, 0x60, 0x1F, 0x06, 0x20 + DB 0x88, 0x40, 0x1F, 0x0C, 0x20, 0x97, 0x40, 0x1F + DB 0x04, 0x20, 0x8A, 0x40, 0x1F, 0x0B, 0x60, 0x98 + DB 0x60, 0x1F, 0x02, 0x20, 0x8C, 0x40, 0x1F, 0x09 + DB 0x60, 0x9A, 0x60, 0x20, 0x1F, 0x40, 0x8E, 0x40 + DB 0x1F, 0x06, 0x20, 0x60, 0x9D, 0x40, 0x1C, 0x20 + DB 0x91, 0x40, 0x1F, 0x04, 0x20, 0xA1, 0x40, 0x18 + DB 0x20, 0x60, 0x93, 0x60, 0x20, 0x1F, 0x01, 0x40 + DB 0xA4, 0x60, 0x20, 0x12, 0x20, 0x40, 0x98, 0x40 + DB 0x1E, 0x40, 0xA9, 0x60, 0x40, 0x22, 0x07, 0x21 + DB 0x40, 0x60, 0x9D, 0x40, 0x20, 0x19, 0x40, 0xDC + DB 0x60, 0x21, 0x12, 0x21, 0x60, 0xE2, 0x41, 0x21 + DB 0x08, 0x21, 0x41, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xAA +; 9 9 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xCC, 0x63, 0x42, 0x62, 0xE6, 0x60 + DB 0x41, 0x21, 0x0E, 0x21, 0x40, 0x60, 0xDB, 0x60 + DB 0x40, 0x20, 0x19, 0x20, 0x40, 0xD6, 0x40, 0x20 + DB 0x1F, 0x20, 0x40, 0xD0, 0x60, 0x20, 0x1F, 0x05 + DB 0x40, 0xA4, 0x4C, 0x9A, 0x60, 0x20, 0x1F, 0x09 + DB 0x40, 0xA2, 0x0C, 0x60, 0x97, 0x60, 0x20, 0x1F + DB 0x0C, 0x20, 0x60, 0xA0, 0x20, 0x0B, 0x40, 0x96 + DB 0x40, 0x1F, 0x10, 0x40, 0x9F, 0x40, 0x0B, 0x40 + DB 0x95, 0x20, 0x1F, 0x12, 0x40, 0x9E, 0x60, 0x0B + DB 0x20, 0x93, 0x60, 0x20, 0x1F, 0x14, 0x40, 0x9E + DB 0x0B, 0x20, 0x92, 0x60, 0x1F, 0x17, 0x40, 0x9D + DB 0x0C, 0x91, 0x60, 0x14, 0x20, 0x41, 0x62, 0x81 + DB 0x62, 0x41, 0x21, 0x15, 0x60, 0x9C, 0x20, 0x0B + DB 0x91, 0x20, 0x10, 0x20, 0x40, 0x60, 0x90, 0x60 + DB 0x20, 0x13, 0x9C, 0x20, 0x0B, 0x90, 0x20, 0x0F + DB 0x40, 0x60, 0x96, 0x60, 0x20, 0x10, 0x20, 0x9B + DB 0x20, 0x0B, 0x8F, 0x40, 0x0E, 0x40, 0x9B, 0x60 + DB 0x20, 0x0F, 0x60, 0x9A, 0x20, 0x0B, 0x8F, 0x0D + DB 0x20, 0x60, 0x9E, 0x40, 0x0E, 0x20, 0x9A, 0x20 + DB 0x0B, 0x8E, 0x40, 0x0C, 0x20, 0xA1, 0x40, 0x0E + DB 0x9A, 0x20, 0x0B, 0x8E, 0x0C, 0x40, 0xA3, 0x40 + DB 0x0D, 0x40, 0x99, 0x20, 0x0B, 0x8D, 0x40, 0x0B + DB 0x20, 0xA5, 0x40, 0x0C, 0x20, 0x99, 0x20, 0x0B + DB 0x8D, 0x20, 0x0A, 0x20, 0xA7, 0x20, 0x0B, 0x20 + DB 0x99, 0x20, 0x0A, 0x20, 0x8C, 0x60, 0x0B, 0x40 + DB 0xA7, 0x60, 0x0C, 0x99, 0x0B, 0x20, 0x8C, 0x40 + DB 0x0A, 0x20, 0xA9, 0x20, 0x0B, 0x60, 0x97, 0x60 + DB 0x0B, 0x40, 0x8C, 0x20, 0x0A, 0x40, 0xA9, 0x40 + DB 0x0B, 0x60, 0x97, 0x40, 0x0B, 0x40, 0x8C, 0x20 + DB 0x0A, 0x60, 0xA9, 0x40, 0x0B, 0x60, 0x97, 0x20 + DB 0x0B, 0x8D, 0x0B, 0xAA, 0x60, 0x0B, 0x60, 0x97 + DB 0x0B, 0x20, 0x8D, 0x0B, 0xAB, 0x0B, 0x60, 0x96 + DB 0x40, 0x0B, 0x40, 0x8D, 0x0B, 0xAB, 0x0B, 0x60 + DB 0x96, 0x0C, 0x60, 0x8D, 0x0B, 0xAA, 0x60, 0x0B + DB 0x96, 0x40, 0x0B, 0x20, 0x8E, 0x0B, 0xAA, 0x40 + DB 0x0A, 0x20, 0x95, 0x60, 0x0C, 0x40, 0x8E, 0x0B + DB 0x40, 0xA9, 0x40, 0x0A, 0x40, 0x95, 0x20, 0x0C + DB 0x8F, 0x20, 0x0A, 0x20, 0xA9, 0x20, 0x0A, 0x60 + DB 0x94, 0x40, 0x0C, 0x40, 0x8F, 0x20, 0x0B, 0xA8 + DB 0x60, 0x0A, 0x20, 0x94, 0x40, 0x0D, 0x90, 0x40 + DB 0x0B, 0x40, 0xA7, 0x20, 0x0A, 0x40, 0x93, 0x40 + DB 0x0D, 0x40, 0x90, 0x60, 0x0C, 0x60, 0xA5, 0x60 + DB 0x0A, 0x20, 0x93, 0x40, 0x0D, 0x20, 0x92, 0x20 + DB 0x0B, 0x20, 0xA4, 0x60, 0x0B, 0x40, 0x91, 0x60 + DB 0x20, 0x0E, 0x93, 0x40, 0x0C, 0x20, 0xA3, 0x20 + DB 0x0A, 0x20, 0x91, 0x40, 0x0F, 0x60, 0x93, 0x60 + DB 0x0D, 0x20, 0x60, 0xA0, 0x20, 0x0A, 0x20, 0x90 + DB 0x40, 0x20, 0x0F, 0x40, 0x95, 0x20, 0x0E, 0x40 + DB 0x9D, 0x60, 0x0C, 0x60, 0x8E, 0x40, 0x11, 0x40 + DB 0x96, 0x60, 0x0F, 0x20, 0x60, 0x9A, 0x40, 0x0C + DB 0x60, 0x8C, 0x60, 0x20, 0x12, 0x40, 0x98, 0x40 + DB 0x10, 0x20, 0x40, 0x96, 0x40, 0x0D, 0x60, 0x8A + DB 0x40, 0x20, 0x14, 0x40, 0x9A, 0x20, 0x12, 0x20 + DB 0x40, 0x90, 0x60, 0x20, 0x0D, 0x20, 0x87, 0x60 + DB 0x40, 0x21, 0x16, 0x60, 0x9C, 0x20, 0x14, 0x21 + DB 0x41, 0x63, 0x80, 0x62, 0x40, 0x21, 0x0F, 0x40 + DB 0x81, 0x61, 0x41, 0x21, 0x19, 0x20, 0x60, 0x9D + DB 0x60, 0x20, 0x1F, 0x11, 0x21, 0x1F, 0x00, 0x40 + DB 0xA0, 0x60, 0x20, 0x1F, 0x1F, 0x11, 0x20, 0x60 + DB 0xA3, 0x20, 0x1F, 0x1F, 0x0E, 0x20, 0x40, 0xA6 + DB 0x40, 0x1F, 0x1F, 0x0C, 0x40, 0xA9, 0x60, 0x20 + DB 0x1F, 0x1F, 0x07, 0x20, 0x40, 0xAD, 0x60, 0x20 + DB 0x1F, 0x1F, 0x03, 0x20, 0x60, 0xB1, 0x60, 0x20 + DB 0x1F, 0x1E, 0x20, 0x40, 0xB6, 0x60, 0x40, 0x20 + DB 0x1F, 0x17, 0x21, 0x60, 0xBC, 0x60, 0x40, 0x20 + DB 0x1F, 0x10, 0x21, 0x40, 0xC4, 0x60, 0x40, 0x21 + DB 0x1F, 0x06, 0x21, 0x40, 0x60, 0xCD, 0x60, 0x41 + DB 0x22, 0x16, 0x22, 0x41, 0x61, 0xDC, 0x64, 0x45 + DB 0x64, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC4 +; TOTAL COMPRESSED SIZE = 4852 diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/c120_aa_idx.inc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/code_part1/OSTC_code_asm_part1/c120_aa_idx.inc Mon Jun 23 17:29:59 2014 +0200 @@ -0,0 +1,21 @@ +;========================================================================== +; Font index exported lun. mars 17 2014 by FontIO.cpp,v 50eb4d95b392 2014/03/17 12:06:30 jDG $ +;========================================================================== +c120_aa_chars EQU .12 +c120_aa_firstChar EQU '.' +c120_aa_lastChar EQU '9' +; +c120_aa_idx: + DW c120_aa_bits + 0x0000 ; . dot + DW c120_aa_bits + 0x006D ; / slash + DW c120_aa_bits + 0x00B8 ; 0 0 + DW c120_aa_bits + 0x0275 ; 1 1 + DW c120_aa_bits + 0x038C ; 2 2 + DW c120_aa_bits + 0x0565 ; 3 3 + DW c120_aa_bits + 0x0781 ; 4 4 + DW c120_aa_bits + 0x08CD ; 5 5 + DW c120_aa_bits + 0x0A93 ; 6 6 + DW c120_aa_bits + 0x0CD5 ; 7 7 + DW c120_aa_bits + 0x0E43 ; 8 8 + DW c120_aa_bits + 0x10BC ; 9 9 + DW c120_aa_bits + 0x12F4 ; END OF INDEX diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/c92_aa.inc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/code_part1/OSTC_code_asm_part1/c92_aa.inc Mon Jun 23 17:29:59 2014 +0200 @@ -0,0 +1,477 @@ +;========================================================================== +; Font data exported lun. mars 17 2014 by FontIO.cpp,v 50eb4d95b392 2014/03/17 12:06:30 jDG $ +;========================================================================== +c92_aa_height EQU .90 +c92_aa_width EQU .60 +c92_aa_nbbits EQU .3 +; +c92_aa_bits: +; . dot + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBC, 0x60, 0x46 + DB 0xCE, 0x60, 0x40, 0x20, 0x08, 0x20, 0x40, 0xCA + DB 0x40, 0x0D, 0x20, 0x60, 0xC7, 0x40, 0x0F, 0x20 + DB 0x60, 0xC5, 0x40, 0x11, 0x20, 0xC5, 0x13, 0x40 + DB 0xC3, 0x40, 0x14, 0xC3, 0x40, 0x14, 0xC3, 0x40 + DB 0x14, 0xC3, 0x40, 0x14, 0xC3, 0x60, 0x13, 0x20 + DB 0xC4, 0x20, 0x12, 0x40, 0xC4, 0x60, 0x20, 0x10 + DB 0x40, 0xC6, 0x60, 0x20, 0x0E, 0x40, 0xC9, 0x40 + DB 0x0B, 0x20, 0x60, 0xCC, 0x40, 0x21, 0x04, 0x20 + DB 0x40, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE +; / slash + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0x97 +; 0 0 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xA4 + DB 0x60, 0x56, 0x60, 0xB9, 0x60, 0x41, 0x21, 0x1C + DB 0x22, 0x41, 0x60, 0xAD, 0x60, 0x40, 0x20, 0x1F + DB 0x09, 0x20, 0x41, 0xA6, 0x40, 0x20, 0x1F, 0x11 + DB 0x20, 0x40, 0x60, 0x9F, 0x60, 0x20, 0x1F, 0x17 + DB 0x20, 0x40, 0x9B, 0x60, 0x20, 0x1F, 0x1B, 0x20 + DB 0x40, 0x97, 0x60, 0x20, 0x1F, 0x1F, 0x20, 0x60 + DB 0x94, 0x40, 0x1F, 0x1F, 0x03, 0x40, 0x91, 0x60 + DB 0x20, 0x1F, 0x1F, 0x05, 0x40, 0x8F, 0x60, 0x20 + DB 0x14, 0x21, 0x47, 0x60, 0x82, 0x60, 0x4A, 0x22 + DB 0x15, 0x40, 0x8D, 0x60, 0x20, 0x0F, 0x20, 0x41 + DB 0x60, 0x9F, 0x60, 0x41, 0x21, 0x10, 0x60, 0x8C + DB 0x20, 0x0D, 0x20, 0x40, 0xA9, 0x60, 0x40, 0x20 + DB 0x0E, 0x8B, 0x40, 0x0B, 0x20, 0x40, 0xAF, 0x60 + DB 0x40, 0x0C, 0x40, 0x89, 0x60, 0x0A, 0x20, 0x40 + DB 0xB4, 0x40, 0x0B, 0x89, 0x20, 0x09, 0x20, 0xB7 + DB 0x60, 0x0A, 0x60, 0x87, 0x60, 0x09, 0x40, 0xB9 + DB 0x60, 0x09, 0x20, 0x87, 0x40, 0x08, 0x20, 0xBB + DB 0x40, 0x08, 0x20, 0x87, 0x20, 0x08, 0x60, 0xBB + DB 0x60, 0x09, 0x87, 0x08, 0x20, 0xBD, 0x20, 0x08 + DB 0x87, 0x08, 0x40, 0xBD, 0x40, 0x08, 0x87, 0x08 + DB 0x40, 0xBD, 0x40, 0x08, 0x87, 0x08, 0x40, 0xBD + DB 0x40, 0x08, 0x87, 0x08, 0x20, 0xBD, 0x20, 0x07 + DB 0x20, 0x87, 0x09, 0xBC, 0x40, 0x08, 0x20, 0x87 + DB 0x20, 0x08, 0x40, 0xBB, 0x20, 0x08, 0x40, 0x87 + DB 0x20, 0x09, 0x60, 0xB9, 0x20, 0x09, 0x60, 0x87 + DB 0x60, 0x0A, 0x60, 0xB6, 0x60, 0x20, 0x09, 0x40 + DB 0x89, 0x0B, 0x40, 0xB4, 0x40, 0x0B, 0x60, 0x89 + DB 0x40, 0x0B, 0x20, 0x40, 0xAF, 0x60, 0x40, 0x0C + DB 0x40, 0x8B, 0x20, 0x0D, 0x20, 0x40, 0xA9, 0x60 + DB 0x40, 0x20, 0x0D, 0x40, 0x8C, 0x60, 0x10, 0x20 + DB 0x41, 0x60, 0x9F, 0x60, 0x41, 0x20, 0x10, 0x20 + DB 0x8E, 0x40, 0x15, 0x21, 0x49, 0x60, 0x82, 0x49 + DB 0x21, 0x15, 0x20, 0x90, 0x40, 0x1F, 0x1F, 0x05 + DB 0x40, 0x92, 0x60, 0x1F, 0x1F, 0x02, 0x20, 0x60 + DB 0x94, 0x60, 0x20, 0x1F, 0x1F, 0x40, 0x98, 0x60 + DB 0x20, 0x1F, 0x1B, 0x40, 0x9C, 0x60, 0x20, 0x1F + DB 0x16, 0x20, 0x40, 0xA1, 0x40, 0x20, 0x1F, 0x10 + DB 0x20, 0x40, 0x60, 0xA6, 0x60, 0x40, 0x20, 0x1F + DB 0x08, 0x20, 0x40, 0x60, 0xAE, 0x60, 0x41, 0x22 + DB 0x1B, 0x21, 0x41, 0x60, 0xBA, 0x60, 0x55, 0x60 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCB +; 1 1 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xC4, 0x43, 0x60, 0xB8, 0x49, 0x90, 0x60, 0x06 + DB 0x21, 0x41, 0xB2, 0x09, 0x90, 0x40, 0x0A, 0xB2 + DB 0x09, 0x8F, 0x60, 0x0A, 0x40, 0xB2, 0x09, 0x8F + DB 0x40, 0x09, 0x20, 0xB3, 0x09, 0x8E, 0x60, 0x0A + DB 0x60, 0xB3, 0x09, 0x8E, 0x40, 0x09, 0x20, 0xB4 + DB 0x09, 0x8D, 0x60, 0x0A, 0x60, 0xB4, 0x09, 0x8D + DB 0x40, 0x09, 0x40, 0xB5, 0x09, 0x8C, 0x60, 0x0A + DB 0x60, 0xB5, 0x09, 0x8C, 0x40, 0x09, 0x40, 0xB6 + DB 0x09, 0x8B, 0x60, 0x0A, 0xB7, 0x09, 0x8B, 0x40 + DB 0x09, 0x40, 0xB7, 0x09, 0x8A, 0x60, 0x09, 0x20 + DB 0xB8, 0x09, 0x8A, 0x40, 0x09, 0x40, 0xB8, 0x09 + DB 0x89, 0x60, 0x09, 0x20, 0xB9, 0x09, 0x89, 0x40 + DB 0x1F, 0x1F, 0x0E, 0x89, 0x1F, 0x1F, 0x0F, 0x89 + DB 0x1F, 0x1F, 0x0F, 0x89, 0x1F, 0x1F, 0x0F, 0x89 + DB 0x1F, 0x1F, 0x0F, 0x89, 0x1F, 0x1F, 0x0F, 0x89 + DB 0x1F, 0x1F, 0x0F, 0x89, 0x1F, 0x1F, 0x0F, 0x89 + DB 0x5F, 0x5F, 0x45, 0x09, 0xCF, 0x09, 0xCF, 0x09 + DB 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09 + DB 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09 + DB 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x88 +; 2 2 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7 + DB 0x61, 0xBE, 0x40, 0x28, 0x8D, 0x40, 0x02, 0x20 + DB 0x41, 0x60, 0xB7, 0x60, 0x20, 0x09, 0x8C, 0x60 + DB 0x08, 0x20, 0x40, 0x60, 0xB2, 0x40, 0x0B, 0x8C + DB 0x20, 0x09, 0x20, 0xB2, 0x20, 0x0C, 0x8B, 0x40 + DB 0x09, 0x20, 0xB1, 0x60, 0x20, 0x0D, 0x8A, 0x60 + DB 0x09, 0x20, 0x60, 0xB0, 0x40, 0x0F, 0x8A, 0x40 + DB 0x09, 0x60, 0xAF, 0x60, 0x20, 0x10, 0x89, 0x60 + DB 0x09, 0x40, 0xAF, 0x60, 0x20, 0x11, 0x89, 0x40 + DB 0x09, 0xAF, 0x40, 0x13, 0x89, 0x20, 0x08, 0x40 + DB 0xAD, 0x60, 0x20, 0x14, 0x88, 0x60, 0x09, 0xAD + DB 0x40, 0x16, 0x88, 0x40, 0x08, 0x20, 0xAC, 0x40 + DB 0x0C, 0x20, 0x09, 0x88, 0x20, 0x08, 0x40, 0xAA + DB 0x60, 0x20, 0x0B, 0x20, 0x60, 0x40, 0x09, 0x88 + DB 0x20, 0x08, 0x60, 0xA9, 0x40, 0x0C, 0x20, 0x60 + DB 0x80, 0x40, 0x09, 0x88, 0x09, 0xA8, 0x60, 0x20 + DB 0x0C, 0x40, 0x82, 0x40, 0x09, 0x88, 0x09, 0xA7 + DB 0x60, 0x20, 0x0B, 0x20, 0x60, 0x83, 0x40, 0x09 + DB 0x88, 0x09, 0xA6, 0x40, 0x0C, 0x20, 0x60, 0x84 + DB 0x40, 0x09, 0x88, 0x09, 0xA4, 0x60, 0x20, 0x0C + DB 0x40, 0x86, 0x40, 0x09, 0x88, 0x09, 0x40, 0xA2 + DB 0x40, 0x0C, 0x20, 0x60, 0x87, 0x40, 0x09, 0x88 + DB 0x09, 0x20, 0xA0, 0x60, 0x20, 0x0C, 0x20, 0x60 + DB 0x88, 0x40, 0x09, 0x88, 0x20, 0x09, 0x60, 0x9E + DB 0x40, 0x0D, 0x40, 0x8A, 0x40, 0x09, 0x88, 0x20 + DB 0x09, 0x20, 0x9C, 0x60, 0x20, 0x0C, 0x20, 0x60 + DB 0x8B, 0x40, 0x09, 0x88, 0x40, 0x0A, 0x40, 0x99 + DB 0x60, 0x20, 0x0D, 0x20, 0x60, 0x8C, 0x40, 0x09 + DB 0x88, 0x60, 0x0B, 0x40, 0x96, 0x60, 0x40, 0x0E + DB 0x40, 0x8E, 0x40, 0x09, 0x89, 0x20, 0x0B, 0x20 + DB 0x60, 0x92, 0x60, 0x40, 0x0E, 0x20, 0x60, 0x8F + DB 0x40, 0x09, 0x89, 0x60, 0x0D, 0x40, 0x60, 0x8E + DB 0x40, 0x20, 0x0F, 0x20, 0x60, 0x90, 0x20, 0x09 + DB 0x8A, 0x20, 0x0E, 0x20, 0x41, 0x60, 0x86, 0x41 + DB 0x20, 0x11, 0x40, 0x92, 0x20, 0x09, 0x8A, 0x60 + DB 0x14, 0x21, 0x15, 0x20, 0x60, 0x93, 0x20, 0x09 + DB 0x8B, 0x60, 0x1F, 0x0A, 0x40, 0x95, 0x20, 0x09 + DB 0x8C, 0x40, 0x1F, 0x07, 0x40, 0x60, 0x96, 0x20 + DB 0x09, 0x8D, 0x40, 0x1F, 0x04, 0x20, 0x60, 0x98 + DB 0x20, 0x09, 0x8E, 0x60, 0x20, 0x1F, 0x00, 0x20 + DB 0x40, 0x9A, 0x20, 0x09, 0x90, 0x40, 0x1D, 0x20 + DB 0x40, 0x9C, 0x20, 0x09, 0x91, 0x60, 0x40, 0x19 + DB 0x40, 0x60, 0x9E, 0x20, 0x09, 0x94, 0x40, 0x20 + DB 0x12, 0x21, 0x60, 0xA1, 0x20, 0x09, 0x97, 0x41 + DB 0x21, 0x08, 0x21, 0x41, 0x60, 0xA4, 0x20, 0x09 + DB 0xCE, 0x20, 0x09, 0xCE, 0x20, 0x09, 0xCE, 0x60 + DB 0x49, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0x88 +; 3 3 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0x84, 0x44, 0x21, 0x60, 0x8B, 0x60, 0x22 + DB 0x44, 0x60, 0xB8, 0x09, 0x40, 0x8B, 0x40, 0x08 + DB 0x20, 0xB7, 0x20, 0x08, 0x20, 0x8A, 0x60, 0x09 + DB 0x60, 0x94, 0x60, 0x48, 0x98, 0x60, 0x09, 0x8A + DB 0x40, 0x08, 0x40, 0x95, 0x40, 0x07, 0x20, 0x99 + DB 0x09, 0x60, 0x89, 0x09, 0x60, 0x95, 0x40, 0x07 + DB 0x40, 0x99, 0x20, 0x08, 0x40, 0x88, 0x40, 0x08 + DB 0x40, 0x96, 0x40, 0x07, 0x40, 0x99, 0x40, 0x08 + DB 0x40, 0x88, 0x20, 0x08, 0x60, 0x96, 0x40, 0x07 + DB 0x40, 0x9A, 0x08, 0x20, 0x88, 0x08, 0x20, 0x97 + DB 0x40, 0x07, 0x40, 0x9A, 0x20, 0x07, 0x20, 0x87 + DB 0x60, 0x08, 0x40, 0x97, 0x40, 0x07, 0x40, 0x9A + DB 0x20, 0x08, 0x87, 0x40, 0x08, 0x98, 0x40, 0x07 + DB 0x40, 0x9A, 0x40, 0x08, 0x87, 0x20, 0x07, 0x20 + DB 0x98, 0x20, 0x07, 0x60, 0x9A, 0x40, 0x08, 0x87 + DB 0x20, 0x07, 0x20, 0x98, 0x20, 0x07, 0x9B, 0x40 + DB 0x08, 0x87, 0x08, 0x40, 0x98, 0x08, 0x60, 0x9A + DB 0x40, 0x08, 0x87, 0x08, 0x40, 0x97, 0x40, 0x08 + DB 0x40, 0x9A, 0x40, 0x08, 0x87, 0x08, 0x40, 0x97 + DB 0x40, 0x08, 0x40, 0x9A, 0x20, 0x08, 0x86, 0x60 + DB 0x08, 0x40, 0x97, 0x20, 0x08, 0x40, 0x9A, 0x20 + DB 0x07, 0x20, 0x87, 0x08, 0x40, 0x96, 0x60, 0x09 + DB 0x20, 0x9A, 0x08, 0x20, 0x87, 0x08, 0x20, 0x96 + DB 0x40, 0x0A, 0x99, 0x40, 0x08, 0x40, 0x87, 0x09 + DB 0x60, 0x94, 0x60, 0x0B, 0x60, 0x98, 0x20, 0x08 + DB 0x60, 0x87, 0x20, 0x08, 0x40, 0x94, 0x20, 0x0B + DB 0x20, 0x97, 0x60, 0x09, 0x88, 0x20, 0x09, 0x60 + DB 0x92, 0x40, 0x0D, 0x60, 0x96, 0x20, 0x08, 0x20 + DB 0x88, 0x40, 0x09, 0x20, 0x91, 0x60, 0x0E, 0x20 + DB 0x95, 0x40, 0x09, 0x60, 0x88, 0x60, 0x0A, 0x20 + DB 0x8F, 0x60, 0x10, 0x40, 0x93, 0x60, 0x09, 0x20 + DB 0x8A, 0x20, 0x0A, 0x20, 0x60, 0x8C, 0x40, 0x12 + DB 0x40, 0x91, 0x60, 0x0A, 0x40, 0x8A, 0x40, 0x0C + DB 0x40, 0x60, 0x87, 0x60, 0x40, 0x09, 0x21, 0x09 + DB 0x20, 0x60, 0x8E, 0x40, 0x0A, 0x20, 0x8C, 0x20 + DB 0x0D, 0x21, 0x43, 0x21, 0x0B, 0x60, 0x40, 0x0B + DB 0x40, 0x60, 0x8A, 0x40, 0x0C, 0x60, 0x8C, 0x60 + DB 0x1F, 0x00, 0x40, 0x80, 0x60, 0x0D, 0x20, 0x42 + DB 0x60, 0x80, 0x42, 0x20, 0x0D, 0x40, 0x8E, 0x40 + DB 0x1E, 0x20, 0x82, 0x20, 0x1F, 0x03, 0x20, 0x90 + DB 0x20, 0x1C, 0x20, 0x60, 0x82, 0x60, 0x1F, 0x02 + DB 0x20, 0x92, 0x20, 0x1A, 0x20, 0x60, 0x84, 0x60 + DB 0x1F, 0x00, 0x20, 0x60, 0x93, 0x40, 0x18, 0x40 + DB 0x87, 0x60, 0x1E, 0x20, 0x96, 0x60, 0x20, 0x14 + DB 0x20, 0x60, 0x89, 0x60, 0x20, 0x1B, 0x40, 0x99 + DB 0x60, 0x20, 0x10, 0x20, 0x60, 0x8C, 0x60, 0x20 + DB 0x18, 0x40, 0x60, 0x9D, 0x60, 0x40, 0x21, 0x06 + DB 0x21, 0x40, 0x60, 0x91, 0x60, 0x20, 0x14, 0x40 + DB 0x60, 0xC2, 0x60, 0x40, 0x20, 0x0E, 0x20, 0x40 + DB 0xC8, 0x60, 0x41, 0x27, 0x41, 0x60, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3 +; 4 4 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xAD, 0x40, 0x03 + DB 0x23, 0x41, 0xCB, 0x60, 0x40, 0x0B, 0xC9, 0x60 + DB 0x40, 0x0D, 0xC7, 0x60, 0x40, 0x0F, 0xC5, 0x60 + DB 0x20, 0x11, 0xC3, 0x60, 0x20, 0x13, 0xC1, 0x40 + DB 0x20, 0x15, 0xBF, 0x40, 0x20, 0x17, 0xBD, 0x40 + DB 0x20, 0x19, 0xBB, 0x40, 0x10, 0x40, 0x80, 0x20 + DB 0x08, 0xB9, 0x40, 0x10, 0x40, 0x82, 0x20, 0x08 + DB 0xB6, 0x60, 0x40, 0x10, 0x40, 0x84, 0x09, 0xB4 + DB 0x60, 0x40, 0x0F, 0x20, 0x40, 0x86, 0x09, 0xB2 + DB 0x60, 0x40, 0x0F, 0x20, 0x40, 0x88, 0x09, 0xB0 + DB 0x60, 0x20, 0x0F, 0x20, 0x40, 0x8A, 0x09, 0xAE + DB 0x60, 0x20, 0x0F, 0x20, 0x40, 0x8C, 0x09, 0xAC + DB 0x60, 0x20, 0x0F, 0x20, 0x40, 0x8E, 0x09, 0xAA + DB 0x40, 0x20, 0x0F, 0x20, 0x60, 0x90, 0x09, 0xA8 + DB 0x40, 0x20, 0x0F, 0x20, 0x60, 0x92, 0x09, 0xA6 + DB 0x40, 0x20, 0x0F, 0x20, 0x60, 0x94, 0x09, 0xA4 + DB 0x40, 0x10, 0x20, 0x60, 0x96, 0x09, 0xA2, 0x40 + DB 0x10, 0x40, 0x60, 0x98, 0x09, 0x9F, 0x60, 0x40 + DB 0x10, 0x40, 0x60, 0x9A, 0x09, 0x9D, 0x60, 0x40 + DB 0x10, 0x40, 0x60, 0x9C, 0x09, 0x9B, 0x60, 0x40 + DB 0x10, 0x40, 0x60, 0x9E, 0x09, 0x9B, 0x10, 0x40 + DB 0xA1, 0x09, 0x9B, 0x0E, 0x40, 0xA3, 0x09, 0x9B + DB 0x0C, 0x40, 0xA5, 0x09, 0x9B, 0x0B, 0x3F, 0x27 + DB 0x09, 0x31, 0x89, 0x1F, 0x1F, 0x0F, 0x89, 0x1F + DB 0x1F, 0x0F, 0x89, 0x1F, 0x1F, 0x0F, 0x89, 0x1F + DB 0x1F, 0x0F, 0x89, 0x1F, 0x1F, 0x0F, 0x89, 0x1F + DB 0x1F, 0x0F, 0x89, 0x1F, 0x1F, 0x0F, 0xBD, 0x09 + DB 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09 + DB 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09, 0xCF, 0x09 + DB 0xCF, 0x09, 0xCF, 0x49, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xB2 +; 5 5 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0x81, 0x40, 0x28, 0x40, 0x89, 0x5F, 0x48 + DB 0x9B, 0x40, 0x09, 0x89, 0x1F, 0x08, 0x9C, 0x09 + DB 0x60, 0x88, 0x1F, 0x07, 0x20, 0x9C, 0x20, 0x08 + DB 0x40, 0x88, 0x1F, 0x07, 0x20, 0x9C, 0x40, 0x08 + DB 0x40, 0x88, 0x1F, 0x07, 0x40, 0x9C, 0x60, 0x08 + DB 0x20, 0x88, 0x1F, 0x07, 0x40, 0x9D, 0x08, 0x20 + DB 0x88, 0x1F, 0x07, 0x40, 0x9D, 0x20, 0x07, 0x20 + DB 0x88, 0x1F, 0x07, 0x40, 0x9D, 0x20, 0x08, 0x88 + DB 0x09, 0x20, 0x93, 0x08, 0x40, 0x9D, 0x20, 0x08 + DB 0x88, 0x09, 0x20, 0x93, 0x08, 0x40, 0x9D, 0x40 + DB 0x08, 0x88, 0x09, 0x20, 0x93, 0x08, 0x9E, 0x40 + + DB 0x08, 0x88, 0x09, 0x20, 0x93, 0x08, 0x9E, 0x40 + DB 0x08, 0x88, 0x09, 0x20, 0x93, 0x08, 0x40, 0x9D + DB 0x40, 0x08, 0x88, 0x09, 0x20, 0x93, 0x08, 0x40 + DB 0x9D, 0x40, 0x08, 0x88, 0x09, 0x20, 0x93, 0x08 + DB 0x40, 0x9D, 0x20, 0x07, 0x20, 0x88, 0x09, 0x20 + DB 0x93, 0x08, 0x40, 0x9D, 0x20, 0x07, 0x20, 0x88 + DB 0x09, 0x20, 0x93, 0x08, 0x20, 0x9C, 0x60, 0x08 + DB 0x40, 0x88, 0x09, 0x20, 0x93, 0x09, 0x60, 0x9B + DB 0x40, 0x08, 0x40, 0x88, 0x09, 0x20, 0x93, 0x20 + DB 0x08, 0x40, 0x9B, 0x09, 0x60, 0x88, 0x09, 0x20 + DB 0x93, 0x40, 0x09, 0x60, 0x99, 0x40, 0x08, 0x20 + DB 0x89, 0x09, 0x20, 0x93, 0x40, 0x09, 0x20, 0x98 + DB 0x60, 0x09, 0x40, 0x89, 0x09, 0x20, 0x94, 0x0A + DB 0x40, 0x96, 0x60, 0x0A, 0x8A, 0x09, 0x20, 0x94 + DB 0x20, 0x0A, 0x40, 0x94, 0x60, 0x0A, 0x40, 0x8A + DB 0x09, 0x20, 0x94, 0x40, 0x0B, 0x20, 0x92, 0x40 + DB 0x0A, 0x20, 0x8B, 0x09, 0x20, 0x95, 0x20, 0x0C + DB 0x40, 0x8D, 0x60, 0x40, 0x0C, 0x40, 0x8B, 0x09 + DB 0x20, 0x95, 0x60, 0x0E, 0x20, 0x40, 0x60, 0x85 + DB 0x60, 0x41, 0x20, 0x0D, 0x40, 0x8C, 0x09, 0x20 + DB 0x96, 0x40, 0x12, 0x21, 0x12, 0x20, 0x8D, 0x09 + DB 0x20, 0x97, 0x20, 0x1F, 0x05, 0x20, 0x8E, 0x09 + DB 0x20, 0x97, 0x60, 0x20, 0x1F, 0x03, 0x20, 0x8F + DB 0x09, 0x20, 0x98, 0x60, 0x20, 0x1F, 0x01, 0x40 + DB 0x90, 0x09, 0x20, 0x9A, 0x20, 0x1E, 0x20, 0x40 + DB 0x91, 0x09, 0x20, 0x9B, 0x40, 0x1C, 0x40, 0x93 + DB 0x2A, 0x9C, 0x60, 0x40, 0x17, 0x20, 0x40, 0x60 + DB 0xBF, 0x40, 0x20, 0x11, 0x21, 0x60, 0xC5, 0x41 + DB 0x21, 0x07, 0x21, 0x41, 0x60, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCD +; 6 6 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0x60 + DB 0x44, 0x2C, 0x43, 0x60, 0xBB, 0x60, 0x41, 0x21 + DB 0x1A, 0x20, 0x41, 0xB2, 0x60, 0x40, 0x20, 0x1F + DB 0x04, 0x20, 0x40, 0x60, 0xAB, 0x40, 0x20, 0x1F + DB 0x0B, 0x20, 0x40, 0xA6, 0x60, 0x20, 0x1F, 0x11 + DB 0x40, 0x60, 0xA1, 0x40, 0x20, 0x1F, 0x15, 0x40 + DB 0x9E, 0x40, 0x20, 0x1F, 0x18, 0x20, 0x60, 0x9A + DB 0x60, 0x20, 0x1F, 0x1C, 0x40, 0x98, 0x40, 0x15 + DB 0x22, 0x42, 0x1F, 0x03, 0x20, 0x95, 0x60, 0x20 + DB 0x11, 0x21, 0x40, 0x60, 0x83, 0x60, 0x20, 0x0A + DB 0x20, 0x41, 0x60, 0x80, 0x60, 0x43, 0x20, 0x0F + DB 0x20, 0x93, 0x60, 0x10, 0x20, 0x40, 0x87, 0x40 + DB 0x09, 0x20, 0x40, 0x8C, 0x40, 0x20, 0x0D, 0x40 + DB 0x91, 0x60, 0x0E, 0x20, 0x60, 0x89, 0x40, 0x08 + DB 0x20, 0x40, 0x91, 0x40, 0x0C, 0x60, 0x8F, 0x60 + DB 0x0D, 0x40, 0x60, 0x8A, 0x20, 0x08, 0x40, 0x94 + DB 0x60, 0x20, 0x0A, 0x20, 0x8E, 0x60, 0x0C, 0x40 + DB 0x8C, 0x40, 0x08, 0x40, 0x97, 0x40, 0x0A, 0x40 + DB 0x8C, 0x60, 0x20, 0x0A, 0x20, 0x60, 0x8C, 0x40 + DB 0x08, 0x60, 0x99, 0x60, 0x0A, 0x8C, 0x20, 0x0A + DB 0x40, 0x8D, 0x60, 0x08, 0x40, 0x9B, 0x40, 0x09 + DB 0x60, 0x8A, 0x40, 0x0A, 0x60, 0x8E, 0x40, 0x07 + DB 0x20, 0x9D, 0x20, 0x08, 0x40, 0x8A, 0x0A, 0x60 + DB 0x8F, 0x08, 0x60, 0x9D, 0x60, 0x08, 0x20, 0x89 + DB 0x40, 0x09, 0x60, 0x8F, 0x40, 0x07, 0x20, 0x9F + DB 0x20, 0x08, 0x89, 0x09, 0x40, 0x90, 0x20, 0x07 + DB 0x40, 0x9F, 0x40, 0x08, 0x88, 0x40, 0x08, 0x20 + DB 0x91, 0x08, 0x40, 0x9F, 0x40, 0x08, 0x88, 0x20 + DB 0x08, 0x40, 0x91, 0x08, 0x60, 0x9F, 0x40, 0x08 + DB 0x88, 0x08, 0x20, 0x92, 0x08, 0x40, 0x9F, 0x40 + DB 0x08, 0x87, 0x40, 0x08, 0x40, 0x92, 0x08, 0x40 + DB 0x9F, 0x40, 0x08, 0x87, 0x40, 0x08, 0x60, 0x92 + DB 0x08, 0x40, 0x9F, 0x20, 0x07, 0x20, 0x87, 0x20 + DB 0x07, 0x20, 0x93, 0x08, 0x20, 0x9E, 0x60, 0x08 + DB 0x40, 0x87, 0x20, 0x07, 0x20, 0x93, 0x20, 0x08 + DB 0x40, 0x9D, 0x40, 0x08, 0x60, 0x87, 0x08, 0x40 + DB 0x93, 0x20, 0x08, 0x20, 0x9C, 0x60, 0x09, 0x88 + DB 0x08, 0x40, 0x93, 0x40, 0x09, 0x20, 0x9A, 0x60 + DB 0x09, 0x40, 0x88, 0x08, 0x40, 0x93, 0x60, 0x0A + DB 0x20, 0x98, 0x60, 0x0A, 0x60, 0x88, 0x08, 0x40 + DB 0x94, 0x20, 0x0A, 0x20, 0x60, 0x95, 0x40, 0x0A + DB 0x40, 0x89, 0x08, 0x40, 0x94, 0x40, 0x0C, 0x40 + DB 0x60, 0x91, 0x40, 0x0B, 0x20, 0x8A, 0x08, 0x40 + DB 0x95, 0x20, 0x0D, 0x20, 0x40, 0x60, 0x8B, 0x40 + DB 0x20, 0x0D, 0x60, 0x8A, 0x08, 0x20, 0x95, 0x60 + DB 0x10, 0x21, 0x46, 0x21, 0x0F, 0x60, 0x8B, 0x20 + DB 0x07, 0x20, 0x96, 0x60, 0x1F, 0x09, 0x60, 0x8C + DB 0x20, 0x08, 0x97, 0x60, 0x1F, 0x07, 0x60, 0x8D + DB 0x49, 0x60, 0x97, 0x60, 0x1F, 0x04, 0x20, 0x60 + DB 0xB2, 0x60, 0x20, 0x1F, 0x01, 0x40, 0xB6, 0x40 + DB 0x1E, 0x40, 0x60, 0xB9, 0x40, 0x19, 0x20, 0x40 + DB 0x60, 0xBD, 0x60, 0x20, 0x13, 0x20, 0x40, 0x60 + DB 0xC3, 0x60, 0x41, 0x21, 0x07, 0x22, 0x41, 0xFF + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0 +; 7 7 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xD4, 0x4A, 0xCE + DB 0x0A, 0xCE, 0x0A, 0xCE, 0x0A, 0xCE, 0x0A, 0xCE + DB 0x0A, 0xCE, 0x0A, 0xCE, 0x0A, 0xCE, 0x0A, 0xC3 + DB 0x60, 0x89, 0x0A, 0xBF, 0x60, 0x40, 0x20, 0x01 + DB 0x89, 0x0A, 0xBC, 0x40, 0x20, 0x05, 0x89, 0x0A + DB 0xB8, 0x60, 0x40, 0x20, 0x08, 0x89, 0x09, 0x20 + DB 0xB5, 0x60, 0x40, 0x20, 0x0B, 0x89, 0x09, 0x20 + DB 0xB2, 0x40, 0x20, 0x0F, 0x89, 0x09, 0x20, 0xAF + DB 0x40, 0x20, 0x12, 0x89, 0x09, 0x20, 0xAC, 0x40 + DB 0x20, 0x15, 0x89, 0x09, 0x20, 0xA9, 0x40, 0x20 + DB 0x18, 0x89, 0x09, 0x20, 0xA6, 0x40, 0x20, 0x1B + DB 0x89, 0x09, 0x20, 0xA3, 0x60, 0x20, 0x1D, 0x20 + DB 0x89, 0x09, 0x20, 0xA0, 0x60, 0x20, 0x1C, 0x20 + DB 0x40, 0x60, 0x8B, 0x09, 0x20, 0x9D, 0x60, 0x40 + DB 0x1B, 0x20, 0x40, 0x60, 0x8F, 0x09, 0x20, 0x9A + DB 0x60, 0x40, 0x20, 0x1A, 0x20, 0x40, 0x93, 0x09 + DB 0x20, 0x98, 0x40, 0x20, 0x19, 0x20, 0x40, 0x60 + DB 0x96, 0x09, 0x20, 0x95, 0x60, 0x20, 0x19, 0x20 + DB 0x40, 0x60, 0x99, 0x09, 0x20, 0x92, 0x60, 0x40 + DB 0x19, 0x20, 0x40, 0x9D, 0x09, 0x20, 0x90, 0x40 + DB 0x20, 0x18, 0x20, 0x60, 0xA0, 0x09, 0x20, 0x8D + DB 0x60, 0x20, 0x18, 0x20, 0x60, 0xA3, 0x09, 0x20 + DB 0x8A, 0x60, 0x40, 0x20, 0x17, 0x20, 0x60, 0xA6 + DB 0x09, 0x20, 0x88, 0x40, 0x20, 0x17, 0x20, 0x60 + DB 0xA9, 0x09, 0x20, 0x85, 0x60, 0x40, 0x17, 0x20 + DB 0x60, 0xAC, 0x09, 0x20, 0x83, 0x40, 0x20, 0x16 + DB 0x20, 0x40, 0xAF, 0x09, 0x20, 0x80, 0x60, 0x20 + DB 0x16, 0x20, 0x40, 0xB2, 0x0A, 0x20, 0x15, 0x20 + DB 0x40, 0x60, 0xB4, 0x1F, 0x40, 0x60, 0xB7, 0x1C + DB 0x20, 0x60, 0xBA, 0x19, 0x20, 0x40, 0xBD, 0x16 + DB 0x20, 0x40, 0x60, 0xBF, 0x14, 0x20, 0x60, 0xC2 + DB 0x11, 0x20, 0x40, 0xC5, 0x0F, 0x40, 0x60, 0xC7 + DB 0x0C, 0x20, 0x40, 0xCA, 0x09, 0x20, 0x40, 0x60 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCB +; 8 8 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE3, 0x60 + DB 0x40, 0x21, 0x07, 0x20, 0x41, 0x60, 0xA4, 0x60 + DB 0x46, 0x99, 0x60, 0x40, 0x20, 0x0F, 0x20, 0x40 + DB 0x9E, 0x40, 0x21, 0x0A, 0x20, 0x40, 0x60, 0x93 + DB 0x40, 0x15, 0x40, 0x99, 0x60, 0x20, 0x11, 0x20 + DB 0x40, 0x8F, 0x60, 0x20, 0x17, 0x20, 0x60, 0x95 + DB 0x60, 0x20, 0x15, 0x20, 0x60, 0x8C, 0x40, 0x1B + DB 0x60, 0x93, 0x40, 0x19, 0x40, 0x8A, 0x20, 0x1D + DB 0x60, 0x91, 0x20, 0x1B, 0x20, 0x88, 0x20, 0x1F + DB 0x60, 0x8F, 0x20, 0x1D, 0x20, 0x86, 0x40, 0x1F + DB 0x00, 0x20, 0x8E, 0x20, 0x1F, 0x20, 0x84, 0x40 + DB 0x0C, 0x20, 0x44, 0x20, 0x0E, 0x40, 0x8C, 0x40 + DB 0x1F, 0x01, 0x40, 0x82, 0x60, 0x0A, 0x20, 0x60 + DB 0x88, 0x60, 0x20, 0x0C, 0x8B, 0x60, 0x0C, 0x20 + DB 0x41, 0x61, 0x42, 0x20, 0x0D, 0x40, 0x81, 0x20 + DB 0x08, 0x20, 0x60, 0x8C, 0x60, 0x20, 0x0A, 0x40 + DB 0x8A, 0x20, 0x0A, 0x40, 0x89, 0x60, 0x20, 0x0C + DB 0x60, 0x40, 0x08, 0x20, 0x90, 0x20, 0x09, 0x20 + DB 0x89, 0x40, 0x09, 0x20, 0x60, 0x8C, 0x40, 0x0B + DB 0x20, 0x08, 0x40, 0x92, 0x20, 0x09, 0x60, 0x88 + DB 0x20, 0x08, 0x20, 0x8F, 0x60, 0x20, 0x12, 0x20 + DB 0x93, 0x60, 0x09, 0x40, 0x87, 0x60, 0x08, 0x20 + DB 0x91, 0x60, 0x20, 0x10, 0x20, 0x95, 0x40, 0x08 + DB 0x20, 0x87, 0x40, 0x08, 0x60, 0x92, 0x60, 0x0F + DB 0x20, 0x60, 0x95, 0x60, 0x08, 0x20, 0x87, 0x20 + DB 0x07, 0x20, 0x94, 0x60, 0x0E, 0x60, 0x97, 0x20 + DB 0x08, 0x87, 0x20, 0x07, 0x40, 0x95, 0x40, 0x0C + DB 0x40, 0x98, 0x40, 0x08, 0x87, 0x08, 0x60, 0x96 + DB 0x20, 0x0A, 0x20, 0x99, 0x40, 0x08, 0x87, 0x08 + DB 0x97, 0x40, 0x0A, 0x40, 0x99, 0x40, 0x08, 0x87 + DB 0x08, 0x98, 0x20, 0x09, 0x40, 0x99, 0x40, 0x08 + DB 0x87, 0x08, 0x98, 0x20, 0x09, 0x20, 0x99, 0x40 + DB 0x08, 0x87, 0x08, 0x60, 0x96, 0x40, 0x0B, 0x40 + DB 0x98, 0x40, 0x08, 0x87, 0x08, 0x40, 0x95, 0x60 + DB 0x0D, 0x98, 0x40, 0x07, 0x20, 0x87, 0x20, 0x07 + DB 0x20, 0x95, 0x20, 0x0D, 0x40, 0x97, 0x20, 0x07 + DB 0x20, 0x87, 0x20, 0x08, 0x60, 0x93, 0x40, 0x0F + DB 0x60, 0x95, 0x60, 0x08, 0x40, 0x87, 0x40, 0x08 + DB 0x20, 0x92, 0x40, 0x10, 0x20, 0x60, 0x94, 0x20 + DB 0x08, 0x60, 0x87, 0x60, 0x09, 0x40, 0x90, 0x40 + DB 0x12, 0x20, 0x93, 0x60, 0x09, 0x89, 0x20, 0x09 + DB 0x40, 0x8E, 0x40, 0x14, 0x20, 0x91, 0x60, 0x20 + DB 0x08, 0x40, 0x89, 0x40, 0x0A, 0x20, 0x40, 0x8A + DB 0x40, 0x20, 0x09, 0x40, 0x20, 0x0A, 0x20, 0x60 + DB 0x8E, 0x60, 0x20, 0x09, 0x60, 0x8A, 0x20, 0x0C + DB 0x20, 0x42, 0x60, 0x42, 0x20, 0x0B, 0x40, 0x80 + DB 0x60, 0x0C, 0x40, 0x8C, 0x40, 0x0A, 0x40, 0x8B + DB 0x40, 0x1F, 0x00, 0x20, 0x82, 0x40, 0x0D, 0x40 + DB 0x60, 0x86, 0x60, 0x40, 0x20, 0x0B, 0x60, 0x8C + DB 0x40, 0x1E, 0x20, 0x60, 0x83, 0x20, 0x0F, 0x25 + DB 0x0D, 0x40, 0x8E, 0x20, 0x1C, 0x20, 0x60, 0x84 + DB 0x60, 0x1F, 0x02, 0x20, 0x90, 0x20, 0x1A, 0x20 + DB 0x60, 0x86, 0x60, 0x1F, 0x00, 0x20, 0x92, 0x40 + DB 0x18, 0x20, 0x60, 0x88, 0x60, 0x1E, 0x20, 0x94 + DB 0x60, 0x20, 0x15, 0x40, 0x8B, 0x60, 0x1C, 0x20 + DB 0x97, 0x40, 0x20, 0x11, 0x40, 0x8E, 0x60, 0x20 + DB 0x19, 0x40, 0x9A, 0x60, 0x40, 0x20, 0x0A, 0x20 + DB 0x40, 0x60, 0x92, 0x40, 0x16, 0x40, 0x60, 0x9F + DB 0x60, 0x46, 0x60, 0x98, 0x40, 0x20, 0x10, 0x20 + DB 0x40, 0x60, 0xC5, 0x60, 0x41, 0x21, 0x07, 0x21 + DB 0x40, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0x95 +; 9 9 + DB 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x60 + DB 0x41, 0x21, 0x08, 0x21, 0x41, 0x60, 0xC2, 0x60 + DB 0x40, 0x20, 0x14, 0x20, 0x40, 0xBD, 0x40, 0x20 + DB 0x1A, 0x40, 0x60, 0xB8, 0x40, 0x20, 0x1E, 0x40 + DB 0x60, 0x99, 0x20, 0x08, 0x40, 0x8F, 0x60, 0x20 + DB 0x1F, 0x02, 0x40, 0x98, 0x40, 0x08, 0x40, 0x8E + DB 0x40, 0x1F, 0x05, 0x40, 0x97, 0x40, 0x08, 0x20 + DB 0x8D, 0x20, 0x1F, 0x07, 0x20, 0x96, 0x60, 0x08 + DB 0x20, 0x8C, 0x20, 0x1F, 0x09, 0x40, 0x96, 0x09 + DB 0x8B, 0x20, 0x0E, 0x20, 0x43, 0x60, 0x80, 0x43 + DB 0x21, 0x0F, 0x40, 0x95, 0x20, 0x08, 0x8A, 0x40 + DB 0x0C, 0x20, 0x60, 0x8D, 0x60, 0x40, 0x20, 0x0D + DB 0x60, 0x94, 0x20, 0x08, 0x89, 0x40, 0x0B, 0x40 + DB 0x93, 0x40, 0x20, 0x0B, 0x40, 0x94, 0x20, 0x08 + DB 0x89, 0x0A, 0x20, 0x60, 0x96, 0x40, 0x0B, 0x94 + DB 0x20, 0x08, 0x88, 0x40, 0x09, 0x40, 0x99, 0x40 + DB 0x0A, 0x40, 0x93, 0x20, 0x08, 0x88, 0x09, 0x40 + DB 0x9B, 0x40, 0x09, 0x20, 0x93, 0x20, 0x08, 0x87 + DB 0x60, 0x08, 0x20, 0x9D, 0x20, 0x08, 0x20, 0x93 + DB 0x08, 0x20, 0x87, 0x40, 0x08, 0x60, 0x9D, 0x60 + DB 0x09, 0x92, 0x60, 0x08, 0x20, 0x87, 0x20, 0x07 + DB 0x20, 0x9F, 0x20, 0x08, 0x92, 0x40, 0x08, 0x40 + DB 0x87, 0x08, 0x40, 0x9F, 0x40, 0x08, 0x92, 0x20 + DB 0x08, 0x40, 0x87, 0x08, 0x40, 0x9F, 0x40, 0x08 + DB 0x92, 0x09, 0x60, 0x87, 0x08, 0x40, 0x9F, 0x40 + DB 0x08, 0x91, 0x40, 0x08, 0x20, 0x88, 0x08, 0x40 + DB 0x9F, 0x40, 0x08, 0x90, 0x60, 0x09, 0x40, 0x88 + DB 0x08, 0x40, 0x9F, 0x20, 0x07, 0x20, 0x90, 0x20 + DB 0x09, 0x89, 0x08, 0x20, 0x9F, 0x08, 0x40, 0x8F + DB 0x40, 0x09, 0x40, 0x89, 0x20, 0x08, 0x60, 0x9D + DB 0x40, 0x08, 0x8F, 0x40, 0x0A, 0x8A, 0x20, 0x08 + DB 0x20, 0x9D, 0x08, 0x40, 0x8E, 0x40, 0x0A, 0x40 + DB 0x8A, 0x60, 0x09, 0x40, 0x9B, 0x20, 0x08, 0x60 + DB 0x8C, 0x60, 0x20, 0x0A, 0x20, 0x8C, 0x0A, 0x40 + DB 0x99, 0x40, 0x08, 0x40, 0x8C, 0x40, 0x0B, 0x20 + DB 0x8D, 0x40, 0x0A, 0x20, 0x97, 0x20, 0x08, 0x20 + DB 0x8A, 0x60, 0x40, 0x0C, 0x20, 0x60, 0x8D, 0x60 + DB 0x0C, 0x40, 0x93, 0x60, 0x20, 0x08, 0x20, 0x89 + DB 0x40, 0x20, 0x0E, 0x60, 0x8F, 0x40, 0x0D, 0x40 + DB 0x60, 0x8E, 0x40, 0x20, 0x09, 0x20, 0x86, 0x60 + DB 0x40, 0x20, 0x0F, 0x20, 0x60, 0x91, 0x20, 0x0E + DB 0x20, 0x41, 0x60, 0x86, 0x60, 0x40, 0x20, 0x0B + DB 0x40, 0x81, 0x60, 0x42, 0x20, 0x12, 0x20, 0x60 + DB 0x93, 0x20, 0x14, 0x21, 0x0F, 0x22, 0x17, 0x40 + DB 0x96, 0x20, 0x1F, 0x1E, 0x20, 0x60, 0x98, 0x40 + DB 0x1F, 0x1C, 0x40, 0x9B, 0x40, 0x1F, 0x18, 0x20 + DB 0x40, 0x9F, 0x40, 0x1F, 0x14, 0x20, 0x60, 0xA3 + DB 0x40, 0x1F, 0x0F, 0x20, 0x40, 0xA8, 0x60, 0x20 + DB 0x1F, 0x08, 0x20, 0x41, 0xAE, 0x60, 0x40, 0x20 + DB 0x1F, 0x21, 0x41, 0xB7, 0x42, 0x22, 0x0D, 0x23 + DB 0x43, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF + DB 0xFF, 0xFF, 0x81 +; TOTAL COMPRESSED SIZE = 3600 diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/c92_aa_idx.inc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/code_part1/OSTC_code_asm_part1/c92_aa_idx.inc Mon Jun 23 17:29:59 2014 +0200 @@ -0,0 +1,21 @@ +;========================================================================== +; Font index exported lun. mars 17 2014 by FontIO.cpp,v 50eb4d95b392 2014/03/17 12:06:30 jDG $ +;========================================================================== +c92_aa_chars EQU .12 +c92_aa_firstChar EQU '.' +c92_aa_lastChar EQU '9' +; +c92_aa_idx: + DW c92_aa_bits + 0x0000 ; . dot + DW c92_aa_bits + 0x004F ; / slash + DW c92_aa_bits + 0x007A ; 0 0 + DW c92_aa_bits + 0x01C9 ; 1 1 + DW c92_aa_bits + 0x0277 ; 2 2 + DW c92_aa_bits + 0x03F0 ; 3 3 + DW c92_aa_bits + 0x058E ; 4 4 + DW c92_aa_bits + 0x067F ; 5 5 + DW c92_aa_bits + 0x07CD ; 6 6 + DW c92_aa_bits + 0x097B ; 7 7 + DW c92_aa_bits + 0x0A8B ; 8 8 + DW c92_aa_bits + 0x0C75 ; 9 9 + DW c92_aa_bits + 0x0E10 ; END OF INDEX diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/changelog.txt --- a/code_part1/OSTC_code_asm_part1/changelog.txt Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/changelog.txt Mon Jun 23 17:29:59 2014 +0200 @@ -1,3 +1,12 @@ +New in 2.92: +BETA Version +NEW: Show Gas change countdown if CF55>0 +CHANGE: Graphical velocity on by default (CF60=1) + +New in 2.91: +BETA Version +New: Show bailout event in internal logbook + New in 2.90: Stable Release BUGFIX: CNS calculation in decoplan should track gas (no marked changes anymore) diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/color_processor.asm --- a/code_part1/OSTC_code_asm_part1/color_processor.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/color_processor.asm Mon Jun 23 17:29:59 2014 +0200 @@ -67,7 +67,7 @@ movlb HIGH(win_height) ; Switch to bank 0. ;---- Get image parameters ------------------------------------------- - tblrd*+ + tblrd*+ movff TABLAT,img_width tblrd*+ movff TABLAT,win_height @@ -77,7 +77,7 @@ ;---- Copy color table ----------------------------------------------- movf img_colors,W lfsr FSR2,colorTable -get_colors_loop: +get_colors_loop: tblrd*+ movff TABLAT,POSTINC2 tblrd*+ @@ -96,6 +96,11 @@ movff PRODH, img_pixelsH rlcf img_pixelsU ; Get the upper bit in place. + clrf WREG ; Decrement count to ease end detection. + decf img_pixelsL,F + subwfb img_pixelsH,F + subwfb img_pixelsU,F + ;---- Send window command -------------------------------------------- clrf img_width+1 ; x2 on width, for the true box size. rlcf img_width+0 @@ -109,69 +114,61 @@ clrf img_countL clrf img_countH -color_image_loop_count: + ;---- Decode repetition count +color_image_decode_1: tblrd*+ ; Get one byte - movlw 0x0F ; Get count bits - andwf TABLAT,W - swapf WREG ; On top-4 bits of W - rlcf WREG ; Push topmost bit into img_count:2 - rlcf img_countL - rlcf img_countH - rlcf WREG ; Push topmost bit into img_count:2 - rlcf img_countL - rlcf img_countH - rlcf WREG ; Push topmost bit into img_count:2 - rlcf img_countL - rlcf img_countH - rlcf WREG ; Push topmost bit into img_count:2 - rlcf img_countL - rlcf img_countH + btfss TABLAT,7 ; High bit cleared ? + bra color_image_decode_2 ; YES: this is a color byte. - movf TABLAT,W ; Does the color-bits mark a big-count ? - andlw 0xF0 - xorlw 0xF0 - bz color_image_loop_count ; YES: loop for more count bits. + rlcf TABLAT,F ; Drop high bit. + movlw .7 ; Move 7 bits +color_image_decode_3: + rlcf TABLAT,F ; Get bit into carry + rlcf img_countL,F ; Push into pixel count + rlcf img_countH,F + decfsz WREG + bra color_image_decode_3 ; and loop foreach 7 bits. - ; Get pixel color into PROD - xorlw 0xF0 ; Get back index. - swapf WREG ; Get color index to lower bits. - addwf WREG ; x2 - addlw LOW(colorTable) ; 0x60 + 2 * .15 < 0x80. - movff WREG,FSR2L + bra color_image_decode_1 ; Decode next byte. + +color_image_decode_2: + ;---- Get pixel color into PROD + movf TABLAT,W ; Get color index. + addwf WREG ; *2 + lfsr FSR2,colorTable ; Reinitialize color table. + movff WREG,FSR2L ; LOW(buffer) == 0 movff POSTINC2,PRODL movff POSTINC2,PRODH - + ; Substract count-1 from the number of pixel we should do. - movf img_countL,W ; Make a 24bit substraction. + movf img_countL,W ; Make a 24bit substraction. subwf img_pixelsL,F movf img_countH,W subwfb img_pixelsH,F movlw 0 subwfb img_pixelsU,F - incf img_countL ; Get back the true count. - addwfc img_countH +color_image_not_over: + infsnz img_countL ; Increment count. + incf img_countH ; Loop sending pixel color - incf img_countH ; Because we decrement first, should add one here ! + incf img_countH ; Because we decrement first, should add one here ! color_image_loop_pixel: AA_DATA_WRITE_PROD decfsz img_countL bra color_image_loop_pixel decfsz img_countH bra color_image_loop_pixel - - ; And count (on a 17bit counter) + + ; And count (on a 24bit counter) clrf WREG ; Make a 24bit decrement. decf img_pixelsL subwfb img_pixelsH,F subwfb img_pixelsU,F - - movf img_pixelsL,W ; Test if img_pixels == 0 - iorwf img_pixelsH,W - iorwf img_pixelsU,W - bnz color_image_loop_xy ; NO: loop... + + bnn color_image_loop_xy ; Not finished ? loop... ;---- Closeup -------------------------------------------------------- AA_CMD_WRITE 0x00 diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/customview.asm --- a/code_part1/OSTC_code_asm_part1/customview.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/customview.asm Mon Jun 23 17:29:59 2014 +0200 @@ -125,10 +125,12 @@ customview_1sec_marker: ; Do nothing extra customview_1sec_show_change_gf: ; Do nothing extra bsf menu3_active ; Set Flag -customview_1sec_clock: ; Do nothing extra customview_1sec_lead_tiss: ; Do nothing extra return +customview_1sec_clock: + goto DISP_diveclock3 ; Update end of divetime only + customview_1sec_graphs: ; Do nothing extra decfsz apnoe_mins ; 10 sec passed ? return ; No: skip. diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/definitions.asm --- a/code_part1/OSTC_code_asm_part1/definitions.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/definitions.asm Mon Jun 23 17:29:59 2014 +0200 @@ -22,9 +22,9 @@ ; ToDo: #DEFINE softwareversion_x d'2' ; Software version XX.YY -#DEFINE softwareversion_y d'90' ; Software version XX.YY +#DEFINE softwareversion_y d'92' ; Software version XX.YY -#DEFINE softwareversion_beta 0 ; (and 0 for release) +#DEFINE softwareversion_beta 1 ; (and 0 for release) #DEFINE max_custom_number d'73' ; Number of last used custom function @@ -42,6 +42,7 @@ #DEFINE logbook_profile_version 0x21 ; Do not touch! #DEFINE T0CON_debounce b'00000000' ; Timer0 Switch Debounce +;#DEFINE __DEBUG ; CPU Speed Settings ; Standard 16MHz mode @@ -65,6 +66,7 @@ #DEFINE FT_SMALL .0 #DEFINE FT_MEDIUM .1 #DEFINE FT_LARGE .2 +#DEFINE FT_HUGE .3 ; "Better Gas" behavior ; better_gas_window <= minimum_change_depth ! @@ -292,7 +294,7 @@ decodata res 2 ; Deco data mintemp res 2 ; min temperature ProfileFlagByte res 1 ; stores number of addional bytes per sample -EventByte res 1 ; Stores the Event type plus flags +EventByte res 1 ; Stores the Event type plus flags AlarmType res 1 ; 0= No Alarm ; 1= SLOW ; 2= DecoStop missed @@ -581,4 +583,5 @@ #DEFINE show_cns_in_logbook flag15,7 ;=1: Show CNS value in logbook (>= V1.84) #DEFINE store_bailout_event flag16,0 ;=1: Store the bailout event +#DEFINE gaschange_cnt_active flag16,1 ;=1: The gas switch countdown is active diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/divemode.asm --- a/code_part1/OSTC_code_asm_part1/divemode.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/divemode.asm Mon Jun 23 17:29:59 2014 +0200 @@ -52,6 +52,9 @@ ; Startup Tasks for deco modes call DISP_display_ndl_mask ; display "no stop" if not in gauge or apnoe mode + GETCUSTOM8 d'55' + movwf apnoe_surface_mins + clrf apnoe_surface_secs btfss FLAG_const_ppO2_mode ; only in const_ppO2_mode bra diveloop_loop ; OC modes, skip @@ -84,6 +87,8 @@ diveloop_loop1z: bcf update_divetime ; clear flag + call DISP_show_gas_change_countdown ; Show the gas change countdown (If required) + btfsc FLAG_const_ppO2_mode ; only in const_ppO2_mode bra diveloop_loop1c ; One Second Tasks in const_ppO2 mode @@ -1907,7 +1912,7 @@ return calc_average_depth: - btfsc reset_average_depth ; Reset the Avewrage depth? + btfsc reset_average_depth ; Reset the Average depth? rcall reset_average1 ; Reset the resettable average depth ; 1. Add new 2xdepth to the Sum of depths registers @@ -2014,7 +2019,6 @@ movwf apnoe_max_pressure+0 clrf apnoe_max_pressure+1 clrf apnoe_surface_mins - clrf apnoe_surface_secs clrf apnoe_mins clrf apnoe_secs clrf divemins+0 @@ -2057,6 +2061,7 @@ bcf tts_extra_time ;=1: Compute TTS if extra time spent at current depth bcf show_safety_stop ;=1: Show the safety stop clrf safety_stop_countdown ; Clear count-down + bcf gaschange_cnt_active ; Do not show the countdown on start call get_free_EEPROM_location ; get last position in external EEPROM, may be up to 2 secs! diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/divemode_menu.asm --- a/code_part1/OSTC_code_asm_part1/divemode_menu.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/divemode_menu.asm Mon Jun 23 17:29:59 2014 +0200 @@ -743,6 +743,8 @@ bsf stored_gas_changed ; set event flag bsf event_occured ; set global event flag bsf decoplan_invalid ; The decoplan needs to updated + btfsc better_gas_available ; If a gas change was planned... + bsf gaschange_cnt_active ; Show the countdown clrf WREG movff WREG,char_O_deco_status ; Restart decoplan computation mH bra timeout_divemenu2 ; quit menu! @@ -785,6 +787,8 @@ movff EEDATA, char_I_N2_ratio ; = N2! bsf stored_gas_changed ; set event flag bsf event_occured ; set global event flag + btfsc better_gas_available ; If a gas change was planned... + bsf gaschange_cnt_active ; Show the countdown bsf decoplan_invalid ; The decoplan needs to updated clrf WREG movff WREG,char_O_deco_status ; Restart decoplan computation mH diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/english_text.asm --- a/code_part1/OSTC_code_asm_part1/english_text.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/english_text.asm Mon Jun 23 17:29:59 2014 +0200 @@ -307,7 +307,7 @@ TCODE .40, .35, "ShowTissueGraph" ;174 ShowTissueGraph TCODE .40, .35, "Show Lead.Tiss." ;175 Show Lead.Tiss. TCODE .40, .35, "ShallowStop 1st" ;176 Shallow stop 1st (Reverse order of deco plans) - TCODE .40, .35, "Gas switch[min]" ;177 Gas switch[min] (Additional delay in decoplan for gas switches). + TCODE .40, .35, "Gas switch[min]" ;177 Gas switch[min] (Show Countdown after gas change) TCODE .40, .35, "BottomGas[/min]" ;178 BottomGas[/min] (Bottom gas usage, for volume estimation). TCODE .40, .35, "AscentGas[/min]" ;179 AscentGas[/min] (Ascent+Deco gas usage) TCODE .40, .35, "Future TTS[min]" ;180 Future TTS[min] (Compute TTS for extra time at current depth) diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/french_text.asm --- a/code_part1/OSTC_code_asm_part1/french_text.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/french_text.asm Mon Jun 23 17:29:59 2014 +0200 @@ -309,7 +309,7 @@ TCODE .40, .35, "Aff.GraphTissus" ;174 ShowTissueGraph TCODE .40, .35, "Aff.Tiss.Direct" ;175 Show Lead.Tiss. TCODE .40, .35, "Ordre paliers " ;176 Shallow stop 1st (Reverse order of deco plans) - TCODE .40, .35, "Chang. gaz[min]" ;177 Gas switch[min] (Additional delay in decoplan for gas switches). + TCODE .40, .35, "Gas switch[min]" ;177 Gas switch[min] (Show Countdown after gas change) TCODE .40, .35, "ConsoFond[/min]" ;178 BottomGas[/min] (Bottom gas usage, for volume estimation). TCODE .40, .35, "ConsoDeco[/min]" ;179 AscentGas[/min] (Ascent+Deco gas usage) TCODE .40, .35, "DTR Rйchap[min]" ;180 Future TTS[min] (Compute TTS for extra time at current depth) diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/german_text.asm --- a/code_part1/OSTC_code_asm_part1/german_text.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/german_text.asm Mon Jun 23 17:29:59 2014 +0200 @@ -308,7 +308,7 @@ TCODE .40, .35, "Gewebegraph anz" ;174 ShowTissueGraph TCODE .40, .35, "Leitgewebe anz " ;175 Show Lead.Tiss. TCODE .40, .35, "Flach.StoppOben" ;176 Shallow stop 1st (Reverse order of deco plans) - TCODE .40, .35, "Gaswechsel[min]" ;177 Gas switch[min] (Additional delay in decoplan for gas switches). + TCODE .40, .35, "Gas switch[min]" ;177 Gas switch[min] (Show Countdown after gas change) TCODE .40, .35, "BottomGas[/min]" ;178 BottomGas[/min] (Bottom gas usage, for volume estimation). TCODE .40, .35, "Sonst.Gas[/min]" ;179 AscentGas[/min] (Ascent+Deco gas usage) TCODE .40, .35, "TTS @ Zeit[min]" ;180 Future TTS[min] (Compute TTS for extra time at current depth) diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/italian_text.asm --- a/code_part1/OSTC_code_asm_part1/italian_text.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/italian_text.asm Mon Jun 23 17:29:59 2014 +0200 @@ -293,7 +293,7 @@ TCODE .40, .35, "Sec. in Immers." ;160 Divemode secs. TCODE .40, .35, "Regola SP fisso" ;161 Adjust fixed SP TCODE .40, .35, "All. salto deco" ;162 Warn Ceiling - TCODE .40, .35, "Icone Misc. Gas" ;163 Mix type icons + TCODE .40, .35, "unused " ;163 unused TCODE .40, .35, "Avv.Miglior Gas" ;164 Blink BetterGas (Remainder in divemode to switch to a better decompression gas). TCODE .40, .35, "All. Prof[mbar]" ;165 DepthWarn[mbar] TCODE .40, .35, "Allarme CNS [%]" ;166 CNS warning [%] @@ -307,7 +307,7 @@ TCODE .40, .35, "VediGrafTessuti" ;174 ShowTissueGraph TCODE .40, .35, "Vedi Tess.Prim." ;175 Show Lead.Tiss. TCODE .40, .35, "Inver. Tab Deco" ;176 Shallow stop 1st (Reverse order of deco plans) - TCODE .40, .35, "Cambio Gas[min]" ;177 Gas switch[min] (Additional delay in decoplan for gas switches). + TCODE .40, .35, "Gas switch[min]" ;177 Gas switch[min] (Show Countdown after gas change) TCODE .40, .35, "Gas Fondo[/min]" ;178 BottomGas[/min] (Bottom gas usage, for volume estimation). TCODE .40, .35, "Gas Risal[/min]" ;179 AscentGas[/min] (Ascent+Deco gas usage) TCODE .40, .35, "TTS Futuro[min]" ;180 Future TTS[min] (Compute TTS for extra time at current depth) diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/menu_logbook.asm --- a/code_part1/OSTC_code_asm_part1/menu_logbook.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/menu_logbook.asm Mon Jun 23 17:29:59 2014 +0200 @@ -243,7 +243,8 @@ bra display_profile ; No, show details/profile goto menu -display_profile: +display_profile: + bcf is_bailout movff menupos,mintemp+1 ; store current cursor position bsf return_from_profileview ; tweak search routine to exit after found @@ -817,6 +818,18 @@ bra profile_display_loop ; Not ready yet ; Done. profile_display_loop_done: + btfss is_bailout ; Bailout during the dive? + bra profile_display_loop_done_nobail ; No + ; Yes, show "Bailout" + movlw color_pink + call DISP_set_color + WIN_TOP .210 + WIN_LEFT .105 + WIN_FONT FT_SMALL + lfsr FSR2,letter + OUTPUTTEXT d'137' ; Bailout + call word_processor +profile_display_loop_done_nobail: call DISP_standard_color ; Restore color call menu_pre_loop_common ; Clear some menu flags, timeout and switches @@ -849,7 +862,7 @@ dcfsnz active_gas,F movlw color_violet ; Color for Gas 5 dcfsnz active_gas,F - movlw color_cyan ; Color for Gas 6 + movlw color_pink ; Color for Gas 6 goto DISP_set_color ; Set Color... ;============================================================================= @@ -1279,14 +1292,20 @@ return profile_view_get_depth_new2: + clrf EventByte call I2CREAD2 ; Read Event byte movff SSPBUF,EventByte ; store EventByte decf timeout_counter2,F ; reduce counter + ; Check Event flags in the EventByte - btfsc EventByte,4 ; Manual Gas Changed? - bra logbook_event1 ; Yes! - btfss EventByte,5 ; Stored Gas Changed? - return ; No, return + btfsc EventByte,7 ; Bailout? + bra logbook_event2 ; Yes! + btfsc EventByte,4 ; Manual Gas Changed? + bra logbook_event1 ; Yes! + btfsc EventByte,6 ; Setpoint Change? + bra logbook_event3 ; Yes! + btfss EventByte,5 ; Stored Gas Changed? + return ; No, return ; Stored Gas changed! call I2CREAD2 ; Read Gas# movff SSPBUF,average_depth_hold_total+3 @@ -1301,6 +1320,22 @@ rcall profile_display_color ; Back to normal profile color. return ;(The two bytes indicating the manual gas change will be ignored in the standard "ignore loop" above...) +logbook_event2: ; Bailout + bsf is_bailout ; Set flag + movff average_depth_hold_total+3,total_divetime_seconds+0 ; Backup last gas color in case we return to CCR + movlw 6 ; Use Gas6 color + movwf average_depth_hold_total+3 + rcall profile_display_color ; Back to normal profile color. + return ;(The two bytes indicating the bailout gas selected will be ignored in the standard "ignore loop" above...) + +logbook_event3: ; Setpoint change + btfss is_bailout ; Are we in bailout? + return ; No, return + ; We were in bailout before, restore profile color + movff total_divetime_seconds+0,average_depth_hold_total+3 ; Restore color + rcall profile_display_color ; Back to normal profile color. + return + exit_profileview: bcf sleepmode clrf timeout_counter2 ; restore all registers to build same page again diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/menu_reset.asm --- a/code_part1/OSTC_code_asm_part1/menu_reset.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/menu_reset.asm Mon Jun 23 17:29:59 2014 +0200 @@ -183,7 +183,7 @@ CF_DEFAULT CF_INT8, d'20', d'5', d'50' ; CF57 Ascent/deco gas usage (SAC l/min) CF_DEFAULT CF_INT8, d'0', d'0', d'10' ; CF58 TTS for extra time at current depth [min] CF_DEFAULT CF_INT15, d'0', d'0', d'7000' ; CF59 Cave conso warning [l] - CF_DEFAULT CF_BOOL, 0, 0, 0 ; CF60 Show Graphical ascend speed indicator + CF_DEFAULT CF_BOOL, 1, 0, 0 ; CF60 Show Graphical ascend speed indicator CF_DEFAULT CF_BOOL, 0, 0, 0 ; CF61 Show pSCR ppO2 CF_DEFAULT CF_PERCENT, .4, .0, .100 ; CF62 pSCR O2 Drop diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/outputs.asm --- a/code_part1/OSTC_code_asm_part1/outputs.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/outputs.asm Mon Jun 23 17:29:59 2014 +0200 @@ -582,6 +582,52 @@ call DISP_standard_color return +DISP_show_gas_change_countdown: + btfss gaschange_cnt_active + return + decf apnoe_surface_secs,F ; Reduce countdown + btfss STATUS,N + bra DISP_show_gas_change_countdown2 + movlw .59 + movwf apnoe_surface_secs + decf apnoe_surface_mins,F + btfss STATUS,N + bra DISP_show_gas_change_countdown2 + bcf gaschange_cnt_active ; Clear flag + WIN_TOP .91 + WIN_LEFT .64 + WIN_FONT FT_SMALL + movlw d'4' + movwf temp1 + call DISP_display_clear_common_y1 + ; Reload countdown + GETCUSTOM8 d'55' + movwf apnoe_surface_mins + clrf apnoe_surface_secs + return + +DISP_show_gas_change_countdown2: + btfsc menubit ; Divemode menu active? + return ; Yes, do not show + movlw color_yellow ; show in yellow + call DISP_set_color + WIN_TOP .91 + WIN_LEFT .64 + WIN_FONT FT_SMALL + WIN_INVERT .0 ; Init new Wordprocessor + lfsr FSR2,letter + movff apnoe_surface_mins,lo + bsf leftbind + output_8 + PUTC ':' + movff apnoe_surface_secs,lo + output_99x + STRCAT_PRINT "" + call DISP_standard_color + bcf leftbind + return + + ;============================================================================= ; Update simulator menu with time/depth ; Note: because translations might change a bit the string length, we reprint @@ -831,7 +877,7 @@ DISP_diveclock: call DISP_divemask_color ; Set Color for Divemode mask - DISPLAYTEXT d'255' ; Clock + DISPLAYTEXT d'255' ; Time: call DISP_standard_color DISP_diveclock2: @@ -847,8 +893,49 @@ movff mins,lo output_99x call word_processor + +DISP_diveclock3: ; Update end of divetime only + return + WIN_TOP .216 + WIN_LEFT .116 + WIN_FONT FT_SMALL + WIN_INVERT .0 + call DISP_standard_color + + btfss dekostop_active ; Already in nodeco mode ? + bra DISP_diveclock4 ; No, overwrite with some spaces + + STRCPY 0x94 ; "End of dive" icon + movff hours,WREG + mullw .60 + movf mins,W + addwf PRODL + movlw .0 + addwfc PRODH + movff PRODL, lo + movff PRODH, hi + + ; Add TTS + movff int_O_ascenttime+0,WREG ; TTS + addwf lo,F + movff int_O_ascenttime+1,WREG ; TTS is 16bits + addwfc hi,F + + call convert_time ; converts hi:lo in minutes to hours (hi) and minutes (lo) + movf hi,W + movff lo,hi + movwf lo ; exchange lo and hi + output_99x + PUTC ':' + movff hi,lo + output_99x + STRCAT_PRINT "" return +DISP_diveclock4: + STRCPY_PRINT " " + return + DISP_clock: ostc_debug 'c' WIN_TOP .50 @@ -1495,11 +1582,7 @@ movff EEDATA,lo ; copy to lo output_8 ; outputs into Postinc2! PUTC '/' - movlw .4 - mulwf hi,W ; 1-5 - movf PRODL,W - addlw .3 ; Gas #x: %He - Set address in internal EEPROM - movwf EEADR + incf EEADR,F ; Gas #hi: %He - Set address in internal EEPROM call read_eeprom ; get byte (stored in EEDATA) movff EEDATA,lo ; copy to lo output_8 ; outputs into Postinc2! @@ -1643,14 +1726,24 @@ WIN_INVERT .0 ; Init new Wordprocessor call DISP_standard_color - lfsr FSR2,letter + lfsr FSR2,letter read_int_eeprom d'36' movff EEDATA,lo ; copy to lo clrf hi output_16dp d'3' ; outputs into Postinc2! + STRCAT_PRINT TXT_BAR3 + + bsf leftbind + call get_first_diluent ; Read first diluent into lo(O2) and hi(He) + WIN_TOP .160 + WIN_LEFT .104 + lfsr FSR2,letter + output_8 ; O2 Ratio + PUTC '/' + movff hi,lo + output_8 ; He Ratio + STRCAT_PRINT "" bcf leftbind - - STRCAT_PRINT TXT_BAR3 return ; Done. DISP_active_gas_surfmode2: diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/russian_text.asm --- a/code_part1/OSTC_code_asm_part1/russian_text.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/russian_text.asm Mon Jun 23 17:29:59 2014 +0200 @@ -310,7 +310,7 @@ TCODE .40, .35, "Показ граф. ткн" ;174 ShowTissueGraph TCODE .40, .35, "Показ глав. ткн" ;175 Show Lead.Tiss. TCODE .40, .35, "Мелк.ост.вверху" ;176 Shallow stop 1st (Reverse order of deco plans) - TCODE .40, .35, "Перекл.газ[мин]" ;177 Gas switch[min] (Additional delay in decoplan for gas switches). + TCODE .40, .35, "Gas switch[min]" ;177 Gas switch[min] (Show Countdown after gas change) TCODE .40, .35, "Донн.расх[/мин]" ;178 BottomGas[/min] (Bottom gas usage, for volume estimation). TCODE .40, .35, "Подъ.расх[/мин]" ;179 AscentGas[/min] (Ascent+Deco gas usage) TCODE .40, .35, "Будущ. TTS[мин]" ;180 Future TTS[min] (@5 variant: compute TTS for extra time at current depth) diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/sleepmode.asm --- a/code_part1/OSTC_code_asm_part1/sleepmode.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/sleepmode.asm Mon Jun 23 17:29:59 2014 +0200 @@ -194,49 +194,14 @@ return fatal_error_sleep: - call get_calibration_data ; Get calibration data from pressure sensor - banksel flag5 - bcf no_sensor_int ; Enable sensor interrupt - WAITMS d'250' - WAITMS d'250' - call get_battery_voltage ; get battery voltage - btfss enter_error_sleep ; REALLY enter Fatal Error Routine? - return ; No! - SAFE_2BYTE_COPY amb_pressure, sub_b - movlw LOW d'15001' ; must be lower then 15001mbar - movwf sub_a+0 - movlw HIGH d'15001' - movwf sub_a+1 - call subU16 ; sub_c = sub_a - sub_b - bcf enter_error_sleep ; Clear flag - btfss neg_flag ; - return ; No! - bsf enter_error_sleep ; Set flag - clrf INTCON - clrf INTCON2 - clrf INTCON3 - bcf ADCON0,0 ; AD converter off - call disable_rs232 ; disable UART module - movlw b'00010000' - movwf TRISA - clrf PORTA ; And pulled to GND - clrf TRISB ; All output - clrf PORTB ; And pulled to GND - movlw b'00011101' ; UART - movwf TRISC - clrf PORTC ; And pulled to GND - clrf TRISD ; All output - clrf PORTD ; And pulled to GND - clrf TRISE ; All output - clrf PORTE ; And pulled to GND - clrf T0CON ; Timer OFF - clrf T1CON ; Timer OFF - clrf T2CON ; Timer OFF - clrf OSCTUNE - movlw b'00000010' ; 31kHz - movwf OSCCON - bsf WDTCON,0 ; Watchdog timer on... -fatal_error_sleep_loop: ; Device will never quit this loop! + call DISP_DisplayOff ; display off + call disable_rs232 ; disable UART module + + bcf TRISB,6 + bcf TRISB,7 + bcf PORTB,6 + bcf PORTB,7 ; Disable UART +fatal_error_sleep_loop: movff fatal_error_code,temp4 movlw d'15' movwf temp1 @@ -246,6 +211,9 @@ decfsz temp1,F bra fatal_error_sleep_loop1 fatal_error_sleep_loop2: + call get_battery_voltage ; get battery voltage + btfss enter_error_sleep ; REALLY enter Fatal Error Routine? + goto restart ; No bsf LED_red clrwdt WAIT10US d'5' diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/spanish_text.asm --- a/code_part1/OSTC_code_asm_part1/spanish_text.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/spanish_text.asm Mon Jun 23 17:29:59 2014 +0200 @@ -306,7 +306,7 @@ TCODE .40, .35, "Mostr. Grбf.Tej" ;174 ShowTissueGraph TCODE .40, .35, "Mostr. TejContr" ;175 Show Lead.Tiss. TCODE .40, .35, "PriParadaSuperf" ;176 Shallow stop 1st (Reverse order of deco plans) - TCODE .40, .35, "Conmu. gas[min]" ;177 Gas switch[min] (Additional delay in decoplan for gas switches). + TCODE .40, .35, "Gas switch[min]" ;177 Gas switch[min] (Show Countdown after gas change) TCODE .40, .35, "Gas Fondo[/min]" ;178 BottomGas[/min] (Bottom gas usage, for volume estimation). TCODE .40, .35, "GasAscens[/min]" ;179 AscentGas[/min] (Ascent+Deco gas usage) TCODE .40, .35, "Futuro TTS[min]" ;180 Future TTS[min] (Compute TTS for extra time at current depth) diff -r e57e8045527d -r 46ef1e1388f1 code_part1/OSTC_code_asm_part1/start.asm --- a/code_part1/OSTC_code_asm_part1/start.asm Sun Jun 15 17:49:22 2014 +0200 +++ b/code_part1/OSTC_code_asm_part1/start.asm Mon Jun 23 17:29:59 2014 +0200 @@ -262,8 +262,8 @@ restart1: ; Reset all CF and Gases - call reset_gases -; call reset_all_cf_bank2 +; call reset_gases +; call reset_all_cf ; Show info screen call DISPLAY_boot ; DISP boot (Incl. Clear Screen!) rcall display_new_cf_installed; Show info screen