home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* SETBLINK.PAS *)
- (* (c) 1991 Michael Plewe & TOOLBOX *)
- (* ------------------------------------------------------ *)
- PROGRAM SetBlinkDemo;
-
- USES Crt, Dos;
-
- CONST
- HGC = 7;
-
- TYPE
- SwitchType = (On, Off);
-
- VAR
- VideoMode : BYTE ABSOLUTE $0040:$0049;
- c : CHAR;
- b : BYTE;
-
-
- PROCEDURE SetBlinkAttr(Switch : SwitchType);
- VAR
- Regs : Registers;
- PortAddr : WORD;
- BEGIN
- Regs.AH := $10;
- Regs.AL := $03;
- IF VideoMode = HGC THEN PortAddr := $3B8
- ELSE PortAddr := $3D8;
- IF (Switch = On) THEN BEGIN
- Regs.BL := $01;
- Intr($10, Regs);
- IF (Regs.AL = $03) THEN
- Port[PortAddr] := Mem[$40:$65] OR $20;
- END ELSE BEGIN
- Regs.BL := $00;
- Intr($10, Regs);
- IF (Regs.AL = $03) THEN
- Port[PortAddr] := Mem[$40:$65] AND $DF;
- END;
- END;
-
- BEGIN
- ClrScr;
- FOR b := 8 TO 15 DO BEGIN
- TextAttr := Green + b*16;
- Write(' HALL0! ');
- END;
- WriteLn;
- WriteLn;
- Write('Taste drücken...');
- c := ReadKey;
- SetBlinkAttr(Off);
- c := ReadKey;
- SetBlinkAttr(On);
- END.
- (* ------------------------------------------------------ *)
- (* Ende von SETBLINK.PAS *)
-