home *** CD-ROM | disk | FTP | other *** search
/ Black Art of 3D Game Programming / Black_Art_of_3D_Game_Programming.iso / source / borland / chap_8 / timer.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-25  |  2.7 KB  |  114 lines

  1.  
  2. // TIMER.C - A demo of reprogramming the PC's internal timer
  3.  
  4. // I N C L U D E S ///////////////////////////////////////////////////////////
  5.  
  6. #include <io.h>
  7. #include <conio.h>
  8. #include <stdio.h>
  9. #include <stdlib.h>
  10. #include <dos.h>
  11. #include <bios.h>
  12. #include <fcntl.h>
  13. #include <memory.h>
  14. #include <malloc.h>
  15. #include <math.h>
  16. #include <string.h>
  17.  
  18. #include "black8.h"
  19.  
  20. // M A I N ////////////////////////////////////////////////////////////////////
  21.  
  22. void main(void)
  23. {
  24.  
  25. int done=0,     // exit flag
  26.     selection;  // user input variable
  27.  
  28. // main event loop
  29.  
  30. while(!done)
  31.      {
  32.  
  33.      // display menu
  34.  
  35.      printf("\nPC Timer Re-Programming Utility\n");
  36.      printf("\n1 - Program timer to 120HZ.");
  37.      printf("\n2 - Program timer to 100HZ.");
  38.      printf("\n3 - Program timer to 60HZ.");
  39.      printf("\n4 - Program timer to 50HZ.");
  40.      printf("\n5 - Program timer to 40HZ.");
  41.      printf("\n6 - Program timer to 30HZ.");
  42.      printf("\n7 - Program timer to 20HZ.");
  43.      printf("\n8 - Program timer to 18.2HZ (default).");
  44.      printf("\n9 - Exit program.");
  45.      printf("\n\nSelect one?");
  46.  
  47.      // get input
  48.  
  49.      scanf("%d",&selection);
  50.  
  51.      // what rate did user select?
  52.  
  53.      switch(selection)
  54.            {
  55.            case 1: // set timer to 120hz
  56.                 {
  57.                 Timer_Program(TIMER_COUNTER_0,TIMER_120HZ);
  58.                 } break;
  59.  
  60.            case 2: // set timer to 100hz
  61.                 {
  62.                 Timer_Program(TIMER_COUNTER_0,TIMER_100HZ);
  63.                 } break;
  64.  
  65.            case 3: // set timer to 60hz
  66.                 {
  67.                 Timer_Program(TIMER_COUNTER_0,TIMER_60HZ);
  68.                 } break;
  69.  
  70.            case 4: // set timer to 50hz
  71.                 {
  72.                 Timer_Program(TIMER_COUNTER_0,TIMER_50HZ);
  73.                 } break;
  74.  
  75.            case 5: // set timer to 40hz
  76.                 {
  77.                 Timer_Program(TIMER_COUNTER_0,TIMER_40HZ);
  78.                 } break;
  79.  
  80.            case 6: // set timer to 30hz
  81.                 {
  82.                 Timer_Program(TIMER_COUNTER_0,TIMER_30HZ);
  83.                 } break;
  84.  
  85.            case 7: // set timer to 20hz
  86.                 {
  87.                 Timer_Program(TIMER_COUNTER_0,TIMER_20HZ);
  88.                 } break;
  89.  
  90.            case 8: // set timer to 18hz
  91.                 {
  92.                 Timer_Program(TIMER_COUNTER_0,TIMER_18HZ);
  93.                 } break;
  94.  
  95.            case 9: // exit program
  96.                 {
  97.                 done=1;
  98.  
  99.                 } break;
  100.  
  101.            default:
  102.                   {
  103.                   printf("\nInvalid Selection!\n");
  104.                   } break;
  105.  
  106.            } // end switch
  107.  
  108.      } // end while
  109.  
  110. } // end main
  111.  
  112.  
  113.  
  114.