/// <summary> /// Loads the specified game. /// </summary> /// <param name="gameInfo">The game to load</param> /// <returns>True if the game was loaded successfully</returns> public bool LoadGame(retro_game_info gameInfo) { if (!_core.LoadGame(ref gameInfo)) { Log(RETRO_LOG_LEVEL.WARN, "retro_load_game() failed"); return(false); } GetAVInfo(); return(true); }
/// <summary> /// Loads the specified game. /// </summary> /// <param name="path">The path to the game to load</param> /// <param name="data">If <see cref="SystemInfo.NeedsFullPath"/> is <c>false</c> this should be a byte array containing the game. Otherwise <c>null</c></param> /// <param name="meta">The metadata to pass to the core</param> /// <returns>True if the game was loaded successfully</returns> public bool LoadGame(string path, byte[] data, string meta) { retro_game_info gameInfo = new retro_game_info(); gameInfo.path = path; gameInfo.meta = meta; if (data == null || data.Length == 0) { return(LoadGame(gameInfo)); fixed(byte *p = &data[0]) { gameInfo.data = (IntPtr)p; gameInfo.size = (uint)data.Length; return(LoadGame(gameInfo)); } }