Get on a PC with the DJGPP compiler. You can install the compiler on your own computer by getting the following files:
djdev201.zip bnu281b.zip gcc2721b.zip gpp2721b.zip lgb271b.zip mak3761b.zip txi390b.zip csdpmi4b.zip faq210b.zip rhide14b.zip unzip386.exeYou can get these files from http://www.delorie.com. Make a directory for DJGPP (say, C:\DJGPP), and use unzip386.exe to extract the files from the zip archives into your DJGPP directory. Add C:\DJGPP\BIN to your path, and set the environment variable DJGPP to C:\DJGPP\DJGPP.ENV. You will then be able to use the gcc compiler. Enter the following program hello.c using a text editor:
#include <stdio.h> main() { printf("hello, world!\n"); }Compile the above program with the following command:
gcc -o hello hello.cYou should have a file called hello.exe. Run by typing hello on the command line. This may not work in DOS. DOS needs something called DPMI to allow the use of 32-bit programs with the 16-bit DOS operating system. If the above programs (gcc or hello) will not run, install the DPMI server cwsdpmi with the following command:
cwsdpmi -pand try compiling and running hello again.
Instead of using gcc as a command-line compiler, you may use the Integrated Development Environment RHIDE if you prefer. This will give you access to an editor, the compiler and a debugger all in one window. Just type rhide at the command line prompt, enter the program using the editor, and use the pull-down menus to compile and run the program.
Here is a program status.c to read the status of LPT1:
#include <stdio.h> #include <pc.h> #define P_STATUS 0x379 main() { int status status = inportb(P_STATUS); printf("status = 0x%02x\n",status); }Compile the above program with the command
gcc -o status status.c -lpc