//--------------------------------------------------------------- // EXAMPLE EX2.C : Basic Template of a C Program with Symbolic // Constants. // // C.P. Diduch, Dec 1999. //--------------------------------------------------------------- #define KEY_PA 0x138 // 82C55A port addresses for PA, #define KEY_PB 0x13A // PB, #define KEY_PC 0x13C // PC and the #define KEY_CON 0x13E // Control Register. #include // conio.h contains prototypes for // inportb() and outportb(). //--------------------------------------------------------------- void main() { unsigned char X, Y; outportb(KEY_CON, 0x82); // Initialize 82C55A PPI with ports // KEY_PC and KEY_PA as OP ports and // port PB as an IP port. X = 0x3F & inportb(KEY_PB); Y = X ^ 0x0F; outportb(KEY_PC, Y); }