Mersenne Twister DLL version ([0,1) interval)

About Mersenne Twister

LICENSE:
mt19937.dll(mt19937-dll.c):A license applies to the license of 'mt19937-2.c'.(Artistic License)
mt19937m.dll(mt19937-mdll.c):A license applies to the license of 'mt19937-2.c'.(Artistic License)
cokus.dll(cokus-dll.c):A license applies to the license of 'cokus.c'.(GPL2)
mt19937ar.dll(mt19937ar-dll.c):A license applies to the license of 'mt19937ar.c'.(BSD License)
mt19937ar-cok.dll(mt19937ar-cok-dll.c):A license applies to the license of 'mt19937ar-cok.c'.(BSD License)
Please look at each source file for details.

Use of these DLLs is free. However, I do not offer any guarantee.
Please use on each your responsibility.

Usage:
Please refer to a sample VBA source(Module1.bas).

Reference data:
The time it took for 10 million generations.
(SPEC of test environment: PentiumIII 800MHz, 256MBytes / Windows2000)

DLL (called from Excel VBA)
		MinGW		BCC55		note 
mt19937-2	2.672 sec	2.685 sec
mt19937-2	2.835 sec	2.802 sec	* ThreadSafe Test Version
cokus		2.714 sec	2.738 sec
mt19937ar	2.685 sec	2.513 sec	* genrand_real2 [0,1)-interval
mt19937ar-cok	2.517 sec	2.618 sec	* genrand_real2 [0,1)-interval
rnd(VBA)	2.680 sec	2.680 sec

EXE:(reference data)
		MinGW		BCC55 
mt19937-2	0.660 sec	0.600 sec
cokus		0.290 sec	0.740 sec
mt19937ar	0.500 sec	0.640 sec
mt19937ar-cok	0.250 sec	0.660 sec
rand		0.640 sec	0.130 sec

* This DLL is a simple direct translation of C versions of MT(mt19937-2.c, cokus.c, mt19937ar.c).
  This DLL can be used from VisualBasic, HSP, and other languages, and that seems the only merit.
* A thread-safe version is being developed. 
  Keep in mind that a test is not enough.
* I used MinGW(http://www.mingw.org/) for binary generation.
* I got to know for the first time on this (Mr. Shin-ichi Tsuruta's Japanese) Website(http://www.emit.jp/)
  about Mersenne Twister. I appreciate Mr. Shin-ichi TSURUTA.
* I referred to this Website(Japanese)(http://www.asahi-net.or.jp/~kh4s-smz/spi/note/minispi.html) about
  BCC55(Borland C++ Compiler 5.5).
* I'm thankful to Mr. Makoto Matsumoto(http://www.math.sci.hiroshima-u.ac.jp/~m-mat/eindex.html),
  who has kindly agreed to this release of MT as a DLL.

Einguste <einguste atmark livedoor.com>