Esempio n. 1
0
        private void OPNAInitialWrite(musicDriverInterface.ChipDatum dat)
        {
            if (!initPhase)
            {
                OPNAWrite(dat);
                return;
            }

            SoundManager.PackData p = new SoundManager.PackData(null, null, EnmDataType.Block, dat.port * 0x100 + dat.address, dat.data, null);
            pd.Add(p);
        }
Esempio n. 2
0
        private void OPNBInitialWrite(int ChipID, ChipDatum dat)
        {
            if (!initPhase)
            {
                OPNBWrite(ChipID, dat);
                return;
            }

            SoundManager.PackData p = new SoundManager.PackData(null, null, EnmDataType.Block, dat.port * 0x100 + dat.address, dat.data, null);
            pd[ChipID + 2].Add(p);
        }
Esempio n. 3
0
        private void OPL4InitialWrite(musicDriverInterface.ChipDatum dat)
        {
            if (!initPhase)
            {
                OPL4Write(dat);
                return;
            }

            SoundManager.PackData p = new SoundManager.PackData(null, chipRegister.YMF278B[0], EnmDataType.Block, dat.port * 0x100 + dat.address, dat.data, null);
            pcmdata.Add(p);
        }
Esempio n. 4
0
        private int P86Write(ChipDatum arg)
        {
            if (arg == null)
            {
                return(0);
            }

            if (!initPhase)
            {
                outDatum od = null;
                if (arg.addtionalData != null)
                {
                    if (arg.addtionalData is MmlDatum)
                    {
                        MmlDatum md = (MmlDatum)arg.addtionalData;
                        if (md.linePos != null)
                        {
                            md.linePos.srcMMLID = filename;
                        }
                        od = new outDatum(md.type, md.args, md.linePos, (byte)md.dat);
                    }
                }

                if (arg.port == 0x00)
                {
                    chipRegister.P86LoadPcm(od, count, 0, (byte)arg.address, (byte)arg.data, (byte[])arg.addtionalData);
                }
                else
                {
                    chipRegister.P86Write(od, count, 0, arg.port, arg.address, arg.data);
                }

                return(0);
            }

            SoundManager.PackData p;
            if (arg.port == 0x00)
            {
                p = new SoundManager.PackData(
                    null, null, EnmDataType.Block, arg.address, arg.data, arg.addtionalData);
            }
            else
            {
                p = new SoundManager.PackData(
                    null, null, EnmDataType.Normal, arg.port, arg.address, arg.data);
            }

            p8d.Add(p);
            return(0);
        }
Esempio n. 5
0
        private void OPMInitialWrite(int ChipID, ChipDatum dat)
        {
            if (!initPhase)
            {
                OPMWrite(ChipID, dat);
                return;
            }

            outDatum od = null;

            if (dat.addtionalData is musicDriverInterface.MmlDatum)
            {
                musicDriverInterface.MmlDatum md = (musicDriverInterface.MmlDatum)dat.addtionalData;
                if (md.linePos != null)
                {
                    md.linePos.srcMMLID = filename;
                }
                od = new outDatum(md.type, md.args, md.linePos, (byte)md.dat);
            }

            SoundManager.PackData p = new SoundManager.PackData(od, chipRegister.YM2151[ChipID], EnmDataType.Block, dat.address, dat.data, null);
            pd[ChipID + 4].Add(p);
        }