home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / m / mkcron.zip / MKCRON.PRG < prev    next >
Text File  |  1992-09-01  |  6KB  |  197 lines

  1. #pragma W_MAC_REDEF-
  2. #pragma W_FUNC_PROC-
  3. #pragma W_INDIRECT-
  4.  
  5. #include MKSTRING.HDR
  6. #include MKSTATUS.HDR
  7. #include MKMISC.HDR
  8. #include MKTIME.HDR
  9. #include MKFILE.HDR
  10. #include COLORS.HDR
  11. #include SYSTEM.HDR
  12. #include STRING.HDR
  13. #include SCREEN.HDR
  14. #include DATE.HDR
  15. #include IO.HDR
  16.  
  17. VARDEF EXTERN
  18.    BYTE        __color_std
  19. ENDDEF
  20.  
  21. VARDEF
  22.    LOGICAL     use_scrn_save  = .T.
  23.    LOGICAL     use_log_file   = .F.
  24.    LOGICAL     use_color      = .T.
  25.    LOGICAL     scrn_saved     = .F.
  26.    UINT        sec_scrn_save  = 180
  27.    ULONG       task_list      = 0
  28.    CHAR( 128 ) log_file       = ""
  29.    CHAR( 08 )  end_time       = ""
  30.    CHAR( 05 )  last_exec      = "     "
  31.    CHAR( 12 )  crn_file       = "MKCRON.CRN"
  32.    BYTE        palette[5]     = &BLUE_WHITE, &RED_YELLOW, &BLUE_LIGHT_GREY
  33. ENDDEF
  34.  
  35. PROCEDURE CronFile PROTOTYPE
  36. PROCEDURE CronScrn PROTOTYPE
  37. PROCEDURE CronUserScrn PROTOTYPE
  38. PROCEDURE CronMain PROTOTYPE
  39. PROCEDURE CronParam PROTOTYPE
  40.  
  41.  ******************************************************************************
  42.  *                                          *
  43.  *  Programm        : MKCRON V1.0              (C) 1992 Kalkhoff   *
  44.  *  Modul        : CRONCLOCK                                               *
  45.  *  Autor           : M.T. Kalkhoff                          *
  46.  *  letzte Änderung : 07.09.1992                          *
  47.  *                                          *
  48.  *  Aufgabe         : Diese Routine wird bei Programmbeginn einmalig aufgeru- *
  49.  *                    fen. Sinn ist es, alle benötigten Uhren zu formatieren  *
  50.  *                    und anschließend einzuschalten.                         * 
  51.  *                                          *
  52.  ******************************************************************************
  53. PROCEDURE CronClock
  54.  
  55.    * erst mal den Uhrtreiber installieren ...
  56.  
  57.    InstallClock()
  58.  
  59.    * Das ist die Standarduhr mit der fortlaufenden Uhrzeit ...
  60.  
  61.    SetClockFormat( 0, &HHMMSS_24 )
  62.    SetClockRowCol( 0, 5, 66 )
  63.    SetClockAttr( 0, palette[0] )
  64.    ShowClock( 0 )
  65.  
  66.    * Bei aktiviertem SCREEN SAVER wird mit der nächsten Uhr der Countdown,
  67.    * sprich die Restsekunden, eingeleitet und angezeigt ...
  68.  
  69.    IF use_scrn_save
  70.  
  71.       SetClockFormat( 1, &COUNTDOWN )
  72.       SetClockRowCol( 1, 11, 66 )
  73.       SetCounter( 1, sec_scrn_save )
  74.       SetClockAttr( 1, palette[0] )
  75.       ShowClock( 1 )
  76.  
  77.    ENDIF
  78.  
  79.    * Die letzte Uhr in der Fußzeile definiert die Programmlaufzeit. Aller-
  80.    * dings ist einschränkend zu erwähnen, da diese nach einer Programmaus-
  81.    * führung wieder den Wert NULL annimmt.
  82.  
  83.    SetClockFormat( 2, &ELAPSED )
  84.    SetClockRowCol( 2, 24, 70 )
  85.    SetClockAttr( 2, palette[1] )   
  86.    ShowClock( 2 )
  87.  
  88. ENDPRO
  89.  
  90.  ******************************************************************************
  91.  *                                          *
  92.  *  Programm        : MKCRON V1.0              (C) 1992 Kalkhoff   *
  93.  *  Modul        : CRONCONFIG                                              *
  94.  *  Autor           : M.T. Kalkhoff                          *
  95.  *  letzte Änderung : 07.09.1992                          *
  96.  *                                          *
  97.  *  Aufgabe         : Konfiguration diverser Systemeinstellungen.             *
  98.  *                                          *
  99.  ******************************************************************************
  100. PROCEDURE CronConfig
  101.  
  102.    * dieser Part ist für Perverse oder dem Monochrome Modus gewidmet ...
  103.  
  104.    IF .NOT. use_color
  105.       palette[0] = &BLACK_WHITE
  106.       palette[1] = &WHITE_BLACK
  107.       palette[2] = &BLACK_LIGHT_GREY
  108.    ENDIF
  109.  
  110.    * und noch ein paar Standardeinstellungen ...
  111.  
  112.    Cursor_Off()
  113.    SetDate( &DATE_GERMAN )
  114.    Scrn_Direct()
  115.    Key_Dos()
  116.  
  117.    __color_std = palette[0]
  118.    last_exec   = Left( Time(), 5 )
  119.  
  120. ENDPRO
  121.  
  122.  ******************************************************************************
  123.  *                                          *
  124.  *  Programm        : MKCRON V1.0              (C) 1992 Kalkhoff   *
  125.  *  Modul        : FCO_END                                                 *
  126.  *  Autor           : M.T. Kalkhoff                          *
  127.  *  letzte Änderung : 07.09.1992                          *
  128.  *                                          *
  129.  *  Aufgabe         : Seitens des FCO/Force Systems wird die folgende Routine *
  130.  *                    automatisch zum Programmende hin aufgerufen. Somit kann *
  131.  *                    sichergestellt werden, daß der Uhrtreiber auch dein-    *
  132.  *                    stalliert wird !!!                                      *
  133.  *                                          *
  134.  ******************************************************************************
  135. PROCEDURE Fco_End
  136.  
  137.    DeInstallClock()
  138.  
  139. ENDPRO
  140.  
  141.  ******************************************************************************
  142.  *                                          *
  143.  *  Programm        : MKCRON V1.0              (C) 1992 Kalkhoff   *
  144.  *  Modul        : CRONERROR                                               *
  145.  *  Autor           : M.T. Kalkhoff                          *
  146.  *  letzte Änderung : 07.09.1992                          *
  147.  *                                          *
  148.  *  Aufgabe         : Ausgabe einer Fehlermeldung und evtl. Programmabbruch.  *
  149.  *                                          *
  150.  ******************************************************************************
  151. PROCEDURE CronError
  152.    PARAMETERS CONST CHAR    mess, ;
  153.               VALUE LOGICAL fatal
  154.  
  155.    Sound( 400, 2 )
  156.    ? mess 
  157.    Sound( 200, 4 )
  158.  
  159.    IF fatal
  160.       QUIT
  161.    ENDIF
  162.  
  163. ENDPRO
  164.  
  165.  ******************************************************************************
  166.  *                                          *
  167.  *  Programm        : MKCRON V1.0              (C) 1992 Kalkhoff   *
  168.  *  Modul        : MAIN                                  *
  169.  *  Autor           : M.T. Kalkhoff                          *
  170.  *  letzte Änderung : 07.09.1992                          *
  171.  *                                          *
  172.  *  Aufgabe         : Hauptroutine des CRON (short, wah ???)                  *
  173.  *                                          *
  174.  ******************************************************************************
  175. PROCEDURE Fco_Main
  176.  
  177.    * Parameter unbedingt zuerst übernehmen !!!
  178.  
  179.    CronParam()
  180.  
  181.    * Das Bildschirmlöschen wurde über DOS gewählt, damit auch das korrekte
  182.    * Farbattribut verwandt wird ...
  183.  
  184.    RUN GetEnv( "COMSPEC" ) + " /C CLS"
  185.  
  186.    * Nun noch die restlichen Routinen abarbeiten ...
  187.  
  188.    CronConfig()
  189.    CronFile()
  190.    CronScrn()
  191.    CronUserScrn()
  192.    CronClock()
  193.    CronMain()
  194.  
  195.    RUN GetEnv( "COMSPEC" ) + " /C CLS"
  196.  
  197. ENDPRO