Esempio n. 1
0
        public static Emulator CreateEmulator(SQLite.NET.SQLiteResultSet.Row sqlRow)
        {
            if (sqlRow.fields.Count != 14)
            {
                Logger.LogError("Unable to create Emulator, invalid database row");
                return(null);
            }

            Emulator emu = new Emulator();

            emu.uid           = int.Parse(sqlRow.fields[0]);
            emu.Title         = DB.Decode(sqlRow.fields[1]);
            emu.PathToRoms    = DB.Decode(sqlRow.fields[2]);
            emu.Filter        = sqlRow.fields[3];
            emu.Position      = int.Parse(sqlRow.fields[4]);
            emu.View          = int.Parse(sqlRow.fields[5]);
            emu.PlatformTitle = DB.Decode(sqlRow.fields[6]);
            emu.Company       = DB.Decode(sqlRow.fields[7]);
            emu.Year          = int.Parse(sqlRow.fields[8]);
            emu.Description   = DB.Decode(sqlRow.fields[9]);
            emu.Grade         = int.Parse(sqlRow.fields[10]);
            emu.videoPreview  = DB.Decode(sqlRow.fields[11]);
            int lAspect = int.Parse(sqlRow.fields[12]);

            if (lAspect != 0)
            {
                emu.CaseAspect = lAspect / 100.00;
            }
            emu.IsArcade = bool.Parse(sqlRow.fields[13]);
            return(emu);
        }
Esempio n. 2
0
        public static Game CreateGame(SQLite.NET.SQLiteResultSet.Row sqlRow, Emulator parentEmulator)
        {
            if (sqlRow.fields.Count != 20)
            {
                Logger.LogError("Unable to create Game, invalid database row");
                return(null);
            }

            System.Globalization.CultureInfo culture = System.Globalization.CultureInfo.InvariantCulture;

            if (parentEmulator == null)
            {
                parentEmulator = DB.Instance.GetEmulator(int.Parse(sqlRow.fields[2], culture));
                if (parentEmulator == null)
                {
                    return(null);
                }
            }

            Game game = new Game(DB.Decode(sqlRow.fields[1]), parentEmulator);

            game.GameID            = int.Parse(sqlRow.fields[0], culture);
            game.Title             = DB.Decode(sqlRow.fields[3]);
            game.Grade             = int.Parse(sqlRow.fields[4], culture);
            game.Playcount         = int.Parse(sqlRow.fields[5], culture);
            game.Yearmade          = int.Parse(sqlRow.fields[6], culture);
            game.Latestplay        = DateTime.Parse(sqlRow.fields[7], culture);
            game.Description       = DB.Decode(sqlRow.fields[8]);
            game.Genre             = DB.Decode(sqlRow.fields[9]);
            game.Company           = DB.Decode(sqlRow.fields[10]);
            game.Visible           = Boolean.Parse(sqlRow.fields[11]);
            game.Favourite         = Boolean.Parse(sqlRow.fields[12]);
            game.LaunchFile        = DB.Decode(sqlRow.fields[13]);
            game.SelectedProfileId = int.Parse(sqlRow.fields[14], culture);
            game.IsInfoChecked     = Boolean.Parse(sqlRow.fields[15]);
            game.Hash           = DB.Decode(sqlRow.fields[16]);
            game.VideoPreview   = DB.Decode(sqlRow.fields[17]);
            game.CurrentDiscNum = int.Parse(sqlRow.fields[18], culture);
            if (game.CurrentDiscNum < 1)
            {
                game.currentDiscNum = 1;
            }
            game.Arguments = DB.Decode(sqlRow.fields[19]);
            return(game);
        }
Esempio n. 3
0
        public static GameDisc CreateGameDisc(SQLite.NET.SQLiteResultSet.Row sqlRow)
        {
            if (sqlRow.fields.Count != 6)
            {
                Logger.LogError("Unable to create Game Disc, invalid database row");
                return(null);
            }

            GameDisc disc = new GameDisc();

            disc.uid        = int.Parse(sqlRow.fields[0]);
            disc.gameId     = int.Parse(sqlRow.fields[1]);
            disc.emuId      = int.Parse(sqlRow.fields[2]);
            disc.path       = DB.Decode(sqlRow.fields[3]);
            disc.number     = int.Parse(sqlRow.fields[4]);
            disc.launchFile = DB.Decode(sqlRow.fields[5]);
            return(disc);
        }
Esempio n. 4
0
        public static EmulatorProfile CreateProfile(SQLite.NET.SQLiteResultSet.Row sqlRow)
        {
            if (sqlRow.fields.Count != 25)
            {
                Logger.LogError("Unable to create Profile, invalid database row");
                return(null);
            }

            System.Globalization.CultureInfo culture = System.Globalization.CultureInfo.InvariantCulture;

            EmulatorProfile profile = new EmulatorProfile(false);

            profile.ID                     = int.Parse(sqlRow.fields[0], culture);
            profile.Title                  = DB.Decode(sqlRow.fields[1]);
            profile.EmulatorID             = int.Parse(sqlRow.fields[2], culture);
            profile.EmulatorPath           = DB.Decode(sqlRow.fields[3]);
            profile.WorkingDirectory       = DB.Decode(sqlRow.fields[4]);
            profile.UseQuotes              = bool.Parse(sqlRow.fields[5]);
            profile.Arguments              = DB.Decode(sqlRow.fields[6]);
            profile.SuspendMP              = bool.Parse(sqlRow.fields[7]);
            profile.MountImages            = bool.Parse(sqlRow.fields[8]);
            profile.EscapeToExit           = bool.Parse(sqlRow.fields[9]);
            profile.CheckController        = bool.Parse(sqlRow.fields[10]);
            profile.IsDefault              = bool.Parse(sqlRow.fields[11]);
            profile.PreCommand             = DB.Decode(sqlRow.fields[12]);
            profile.PreCommandWaitForExit  = bool.Parse(sqlRow.fields[13]);
            profile.PreCommandShowWindow   = bool.Parse(sqlRow.fields[14]);
            profile.PostCommand            = DB.Decode(sqlRow.fields[15]);
            profile.PostCommandWaitForExit = bool.Parse(sqlRow.fields[16]);
            profile.PostCommandShowWindow  = bool.Parse(sqlRow.fields[17]);
            profile.GameId                 = int.Parse(sqlRow.fields[18], culture);
            profile.LaunchedExe            = DB.Decode(sqlRow.fields[19]);
            profile.StopEmulationOnKey     = boolFromInt(int.Parse(sqlRow.fields[20], culture));
            profile.DelayResume            = bool.Parse(sqlRow.fields[21]);
            profile.ResumeDelay            = int.Parse(sqlRow.fields[22], culture);
            profile.GoodmergeTags          = DB.Decode(sqlRow.fields[23]);
            profile.EnableGoodmerge        = bool.Parse(sqlRow.fields[24]);
            return(profile);
        }
Esempio n. 5
0
 public static Game CreateGame(SQLite.NET.SQLiteResultSet.Row sqlRow)
 {
     return(CreateGame(sqlRow, null));
 }