♫ AddmusicK v2.00 ♪
Hello everyone! I am working on a new version of AMK.
This is a big update that adds new commands, new labels and corrects some errors.
I am aware that if this tool is aceppted for SMW Central, all the songs hosted here will have to be updated.
(✔) → Done
(✖) → Working on it
Here is a list of what I have done and am doing:
• [✔] The SPC700 code has been rewritten in order to removing a LOT of unnecessary code and adding definies for all addresses;
• [✖] Rewrite the "patch.asm, patch2.asm and tweaks.asm" files;
• [✖] Port all SMW songs;
• [✖] Add support to MSU-1;
• [✔] Update to Asar 1.71;
• [✔] Command $E6 will return to "Tremolo Off" as the original. (The subloop command still remains but as another number);
• [✔] Remaped the percussion command $D0-$D8 to $C8-$D0;
• [✔] Fixed an issue where percussion on channels #6 and #7 stopped playing after SFX;
• [✔] The "author" tag of the SPC information will be renamed "Artist";
• [✔] The "Get Echo Buffer" code was simplified. Now the songs are loaded some milliseconds more faster;
• [✔] Removed the compatibility with old addmusic's (AMM/AM4);
• [✔] Removed the tags: #amk, #am4, #amm, #option, #tempoimmunity, #noloop, #halvetempo, #dividetempo, #smwvtable and #nspcvtable;
• [✔] Changed channel definition to #Track(X). Where "X" is the channel number (1-8);
• [✔] Added three FIR Filters most used by SNES games:
New commands:
Check out a map below that shows how the commands will look:
New commands:
• [✔] Echo Delay Fade
• [✔] Echo Feedback Fade
• [✔] Pitch Envelope Off
• [✔] Arpeggio Off
• [✖] Remote Command Off
• [✔] Pitch Modulation Toggle
• [✔] Echo Channels
• [✔] Set Left & Right Volume
• [✔] Loop Break
• [✔] Subloop Break
New Labels:
• [✔] sXX(YZZ) → $YY $XX $ZZ (Fade command)
• Eg1: $E1 $5A $FA → s5A(w250)
• Eg2: $DC $18 $14 → s18(y20)
• Eg3: $EA $25 → s25(p)
• [✔] Ad ($XX $YY) → ADSR ($ED $XX $YY)
• Eg1: $ED $4F $E0 → Ad($CF $E0)
• Eg2: $ED $72 $AA → Ad($F2 $AA)
• [✔] Ga (XX $YY) → GAIN ($ED $80 $YY). Where "XX" is the acronym for the type of GAIN you want to use (Di, De, Ex, In or Be)
• Eg1: $ED $80 $BA → Ga(Ex $1A)
• Eg2: $ED $80 $FE → Ga(Be $1E)
• Eg3: $ED $80 $40 → Ga(Di $40)
• [✔] tuning[XX]=Y → Tuning(@XX) = Y
• Eg1: tuning[2]=-1 → Tuning(@2) = -1
• Eg2: tuning[15]=5 → Tuning(@15) = 5
• [✔] $DD $XX $YY $ZZ → &($XX note+length)
• Eg1: $DD $02 $18 $A1 → &($02 o3 a8)
• Eg2: $DD $5A $36 >>a+ → &($5A >>a+4^32)
• Eg3: $DD $00 $D8 $BE → &(o6 d1^8)
• [✖] k -> Set percussion
Note: percussion is not a $DA command. So it will be moved "@21- @29" to "k1-k9". As a result, custom instruments will start from "@20" instead of "@30".
Removed commands:
• Boost Volume ($FA $03 $XX) (obsolete by the new "Set Left & Right Volume" command)
• Set GAIN ($FA $01 $XX) (obsolete by the old $ED command)
• Data Send ($F9 $XX $YY) (Nobody use this)
I would like to hear your opinion on these changes, as well as new ideas.
Soon i will send the tool link.
Note: I am not a professional programmer so there may be things that I may not be able to do.
Hello everyone! I am working on a new version of AMK.
This is a big update that adds new commands, new labels and corrects some errors.
I am aware that if this tool is aceppted for SMW Central, all the songs hosted here will have to be updated.
(✔) → Done
(✖) → Working on it
Here is a list of what I have done and am doing:
• [✔] The SPC700 code has been rewritten in order to removing a LOT of unnecessary code and adding definies for all addresses;
• [✖] Rewrite the "patch.asm, patch2.asm and tweaks.asm" files;
• [✖] Port all SMW songs;
• [✖] Add support to MSU-1;
• [✔] Update to Asar 1.71;
• [✔] Command $E6 will return to "Tremolo Off" as the original. (The subloop command still remains but as another number);
• [✔] Remaped the percussion command $D0-$D8 to $C8-$D0;
• [✔] Fixed an issue where percussion on channels #6 and #7 stopped playing after SFX;
• [✔] The "author" tag of the SPC information will be renamed "Artist";
• [✔] The "Get Echo Buffer" code was simplified. Now the songs are loaded some milliseconds more faster;
• [✔] Removed the compatibility with old addmusic's (AMM/AM4);
• [✔] Removed the tags: #amk, #am4, #amm, #option, #tempoimmunity, #noloop, #halvetempo, #dividetempo, #smwvtable and #nspcvtable;
• [✔] Changed channel definition to #Track(X). Where "X" is the channel number (1-8);
• [✔] Added three FIR Filters most used by SNES games:
Code
$58,$BF,$DB,$F0,$FE,$07,$0C,$0C $0C,$21,$2B,$2B,$13,$FE,$F3,$F9 $34,$33,$00,$D9,$E5,$01,$FC,$EB
New commands:
Check out a map below that shows how the commands will look:
New commands:
• [✔] Echo Delay Fade
• [✔] Echo Feedback Fade
• [✔] Pitch Envelope Off
• [✔] Arpeggio Off
• [✖] Remote Command Off
• [✔] Pitch Modulation Toggle
• [✔] Echo Channels
• [✔] Set Left & Right Volume
• [✔] Loop Break
• [✔] Subloop Break
New Labels:
• [✔] sXX(YZZ) → $YY $XX $ZZ (Fade command)
• Eg1: $E1 $5A $FA → s5A(w250)
• Eg2: $DC $18 $14 → s18(y20)
• Eg3: $EA $25 → s25(p)
• [✔] Ad ($XX $YY) → ADSR ($ED $XX $YY)
• Eg1: $ED $4F $E0 → Ad($CF $E0)
• Eg2: $ED $72 $AA → Ad($F2 $AA)
• [✔] Ga (XX $YY) → GAIN ($ED $80 $YY). Where "XX" is the acronym for the type of GAIN you want to use (Di, De, Ex, In or Be)
• Eg1: $ED $80 $BA → Ga(Ex $1A)
• Eg2: $ED $80 $FE → Ga(Be $1E)
• Eg3: $ED $80 $40 → Ga(Di $40)
• [✔] tuning[XX]=Y → Tuning(@XX) = Y
• Eg1: tuning[2]=-1 → Tuning(@2) = -1
• Eg2: tuning[15]=5 → Tuning(@15) = 5
• [✔] $DD $XX $YY $ZZ → &($XX note+length)
• Eg1: $DD $02 $18 $A1 → &($02 o3 a8)
• Eg2: $DD $5A $36 >>a+ → &($5A >>a+4^32)
• Eg3: $DD $00 $D8 $BE → &(o6 d1^8)
• [✖] k -> Set percussion
Note: percussion is not a $DA command. So it will be moved "@21- @29" to "k1-k9". As a result, custom instruments will start from "@20" instead of "@30".
Removed commands:
• Boost Volume ($FA $03 $XX) (obsolete by the new "Set Left & Right Volume" command)
• Set GAIN ($FA $01 $XX) (obsolete by the old $ED command)
• Data Send ($F9 $XX $YY) (Nobody use this)
I would like to hear your opinion on these changes, as well as new ideas.
Soon i will send the tool link.
Note: I am not a professional programmer so there may be things that I may not be able to do.