main.c

/*------------------------------------------------------------\
|       Marcus W. Johnson 1990                                |
|                                                             |
|       Code to demonstrate IdentifyVideo()                   |
\------------------------------------------------------------*/

#include     <stdio.h>
#include     "video.h"

/*  Print the name of the adaptor and the display device */
static void      Name(struct video *v)
       {
       switch (v->VideoAdaptor)
              {
              case   UnknownAdaptor:
                    puts("No Video Adaptor Detected");
                    break;
              case   MDA:
                    puts("Monochrome Display Adaptor");
                    break;
              case   CGA:
                    puts("Color Graphics Adaptor");
                    break;
              case   EGA:
                    puts("Enhanced Graphics Adaptor");
                    break;
              case   MCGA:
                    puts("Multi-Color Graphics Array");
                    break;
              case   VGA:
                    puts("Video Graphics Array");
                    break;
              case   HGC:
                    puts("Hercules Graphics Card");
                    break;
              case   HGCPlus:
                    puts("Hercules Graphics Card Plus");
                    break;
              case   HerculesInColor:
                    puts("Hercules InColor Card");
                    break;
              default:
                    puts("Program Error: Unidentified Video Adaptor");
                    break;
              }
       switch (v->VideoMonitor)
              {
              case   UnknownMonitor:
                    puts("No Monitor Detected");
                    break;
              case   MDAMonochrome:
                    puts("Monochrome Monitor");
                    break;
              case   CGAColor:
                    puts("CGA Color Monitor");
                    break;
              case   EGAColor:
                    puts("EGA Color Monitor");
                    break;
              case   PS2Monochrome:
                    puts("PS/2 Monochrome Monitor");
                    break;
              case   PS2Color:
                    puts("PS/2 Color Monitor");
                    break;
              default:
                    puts("Program Error: Unidentified Video Monitor");
                    break;
              }
       }
/*  Demonstates use of IdentifyVideo() */
void     main()
       {
       struct video    *v;
       
       v = IdentifyVideo();
       if (v->VideoAdaptor != UnknownAdaptor)
              {
              Name(v++);
              if (v->VideoAdaptor != UnknownAdaptor)
                     Name(v);
              
              }
       else
              puts("No known video adaptor or monitor");
       }