Changeset 33297 for lang/actionscript

Show
Ignore:
Timestamp:
05/15/09 01:09:36 (3 years ago)
Author:
tekisuke
Message:

OffGaoさんのコードをコミット。ファミコンDPCMが使えるようになりました。

Location:
lang/actionscript/flmml/trunk/src
Files:
1 added
4 modified

Legend:

Unmodified
Added
Removed
  • lang/actionscript/flmml/trunk/src/com/txt_nifty/sketch/flmml/MChannel.as

    r32952 r33297  
    139139            var modGbSNoise:MOscGbSNoise = (MOscGbSNoise)(m_oscSet1.getMod(MOscillator.GB_S_NOISE)); 
    140140            modGbSNoise.setNoiseFreq(noteNo); 
     141                        //2009.05.10 OffGao ADD 2L addDPCM 
     142            var modFcDpcm:MOscFcDpcm = (MOscFcDpcm)(m_oscSet1.getMod(MOscillator.FC_DPCM)); 
     143            modFcDpcm.setDpcmFreq(noteNo); 
     144                         
    141145        } 
    142146        public function noteOff():void { 
     
    155159            m_oscMod1 = m_oscSet1.setForm(form); 
    156160            if (form == MOscillator.GB_WAVE) (MOscGbWave)(m_oscSet1.getMod(MOscillator.GB_WAVE)).setWaveNo(subform); 
     161                        //2009.05.10 OffGao ADD 1L addDPCM 
     162            if (form == MOscillator.FC_DPCM) (MOscFcDpcm)(m_oscSet1.getMod(MOscillator.FC_DPCM)).setWaveNo(subform); 
    157163        } 
    158164        public function setEnvelope1AD(attack:int, decay:int):void { 
  • lang/actionscript/flmml/trunk/src/com/txt_nifty/sketch/flmml/MML.as

    r32952 r33297  
    581581                m_relativeDir = false; 
    582582            } 
    583             // WAVE (ex. "#WAV10 0,0123456789abcdeffedcba9876543210") 
     583            // GB WAVE (ex. "#WAV10 0,0123456789abcdeffedcba9876543210") 
    584584            { 
    585585                exp = /^#WAV10\s.*$/gm; 
     
    601601                    } 
    602602                } 
    603             } 
     603                        //2009.05.10 OffGao ADD START addDPCM 
     604            // DPCM WAVE (ex. "#WAV9 0,0123456789abcdeffedcba9876543210") 
     605                exp = /^#WAV9\s.*$/gm; 
     606                matched = m_string.match(exp); 
     607                if (matched) { 
     608                    for(i = 0; i < matched.length; i++) { 
     609                        m_string = m_string.replace(exp, ""); 
     610                        //trace(matched[i]); 
     611                        wav = matched[i].split(" "); 
     612                        wavs = ""; 
     613                        for(j = 1; j < wav.length; j++) wavs += wav[j]; 
     614                        arg = wavs.split(","); 
     615                        waveNo = parseInt(arg[0]); 
     616                        if (waveNo < 0) waveNo = 0; 
     617                        if (waveNo >= MOscFcDpcm.MAX_WAVE) waveNo = MOscFcDpcm.MAX_WAVE-1; 
     618                        var intVol:int = parseInt(arg[1]); 
     619                        if (intVol < 0) intVol = 0; 
     620                        if (intVol > 127)intVol = 127; 
     621                        var loopFg:int = parseInt(arg[2]); 
     622                        if (loopFg < 0) loopFg = 0; 
     623                        if (loopFg > 1) loopFg = 1; 
     624                        /* 
     625                        var length:int = -1; 
     626                        if (arg.length >= 5){ 
     627                            length = parseInt(arg[4]); 
     628                            if (length < 1) length = 1; 
     629                            if (length > 0xff) length = 0xff; 
     630                        } 
     631                        MOscFcDpcm.setWave(waveNo,intVol,loopFg,arg[3],length); 
     632                        */ 
     633                        MOscFcDpcm.setWave(waveNo,intVol,loopFg,arg[3]); 
     634                    } 
     635                } 
     636            } 
     637                        //2009.05.10 OffGao ADD END addDPCM 
    604638            // macro 
    605639            begin(); 
  • lang/actionscript/flmml/trunk/src/com/txt_nifty/sketch/flmml/MOscillator.as

    r30294 r33297  
    3434            m_osc[FC_NOISE]   = new MOscFcNoise(); 
    3535            m_osc[FC_S_NOISE] = null; 
    36             m_osc[FC_DPCM]    = new MOscMod(); 
     36                        //2009.05.10 OffGao MOD 1L addDPCM 
     37            //m_osc[FC_DPCM]    = new MOscMod(); 
     38            m_osc[FC_DPCM]    = new MOscFcDpcm(); 
    3739            m_osc[GB_WAVE]    = new MOscGbWave(); 
    3840            m_osc[GB_NOISE]   = new MOscGbLNoise(); 
     
    5254            MOscFcTri.boot(); 
    5355            MOscFcNoise.boot(); 
     56                        //2009.05.10 OffGao ADD 1L addDPCM 
     57            MOscFcDpcm.boot(); 
    5458            MOscGbWave.boot(); 
    5559            MOscGbLNoise.boot();