void ReadScreen( int next_line ) /******************************/ { USHORT len; len = SCREEN_WIDTH - ( StartCol + ColOffset ); if( next_line ) { len += SCREEN_WIDTH; if( len > LINE_WIDTH ) { len = LINE_WIDTH; } } VioReadCharStr( Line, &len, Row + RowOffset, StartCol + ColOffset, 0 ); for( MaxCursor = len; len-- > 0; MaxCursor = len ) { if( Line[len] != ' ' ) { break; } } Cursor = next_line ? MaxCursor : 0; Draw = TRUE; Base = 0; Edited = TRUE; if( !next_line && MaxCursor == SCREEN_WIDTH ) { ReadScreen( 1 ); } }
void LeftScreen( void ) /*********************/ { if( RowOffset == 0 ) return; if( StartCol+ColOffset == 0 ) return; FlipScreenCursor(); ColOffset--; FlipScreenCursor(); ReadScreen( 0 ); }
void RightScreen( void ) /**********************/ { if( RowOffset == 0 ) return; if( StartCol+ColOffset == (SCREEN_WIDTH-1) ) return; FlipScreenCursor(); ColOffset++; FlipScreenCursor(); ReadScreen( 0 ); }
void main( void ) { appl_init(); linea0(); if (ReadScreen()) { MakeMap(); SaveMap(); } appl_exit(); }
bool COCPFileManager::LoadScreen(const string &i_filename, unsigned char* &o_data, unsigned int &o_size) { unsigned char *data; unsigned int size; CCPCFileManager::LoadRawData(i_filename,data,size); bool read = ReadScreen(data,size,o_data,o_size); delete[] data; return read; }
int main() { type2_vals t2v; unsigned char* ScreenBuf[MAX_LINES]; unsigned LineCnt; #ifndef DEBUG type2_negotiate(&t2v); #else (void)t2v; #endif transmit_all(STDOUT, "l23k", 4); send_string(STDERR, "GOING\n"); LineCnt = ReadScreen(ScreenBuf); for (unsigned Index = 0; Index < 64; ++Index) { send_string(STDERR, "LOOP\n"); send_string(STDOUT, "0\n"); LineCnt = ReadScreen(ScreenBuf); } send_string(STDOUT, "shuf\n"); LineCnt = ReadScreen(ScreenBuf); send_string(STDOUT, "4986\n"); LineCnt = ReadScreen(ScreenBuf); send_string(STDOUT, "4\n"); LineCnt = ReadScreen(ScreenBuf); send_string(STDOUT, "dupr\n"); LineCnt = ReadScreen(ScreenBuf); char* s = (char *)ScreenBuf[LineCnt - 2]; s = strchr(s, ':'); s += 2; int m = strtol(s, NULL, 10); unsigned char secret[4]; cgc_memcpy(secret, (void *)&m, 4); secret[0] ^= 0x14; secret[1] ^= 0x15; secret[2] ^= 0x16; secret[3] ^= 0x17; send_string(STDERR, (char *)s); send_string(STDERR, "----->\n"); type2_submit((unsigned char *)secret, 4); send_string(STDOUT, "quit\n"); }
void DownScreen( void ) /*********************/ { if( RowOffset != 0 ) { FlipScreenCursor(); RowOffset++; } else { RowOffset = -Row; } if( RowOffset == 0 ) { MaxCursor = 0; Cursor = MaxCursor; Draw = TRUE; Base = 0; Edited = FALSE; return; } FlipScreenCursor(); ReadScreen( 0 ); }
int main(int argc, const char **argv) { unsigned int width=1024; unsigned int height=768; unsigned char *buffer=(unsigned char*)malloc(width*height*4); unsigned char *oldbuffer=(unsigned char*)malloc(width*height*4); bool lastsame=false; while (1) { //printf("Looping\n"); //Sleep(6500); // spy ReadScreen(0, 0, width, height, buffer); bool same=false; if (!pcmp(buffer,oldbuffer,width*height)) { FILE * fp=fopen("YAY.txt","a"); fprintf (fp,"Same\n"); same=true; fclose(fp); Sleep(6500); if (lastsame) { //SendEsc(); spawnl(P_WAIT,"escrestart.exe","escrestart.exe",NULL); } lastsame=true; }else { FILE * fp=fopen("YAY.txt","a"); fprintf (fp,"Diff\n"); fclose(fp); //SendPan(); lastsame=false; } unsigned char *tmpbuffer=oldbuffer; oldbuffer=buffer; buffer=tmpbuffer; char data[102]; static int count=0; if (!same) { sprintf(data,"output%d.ppm",count++); }else { sprintf(data,"output%dX.ppm",count++); } #if 0 FILE * fp = fopen(data,"wb"); char* p6head="P6\n1024 768 255\n"; fwrite(p6head,1,strlen(p6head),fp); for (unsigned int i=0;i<height*width;++i) { if (iswhite(&buffer[i*4]) ) { unsigned char tmp=0xff; fwrite(&tmp,1,1,fp); fwrite(&tmp,1,1,fp); fwrite(&tmp,1,1,fp); }else { unsigned char tmp=0x0; fwrite(&tmp,1,1,fp); fwrite(&tmp,1,1,fp); fwrite(&tmp,1,1,fp); } } fclose(fp); #endif //SendKey(VK_NUMPAD0); printf("DONE DONE DONE\n"); //break; } }