diff --git a/src/library/ulm/ulmSYSTEM.Mod b/src/library/ulm/ulmSYSTEM.Mod index 3d00abab..796a0d1b 100644 --- a/src/library/ulm/ulmSYSTEM.Mod +++ b/src/library/ulm/ulmSYSTEM.Mod @@ -12,34 +12,30 @@ TYPE pchar = POINTER TO ARRAY 1 OF CHAR; PROCEDURE LongToByteArr* ( l : LONGINT; VAR bar : bytearray); (* noch *) VAR b : SYSTEM.BYTE; - p : pbytearray; + adr : SYSTEM.ADDRESS; i : LONGINT; BEGIN - p := SYSTEM.VAL(pbytearray, SYSTEM.ADR(l)); - FOR i := 0 TO SIZE(LONGINT) -1 DO - b := p^[i]; bar[i] := b; - END + adr := SYSTEM.ADR(l); + i := 0; + REPEAT + SYSTEM.GET(adr + i, b); + lar[i] := b; + INC(i) + UNTIL i = SIZE(LONGINT) END LongToByteArr; PROCEDURE LRealToByteArr* ( l : LONGREAL; VAR lar : longrealarray); (* noch *) VAR b : SYSTEM.BYTE; - (*adr: SYSTEM.ADDRESS;*) - p : plongrealarray; + adr: SYSTEM.ADDRESS; i : LONGINT; BEGIN - p := SYSTEM.VAL(plongrealarray, SYSTEM.ADR(l)); - FOR i := 0 TO SIZE(LONGREAL) -1 DO - b := p^[i]; - lar[i] := b; - END - (* adr := SYSTEM.ADR(l); i := 0; REPEAT SYSTEM.GET(adr + i, b); lar[i] := b; INC(i) - UNTIL i = SIZE(LONGREAL);*) + UNTIL i = SIZE(LONGREAL); END LRealToByteArr;