#include #include "screen.h" #include "console.h" #include "tools.h" #include "charmap.h" int col=0; int line=0; int px=-1; int py=-1; void endProgress() { drwStr(px*CHAR_WIDTH,py*CHAR_HEIGHT," ",0); px=-1; py=-1; } void setProgress(int val) { char tmp[4]; itoa(tmp,val,10); if(px>=0) drwStr(px*CHAR_WIDTH,py*CHAR_HEIGHT,tmp,0); } void initProgress(int x, int y, int val) { px=x; py=y; if(px>=0) drwStr(px*CHAR_WIDTH,py*CHAR_HEIGHT," %",0); setProgress(val); } void disp( char* message, int ret ) { int l = strlen(message); int i, stop=0; for (i = 0; i < l && !stop; i++) { if (message[i] == 0x0A) { if ( ret ) { col = 0; line ++; } else { putChar(col*CHAR_WIDTH, line*CHAR_HEIGHT, ' '); col++; } } else { putChar(col*CHAR_WIDTH, line*CHAR_HEIGHT, message[i]); col ++; } if (col >= MAX_COL) { if ( !ret ) stop=1; else { col = 0; line ++; } } if(line>=MAX_LGN) { line=0; clrScr(); } } } void dispc(char c, int ret) { char tmp[2]=" "; tmp[0]=c; disp(tmp,ret); } void dispi(int i, int ret) { char tmp[NBR_SIZE]; itoa(tmp,i,10); disp(tmp,ret); } void displn( char* message, int ret ) { disp(message, ret); col=0; line++; if(line>=MAX_LGN) { line=0; clrScr(); } } void pause( char* message, int ret, int invite ) { if(message) displn(message, ret); if(invite) displn("Press Esc to continue...", 0); while(!isKeyPressed(KEY_NSPIRE_ESC)) {} } void resetConsole() { col=0; line=0; }