home *** CD-ROM | disk | FTP | other *** search
- /* ------------------------------------------------------ */
- /* CLOCKH.C */
- /* steuert die Uhrzeitanzeige in Position und Farbe sowie */
- /* den Screen Saver. */
- /* (c) 1991 Helmut Guttenberg & DMV-Verlag */
- /* ------------------------------------------------------ */
- #include <stdlib.h>
- #include <string.h>
- #include <dos.h>
- #include "serv.h"
-
- extern int clock_on; /* Variablen aus LOADER.C */
- extern int saver_on;
- extern int cdinit;
- extern int cl_pos_x;
- extern int cl_pos_y;
- extern int cl_col;
- extern int *videoseg;
-
- /*
- clockhandler : ---
- Die sechs verschiedenen Funktionen teuern die Uhrzeitan-
- zeige ja/nein und wo, sowie den Screen Saver ja/nein und
- wielange bis zum Ansprechen.
- */
-
- void clockhandler(int subfunc, unsigned ds, unsigned bx)
- {
- char *cmdstr;
-
- switch (subfunc) {
- /* Uhr ein */
- case 1 :
- disable();
- clock_on = 1;
- enable();
- break;
- /* Uhr aus */
- case 0 :
- disable();
- clock_on = 0;
- enable();
- break;
- /* Uhr positionieren */
- case 2 :
- {
- int i;
- char *pos;
-
- cmdstr = (char *) MK_FP(ds,bx);
- cl_pos_y = atoi(cmdstr);
- pos = strchr(cmdstr, ',');
- cl_pos_x = atoi(pos+1);
- pos=strchr(pos+1, ',');
- cl_col = atoi(pos+1);
- if (!(cl_pos_y >= 0 && cl_pos_y < 25))
- cl_pos_y = 0;
- if (!(cl_pos_x >= 0 && cl_pos_x < 80))
- cl_pos_x = 65;
- for (i = 0; i < 8; i++)
- /* lösche das Feld für die Uhrzeit */
- dispchar(' ', cl_pos_x+i, cl_pos_y, cl_col);
- break;
- }
- /* ScrSaver ein */
- case 4 :
- saver_on = 1;
- break;
- /* ScrSaver aus */
- case 3 :
- saver_on = 0;
- break;
- /* ScrSaver Timeout Set */
- case 5 :
- cmdstr = (char *) MK_FP(ds,bx);
- cdinit = atoi(cmdstr)+1;
- break;
- }
- }
- /* ------------------------------------------------------ */
- /* Ende von CLOCKH.C */
-
-