Web Audio APIã§ãã¡ãã³ã³ãã¤ãºãé³´ããã¦ã¿ã
ãã£ããã«ã¯æããããã¡ãã³ã³ã®ãã¤ãºé³ãWeb Audio APIã使ã£ã¦ã¦ã§ããã©ã¦ã¶ã§åç¾ãã¦ã¿ã¾ããä»è´ãã¨ããªã表ç¾åã«ä¹ããæãã®ãã¤ãºã§ãããå½æã¯ããã§å®å®è¹ã®æ¨é²é³ãæµæ©ã®ççºé³ãã¬ã¼ã¶ã¼å
ç·ãã¹ãã¢ãã©ã ãªã©ç¡éã«ã¤ã¡ã¼ã¸ãè¨ããã ãã®ã§ãã
ã
ãã®ãã¡ãã³ã³ã®é³æºããã»ããµRP2A03ã®ãã¤ãºã¯ãåç´ãªä¹±æ°ã«ãããã¯ã¤ããã¤ãºãªã©ã§ã¯åç¾ã§ãã¾ããããã¤ãºçæã®ãã¸ãã¯ããã®ã¾ã¾å®è£
ããå¿
è¦ãããã¾ãã
ã
RP2A03ã®è©³ç´°ããã¤ãºçæãã¸ãã¯ã¯ãã³ãã³å¤§ç¾ç§ã®FC音源ã®é
ã«ç°å¸¸ã«è©³ããæ¸ãã¦ããã¾ããå
容ãèªã¿å¿ãããããã£ã¨èªãã§ãããã¾ããåã¯ä½ãå«ãªãã¨ããã£ãããã¦æ°æã¡ãè½ã¡çãããã¨ãã«ã¯ãã®ãã¼ã¸ãããèªãããã«ãã¦ãã¾ããåã§ãã
ããã«ããã¨ãã¤ãºçæã¯ä»¥ä¸ã®Cè¨èªããã°ã©ã ã§ã§ããã¨ã®ãã¨ããã¤ãºã«ã¯é³ç¨æã®ã»ã¨ãã©ãªãé·å¨æãã¤ãºã¨æ¯è¼çé³ç¨æã®ããçå¨æãã¤ãºããããã¾ãããããåçãããã«ãã£ã¦é³ã«å¤åãã¤ãããã¾ãã
//ã¬ã¸ã¹ã¿ã®åæå¤ ï¼ééã£ã¦ããããããªãï¼ reg = 0x8000; //以ä¸ã®3è¡ãåãã //ãshortFreqã¯ãçå¨æãã©ã°ã1ã«ããã¨æå¹ã«ãªãã //ãããã§å¾ãããoutputã®å¤ãããã¤ãºãã£ã³ãã«ã®æ³¢å½¢ã reg >>= 1; reg |= ((reg ^ (reg >> (shortFreq ? 6 : 1))) & 1) << 15; output = reg & 1;
ã
JavaScriptã§æ¸ãã¨ãããªæããä¸ç·ã§ããã
this.reg >>= 1; this.reg |= ((this.reg ^ (this.reg >> (this.short_flag ? 6 : 1))) & 1) << 15; ret = this.reg & 1;
GUIãã¤ãã¦ã§ããããããï¼ç°¡åã§ããã
iPhoneã§ãåãã®ã§ãããã§ççºãããããã¤ããã¨ãããã¾ããççºããã¦ãã ããã
ã
http://aikelab.net/faminoise/