Browse Source

* fixed random(int64)

Jonas Maebe 21 years ago
parent
commit
814478ac33
1 changed files with 7 additions and 2 deletions
  1. 7 2
      rtl/inc/system.inc

+ 7 - 2
rtl/inc/system.inc

@@ -459,7 +459,9 @@ end;
 
 
 function random(l:int64): int64;
 function random(l:int64): int64;
 begin
 begin
-  random:= longint((int64(cardinal(genrand_MT19937))*l) shr 32);
+{$ifndef VER_1_0}
+  random := int64((qword(cardinal(genrand_MT19937)) or ((qword(cardinal(genrand_MT19937)) shl 32))) and $7fffffffffffffff) mod l;
+{$endif VER_1_0}
 end;
 end;
 
 
 function random: extended;
 function random: extended;
@@ -881,7 +883,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.61  2004-08-29 10:23:12  peter
+  Revision 1.62  2004-08-30 17:36:18  jonas
+    * fixed random(int64)
+
+  Revision 1.61  2004/08/29 10:23:12  peter
   no message
   no message
 
 
   Revision 1.60  2004/07/18 20:21:44  florian
   Revision 1.60  2004/07/18 20:21:44  florian