PROGRAM 10
// FILE NAME: PROG10.CPP PROGRAMMER NAME: ANTHONY F. ORTIZ
// THIS PROGRAM WRITES A BYTE TO A MEMORY ADDRESS WITH A FUNCTION CALLED
// POKE.
#include
#include
enter_address (long int & address, unsigned char & ch, long int & attribute);
unsigned char poke (long int address, unsigned char contents);
int main ()
{
long int address, attribute;
unsigned char ch;
enter_address (address, ch, attribute);
poke (address, ch);
poke (address + 1, attribute);
return 0;
}
enter_address (long int & address, unsigned char & ch, long int & attribute)
{
clrscr ();
cout << "ENTER A ADDRESS (HEX): ";
cin >> address;
cout << endl << "ENTER CHARACTER: ";
cin >> ch;
cout << endl << "ENTER A ATTRIBUTE (HEX): ";
cin >> attribute;
clrscr ();
return 0;
}
unsigned char poke (long int address, unsigned char contents)
{
unsigned char far *farptr;
farptr = (unsigned char far *) address;
* (farptr) = contents;
return 0;
}
// OUTFILE: PROG10.OUT
ENTER A ADDRESS (HEX): 0xffff
ENTER CHARACTER: a
ENTER A ATTRIBUTE (HEX): 0xffff
a
BACK TO COMP251 PAGE.