#include "dos.h"

void interrupt myfunc();

void interrupt (*prev)();

int ticks;

char far *vdu=(char far*)0xb8000000l;

 

main()

{

//AIM : screen display goes  hazy every 3 seconds.

      unsigned long far *clkint;

      clkint=(unsigned long far *)32;

      prev=(void (interrupt far*)())*clkint;

      *clkint=(unsigned long)myfunc;

      keep(0,500);

      return 0;

}

 

 

void interrupt myfunc()

{

      int i,j;

      ticks++;

      if (ticks==182/4)

            {

                  for(j=0;j<14000;j++);

                  for(i=0;i<3999;i+=2)

                        {

                              if(*(vdu+i) >= 'A' && *(vdu+i) <= 'Z')

                                    *(vdu+i)+=32;

                              else

                                    {

                                          if(*(vdu+i) >= 'a' && *(vdu+i) <= 'z')

                                                *(vdu+i)-=32;

                                    }//if else

                         }//for

                   ticks=0;

            }//if

        (*prev)();

}