It's NOT a problem with LCD monitors. I use turbo C 1.01 all the time, and have an LCD monitor (Samsung), and it's fine. The OUTPUT is the same, an LCD monitor just uses it for a different device, downstream.
It's also NOT a NVidia card compatibility problem. I have one of those also - no problem. They are backward compatible with the old VGA standard that Turbo C supports.
There are two steps to making this work - but the first one should already be done for you, but check it anyway:
1) Click on the Options --> Linker in the TC IDE (where you might see your code) You should have some items in there that are checked with an [ X ]. Be sure NOT to mess with other settings, but see that Default Library and Graphics Library are [ X }'d.
2) Move these two files, into your C:\TC\BIN directory:
EGAVGA.BGI
EGAVGA.OBJ
The EGAVGA.BGI file is required. The EGAVGA.OBJ file just helps speed things along
These two files are in the default directory: C:\TC\BGI
Now run this Borland Turbo C example program, and see if it works for you. It simply draws a white diagonal line, on a black graphics screen.
Note especially the code it uses! Put that code into your graphics program, instead of the current "C:\\TC\\BGI" directory that you're using now.
Salem is really a fine programmer, but refers to Turbo C as "archaic crap". You can take his advice if you want. I just use it, nearly every day. (Turbo C/C++, ver. 1.01)
The only problem I've found (minor), is that when I leave a graphics program, the TC IDE will have a slight color error that makes it look "washed out". If it bothers you, close Turbo C, and restart it. The colors will now be right again.
This is the example program from Turbo C:
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode;
/* initialize graphics mode */
initgraph(&gdriver, &gmode, "");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) /* an error occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* return with error code */
}
/* draw a line */
line(0, 0, getmaxx(), getmaxy());
/* clean up */
getch();
closegraph();
return 0;
}