Esempio n. 1
0
void debug_exception(unsigned int type, unsigned int address) {
    __sync_synchronize();

	console_set_fg_color(CONSOLE_RED);

	if (type == 0) {
		printf("\nUndefined exception at address: %p\n",address);
	} else if (type == 1) {
		printf("\nPrefetch abort at address: %p\n",address);
	} else if (type == 2) {
		printf("\nData abort at address: %p\n", address);
	} else {
		printf("\nUnknown exception! [%d]\n", type);
	}

	console_set_fg_color(CONSOLE_WHITE);

#if defined (H3)
	h3_watchdog_disable();
#else
	bcm2835_watchdog_stop();
#endif

	for(;;);
}
Esempio n. 2
0
void TimeCode::Start(void) {
	console_save_cursor();
	console_set_cursor(COLUMN, ROW);
	console_set_fg_color(CONSOLE_CYAN);
	console_puts(timecode);
	console_restore_cursor();
}
Esempio n. 3
0
static void handle_bool(const bool b) {
	if (b) {
		console_save_color();
		console_set_fg_color(CONSOLE_GREEN);
		console_puts("Yes");
		console_restore_color();
	} else {
		console_puts("No");
	}
}
Esempio n. 4
0
/**
 *
 * @param ArtNetTimeCode
 */
void TimeCode::Handler(const struct TArtNetTimeCode *ArtNetTimeCode) {
	itoa_base10(ArtNetTimeCode->Hours, (char *) &timecode[0]);
	itoa_base10(ArtNetTimeCode->Minutes, (char *) &timecode[3]);
	itoa_base10(ArtNetTimeCode->Seconds, (char *) &timecode[6]);
	itoa_base10(ArtNetTimeCode->Frames, (char *) &timecode[9]);

	if ((prev_type != ArtNetTimeCode->Type) && (ArtNetTimeCode->Type < (uint8_t) 4)) {
		memcpy((char *) &timecode[12], (char *) types[ArtNetTimeCode->Type], 5);
		prev_type = ArtNetTimeCode->Type;
	}

	console_save_cursor();
	console_set_cursor(COLUMN, ROW);
	console_set_fg_color(CONSOLE_CYAN);
	console_write(timecode, TIMECODE_LENGTH);
	console_restore_cursor();
}