From: dmt AT bigfoot DOT com (Jeff W./DMT) Newsgroups: comp.os.msdos.djgpp Subject: *help reading char in text mode from (X,Y) Date: Sun, 18 Jan 1998 19:24:44 GMT Organization: ZipLink -- America's Hottest ISP Lines: 33 Message-ID: <34c256ed.471444@news.ziplink.net> NNTP-Posting-Host: chi-ip-1-136.ziplink.net To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk I know how to do it in turbo pascal: FUNCTION GetChar(X,Y:BYTE) : CHAR CONST ColorSeg = $B800; BEGIN GetChar := Chr(Mem[ColorSeg:160*(Y-1) + 2*(X-1)]); END; but I can't figure out how to do the equivalent in DJGPP. Here's what I tried, but to no avail: char GetChar(char x, char y) { //returns the character at (x,y) unsigned char *videoptr = (unsigned char *)0xB800; __djgpp_nearptr_enable(); c = videoptr[160*(y-1) + 2*(x-1) + __djgpp_conventional_base]; return c; } I tried testing it out by doing: clrscr(); printf("a"); c = GetChar(0,0); printf("%c",c); and also c = GetChar(1,1) just in case the coordinates started at 1,1 and not 0,0. Can anyone help me out??