コード例 #1
0
//random generator
int RandomNumber(int low, int high)
{ SceKernelUtilsMt19937Context ctx;
sceKernelUtilsMt19937Init(&ctx, time(NULL));
u32 rand_val = sceKernelUtilsMt19937UInt(&ctx);
rand_val = low + rand_val % high;
return (int)rand_val;
}
コード例 #2
0
ファイル: srand.c プロジェクト: mafu9/dxlibp-kai
int SRand(int seed)
{
	switch(dxpGeneralData.randmode)
	{
	case DXP_RANDMODE_MT:
		if(!dxpGeneralData.mt19937context)
		{
			ChangeRandMode(DXP_RANDMODE_MT);
			return SRand(seed);
		}
		sceKernelUtilsMt19937Init(dxpGeneralData.mt19937context,(u32)seed);
		return 0;
	case DXP_RANDMODE_HW:
		__asm__ volatile
		(
			"mtv		%0,	S000\n"
			"vrnds.s	S000	\n"
			:: "r"(seed)
		);
		return 0;
	default:
		ChangeRandMode(DXP_RANDMODE_MT);
		return SRand(seed);
	}
}
コード例 #3
0
ファイル: Randgenerator.cpp プロジェクト: Ryp/PSPgames
Randgenerator::Randgenerator()
{
  sceKernelUtilsMt19937Init(&ctx_, time(NULL));
}