From ab5d3f734e0284de8882728f173041f79d358784 Mon Sep 17 00:00:00 2001 From: Norayr Chilingarian Date: Thu, 12 Mar 2015 00:24:11 +0400 Subject: [PATCH] added oocRandomNumbers, updated newt wrapper with GetKey function. -- noch --- makefile | 1 + makefile.darwin.clang.x86_64 | 1 + makefile.freebsd.clang.x86_64 | 1 + makefile.linux.clang.powerpc | 1 + makefile.linux.clang.x86_64 | 1 + makefile.linux.gcc.armv6j_hardfp | 1 + makefile.linux.gcc.powerpc | 2 +- makefile.linux.gcc.x86 | 1 + makefile.linux.gcc.x86_64 | 2 +- src/lib/ooc/oocRandomNumbers.Mod | 75 +++++++++++++++++++++++++++++++ src/test/newt/Makefile | 2 + src/test/newt/newt.Mod | 10 +++++ src/test/newt/newttest.Mod | 16 +++++-- voc | Bin 1277330 -> 1277338 bytes 14 files changed, 108 insertions(+), 6 deletions(-) create mode 100644 src/lib/ooc/oocRandomNumbers.Mod diff --git a/makefile b/makefile index 55c1bd24..60f338e3 100644 --- a/makefile +++ b/makefile @@ -137,6 +137,7 @@ stage6: $(VOCSTATIC) -sPF oocIntStr.Mod $(VOCSTATIC) -sPF oocSysClock.Mod $(VOCSTATIC) -sPF oocTime.Mod + $(VOCSTATIC) -sPF oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.darwin.clang.x86_64 b/makefile.darwin.clang.x86_64 index 2d18232c..1bc7d577 100644 --- a/makefile.darwin.clang.x86_64 +++ b/makefile.darwin.clang.x86_64 @@ -138,6 +138,7 @@ stage6: $(VOCSTATIC) -sP oocIntStr.Mod $(VOCSTATIC) -sP oocSysClock.Mod $(VOCSTATIC) -sP oocTime.Mod + $(VOCSTATIC) -sP oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.freebsd.clang.x86_64 b/makefile.freebsd.clang.x86_64 index 6afce49e..dd829077 100644 --- a/makefile.freebsd.clang.x86_64 +++ b/makefile.freebsd.clang.x86_64 @@ -137,6 +137,7 @@ stage6: $(VOCSTATIC) -sPF oocIntStr.Mod $(VOCSTATIC) -sPF oocSysClock.Mod $(VOCSTATIC) -sPF oocTime.Mod + $(VOCSTATIC) -sPF oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.linux.clang.powerpc b/makefile.linux.clang.powerpc index 9c82fac1..235fd695 100644 --- a/makefile.linux.clang.powerpc +++ b/makefile.linux.clang.powerpc @@ -137,6 +137,7 @@ stage6: $(VOCSTATIC) -sPF oocIntStr.Mod $(VOCSTATIC) -sPF oocSysClock.Mod $(VOCSTATIC) -sPF oocTime.Mod + $(VOCSTATIC) -sPF oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.linux.clang.x86_64 b/makefile.linux.clang.x86_64 index 8994e028..871900d3 100644 --- a/makefile.linux.clang.x86_64 +++ b/makefile.linux.clang.x86_64 @@ -137,6 +137,7 @@ stage6: $(VOCSTATIC) -sP oocIntStr.Mod $(VOCSTATIC) -sP oocSysClock.Mod $(VOCSTATIC) -sP oocTime.Mod + $(VOCSTATIC) -sP oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.linux.gcc.armv6j_hardfp b/makefile.linux.gcc.armv6j_hardfp index 7fde34c4..c1484669 100644 --- a/makefile.linux.gcc.armv6j_hardfp +++ b/makefile.linux.gcc.armv6j_hardfp @@ -137,6 +137,7 @@ stage6: $(VOCSTATIC) -sPF oocIntStr.Mod $(VOCSTATIC) -sPF oocSysClock.Mod $(VOCSTATIC) -sPF oocTime.Mod + $(VOCSTATIC) -sPF oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.linux.gcc.powerpc b/makefile.linux.gcc.powerpc index bb7f3cd6..49c585e3 100644 --- a/makefile.linux.gcc.powerpc +++ b/makefile.linux.gcc.powerpc @@ -136,7 +136,7 @@ stage6: $(VOCSTATIC) -sPF oocIntConv.Mod $(VOCSTATIC) -sPF oocIntStr.Mod $(VOCSTATIC) -sPF oocSysClock.Mod - $(VOCSTATIC) -sPF oocTime.Mod + $(VOCSTATIC) -sPF oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.linux.gcc.x86 b/makefile.linux.gcc.x86 index 5da96ef7..af0bc83b 100644 --- a/makefile.linux.gcc.x86 +++ b/makefile.linux.gcc.x86 @@ -137,6 +137,7 @@ stage6: $(VOCSTATIC) -sPF oocIntStr.Mod $(VOCSTATIC) -sPF oocSysClock.Mod $(VOCSTATIC) -sPF oocTime.Mod + $(VOCSTATIC) -sPF oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/makefile.linux.gcc.x86_64 b/makefile.linux.gcc.x86_64 index 55c1bd24..824c6c7d 100644 --- a/makefile.linux.gcc.x86_64 +++ b/makefile.linux.gcc.x86_64 @@ -136,7 +136,7 @@ stage6: $(VOCSTATIC) -sPF oocIntConv.Mod $(VOCSTATIC) -sPF oocIntStr.Mod $(VOCSTATIC) -sPF oocSysClock.Mod - $(VOCSTATIC) -sPF oocTime.Mod + $(VOCSTATIC) -sPF oocRandomNumbers.Mod # $(VOCSTATIC) -s oocLongStrings.Mod # $(CC) oocLongStrings.c # $(VOCSTATIC) -s oocMsg.Mod diff --git a/src/lib/ooc/oocRandomNumbers.Mod b/src/lib/ooc/oocRandomNumbers.Mod new file mode 100644 index 00000000..bc238091 --- /dev/null +++ b/src/lib/ooc/oocRandomNumbers.Mod @@ -0,0 +1,75 @@ +(* $Id: RandomNumbers.Mod,v 1.1 1997/02/07 07:45:32 oberon1 Exp $ *) +MODULE oocRandomNumbers; +(* +For details on this algorithm take a look at + Park S.K. and Miller K.W. (1988). Random number generators, good ones are + hard to find. Communications of the ACM, 31, 1192-1201. +*) + +CONST + modulo* = 2147483647; (* =2^31-1 *) + +VAR + z : LONGINT; + +PROCEDURE GetSeed* (VAR seed : LONGINT); +(* Returns the currently used seed value. *) + BEGIN + seed := z + END GetSeed; + +PROCEDURE PutSeed* (seed : LONGINT); +(* Set 'seed' as the new seed value. Any values for 'seed' are allowed, but + values beyond the intervall [1..2^31-2] will be mapped into this range. *) + BEGIN + seed := seed MOD modulo; + IF (seed = 0) THEN + z := 1 + ELSE + z := seed + END + END PutSeed; + +PROCEDURE NextRND; + CONST + a = 16807; + q = 127773; (* m div a *) + r = 2836; (* m mod a *) + VAR + lo, hi, test : LONGINT; + BEGIN + hi := z DIV q; + lo := z MOD q; + test := a * lo - r * hi; + IF (test > 0) THEN + z := test + ELSE + z := test + modulo + END + END NextRND; + +PROCEDURE RND* (range : LONGINT) : LONGINT; +(* Calculates a new number. 'range' has to be in the intervall + [1..2^31-2]. Result is a number from 0,1,..,range-1. *) + BEGIN + NextRND; + RETURN z MOD range + END RND; + +PROCEDURE Random*() : REAL; +(* Calculates a number x with 0.0 <= x < 1.0. *) + BEGIN + NextRND; + RETURN (z-1)*(1 / (modulo-1)) + END Random; + +(* +PROCEDURE Randomize*; + BEGIN + PutSeed (Unix.time (Unix.NULL)) + END Randomize; +*) + +BEGIN + z := 1 +END oocRandomNumbers. diff --git a/src/test/newt/Makefile b/src/test/newt/Makefile index 0650e8fd..f6eb71af 100644 --- a/src/test/newt/Makefile +++ b/src/test/newt/Makefile @@ -7,6 +7,8 @@ all: $(VOC) -s newt.Mod newttest.Mod -m $(VOC) -s newt.Mod newttest2.Mod -m +tetris: + $(VOC) -s newt.Mod tetris.Mod -m clean: rm *.h rm *.c diff --git a/src/test/newt/newt.Mod b/src/test/newt/newt.Mod index 1a3a10e1..6692366b 100644 --- a/src/test/newt/newt.Mod +++ b/src/test/newt/newt.Mod @@ -98,6 +98,16 @@ BEGIN newtWaitForKey END WaitForKey; +PROCEDURE -newtGetKey(): Int32 + "newtGetKey()"; + +PROCEDURE GetKey*(): CHAR; +VAR i : Int32; +BEGIN + i:= newtGetKey(); + RETURN CHR(SHORT(i)); +END GetKey; + PROCEDURE -newtClearKeyBuffer() "newtClearKeyBuffer()"; diff --git a/src/test/newt/newttest.Mod b/src/test/newt/newttest.Mod index b9597fbe..46d82a8e 100644 --- a/src/test/newt/newttest.Mod +++ b/src/test/newt/newttest.Mod @@ -3,6 +3,7 @@ MODULE newttest; IMPORT newt, oocIntStr, Unix; VAR i, j, k : newt.Int32; str : ARRAY 32 OF CHAR; +ch : CHAR; fo, co : newt.Component; BEGIN i := newt.Init(); @@ -29,10 +30,17 @@ newt.PopHelpLine(); newt.Refresh(); i := Unix.Sleep(1); -fo := newt.Form(NIL, "aaa", 0); -co := newt.Button(15, 15, "OK"); -newt.FormAddComponent(fo, co); +REPEAT +ch := newt.GetKey(); +str[0] := ch; +str[1] := 0X; +newt.DrawRootText(5, 5, str); +newt.PushHelpLine(str); +newt.Refresh; +UNTIL ch = ' '; + +(* newt.WaitForKey(); -newt.Delay(30); +newt.Delay(30);*) i := newt.Finished(); END newttest. diff --git a/voc b/voc index 6ba9f2d70e2bad97118512d33e656f8d3430596c..ad68686ab577dc36fe244e9c54cbd903a437bf38 100755 GIT binary patch delta 38208 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 z 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 delta 38209 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