1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
/*
** PRTSC.C - Access the BIOS print screen function
**
** public domain demo by Bob Stout
*/
#include <dos.h>
#ifdef __TURBOC__
#define FAR far
#else
#define FAR _far
#endif
/*
** Get screen printing status
**
** 0 - Ready
** 1 - Screen printing in process
** 2 - Error occurred last time
*/
int PrtScrnStat(void)
{
return ((int)*((char FAR *)(0x00500000)));
}
/*
** Print the current screen
*/
int PrtScrn(void)
{
union REGS regs; /* Dummy for use by int86() */
if (1 == PrtScrnStat()) /* Can we print now? */
return -1; /* Nope, return with error */
int86(5, ®s, ®s); /* Issue Int 5 */
return 0;
}
#ifdef TEST
#include <stdio.h>
void main(void)
{
printf("PrtScrn() returned %d\n", PrtScrn());
printf("PrtScrnStat() returned %d\n", PrtScrnStat());
}
#endif
|