Exemple #1
0
void ShellService::echo(char ch) {
	
//	int length = echo.size();
//	int* params = new int[length + 1];

	
    int posX = SHELL_X_START + (_currentColumn * COLUMN_WIDTH);
    if (posX >= SHELL_X_END) {
        newLine();
        posX = SHELL_X_START;
    }
    
    int posY = SHELL_Y_START + (_currentLine * LINE_HEIGHT);
    if (posY > SHELL_Y_END) {
        setColor(0x0);
        moveTo(SHELL_X_START, SHELL_Y_START - (LINE_HEIGHT + 5));
        drawRect(SHELL_X_END, SHELL_Y_END);
        _currentColumn = 0;
        _currentLine = 0;
        posY = SHELL_Y_START;
        posX = SHELL_X_START;
    }
    while (!hasScreen());
    setColor(0xFFFFFF);
	moveTo(posX, posY);
    drawChar(ch, 2);
    _currentColumn++;
    
//	params[0] = 0; //  HDMI WRITE COMMAND :)
//	for (int i = 0; i < length; i++) {
//		params[i + 1] = (int)(echo.c_str()[i]);
//	}
//	performServiceCall(DISPLAY_SERVICE_ID, 2, params);
}
Exemple #2
0
int main_Test() {

	switchLEDOff(LED1);
	int i=0;
	
	while (1)  {
		i = 0;
		while (i < 800000)  {
			i++;
		}
		
		if (getLEDState(LED2))  {
			switchLEDOff(LED2);
			switchLEDOn(LED1);
			
			
			if (hasScreen()) {
                // Set LED1 On
                setColor(0x0000FF);
			    moveTo(580, 200);
                drawChar('1', 5);
            
			     // Set LED2 Off
    			setColor(0xFF0000);
    			moveTo(640, 200);
                drawChar('2', 5);
            }
		} else {
			switchLEDOn(LED2);
			switchLEDOff(LED1);
			
            if (hasScreen()) {
                
    			// Set LED1 On
    			setColor(0xFF0000);
    			moveTo(580, 200);
                drawChar('1', 5);
    			
    			// Set LED2 On
    			setColor(0x0000FF);
    			moveTo(640, 200);
                drawChar('2', 5);
            }
			
		}
	}
}
Exemple #3
0
 void MainLoop::removeScreen(shared_ptr<Screen> screen) {
     if (!hasScreen(screen)) {
         Log::get() << "Trying unexisting screen." << LogLevel::error;
         return;
     }
     
     Log::get() << "Removing screen." << LogLevel::info;
     screens.remove(screen);
 }
Exemple #4
0
 void MainLoop::addScreen(shared_ptr<Screen> screen) {
     if (hasScreen(screen)) {
         Log::get() << "Trying to insert existing screen." << LogLevel::error;
         return;
     }
     
     Log::get() << "Inserting screen." << LogLevel::info;
     screens.push_back(screen);
 }