//---------------------------------------------------------------------------------
// Purpose: called when the plugin is loaded, load the interface we need from the engine
//---------------------------------------------------------------------------------
bool CEmptyServerPlugin::Load(	CreateInterfaceFn interfaceFactory, CreateInterfaceFn gameServerFactory )
{
	playerinfomanager = (IPlayerInfoManager *)gameServerFactory(INTERFACEVERSION_PLAYERINFOMANAGER,NULL);
	if ( !playerinfomanager )
	{
		Warning( "Unable to load playerinfomanager, ignoring\n" ); // this isn't fatal, we just won't be able to access specific player data
	}

	botmanager = (IBotManager *)gameServerFactory(INTERFACEVERSION_PLAYERBOTMANAGER, NULL);
	if ( !botmanager )
	{
		Warning( "Unable to load botcontroller, ignoring\n" ); // this isn't fatal, we just won't be able to access specific bot functions
	}

	// get the interfaces we want to use
	if(	!(engine = (IVEngineServer*)interfaceFactory(INTERFACEVERSION_VENGINESERVER, NULL)) ||
		!(gameeventmanager = (IGameEventManager *)interfaceFactory(INTERFACEVERSION_GAMEEVENTSMANAGER,NULL)) ||
		!(filesystem = (IFileSystem*)interfaceFactory(FILESYSTEM_INTERFACE_VERSION, NULL)) ||
		!(helpers = (IServerPluginHelpers*)interfaceFactory(INTERFACEVERSION_ISERVERPLUGINHELPERS, NULL)) || 
		!(enginetrace = (IEngineTrace *)interfaceFactory(INTERFACEVERSION_ENGINETRACE_SERVER,NULL)) ||
		!(randomStr = (IUniformRandomStream *)interfaceFactory(VENGINE_SERVER_RANDOM_INTERFACE_VERSION, NULL))
		)
	{
		return false; // we require all these interface to function
	}

	if ( playerinfomanager )
	{
		gpGlobals = playerinfomanager->GetGlobalVars();
	}

	InitCVars( interfaceFactory ); // register any cvars we have defined
	MathLib_Init( 2.2f, 2.2f, 0.0f, 2.0f );
	return true;
}
Beispiel #2
0
void InitData() {
	int i;

	OurBailoutLine = 1000;
	ScanLine = 1;
	VBlanking = 1;

	for(i=0; i<sizeof(RiotRam); i++)
		RiotRam[i] = 0;

	for(i=0; i<sizeof(TIA); i++)
		TIA[i] = 0;

	for(i=0; i<sizeof(Ram); i++)
		Ram[i] = 0;

	DisplayPointer = ScreenBuffer;

	InitCVars();
	Init_CPU();
	Init_CPUhand();
	Init_TIA();
	Init_Riot();
	Init_P2();
	Init_Starpath();
	Init_Tiasnd();
	Init_SoundQ();

	RandomizeRIOTTimer();
}
Beispiel #3
0
void InitData() {
	int i;

	for(i = 0; i < 0x1000; i++){
		if(i & 0x200){
			if(i & 0x80){
				TIARIOTReadAccess[i] = ReadRIOTTab[i & 0x7];
				TIARIOTWriteAccess[i] = WriteRIOTHandler[i & 0x1f];
			}else{
				TIARIOTReadAccess[i] = TIAReadHandler[i & 0x0f];
				TIARIOTWriteAccess[i] = TIAWriteHandler[i & 0x3f];
			}
		}else{
			if(i & 0x80){
				TIARIOTReadAccess[i] = &ReadRIOTRAM;
				TIARIOTWriteAccess[i] = &WriteRIOTRAM;
			}else{
				TIARIOTReadAccess[i] = TIAReadHandler[i & 0x0f];
				TIARIOTWriteAccess[i] = TIAWriteHandler[i & 0x3f];
			}
		}
	}
	for(i = 0; i < 0x1000; i++){
		ReadAccess[i] = TIARIOTReadAccess[i];
		WriteAccess[i] = TIARIOTWriteAccess[i];
		ReadAccess[0x1000 + i] = &ReadROM4K;
		WriteAccess[0x1000 + i] = &WriteROM4K;
	}
	
	for(i = 0; i < 0x2000; i++){
		ReadAccess[i + 0x2000] = ReadAccess[i];
		WriteAccess[i + 0x2000] = WriteAccess[i];
		ReadAccess[i + 0x4000] = ReadAccess[i];
		WriteAccess[i + 0x4000] = WriteAccess[i];
		ReadAccess[i + 0x6000] = ReadAccess[i];
		WriteAccess[i + 0x6000] = WriteAccess[i];
		ReadAccess[i + 0x8000] = ReadAccess[i];
		WriteAccess[i + 0x8000] = WriteAccess[i];
		ReadAccess[i + 0xa000] = ReadAccess[i];
		WriteAccess[i + 0xa000] = WriteAccess[i];
		ReadAccess[i + 0xc000] = ReadAccess[i];
		WriteAccess[i + 0xc000] = WriteAccess[i];
		ReadAccess[i + 0xe000] = ReadAccess[i];
		WriteAccess[i + 0xe000] = WriteAccess[i];
	}

	InitCVars();
	Init_CPU();
//	Init_CPUhand();
	Init_TIA();
	Init_Riot();
	Init_P2();
	Init_Starpath();
	Init_Tiasnd();
	Init_SoundQ();

	RandomizeRIOTTimer();
}
// Description:
//
// Arguments:
//
// Return:
//
void CVisualLog::Init()
{
	if( m_bInit == false )
	{
		InitCVars();
		Reset();

		m_bInit = true;
	}
}