예제 #1
0
        public void RequestStart(SendMode mode)
        {
            SetInterrupt();
            fadeOut     = false;
            loopCounter = 0;

            Mode = mode;//orではない

            dataSender.Init();

            if ((mode & SendMode.MML) == SendMode.MML)
            {
                dataMaker.RequestStart();
                while (!dataMaker.IsRunning())
                {
                    //Application.DoEvents();
                }
            }

            dataSender.RequestStart();
            while (!dataSender.IsRunning())
            {
                Application.DoEvents();
            }

            emuChipSender.RequestStart();
            realChipSender.RequestStart();

            ResetInterrupt();
        }
예제 #2
0
        public void RequestStart(SendMode mode, bool useEmu, bool useReal)
        {
            SetInterrupt();
            fadeOut     = false;
            loopCounter = 0;

            Mode = mode;//orではない

            dataSender.Init();

            if ((mode & SendMode.MML) == SendMode.MML)
            {
                if (dataMaker.unmount)
                {
                    dataMaker.Mount();
                }
                while (!dataMaker.IsRunning())
                {
                    dataMaker.RequestStart();
                    Application.DoEvents();
                }
            }

            int timeout = 2000;

            while (!dataSender.IsRunning() && timeout > 0)
            {
                dataSender.RequestStart();
                Application.DoEvents();
                System.Threading.Thread.Sleep(1);
                timeout--;
            }
            if (timeout < 1)
            {
                throw new Exception("dataSender freeze");
            }

            if (useEmu)
            {
                emuChipSender.RequestStart();
            }
            if (useReal)
            {
                realChipSender.RequestStart();
            }

            ResetInterrupt();

            isVirtualOnlySend = false;
            if (setting.other.PlayDeviceCB)
            {
                if (useEmu && !useReal)
                {
                    isVirtualOnlySend = true;
                    //Audio.stopDataVirtulaOnlySend = dataSender.stopData;
                }
            }
        }
예제 #3
0
        public void RequestStart(SendMode mode, bool useEmu, bool useReal)
        {
            SetInterrupt();
            fadeOut     = false;
            loopCounter = 0;

            Mode = mode;//orではない

            dataSender.Init();

            if ((mode & SendMode.MML) == SendMode.MML)
            {
                if (dataMaker.unmount)
                {
                    dataMaker.Mount();
                }
                dataMaker.RequestStart();
                while (!dataMaker.IsRunning())
                {
                    //Application.DoEvents();
                }
            }

            dataSender.RequestStart();
            while (!dataSender.IsRunning())
            {
                Application.DoEvents();
            }

            if (useEmu)
            {
                emuChipSender.RequestStart();
            }
            if (useReal)
            {
                realChipSender.RequestStart();
            }

            ResetInterrupt();

            isVirtualOnlySend = false;
            if (setting.other.PlayDeviceCB)
            {
                if (useEmu && !useReal)
                {
                    isVirtualOnlySend = true;
                    //Audio.stopDataVirtulaOnlySend = dataSender.stopData;
                }
            }
        }
예제 #4
0
        public void RequestStart()
        {
            dataSender.Init();

            dataMaker.RequestStart();
            while (!dataMaker.IsRunning())
            {
                ;
            }
            dataSender.RequestStart();
            while (!dataSender.IsRunning())
            {
                ;
            }

            emuChipSender.RequestStart();
            realChipSender.RequestStart();
        }
예제 #5
0
        public void RequestStart()
        {
            SetInterrupt();
            fadeOut     = false;
            loopCounter = 0;

            dataSender.Init();

            dataMaker.RequestStart();
            while (!dataMaker.IsRunning())
            {
                ;
            }
            dataSender.RequestStart();
            while (!dataSender.IsRunning())
            {
                ;
            }

            emuChipSender.RequestStart();
            realChipSender.RequestStart();

            ResetInterrupt();
        }