Exemplo n.º 1
0
        public void Initialize()
        {
            var profilePath = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
            var path        = Path.GetFullPath(Path.Combine(profilePath, ".pinmame"));

            _pinMame = PinMame.Instance(44100, path);
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            LogManager.Configuration = new LoggingConfiguration();

            var target = new ConsoleTarget("PinMame");

            LogManager.Configuration.AddTarget(target);
            LogManager.Configuration.AddRule(LogLevel.Info, LogLevel.Fatal, target);

            LogManager.ReconfigExistingLoggers();

            _pinMame = PinMame.Instance(44100);

            _pinMame.SetHandleKeyboard(true);

            DumpGames();
            DumpFoundGames();

            Logger.Info(_pinMame.GetGame("fh_906h"));

            _pinMame.OnGameStarted        += OnGameStarted;
            _pinMame.OnDisplayAvailable   += OnDisplayAvailable;
            _pinMame.OnDisplayUpdated     += OnDisplayUpdated;
            _pinMame.OnAudioAvailable     += OnAudioAvailable;
            _pinMame.OnAudioUpdated       += OnAudioUpdated;
            _pinMame.OnSolenoidUpdated    += OnSolenoidUpdated;
            _pinMame.OnConsoleDataUpdated += OnConsoleDataUpdated;
            _pinMame.OnGameEnded          += OnGameEnded;
            _pinMame.IsKeyPressed         += IsKeyPressed;

            //_pinMame.StartGame("tf_180h");
            //_pinMame.StartGame("fh_906h");
            //_pinMame.StartGame("mm_109c");
            //_pinMame.StartGame("flashgdn");

            _pinMame.StartGame("acd_168hc");

            _isRunning = true;

            while (_isRunning)
            {
                count++;

                Thread.Sleep(100);
            }
        }
Exemplo n.º 3
0
 /// <summary>
 /// Creates or retrieves the PinMame instance.
 /// </summary>
 /// <param name="audioFormat">Audio format (Int16 / Float)</param>
 /// <param name="sampleRate">Audio sample rate</param>
 /// <param name="vpmPath">Fallback path for VPM folder, if VPM is not registered</param>
 /// <exception cref="ArgumentException">If VPM cannot be found</exception>
 public static PinMame Instance(PinMameAudioFormat audioFormat = PinMameAudioFormat.AudioFormatInt16, int sampleRate = 48000, string vpmPath = null) =>
 _instance ?? (_instance = new PinMame(audioFormat, sampleRate, vpmPath));
Exemplo n.º 4
0
 /// <summary>
 /// Creates or retrieves the PinMame instance.
 /// </summary>
 /// <param name="sampleRate">Audio sample rate</param>
 /// <param name="vpmPath">Fallback path for VPM folder, if VPM is not registered</param>
 /// <exception cref="ArgumentException">If VPM cannot be found</exception>
 public static PinMame Instance(int sampleRate = 48000, string vpmPath = null) =>
 _instance ?? (_instance = new PinMame(sampleRate, vpmPath));
Exemplo n.º 5
0
        static void Main(string[] args)
        {
            LogManager.Configuration = new LoggingConfiguration();

            var target = new ConsoleTarget("PinMame");

            LogManager.Configuration.AddTarget(target);
            LogManager.Configuration.AddRule(LogLevel.Info, LogLevel.Fatal, target);

            LogManager.ReconfigExistingLoggers();

            _pinMame = PinMame.Instance(PinMameAudioFormat.AudioFormatInt16, 44100);

            _pinMame.SetHandleKeyboard(true);
            _pinMame.SetHandleMechanics(0);

            Logger.Info($"maxLamps={_pinMame.GetMaxLamps()}");
            Logger.Info($"maxGIs={_pinMame.GetMaxGIs()}");
            Logger.Info($"maxMechs={_pinMame.GetMaxMechs()}");

            DumpGames();
            DumpFoundGames();

            Logger.Info(_pinMame.GetGame("fh_906h"));

            _pinMame.OnGameStarted        += OnGameStarted;
            _pinMame.OnDisplayAvailable   += OnDisplayAvailable;
            _pinMame.OnDisplayUpdated     += OnDisplayUpdated;
            _pinMame.OnAudioAvailable     += OnAudioAvailable;
            _pinMame.OnAudioUpdated       += OnAudioUpdated;
            _pinMame.OnMechAvailable      += OnMechAvailable;
            _pinMame.OnMechUpdated        += OnMechUpdated;
            _pinMame.OnSolenoidUpdated    += OnSolenoidUpdated;
            _pinMame.OnConsoleDataUpdated += OnConsoleDataUpdated;
            _pinMame.OnGameEnded          += OnGameEnded;
            _pinMame.IsKeyPressed         += IsKeyPressed;

            //_pinMame.StartGame("tf_180h");
            //_pinMame.StartGame("fh_906h");
            //_pinMame.StartGame("mm_109c");
            //_pinMame.StartGame("flashgdn");
            //_pinMame.StartGame("acd_168hc");

            _pinMame.StartGame("t2_l8");

            _isRunning = true;

            while (_isRunning)
            {
                count++;

                if (_started)
                {
                    foreach (var lampInfo in _pinMame.GetChangedLamps())
                    {
                        Logger.Info($"main: Changed Lamp: {lampInfo}");
                    }

                    foreach (var lampInfo in _pinMame.GetChangedGIs())
                    {
                        Logger.Info($"main: Changed GI: {lampInfo}");
                    }
                }

                Thread.Sleep(100);
            }
        }