13 #if defined(__PROPELLER_XMM__)
19 extern uint32_t binary_TV_dat_start[];
20 #if defined(__PROPELLER_XMM__)
21 extern uint32_t binary_TV_dat_end[];
22 int size = (binary_TV_dat_end - binary_TV_dat_start);
23 memcpy(pasm, binary_TV_dat_start, size*4);
24 gcog =
cognew(pasm, tvp) + 1;
26 gcog =
cognew(binary_TV_dat_start, tvp) + 1;
33 #define X_TILES 10 // 44
34 #define Y_TILES 10 // 14
36 #define TV_TEXT_COLORTABLE_SIZE 64 // 8*2
40 HUBDATA volatile uint16_t gScreen[X_TILES * Y_TILES];
41 HUBDATA volatile uint32_t gColors[TV_TEXT_COLORTABLE_SIZE];
42 HUBDATA volatile uint8_t gpalette[TV_TEXT_COLORTABLE_SIZE] =
54 static void setColorPalette(
volatile uint8_t* ptr)
60 for(ii = 0; ii < TV_TEXT_COLORTABLE_SIZE; ii += 2)
65 gColors[ii] = (fg << 24) | (bg << 16) | (fg << 8) | bg;
66 gColors[mm] = (fg << 24) | (fg << 16) | (bg << 8) | bg;
77 gTV.screen = (uint32_t) &gScreen[0];
78 gTV.colors = (uint32_t) &gColors[0];
89 setColorPalette(&gpalette[0]);
92 for (dx = 0; dx < gTV.ht; dx++)
93 for (dy = 0; dy < gTV.vt; dy++)
94 gScreen[dy * gTV.ht + dx] = (0x6000 >> 6) + dy + dx * gTV.vt + ((dy & 0x3F) << 10);