Example #1
0
        /// <summary>
        /// Wird uisgfiärt wemmr aui Parametr hend.
        /// </summary>
        /// <remarks>
        /// Es cha si dass das meh as einisch uisgfiärt wird, wobih's DMD numä
        /// einisch ersteuht wird.
        /// </remarks>
        public void Init()
        {
            if (_isOpen)
            {
                return;
            }

            _gray2Colorizer = null;
            _gray4Colorizer = null;
            _coloring       = null;

            SetupColorizer();

            if (_config.VirtualDmd.Enabled)
            {
                if (_dmd == null)
                {
                    Logger.Info("Opening virtual DMD...");
                    CreateVirtualDmd();
                }
                else
                {
                    _dmd.Dispatcher.Invoke(() => {
                        SetupGraphs();
                        SetupVirtualDmd();
                    });
                }
            }
            else
            {
                SetupGraphs();
            }
            _isOpen = true;
        }
Example #2
0
        /// <summary>
        /// Tuät aui Renderer ahautä unds virtueua DMD vrschteckä.
        /// </summary>
        public void Close()
        {
            Logger.Info("Closing up.");
            _graphs.ClearDisplay();
            _graphs.Dispose();
            try {
                _dmd?.Dispatcher.Invoke(() => {
                    _dmd.Hide();
                });
            } catch (TaskCanceledException e) {
                Logger.Warn(e, "Could not hide DMD because task was already canceled.");
            }

            _color          = RenderGraph.DefaultColor;
            _palette        = null;
            _gray2Colorizer = null;
            _gray4Colorizer = null;
        }
Example #3
0
        private void SetupColorizer()
        {
            // only setup if enabled and path is set
            if (!_config.Global.Colorize || _altcolorPath == null || _gameName == null)
            {
                return;
            }

            // abort if already setup
            if (_gray2Colorizer != null || _gray4Colorizer != null)
            {
                return;
            }
            var palPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".pal");
            var palPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.pal");
            var vniPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".vni");
            var vniPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.vni");

            var palPath = File.Exists(palPath1) ? palPath1 : palPath2;
            var vniPath = File.Exists(vniPath1) ? vniPath1 : vniPath2;

            if (File.Exists(palPath))
            {
                try {
                    Logger.Info("Loading palette file at {0}...", palPath);
                    _coloring = new Coloring(palPath);
                    VniAnimationSet vni = null;
                    if (File.Exists(vniPath))
                    {
                        Logger.Info("Loading virtual animation file at {0}...", vniPath);
                        vni = new VniAnimationSet(vniPath);
                        Logger.Info("Loaded animation set {0}", vni);
                    }
                    _gray2Colorizer = new Gray2Colorizer(_coloring, vni);
                    _gray4Colorizer = new Gray4Colorizer(_coloring, vni);
                } catch (Exception e) {
                    Logger.Warn(e, "Error initializing colorizer: {0}", e.Message);
                }
            }
            else
            {
                Logger.Info("No palette file found at {0}.", palPath);
            }
        }
Example #4
0
        /// <summary>
        /// Tuät aui Renderer ahautä unds virtueua DMD vrschteckä.
        /// </summary>
        public void Close()
        {
            Logger.Info("Closing up.");
            _graphs.ClearDisplay();
            _graphs.Dispose();
            try {
                _virtualDmd?.Dispatcher?.Invoke(() => _virtualDmd?.Close());
                _virtualDmd = null;
            } catch (TaskCanceledException e) {
                Logger.Warn(e, "Could not hide DMD because task was already canceled.");
            }

            _alphaNumericDest = null;
            _color            = RenderGraph.DefaultColor;
            _palette          = null;
            _gray2Colorizer   = null;
            _gray4Colorizer   = null;
            _coloring         = null;
            _isOpen           = false;
        }
Example #5
0
        /// <summary>
        /// Wird uisgfiärt wemmr aui Parametr hend.
        /// </summary>
        /// <remarks>
        /// Es cha si dass das meh as einisch uisgfiärt wird, wobih's DMD numä
        /// einisch ersteuht wird.
        /// </remarks>
        public void Init()
        {
            if (_isOpen)
            {
                return;
            }

            _gray2Colorizer = null;
            _gray4Colorizer = null;
            _coloring       = null;

            SetupColorizer();

            if (_config.VirtualDmd.Enabled)
            {
                if (_dmd == null)
                {
                    Logger.Info("Opening virtual DMD...");
                    CreateVirtualDmd();
                }
                else
                {
                    try {
                        _dmd.Dispatcher.Invoke(() =>
                        {
                            SetupGraphs();
                            SetupVirtualDmd();
                        });
                    } catch (TaskCanceledException e) {
                        Logger.Error(e, "Main thread seems already destroyed, aborting.");
                    }
                }
            }
            else
            {
                SetupGraphs();
            }
            _isOpen = true;
        }
Example #6
0
        /// <summary>
        /// Wird uisgfiärt wemmr aui Parametr hend.
        /// </summary>
        /// <remarks>
        /// Es cha si dass das meh as einisch uisgfiärt wird, wobih's DMD numä
        /// einisch ersteuht wird.
        /// </remarks>
        public void Init()
        {
            _gray2Colorizer = null;
            _gray4Colorizer = null;

            if (_config.Global.Colorize && _altcolorPath != null)
            {
                var palPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".pal");
                var palPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.pal");
                var fsqPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".fsq");
                var fsqPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.fsq");

                var palPath = File.Exists(palPath1) ? palPath1 : palPath2;
                var fsqPath = File.Exists(fsqPath1) ? fsqPath1 : fsqPath2;

                if (File.Exists(palPath))
                {
                    try {
                        Logger.Info("Loading palette file at {0}...", palPath);
                        var         coloring   = new Coloring(palPath);
                        Animation[] animations = null;

                        if (File.Exists(fsqPath))
                        {
                            Logger.Info("Loading animation file at {0}...", fsqPath);
                            animations = Animation.ReadFrameSequence(fsqPath);
                        }
                        _gray2Colorizer = new Gray2Colorizer(coloring, animations);
                        _gray4Colorizer = new Gray4Colorizer(coloring, animations);
                    } catch (Exception e) {
                        Logger.Warn(e, "Error initializing colorizer: {0}", e.Message);
                    }
                }
                else
                {
                    Logger.Debug("No palette file found at {0}.", palPath);
                }
            }
            else
            {
                Logger.Info("Bit-convertion disabled.");
            }

            if (_config.VirtualDmd.Enabled)
            {
                if (_dmd == null)
                {
                    Logger.Info("Opening virtual DMD...");
                    CreateVirtualDmd();
                }
                else
                {
                    _dmd.Dispatcher.Invoke(() => {
                        SetupGraphs();
                        SetupVirtualDmd();
                    });
                }
            }
            else
            {
                SetupGraphs();
            }
        }
Example #7
0
        private void SetupColorizer()
        {
            // only setup if enabled and path is set
            if (!_config.Global.Colorize || _altcolorPath == null || _gameName == null || !_colorize)
            {
                return;
            }

            // abort if already setup
            if (_gray2Colorizer != null || _gray4Colorizer != null)
            {
                return;
            }
            var palPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".pal");
            var palPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.pal");
            var vniPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".vni");
            var vniPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.vni");

            var palPath = File.Exists(palPath1) ? palPath1 : palPath2;
            var vniPath = File.Exists(vniPath1) ? vniPath1 : vniPath2;

            if (File.Exists(palPath))
            {
                try {
                    Logger.Info("Loading palette file at {0}...", palPath);
                    _coloring = new Coloring(palPath);
                    VniAnimationSet vni = null;
                    if (File.Exists(vniPath))
                    {
                        Logger.Info("Loading virtual animation file at {0}...", vniPath);
                        vni = new VniAnimationSet(vniPath);
                        Logger.Info("Loaded animation set {0}", vni);
                        aniHeight = vni.MaxHeight;
                        aniWidth  = vni.MaxWidth;
                        Logger.Info("Animation Dimensions: {0}x{1}", aniWidth, aniHeight);
                    }
                    else
                    {
                        Logger.Info("No animation set found");
                        aniHeight = Height;
                        aniWidth  = Width;
                    }

                    _gray2Colorizer = new Gray2Colorizer(_coloring, vni);
                    _gray4Colorizer = new Gray4Colorizer(_coloring, vni);

                    _gray2Colorizer.ScalerMode = _config.Global.ScalerMode;
                    _gray4Colorizer.ScalerMode = _config.Global.ScalerMode;
                } catch (Exception e) {
                    Logger.Warn(e, "Error initializing colorizer: {0}", e.Message);
                }
            }
            else
            {
                Logger.Info("No palette file found at {0}.", palPath);
            }

            if (_config.Global.ScaleToHd)
            {
                Logger.Info("ScaleToHd = True, ScalerMode = " + _config.Global.ScalerMode.ToString());
            }
            else
            {
                Logger.Info("ScaleToHd = False");
            }
        }
Example #8
0
        /// <summary>
        /// Wird uisgfiärt wemmr aui Parametr hend.
        /// </summary>
        /// <remarks>
        /// Es cha si dass das meh as einisch uisgfiärt wird, wobih's DMD numä
        /// einisch ersteuht wird.
        /// </remarks>
        public void Init()
        {
            if (_isOpen)
            {
                return;
            }

            _gray2Colorizer = null;
            _gray4Colorizer = null;
            _coloring       = null;

            if (_config.Global.Colorize && _altcolorPath != null)
            {
                var palPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".pal");
                var palPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.pal");
                var vniPath1 = Path.Combine(_altcolorPath, _gameName, _gameName + ".vni");
                var vniPath2 = Path.Combine(_altcolorPath, _gameName, "pin2dmd.vni");

                var palPath = File.Exists(palPath1) ? palPath1 : palPath2;
                var vniPath = File.Exists(vniPath1) ? vniPath1 : vniPath2;

                if (File.Exists(palPath))
                {
                    try {
                        Logger.Info("Loading palette file at {0}...", palPath);
                        _coloring = new Coloring(palPath);
                        VniAnimationSet vni = null;
                        if (File.Exists(vniPath))
                        {
                            Logger.Info("Loading virtual animation file at {0}...", vniPath);
                            vni = new VniAnimationSet(vniPath);
                            Logger.Info("Loaded animation set {0}", vni);
                        }
                        _gray2Colorizer = new Gray2Colorizer(_coloring, vni);
                        _gray4Colorizer = new Gray4Colorizer(_coloring, vni);
                    } catch (Exception e) {
                        Logger.Warn(e, "Error initializing colorizer: {0}", e.Message);
                    }
                }
                else
                {
                    Logger.Info("No palette file found at {0}.", palPath);
                }
            }
            else
            {
                Logger.Info("Bit-convertion disabled.");
            }

            if (_config.VirtualDmd.Enabled)
            {
                if (_dmd == null)
                {
                    Logger.Info("Opening virtual DMD...");
                    CreateVirtualDmd();
                }
                else
                {
                    _dmd.Dispatcher.Invoke(() => {
                        SetupGraphs();
                        SetupVirtualDmd();
                    });
                }
            }
            else
            {
                SetupGraphs();
            }
            _isOpen = true;
        }