/* *** cursor.c *** */ /* */ /* IBM - PC microsoft "C" */ /* */ /* Function to move the cursor to a specific r,c co-ordinate. */ /* */ /* Written by L. Cuthbertson, March 1984. */ /* */ /*********************************************************************/ /* */ #define NULL '\000' #define POUND '#' cursor(r,c) int r,c; { extern char CUP[]; char row[3],col[4],command[20]; int i,inpos,outpos; /* initialize screen controls */ scrinit(); /* decode integer co-ordinates */ sprintf(row,"%d",r); sprintf(col,"%d",c); /* build control sequence */ inpos = 0; /* position in control line */ outpos = 0; /* position in command line */ while (CUP[inpos] != POUND) command[outpos++] = CUP[inpos++]; for (i=0;row[i] != NULL;i++) command[outpos++] = row[i]; inpos++; while(CUP[inpos] != POUND) command[outpos++] = CUP[inpos++]; for (i=0;col[i] != NULL;i++) command[outpos++] = col[i]; inpos++; while(CUP[inpos] != NULL) command[outpos++] = CUP[inpos++]; command[outpos] = NULL; /* write command to screen */ writes(command); }