home *** CD-ROM | disk | FTP | other *** search
-
- UNIT TPERSATZ;
- { EINIGE WICHTIGE FUNCTIONS UND PROZEDUREN AUS TURBO PROFESSIONAL
- WERDEN HIER NACHGEBILDET
- }
-
- INTERFACE
-
-
- USES DOS;
-
-
- PROCEDURE HIDDENCURSOR;
- PROCEDURE NORMALCURSOR;
- FUNCTION HEXB(WERT:BYTE):STRING;
- FUNCTION HEXW(WERT:WORD):STRING;
- FUNCTION HEXL(WERT:LONGINT):STRING;
- FUNCTION TIMEMS:LONGINT;
-
-
- IMPLEMENTATION
-
-
- VAR CURS : WORD;
- R : REGISTERS;
-
-
- PROCEDURE HIDDENCURSOR;
- VAR ADR : WORD;
- BEGIN
- ADR := MEMW[$40:$63];
- PORT[ADR] := $0A;
- PORT[ADR+1] := $1F;
- END;
-
-
- PROCEDURE NORMALCURSOR;
- BEGIN
- R.AH := 1;
- R.CX := CURS;
- INTR($10,R);
- END;
-
-
- FUNCTION HEXNIB(B:BYTE):CHAR;
- BEGIN
- B := B AND $0F;
- IF B > 9 THEN HEXNIB := CHR(B+$37) ELSE HEXNIB := CHR(B+$30);
- END;
-
-
- FUNCTION HEXB(WERT:BYTE):STRING;
- BEGIN
- HEXB := HEXNIB(WERT SHR 4) + HEXNIB(WERT);
- END;
-
-
- FUNCTION HEXW(WERT:WORD):STRING;
- BEGIN
- HEXW := HEXB(HI(WERT)) + HEXB(LO(WERT));
- END;
-
-
- FUNCTION HEXL(WERT:LONGINT):STRING;
- VAR X : ARRAY[0..1] OF WORD ABSOLUTE WERT;
- BEGIN
- HEXL := HEXW(X[1]) + HEXW(X[0]);
- END;
-
-
- FUNCTION TIMEMS:LONGINT;
- BEGIN
- WITH R DO BEGIN
- AH := $2C;
- MSDOS(R);
- TIMEMS := 1000*(LONGINT(DH)+60*(LONGINT(CL)+60*LONGINT(CH)))+10*LONGINT(DL);
- END;
- END;
-
-
- BEGIN
- CURS := MEMW[$40:$60];
- END.
-