plongrealarray had to be pointer to longrealarray. -- noch

This commit is contained in:
norayr 2016-11-29 15:00:18 +04:00
parent a22c894fd4
commit 047d8b94e7
2 changed files with 16 additions and 14 deletions

View file

@ -8,7 +8,7 @@ TYPE pchar = POINTER TO ARRAY 1 OF CHAR;
TYPE bytearray* = ARRAY SIZE(LONGINT) OF SYSTEM.BYTE; (* need this because voc does not convert implicitly LONGINT to ARRAY OF BYTE; -- noch *) TYPE bytearray* = ARRAY SIZE(LONGINT) OF SYSTEM.BYTE; (* need this because voc does not convert implicitly LONGINT to ARRAY OF BYTE; -- noch *)
pbytearray* = POINTER TO bytearray; pbytearray* = POINTER TO bytearray;
TYPE longrealarray* = ARRAY SIZE(LONGREAL) OF SYSTEM.BYTE; (* need this because voc does not convert implicitly LONGINT to ARRAY OF BYTE; -- noch *) TYPE longrealarray* = ARRAY SIZE(LONGREAL) OF SYSTEM.BYTE; (* need this because voc does not convert implicitly LONGINT to ARRAY OF BYTE; -- noch *)
plongrealarray* = POINTER TO bytearray; plongrealarray* = POINTER TO longrealarray;
PROCEDURE LongToByteArr* ( l : LONGINT; VAR bar : bytearray); (* noch *) PROCEDURE LongToByteArr* ( l : LONGINT; VAR bar : bytearray); (* noch *)
VAR b : SYSTEM.BYTE; VAR b : SYSTEM.BYTE;
@ -23,24 +23,26 @@ TYPE pchar = POINTER TO ARRAY 1 OF CHAR;
PROCEDURE LRealToByteArr* ( l : LONGREAL; VAR lar : longrealarray); (* noch *) PROCEDURE LRealToByteArr* ( l : LONGREAL; VAR lar : longrealarray); (* noch *)
VAR b : SYSTEM.BYTE; VAR b : SYSTEM.BYTE;
(*adr: SYSTEM.ADDRESS;*)
p : plongrealarray; p : plongrealarray;
i : LONGINT; i : LONGINT;
BEGIN BEGIN
p := SYSTEM.VAL(plongrealarray, SYSTEM.ADR(l)); p := SYSTEM.VAL(plongrealarray, SYSTEM.ADR(l));
FOR i := 0 TO SIZE(LONGREAL) -1 DO FOR i := 0 TO SIZE(LONGREAL) -1 DO
b := p^[i]; lar[i] := b; b := p^[i];
lar[i] := b;
END END
(*
adr := SYSTEM.ADR(l);
i := 0;
REPEAT
SYSTEM.GET(adr + i, b);
lar[i] := b;
INC(i)
UNTIL i = SIZE(LONGREAL);*)
END LRealToByteArr; END LRealToByteArr;
(*
PROCEDURE -Write(adr, n: LONGINT): LONGINT
"write(1/*stdout*/, adr, n)";
PROCEDURE -read(VAR ch: CHAR): LONGINT
"read(0/*stdin*/, ch, 1)";
*)
PROCEDURE TAS*(VAR flag:BOOLEAN): BOOLEAN; (* added for compatibility with ulmSYSTEM module; noch *) PROCEDURE TAS*(VAR flag:BOOLEAN): BOOLEAN; (* added for compatibility with ulmSYSTEM module; noch *)
VAR oldflag : BOOLEAN; VAR oldflag : BOOLEAN;
BEGIN BEGIN

View file

@ -55,13 +55,13 @@ MODULE ulmTypes;
UntracedAddress* = POINTER[1] TO UntracedAddressDesc; (*SYS.UNTRACEDADDRESS;*) UntracedAddress* = POINTER[1] TO UntracedAddressDesc; (*SYS.UNTRACEDADDRESS;*)
UntracedAddressDesc* = RECORD[1] END; UntracedAddressDesc* = RECORD[1] END;
Count* = LONGINT; Count* = SYS.INT32;
Size* = Count; Size* = Count;
Byte* = SYS.BYTE; Byte* = SYS.BYTE;
IntAddress* = LONGINT; IntAddress* = LONGINT;
Int8* = SHORTINT; Int8* = SYS.INT8;
Int16* = INTEGER; (* No real 16 bit integer type *) Int16* = SYS.INT16;
Int32* = INTEGER; Int32* = SYS.INT32;
Real32* = REAL; Real32* = REAL;
Real64* = LONGREAL; Real64* = LONGREAL;