home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1991 / 04 / praxis / tsr_ica.pas < prev   
Encoding:
Pascal/Delphi Source File  |  1991-02-14  |  1.0 KB  |  40 lines

  1. PROGRAM TSR_und_ICA;                 { Turbo Pascal ab 4.0 }
  2. {$A+,B-,D-,E-,F-,I-,N-,O-,R-,S-,V-}
  3. {$M 1024,0,0}
  4. { Der Schalter $A+ ist lebenswichtig bei
  5.   PCs mit 16/32-Bit Datenbus! }
  6.  
  7. USES Crt, Dos;
  8. TYPE
  9.   ScreenType = RECORD
  10.                  ch   : CHAR;
  11.                  Attr : BYTE;
  12.                END;
  13. VAR
  14.   Zeile1 : ARRAY[1..80] OF ScreenType ABSOLUTE $B800:0000;
  15.                                { für Hercules: $B000:0000 }
  16.   ZeigSeg : WORD ABSOLUTE $40:$F0;   { ICA-Bereich enthält }
  17.   ZeigOfs : WORD ABSOLUTE $40:$F2;   { Adresse des         }
  18.                                      { Datenbereichs       }
  19.   n : BYTE;
  20. CONST
  21.   Data : STRING[40] = '123456 viele...';
  22.  
  23. {$F+}
  24. PROCEDURE ZeigeDaten; INTERRUPT;
  25. BEGIN
  26.   FOR n := 1 TO 40 DO
  27.     Zeile1[n].ch := Data[n];
  28. END;
  29. {$F-}
  30.  
  31. BEGIN
  32.   IF (ZeigSeg = 0) AND (ZeigOfs = 0) THEN BEGIN
  33.     ZeigSeg := Seg(Data);
  34.     ZeigOfs := Ofs(Data);
  35.     SetIntVec($1C, @ZeigeDaten);     { Interrupt verbiegen }
  36.     Keep(0);
  37.   END ELSE
  38.     Write(^G, 'ICA-Bereich bereits benutzt!');
  39. END.
  40.