diff --git a/extras/waves.readme b/extras/waves.readme new file mode 100644 index 0000000..9711073 --- /dev/null +++ b/extras/waves.readme @@ -0,0 +1,3 @@ +Waldorf MicroWave Wellenformen und WaveTables hinzugef�gt. WaveTable-Scan �ber PWM. +wave.bin: Original MicroWave Wellenformen m�ssen als Datei ("waves.bin", 16bit, Big-Endian) im Plugin-Verzeichnis vorliegen, damit Feature freigeschaltet wird. +wave2.bin: Original PPG EVU Wellenformen 8bit diff --git a/extras/waves2.bin b/extras/waves2.bin new file mode 100644 index 0000000..b5d5a29 --- /dev/null +++ b/extras/waves2.bin @@ -0,0 +1,9 @@ +ƒ¢¼ÍÓÐĵ¤–†„~wl`RFADQe}•§²²©š†sgabirz~}‚Žœ«ºÂÁ¶¡„fK6-/7GWgr|§ÄÕÛ×ɹ©œ“Ž‹‡‚|vssx€Œ–œ¡ ›•Œ†|ywwwwuusqlhggoy†”Ÿ¡˜ˆpX?/)+8GXgv‚¤ÀÖáãßÒ²¢–ˆ†…†…ŠŽ’—¡££ š‘‹…€~€‚‡ˆ†‚{tmffjtŠ•˜—€jVB2*&+5EXl„Óñ߯¿ÀÈ×ßÖ¿··¸­ ƒz‚”š‘ƒww‚–£¨ª°µ´«¤£¥¤¤§ ¥§§©¤¤¨¤¢  ™•–‡„‚€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€‚˜©¹ÅÍÎÌŬŸ‘„|wuy‚­¾ÎÚâææàÖǵ¤’siabemy‡—£±¹¿Á¼³§™†tcXNHHMUaq„ ¹ËÓÓʾ±§¡ ¦¬²¶¶°¦›’ŠˆŒ–¢®¸ºµ¦•~iYRS[l–§´¼¼º¶µ¶¹ÁÊÏÑËÀ¯š„rgagrƒ°ÎÒ¼žrrz~}pc^bp}‡†ƒ‰˜¦« „aIF]ƒ¦º¶{`U[jx~{{„“Ÿ¢œƒ†Œ~bB/4S„ÁéõíßÓÌÉļ·±«ª¬±´³¦’“•”‚yy|¢²¸²¦–‹Ž‘އ}sopx‚Ž‹†‚|m]J>FTk‚ž´ËÛçìðìæÞÒǹ«Ÿ–‹‚{tpllklpruy|~}}{{wtqnporux~…Ž“œ¦°¼ÅÎÓÙÙÚÒȹ¦•‚¡»Ñàêñïêá×ɺ©œ‹€tpmnprx|€„ŠŽŽŒ‹‰‰ƒ€|xspnnnqv{Š“ž¨³½ÃÆÈŬŸºßíåÒ²˜{f`bly‚ˆ‹Œˆ|{wzy{|€‡Š’“”“ކ‡€ytqww†ŒŒŽˆ}ph]`j€¼ÏØÍ´ƒ ¸ÎßìòôðçÜ;¬ž…|urrrsw{}ƒ†‡‡ˆˆˆ‡†…ƒ|{vurrsx~†’ ¯ÀÏÝèïòðçÛDZ™†¢å„¥¥WG§ðȇ”ÉЯ”WZ„©Èàïö÷óìçâßÝÜÝÚÙ×ÔÍÊÁ½¹¶±­¬¦¢Ÿ››Ÿ ¤££ Ÿœ›™––“‰„€~}|||ƒ€„§ÅÜæìèßÕËþ¾º½º¶²®¦¤ Ÿžœ™’Œ‚}ywxz€„Œ‘Šˆ‚}ztssuw{|~ƒ„ƒƒƒƒ¨ÇÙßßÚÙÛßäçëëèèàßÙÔÔÑÓØÖÖÔÒÒÏÏÌÊüµ­­¯¯°²²­­«¦¦¢œ˜‘ŽŽŒ‹‰…}ƒ¼ã÷ùöóôòðíëééêëçâßÚØÙÙ×ÑÐÑËÊÈÆÅÄÇÀ·¶´·±¯§¤£¡¥Ÿžœšœ”ˆ„{~„´ÙòûýúïàÑÉÂý»¶²ª¨¡ž™˜™˜”‡qicadjrzƒ‡ŽŽ‘”†}uomkhjovz}€†ˆ…ƒ²Úï÷õèØËÀº¹»¾¿¾¶©™ƒn_WTX^beefhhoryƒˆ‘•—”Œ…ytnloqoonojlmpropruv|„°ÓèëàÉ°š‹‰Œ™ §«¨¢œ––™ ¨°µ´­ ‘‚xw{…‘šžš‘„vjhnyŠž®¸»¸­ŸŒ{rlilquy~˜ª¹ÇÏÓÓÐÉÁµ¬¢›–’‘ŽŒ…‚|tnidcefkpv~„‰Œ‘‘’’‘’’”˜ž¢«±¶»¾¿º´¨Ž‚‰•œ ¥©®³¹½¿ÃÆÊÌÎÎÐÑÓÓÕÔÕÕÖÖÕÖÕÕÖÕÕÕÔÔÓÔÒÒÐÏÍÍËÉÆÃ¿¼¹´®ª¥ œ–‘Šƒ„œ¤­´»¿ÃÇÉÌÍÏÑÔÔÔÔÕÕÕÓÖÔÕÕÖ×ÙÚÚÚÙÙ××ÕÕÓÓÒÓÓÒÒÓÓÒÏÎÌÊÇÅÁ¾ºµ°§Ÿ“Š‚˜ ¨®¶»ÀÅÈÊËËÌÌËËÊÉÉÊËÌÍÏÏÑÔÔÖÕÖÕÔÔÒÐÏÌÌÊËÇÈÇÉÉÉÉÉÈÈÆÃ¿¼·±«¢›‡ƒš­»ÁÅÂÁÂÆÉËÎÎÏÍÎÍÎÐÑÓÒÓÒÓÔÕÖרØ×Ø×ÖÕÓÔÑÒÐÒÑÐÎÍÌËËËÍËÉÅÁ½»¿¿»´¤‘„¬ÌÚÝÖÍÌÍÌÍÊÉÅÅÆÅÈÍÒÖßÜÝÚÙ×ÖÓÏÉÄÄÉËÌÐÔÙÛÜÙÛÕÔÏËÉ¿ÃÇÇÇÂÀÃÍ×ÝØÈ²™ƒž³ÇÖáêïóóööôòðêåÚÒÈÀ¶ª¦–’Œˆ…„}{zyyxtvwwz|~„ƒ†‡‰ˆ‰‹‹Œ‹Š‹‹Œ‡†…‚ƒ¯Â¾º¼½º»½Â½¼¼À¿½¼»»¸½¿½»º»»»¼Á¿¼¿¿¼¹¹»¹ºº¾»¸¹¼»»¼¼»»»¾»·¸»ºµ·¼©ƒ‰•›Ÿ¤ª®´º¿ÄÉÍÒÖÚÜßâæèëìïðòóôõõõõôóòðïìëèæâßÜÚÖÒÍÉÄ¿º´®ª¤Ÿ›•‰ƒ‚£¿Õæïóñéßν§’~n_TQNOSZ`eqw~‚…‚}zvrpnlnqx…•›ž  Ÿžš“‹…{y{}~~€ÐëèÙÜåçÔ°‰x{‚€}}‚…€}‚€‚ƒ€‚‚€~‚ƒ†ƒ}‚€ƒ…ƒ€„€‚~~~}„€„ÛúðéñïçäéïéãâáÝÙÛÖÓÍÏÎÎÍÌÈ¿ÀÅÀ½½º³µ¯±¬¨©ª¥¦£¤œœœ™——•‹Œ‰ˆ…‚°ÎÛØÎÇÆÐÞæëæáÚÑÐÊÈ¿¹°¦ œ”Œ‡‡†‚~{wxzxyuusvy}€ƒ„‚…„ŠŠŒˆˆ‡ˆ‡……€„‚–š›ššœ¢¬µ½ÃÇÇÅÂÁÄÈÑØßááÞÛ×ÕÖÚßäææãÝÖÐÍÌÐÑÔÓÑʸ±­¬­®­«¥œ”Š„~}‚š ¢£¤§¬µÀËÑÔÒÏËÊÌÐÕÚÛØÑÉÀ¹·¹»»¸±§”Œ‹‹ŽŒ„|tmjkotwwtojfhmv~ƒ„ƒ‚“Ÿ¥¨¬®´¾ÉÕÝàßÜØÕ×ÛßßÜÒÇ»°«¨¥¡š~na[XTRLB7+# "$)+)%""$.9EPUY[_fs‚–£«°´¸ÀÌ×ßâߨÑËÊËÉÆ¼¬œ†€}yrg[NFEGMPNJEDHQ]flomlmu‰‘†‚†‹Žˆ‚˜§±¶»ÀÌØãèåÝÑÉý´¤‘{ja[TL?1#")0334Remla\]j€•šqgkw„–—””–œ£§¥tqnooqpqrvzƒŠŠ…€ÄåáÆ¨˜Ÿ­ÃÐÈ®ˆgUMXeqxvrop{~‡‹Œ‡…ƒ|y{€‡“•’ŽŽ’”‹„{yzz}~ƒ‡…€ÃçæÊ¢|np†¡¸ÅÁ­ud_`dmrrqruv}€ƒ„‚€…‰‘”ˆ~|€€€‚†Š‘’’’Ž‹‘‡ƒ€ÂéíØµŒqhoˆ¢¾Êɼ§wx}†‹‘‰~wnmmstttqropt{~‚{zyvz„‰‡…ƒ~~}„ˆ……·ÛïîÛ¼š}jitФ½ÓÜÜϼ¡Šwkjkntvuqnhdccdbddfedggjqw†ŽŒ‰ˆ†ƒ€€€ƒ ºÏÚßÝÏ»¥Žyi_\ahyŠœ®½ÈÊÈ¿³¥“re]WUV[`fjqvyzyvspkgebaaabejmptw{~„œ³ÇÖáåãÞÑı unlmt‹›ªºÅÑ×ÛÚÕ̾±¢”…xmeaaafipw|‚†‰ŠŠˆ†‚}|{z{z€ƒ”¡±»ÄÊÌÌÇÀ¸­¡•Šuoigikrz…›¥¯ºÂÈËËÌÉþµ®¥Ÿ—‘Ї…ƒ‚…„ˆ‰ŒŽŒ‡„ƒ— ¨¯µ»¾ÁÂÁ¿»¸³­¦ ›•‘‹ˆ…„ƒ„†ˆ‹”™ž£§¬°´··¹¸·µ³°­¨£ œ—“Ž‹ˆ†…ƒ‚€€‚Š’š ¨­³·»½ÀÀ¿À¾»·³­¨£žš“Žˆ„}{zyxxz|}‚…ŠŽ“— ¤¨¬®°±²°°­«¦£Ÿ™’Œ……‰Œ“–™œž ¡£¤¥¥¥¥¥¤¢ Ÿ›˜•‘ŽŠ‡ƒ{wtqmjgdba_]\[[[[\\^`acehkorvy}‚ÈãßÓÖÛÞÜßçìçÛÒÌž¸·¸¯¦ Ÿ™•”Ž‹ƒ}~yuvtvsqrxy}}€†…„„…‹‰‹ŠŠ…ˆˆ„‰‚‚š¬¿ÏÞèñö÷õðêá×̾°§œ‘‰ƒ||{|~‚…‡Š‹‹Šˆ„|vrkd`[UQNKLLMPRUZ^chlrw|»ãðæÒ¹­§­µ³§–~oglw†ŠŒ“œ¦±°ª ‚unkfa^]`gt~…‰‰ŠŠŠŠ‰xh]URU[aiqu{€Ç§Ð€¸’˜€¢dµ€t†b€‚Œ~€¼ƒ¥€„†¶€©–¤€^–9€|†R€BƒW€—Œ’€s†“€RdD€f’ƒ€^§€IT줨£ze€’‚{• Va~‘˜¨½±“‘¢œa.5w±´’¶Æ¡ja€š› ª—dSq•—Ž‘ Ÿš¦žg,>°‰)Ba¿Â¼tQ}‚w¢´~@H}˜£ÃßÈ ˜´¦PÄÎtÑЛ—Ð)·_N€¦°·Ä¥^9fŸ¤Ž˜´²°¾±VÀßšÑƒŽ˜ ª°¹ÁÅÌÐÔ×ÛÜßàáßáààßáßßÛÚØÔÒÏËÈž¼¹¶µ³³°°®°­­ªª¦¤¢ š•“‘Š…‚ƒ”£²¼ÇÎÕØÙÚÚÛÛÝÜÝáàãâäââßÜØÐÌÅÁ¼¶²®­ª¨¦¤£££¡ŸžŸœš˜˜—–““ŽŽ‹‰…ƒƒ¯ÑÜ×ÏÄ¿ÃÊÏÓÒÐÏÏÓÙÜßÚÑÄÀ¶´­¥š‹xwz}}}vtohea`acddbfksz‚„~yvuuuvz²×ãÝѾ±±·¹¸³¨ ž ¡—““•› ¢¡ž”ˆ}wux~‚ƒ€|umkjmpuwxwvrtx€‡‰Š€zsuw‚ÞöÛÓßܲ¶¶¡–‘}[BOl}†ˆ“¤´º­§ª¥“zno]NGTYVXq„‘‘ދޒ‹lWQVOFSkvqp€ËÂÆ·™œ¢§œŽ}}zttghz‰‹š¢™Ž‘Šˆ–€pgep|scg^Y ®–š‡t~Šyh]gqsvtjn€Ï·«®Ž‰‡š{y‰Šz€iaŠ~z›‰‡rŸ”“…”˜€`we\‘‡h‡m`˜§‰„Œ€rr „cy‡zwzrwlk€Í´ ˜‹Š€ºc’|s|€he„˜i¢y€qŸ“rŠž•€mX€r’{n€tN¼˜‘y€aˆj’šb€}ko˜uka€Ê©Ô€·›€¤c³€r‡g€‚y€¹‚¨€‡ˆ²€ª›¥€]›7€yˆO€C‚[€•Ž€t‡“€VcD€eƒ€^©„©´ÀÊÓÚáçìïòôõôóðíéåßÜÖÑÎÈþºµ±®ª§¥¢¡Ÿ›™™—•”‘‘Ž‹Šˆ‡‡……ƒƒ‚€€ƒš¤­¸ÀÇÎÓ×ÚÝßÞÞÞÝÛÚØÖÖÔÒÔÓÕÖÖÙÛÛÝÞßßßßÝÛ×ÔÎÊý´¯¨¢œ–Œ‡„‚~}}}~„•¦¶ÄÒÜäëîññîéäÞ×ÍŽµ°©¤ ›œššš›œž››˜˜••’ŽŒ‰‡†ƒƒ„ƒƒƒ‚ƒƒ‚‚€€‚–¨¸ÇÔßæêííëåßÚÓËÁ»´®¨£ œ˜•“Œˆƒzupjd`]ZXWVWY[_afjnsx{~‚„…„…‚ƒš®ÁÑßêòõøöõîéäßÛÕÓÐÑÑÔ×ÙÛÜÝÜÛ×ÑÍÅ¿¸²¨£Ÿ›˜•“““””•–——–•”‘Ž‹‰†…‚ƒ—¨¸ÆÐÕÚØÖÒËÄ»µ°«©ª¬°¶»ÁÈÎÒרÛÛÛÛÚÚÛÚÝÞÞààãàßÝÙÓÍﳩ ˜‰„€}|{|}„¢ºÑáï÷ùøðêàØÎÇý¼»¼¼¼»¶±¬¢•ˆƒ€€‚„‡ŒŒ‘ŒŠ†‚~}yyx{{|}€€‚€‚ ºÐàìòóîçß×ÎÈÃÃÂÂÄÄÃÀ¹²¨‘ˆxspopstutqmjc^WSPPRU\birz€„‰Š‹ŒŠ‰…‚ƒ¨ÅßìóòéßÒÊÅÂÇÊÓÙÜßÞÙØÔÐÒÒØÜãçëíìêåߨÐÊĽ¸·´²²³³±¯¬¨ ™‘ˆ„~{wwvy|ƒ§ÅÝéêåÚÍ»¸¸¿ÄÊÍÌÉÆÁ½¼¾½ÃÇËÎÒÒÏÍÊÈÆÅÇÊÍÓ×ÜÜÞÛÕÌÆ»²§Ÿ•ˆƒ{zxxx}ƒ­Òêøü÷ìâ×ÕÕ×ÚÙØÑɼ²«©§¨ªª§Ÿ•‹‚zsqsvy€‚„……‚€|yvspoptw|~„„……ƒ€€‚ƒ²ÕïøõêßÖÒÕÛáååáÞØ××ÚàßÝÖË¿±¦ žŸœ™’…}uohccdgov…’—šœœ™–“…ƒ³×ìðëÞÒÎËÏÒÑÏÉÄÄÈÎÕÚÜ×ÐËÊÎØâëöúöñìãÛÑËþ»¿¿ÃÃý¸³­§ œ–ކvspqtyƒµØìïäÙÎËÌÎÌÅ¿ÀÅÌÑÑ˺·µ»ÂÇÍÒÓÎËÅÁ¾¾ÂÈÏ×ÜßÛÛ×ÑÎÊù¯¢˜‰„‚~}}{{}‚¹ÞîîçàÞßßÙÔÌÊÊËȽ³©¦£¥§§¢˜Šzkc_`gklmhgeb`YTOLKMPTYahu}‚ƒ„‡†ƒ„€„ÃæõóëçæçåßßãäæåàÛÚßäçåäÝÓÆ¶®°³¹»»·­© š’Š€|vvx~ˆŽ“–š™™š™”‘Š…ƒ½ßçáÜÖ×ÑÆÃÈÌËÆ¼ºÃÌÔרÑÌÆÆÍ×äïö÷øöòéßÔÎÉÈÆÉÇÈÅÃÀ»¸²§ž—‘‹xrooqrx…¾áëéäßßÞØ×ÚÚÕÍÇÌÓÕÏÁµ¬¯²¶¶¹¹¸µ«£”’•©³¸¼»»¹¸²®©¢—Œz|}{{{€ƒ‚‚½áñîæßßÞÝÙÙÔÒÐÑÐÈ¿³±°³µ°¨‘‚tjgktxwvppnme`ZVOMOS\bir†Š‰†‰Œ‰‰ƒ„ÀäóòëåãååßÞßßáàÝÖÕÚàçèèß×Ì¿µ´µ¹½¿¹¯« œ–€zuux}†ˆŽŽŽ‘‘––•”‘ŒŒ‰…ƒ¾ßçãØÒÐËÂÀÁÂÁ¼´¹ÃËÑÊÁ¹¸·¾ÄÊÏÖØÓÕÒÎÈÅÇÐ×ßáæãåâÛÕÍÆº®£œ–‰†}zwz„¿äòñîéææÞÝÝØÑÌÈÌÓγ«§±³µ³±®¨žˆ‚‚†‹‘™Ÿ¤ ¡Ÿœ›—‘ˆ~zxyz}{|€……ƒ¾ãóñêáßßßÛܨרÙÙÓɽ»¸»½·°¥šŒwuyƒ„‚zxurkc`[TRSWagnu„Œ‘“•‘‰ƒƒÂé÷õîçåâàÛÜßààÝÖÒÕÞäççâÜÔÏËÌÔÛßßÜÙÒÐÉ¿³ª£  ¢¡¤§©¤Ÿššš˜–Œ‹ˆƒƒ~~ƒÀáìèßÜØÒÉÅÇÈÇÁ»¿ÉÒÕͺ¹·¼ÂÇÍÒÐËÉÅÁ¼»ÁÉÓÛÝÞÜÝØÒÎÉÁ·­ —Š…‚€}{{„Áç÷öòêçåÝÝÞÛÔÏËÐÕϲª§°³³°­ª¤›ˆƒƒˆ‹•› ž¡   œ”‘‰}yvx{~~€ƒ‡†€ƒ¼áðñéããäâÝÚÚÜáßÞØÖÙßæææÞÕÇ·ª§§¬°²­¢”ˆvplmqs{}…‰‹Ž“–š›š›—””ŽˆƒÁãñíæãâÞÖÑÓÖÙÕÎËÍÕßâæß×ÐÊËÍÚãìîêçæßÙÎÅ»µ±´µ¸ºº¸³®ª¨£ž–Œƒ€yvvy|ƒÀàêæßÚ×ÓÉÈÊÌÉŽÁÌÓÕÌÁ·µµ¸½ÃÇÊÇ¿ºµ°®µÀÉÓÔØØØÓÎʼ±¦š‘‹„~}€|||‚ÁçõõìéãâÛ××ÐÊÈÆËËÁ°¢œ Ÿ›”އ|qd`bgjkknpojhfdd`_]aacfnt|€~~~‚‚‚ÁçõõìéãâÛ××ÐÊÈÆËËÁ°¢œ Ÿ›”އ|qd`bgjkknpojhfdd`_]aacfnt|€~~~‚‚‚ÁçõõìéãâÛ××ÐÊÈÆËËÁ°¢œ Ÿ›”އ|qd`bgjkknpojhfdd`_]aacfnt|€~~~‚‚„–¦¶ÅÓßèñøýüùõîæß×ÎÆ½¶­¨¢Ÿœ™™˜˜™™›œŸž   œ™—“‰…‚|zyxxyyz|~„–¤´ÂÑÜåíóøúùøôðéáÜÓËù´¬¦ ›˜™˜˜™™œ Ÿ Ÿ š–’‹‡„€~|zwxwxxz|~„™¬¿ÑßêóúýûöðçÞÖ˹±«¦¤¡¡ ¢£¥¨©«¬ªª¨£¡žš•’Ї…‚‚‚ƒ„…ˆ‰‹‰‹‹‰ˆ‡…‚„œ³ÇÙçðö÷õñêßÔÊ¿¶­§£¢¢¢§¨¬¯²²²±®«¦ ™“ŒŽ’’’‘’‰‡ƒ{zxxxyy|„ž´ÊÜêõüýüøñæÛÐÅ»³«¨¦¥¦©ª­°±²±°¬©£ š•‘Ž‹Œ‹ŒŽ’”““”’Іƒ~}zyzzz}„¡½Öè÷öíàÓÆ»±ª§¥¥©­°´µµ³±«¦¡œ˜”‘‘’’”–ššš™—”Ї„€|€ƒ†‡ˆ‰†„„¦ÄßòöéÝÍ¿´¬ª¨«¯³¸¼½¼¶±ª¤Ÿ›™–˜šœž  Ÿ››•’ŽŠŠˆˆ‰Œ‹‹Š‡„|{{zy}ƒªÌèü +ïßϾ³¬©«±µº¾¿½¹³¬¦ žœ   ¡ ™–‘Œ‰‹‘‘‘Šˆ‚‚„‡ˆ†ƒƒƒ¯ÓìúöæÓÄ·­¬­²¶¹¼ºµ±«¦¤¥¥¥¦¥¡Ÿš—“•—–˜™˜™—“Œ‹ŠŠŒ‹‹‰‡…‚€~€ƒƒƒ‚‚‚²ÙñüüîÜǹ®ª­¯´¶¶µ°­ª¨««­­ª¦¢œ›˜™™žŸœš–’‘’‘“‘Œ‡ƒ„ƒ„‡ˆ‡‡†ƒ~}|}‚µßùúê×ö°²¸¹½»¹³®¬¨¬¬­«¨¢ž›œžž   ž˜”’‘““’Ї…‡ˆ‡‰‰†ƒƒ€‚‚ƒ‚¼äüýñÜȹ²³¹¼º¹³¯¯¯´²²¯©¥¡¡ ¡¢£žš™—™–—–’‘‘‘’“’‘Œ‹ˆ…ˆ‰‡††„…ƒ€‚‚‚ÂïöáÉ»µº½¾·®«ª­²´±©¢ £§¨ª¤œš œš•“••–•’Ž‘Œ‰„ˆ‰‰ˆ‰‚}{‚ÂëûòßÈ»·¸·º³¯±³³´±¬ª¨¨§§¢¡žœž›š›™™˜–˜–••”’‘Žˆ†‡†…†Š„€{~‚Óüß·Àų¬¨°µ´®¬¯°¯©¤¨¬©ª¡ŸŸ œ˜•™›šŒ’––’‹Ž‘‰‚†ˆ„…ƒ†„‚}€‚ÈíòàÐÀ½¹³¯µ¶´±¬¬¯°­©¦¥¦¨£¢ ž žŸ›—••‘‘ŽŽŒŽŒ‰…ƒ‚„„†‚ƒƒ€‚Ùõв°ÁËŸ¬­³±¯«­³µ±¨Ÿ¡£¥¤£ œ›œ–˜™•˜“’‰‡†‡ˆŠƒ†‰‹†ƒ‚„ƒ€~‚ÃãçÕŸ¸¹²±²µ³°««®±®¬¦¥¨§¤ ¡ŸŸ œ››—“‘Ž–”–’“‘ŽŽŽŒŠŠ††…†Š‡†‡†ƒ€‚ÐüéÖÇÆÂÀ¾À¿µ±©ª¯´°©££¦¥££ šš—–™”‘ŽŠŠˆ‰‰Ž‹…€€ƒƒ‡‚~ƒ‚‚½ÜßÎÁ¸¹º±®®±­­¨©¬®§¥  ¥££ž ›œ˜™›˜—”Œ‘ŽŽŠŠ‰ŒŒŠŠ‡…‚‚‚…‚ƒ‚€€‚Ìü ûéÞ×ÕÓÒÐÐËÆÄÃÄÆ¿¹¶µ¹²²¯®©©¦¤£¡¡žš››™““‘ŒŠŠˆ‡‚…‡…„„…ƒ‚ƒ~‚¸ÔÖÄ»¶·´¯ªª®«¬¥¦¨ª¢¢žŸ¤¡ž™˜’••”•˜–‘Š’ŽŠŠ‰‰ˆ‰ˆ…„‚ƒ‡„‚ƒ‚{}{|‚Æôúéß×ÑÈÃÀÄÃÃÀ¾¿Á»¶±´°«¦¢¢Ÿ¡ ž™—””™™–‘“‰‹‰‹†„ƒ…€}‚„}‚±ËÍÀ¹¶¸²ª¦¦¬«¬¤¡¢¤  ŸŸ¢œ™•–•š—’ŒˆŠ…ŒŠ‰Šˆˆ‡……„„‚‚€‚ƒ…ƒ„ƒ‚~ƒÍõ øæàÝØÌÆÂÄÂÁÀÀ¿¼·²²²²¬© ¢   œ˜—–‘”ŽŽŒŒŠŒŒŠŠŠ‹Š…‚‚†…‡‚ƒ~€~~°Èʾ¶´·°¨¤£©§§Ÿ›œŸ››Ÿ˜”’“ŒŒ‹‹‡‰ƒ‰‡‰…†††‡…†††ƒ‚€€ƒƒ€„ƒ„‚€ƒÕý +ðÚÎÊǽ·µ´´°¬§¨¨§¥£  š—›——“‘‘ŽŒŒŠŠ‹ŠŠˆˆ‰‹Šˆ…€€ƒ‚€~€ªÂ¸±°´¯¥Ÿœ ¢¢››œ–“‘”—“‘‘Œ‘ŽŠ‰Œˆ‰…‡ƒƒ€‚ƒ„…ƒ†…ƒ€~€€}€~‚ƒÒ +ñàÙØÔȾ¼½º¶±¯®««£¡ ¢¤™˜“’™™”‘ŽŠ‡„„‚‡ˆˆ†‰Š…}~~~€€ªÀ¿´­¬¯¨Ÿ˜•™š›•““”Œ‹Ž‘ŒŒ‰‹‡‡ŠŒ†ˆ„‡‚ƒ‚ƒ„…ƒ†…„~€€}€}‚€~‚Ô䨨ÜÔ¾­¬°²®§¤§§¤——žŸ––“––‘ŽŽ“–”ŠŠ…†€‚…Š‹‡†Š†}|}~~z|~}}|€ªÀ¿´­¬¯¨Ÿ˜•™š›•““”Œ‹Ž‘ŒŒ‰‹‡‡ŠŒ†ˆ„‡‚ƒ‚ƒ„…ƒ†…„~€€}€}‚€~ƒ‹•ž¤­³º¿ÃÈËÍÏÐÐÏÌÊÇ¿¹´¯¨£Ÿ™•‹‡„€~|zxxwxyzz|}~‚‚ƒ„…††‡††……ƒ„‘¨²½ÆÏ×ÞâçêëëëéæâÞÙÓÍÆ¿¹²¬¦¡žš–•“’““•—šœ ¢¦©­¯²³´¶µ´±¯¬¨£ ™”Œ†„Žš¤­·¿ÇÍÓÙÞßáäååääãààßÞÜÛÚÛÛÛÜÝÞààãåæçéêëëëëéçäâßÚÕÐËž¸±ª£•‹…„–¤³ÂÎØàæéêçãÞÖÌ·¬¢š‘‰ƒ~~}ƒ‰‘™ «³½ÆÍÕÙÞßàÞÛ×ÐÉÁ¹¯§Ÿ˜‘Š„~|{|}~„–¨¹É×âëóøûûøòëâØÌ¿±¤˜Š€tlda][\^bgmv‰’œ¦¯¹ÁÉÏÓ×ÙÚÙØÖÒÍÇÁº²«¢™‡„™­¿ÍÙàããß×Ë¿¯¡’…zsnosyƒŸ­¾ÎÛæð÷øøóëáÖÇ»­¡—އ„ƒ…‰Ž–¤ª°²³±®¨Ÿ•Š‚•¦³ÀËÑØÙØÖÑËÆÀ»·±±³³·¼ÂÇÎÓÙÜßààßßÛÙÕÐÌÉÇÃÁ½»¸³°«§ š•‰„~{yxyyz|ƒš®ÀÐÛãæäßÚÐÆ¼²«§¡¤¤©±·¿ÄÊÍÌËÆÀ¸¬¢˜‡|z{|~ƒ…††‚~xof]VNHFFKR\gsƒ¦ÅÞîúøñâι¢€vtt~Š™§´ÀÆÈž´§›Ž„{uppooojf_VJ>3%"+V}Œ}gg€¢¬¦ ‘s_bnpp||x…‘Œ‚„‚vkr|xu}ˆ…†Ž—Œ‚‚†y‰ƒ}‡Œ…}€ÑîÑŽWJcˆ’{ny‘ª¬–zielswx{„†|qorux~€†‹‹}z€€€…‰‹…|xx„ƒ{{€ÞõÄrCQ}š“tdy›¯¦ˆlbiqxz|…Ž„yssxy}‡Ž•Ž„~‚ƒ‚ƒƒ…‰†~xv{~{{{€}wz€ïüªU?mœœzi©·šnZaszz}‡Ž‡xnlw}}‚ˆ’—‹‚x~…‡†…ˆŠ…~zz~{|}ƒ…{{|€€|€ÏË„RaŠ’xn‡¢¡…ljtz|‚‰‹wuy}€…Šˆ~~€€€€…‚|||x{~†„ƒ~€‚„€ƒ„†€ÏË„RaŠ’xn‡¢¡…ljtz|‚‰‹wuy}€…Šˆ~~€€€€…‚|||x{~†„ƒ~€‚„€ƒ„†€ÏË„RaŠ’xn‡¢¡…ljtz|‚‰‹wuy}€…Šˆ~~€€€€…‚|||x{~†„ƒ~€‚„€ƒ„†Î–Žÿo„0&úo„—½ÁB°+°*†·°+K†ß·°q†ÿ·)†c—†Š€—B¶°p…'< |k½×½Ï½Ä½á½®–C…€' +–.4C5—.½ì½Ð½Ò Ö¾ïø¿¿–†·°QÆÐ÷°P†€·°QÆ’÷°P† ·°~†q·°r†€·°p†·°% -OŽàŽˆŽø†@Ž˜ +Žèzyyz{{{||}}}}~~~~}~~~}}||{{{{||}}}}}|{}}xw{}yw|vqw}uhqxwuwse^V[mx‚yƒ”–ƒˆ©µ †{gTGKHThlk†µÅ·¸ÌÔËɺ¡›©¨—xjadTJ`ouhZ?.4IOA-%+IL>Mn¨½ÕÞÚâááßßÔ¤†“œ…a[vzjTKg‘¼À ˜¦ÆËŵ‘xv~‚¢‹Y5-1#1*>5Fy¬ÛääãÜßáàßÚ¾ŒY>GE23IS(g·ÉÆÛààÞÝÝÜÔ¿¨›²Y92.-5/30':b‘¹×æåÙÉßâáàÓµ‹V@=/-=[Mc©¸»ÜááàßÞÞØ»£“’¢ª¢ˆ`@LcfXPH*7]ÇÖŶÑäããáàѦ€fFD9%(2$,CKJYºßçååäÒÉÎÏÅ®‘€qYNMGARky‡¤¿Á±§¯±¢¥¶¼¤ih‚œ›„jZQN<)-B=# %;JKJ`“ÃßåäããÏÏÛÔ¸© ˆiYWMAHYgqŠ­¹µ®¯­¥Ÿ©¹º™paxŒ‘‰xi]R@1*2=2  $5;;A^¾ÛääãÛØßÝË¿µ¡‰tdZOLNUavŽ¡­®ª§£˜—°½§~hl…}yo`L>0.8;+ "02/@`‡¹ÜåäãáÞßØË¿³£Œs`\WJHVjy¡ª­®¦—˜ª¼º›xq€‹†‚‚€qXF=408;% &,1:[ÃÝäåääàâÛËÀ¼¨ˆrnfVKN^q€Œ¤µµ« ˜¦½Ã®“€ŠŠ‚ƒ†nYMB:8?>( -.(9f›À×ãäãááÝÑÌȹ›…wnbMERbir‹§³¬œ“±Á¹£‹†‰†€‚Š€iXPC7@G7 %* "?CA. "" Ao³ÉÞäâàÜÙÕο­š‹}hULNYVZs–«£’ °´°¨ —Šƒ€ˆ‹zfUMFFGA4!'!(Ks“±ÌàäàÝßàÚÌÁ´¢’}hZRVUP[€ £•Ž›«±±­®¦–Šˆ…‚Œ”ze]TLJKG0$ (Kn‹®ÍàßÙÞàßÕËĸ¥}i`[TLKdŠ™”‰‘ «ªª±®¢“‹ˆƒ‘•Šui]SNMMB. ,Ge‡®ËÕÒÖààÛÒËÆº£‹zpeVHAPl„Š…ˆ’› ¡©«©’ˆ€~†“ƒrd]UMQPA(*Ab‰­ÂËÏ×áàÖÏÏ˹Ÿ‹†|gRDL^t…‰–ž£¥ª±«’ˆ…‚‹–“si`UTVS?%#!(Df‹«¿ÈÑÚáßÓÔØÍ´š”“€aLKUcq}†ˆ˜Ÿ£¥¯³ªž“Š…†“˜”„uk`^\`T;#!)(&Hh‡¨¹ÆÓÜß××ÛÛÉ®¡¢—tZRPYco{‚‡Ž“šž¤«¯¨šŽˆ††—‘€qh`]a^M3(('"'Da›´ÄÎÓÔÔØÜÓ¾°«¦‘lYRTY\it…–˜Ÿ¬­Ÿ“‡‚†‘–{ocdhc\H6/,'   *E^{›³ÄÊÊÒÛÝÚÍÁ·´¨‹l^\][ao{}‚‹’”—¦¬©ž“„„ˆ”š‹wljoldXM=30)%$%0EZ{¡¸½¿ÎÙÞÜ×Íÿ¹¦‰pia^_grx€ƒ‹‘–Ÿ§°ª›–‡…š‡rqvrke\N>60,*%&!.=W¢¯²¿ÏÜÚØÓÌÉöŸ‰tfbb_do}|Œ”ª®¥œ”„‡˜ž‘|svwpgd]L;40+(( $:[ƒš¤¬½ÑØÔÏÒÓȾ²Ÿ‡lid[[cnsx~‡Ž‘¨¨£š……˜˜‰zx{vjjg[L;202*##9]•š¦ÃÒÒËÓ×ÐÉóˆvlh`\gnsw}†Œ’𦫠”‹ˆ‹“˜’‰€|}ynjn`J=9=4*($#AcŠ™±ÆÌÌÏÔÖÕË÷ Œztmc`juuv‚‹Ÿ­­ ‘“’—–‡€ƒ€vntp\G@D=2/*&,E]sŠ›®ÄÊÈÎ×ÙÔËö¡Šxjacmpqwƒ‰‡‘£±¦’‘’’”‡‚€|swviXIDC;0+.) )/"1%$>Vev‡ª°½ÒØÏËÍÄ´¨£Œvt|xkhqy€ƒ–—™˜—”’““‡ˆŠy€ˆzeY[[RFEF2"(CU^rŽ˜ž®ÄÒÎÊÍÉÀ¶¬š†zzrkjnz~ˆ”˜”’•”Ž‹’‰‡ˆƒz|ƒ„r`_aVKGJA/%# -=K^u„œ®½ÇÌÆÃÉô¤™ŒyzpgfsyzzДޒ”ŒŠŠ„„~|‚…|nfa_TNMG?4(*=P_l‚˜¬ÄÎÅÀÍÏÀ°©žŒƒ{ngnvxwŒ“’Ž•™’Œ””Œ„ƒ…ƒ„ƒ|uicc[OKOG4'"1BKZr‡š¶ÆÄÃËÓÍ¿µ­ ’Šƒxrorzyv„“Ž“™šˆ”™’†‰Š‚†pjkfVMVUA3/$"/:J^iv‰Ÿ²»½ÃÊÏɾ±¬¤’‰zposvuv„‹”˜‘†Š–—‡€ˆ‰„ƒ„vppi]TTTMB8*-?IQbuˆ˜¨·¹»ÈÎ÷²¬¢’…€xpnpttw†ˆŒ•’†ˆ“Ž„„‡…„„€}}uleaWRVUC4.$#6?ARiw„™«²¸ÂËÍÀ¹¶±¥’‰„}rpvuwz‰““‘Ž‘’‘‰„‹Ž†|ƒ‰}qrn^U^_RD=4 ,58EShx„š©²ºÆÍÉÀ¼½µ¥–ˆst{{tvƒ’‹‘•Ž”—‹‚’‡€…Š„}yth]] \ No newline at end of file diff --git a/src/synth/wavetable.c b/src/synth/wavetable.c index 96931d5..beafb90 100644 --- a/src/synth/wavetable.c +++ b/src/synth/wavetable.c @@ -4,6 +4,7 @@ #include #include "synth_defs.h" +#include "synth_types.h" #include "vector_utils.h" #include "wavetable.h" @@ -60,7 +61,8 @@ const wt_descr_t _g_wt_descr[WT_NUM_WAVETABLES] = void WT_ModInit(wt_common_t *pCom) { UINT32 i, j, k, offset, last_pos, distance; - INT16 sample, wave[WT_WAVE_SIZE]; + INT16 sample; + char wave[WT_WAVE_SIZE]; wt_descr_t const *pDesc; synth_float_t kmix; synth_float_t x, dx, wave_tri[WT_WAVE_SIZE], wave_sqr[WT_WAVE_SIZE], wave_saw[WT_WAVE_SIZE]; @@ -80,32 +82,16 @@ void WT_ModInit(wt_common_t *pCom) for (j=0; j < 64; j++) { - sample = ((INT16)pCom->wave_rawdata[128*i + 2*j + 0] << 8) + pCom->wave_rawdata[128*i + 2*j + 1]; -#if 0 - if (sample & 0x8000) - { - sample = 0xFFFF - sample + 1; - } - wave[j] = sample; -#endif + sample = (INT16)(pCom->wave_rawdata[64*i + j]); + wave[j] = sample - 127; + sample = (INT16)(pCom->wave_rawdata[64*i + 63 - j]); + wave[j + 64] = -(sample - 127); } - // Possible assembly 1 - wave[64] = 0; - for (j=0; j < 63; j++) - { - wave[65+j] = -wave[63-j]; - } - - // Possible assembly 2 -// for (j=0; j < 64; j++) -// { -// wave[64+j] = -wave[63-j]; -// } for (j=0; j < WT_WAVE_SIZE; j++) { - pCom->waves[offset+i][j] = (synth_float_t)wave[j]/8192; + pCom->waves[offset+i][j] = (synth_float_t)wave[j]/256; } #ifdef WAVE_EXPORT_FILE @@ -117,7 +103,7 @@ void WT_ModInit(wt_common_t *pCom) pFile = fopen(filename, "wb"); if (pFile) { - fwrite(wave, 2, WT_WAVE_SIZE, pFile); + fwrite(wave, 1, WT_WAVE_SIZE, pFile); fclose(pFile); } } @@ -129,7 +115,7 @@ void WT_ModInit(wt_common_t *pCom) for (i=0; i < 20; i++) { - fwrite(wave, 2, WT_WAVE_SIZE, pFileAll); + fwrite(wave, 1, WT_WAVE_SIZE, pFileAll); } } } diff --git a/src/synth/wavetable.h b/src/synth/wavetable.h index 932ec80..ff80399 100644 --- a/src/synth/wavetable.h +++ b/src/synth/wavetable.h @@ -10,6 +10,9 @@ #define WT_NUM_WAVETABLES 40 #define WT_WAVETABLE_SIZE 64 +// see +// https://jacajack.github.io/music/2019/12/10/PPG-EPROM.html + // -------------------------------------------------------------- // Types // --------------------------------------------------------------