ff3:ff3us:doc:asm:codes:music_codes

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
ff3:ff3us:doc:asm:codes:music_codes [2016/04/03 06:28]
m06 created
ff3:ff3us:doc:asm:codes:music_codes [2018/10/31 12:05]
emberling [Notes]
Line 1: Line 1:
 ===== Music Commands ===== ===== Music Commands =====
 +
 +==== Overview ====
 +
 +These commands are used in the [[ff3:ff3us:doc:asm:list:music |music tracks]]
  
 ==== Notes ==== ==== Notes ====
 <code> <code>
-00-0D       Play note, +1/1  1/2  1/3  3/8  1/4  1/6  3/16 1/8  1/12 1/16 1/24 1/32 1/48 1/64   
-0E-1B       Play note, C# +------------------------------------------------------------------------        
-1C-29       Play note, +00   01   02   03   04   05   06   07   08   09   0A   0B   0C   0D    | 
-2A-37       Play note, D# +0E   0F   10   11   12   13   14   15   16   17   18   19   1A   1B    C# 
-38-45       Play note, +1C   1D   1E   1F   20   21   22   23   24   25   26   27   28   29    
-46-53       Play note, +2A   2B   2C   2D   2E   2F   30   31   32   33   34   35   36   37    D# 
-54-61       Play note, F# +38   39   3A   3B   3C   3D   3E   3F   40   41   42   43   44   45    
-62-6F       Play note, +46   47   48   49   4A   4B   4C   4D   4E   4F   50   51   52   53    
-70-7D       Play note, G# +54   55   56   57   58   59   5A   5B   5C   5D   5E   5F   60   61    F# 
-7E-8B       Play note, +62   63   64   65   66   67   68   69   6A   6B   6C   6D   6E   6F    
-8C-99       Play note, A# +70   71   72   73   74   75   76   77   78   79   7A   7B   7C   7D    G# 
-9A-A7       Play note, +7E   7F   80   81   82   83   84   85   86   87   88   89   8A   8B    
-A8-B5       Continue last note +8C   8D   8E   8F   90   91   92   93   94   95   96   97   98   99    A# 
-B6-C3       Rest+9A   9B   9C   9D   9E   9F   A0   A1   A2   A3   A4   A5   A6   A7    
 +A8   A9   AA   AB   AC   AD   AE   AF   B0   B1   B2   B3   B4   B5    | Tie 
 +B6   B7   B8   B9   BA   BB   BC   BD   BE   BF   C0   C1   C2   C3    Rest 
 + 
 +Common names and ticks for note lengths: ($17D1) 
 +---------------------------------------- 
 +1/1  $0: Whole Note                   C0 
 +1/2  $1: Half Note                    60 
 +1/3  $2: Half Note Triplet            40 
 +3/8  $3: Dotted Quarter Note          48 
 +1/4  $4: Quarter Note                 30 
 +1/6  $5: Quarter Note Triplet         20 
 +3/16 $6: Dotted Eighth Note           24 
 +1/8  $7: Eighth Note                  18 
 +1/12 $8: Triplet                      10 
 +1/16 $9: Sixteenth Note               0C 
 +1/24 $A: Sixteenth Note Triplet       08 
 +1/32 $B: Thirty-second Note           06 
 +1/48 $C: Thirty-second Note Tripet    04 
 +1/64 $D: Sixty-fourth Note            03
 </code> </code>
-==== Other ====+ 
 +==== Track Commands ====
 <code> <code>
-C4 xx              Set volume of channel to xx (00-7F), higher values == greater volume. +C4xx       $11D3 Set Voice Volume to xx (00-7F) 
-C5 ss xx           Fade volume to xx at speed ss +C5xx yy    $11E4 Set Voice Volume w/ Envelope (yy: volumexx: envelope duration) 
-C6 xx              Pan song left->right as xx (00-7F) increases +C6xx       $1236 Set Voice Pan to (xx: 01 = Left, 40 = Center, 7F = Right, top bit inactive
-C7 ss xx           Pan slide +C7xx yy    $1246 Set Voice Pan w/ Envelope (yy01 Left, 40 Center, 7F = Right, top bit inactive, xx = envelope duration) 
-C8 tt pp           Portamentopp == increase in pitch +C8: xx yy    $1266 Change Pitch w/ Envelope (xx: envelope duration, yy: change in pitch, signed) 
-C9 ss tt dd        Vibrato: ss == speedtt == time until vibratodd == depth +C9: xx yy zz $12E3 Enable Vibrato (xxdelay in ticksyy: cycle duration??zzzzzz: amplitude, max 1/4 step) 
-CA                 Vibrato off +CA:          $138C Disable Vibrato 
-CB ss tt dd        Tremolo: ss == speedtt == time until tremolodd == depth +CB: xx yy zz $1396 Enable Tremolo (xxdelay in ticksyy: cycle duration??zzzzzz: amplitude, max 50%) 
-CC                 Tremolo off +CC:          $13EA Disable Tremolo 
-CD xx yy           Pan repeatedly back and forth at speed xx (00-FF)higher values == slower panning. +CDxx yy    $13F4 Enable Pansweep (xx: delay in ticksyy: cycle duration) 
-CE                 Disable pan loop +CE:          $144A Disable Pansweep 
-CF xx +CFxx       $14CB Set Noise Clock (00-1F) 
-D0 +D0:          $148D Enable Noise 
-D1 +D1:          $14BB Disable Noise 
-D2 +D2:          $14D9 Enable Pitch Modulation 
-D3                  +D3:          $14F2 Disable Pitch Modulation 
-D4                  +D4:          $1464 Enable Echo 
-D5                  +D5:          $147D Disable Echo 
-D6 oo              Set octave to oo +D6: xx       $1460 Set Octave to xx 
-D7                 Raise octave by 1 +D7:          $1456 Increment Octave 
-D8                 Lower octave by 1 +D8:          $145C Decrement Octave 
-D9 xx              Set transpose +D9xx       $1275 Set Transpose 
-DA xx              Increment transpose +DAxx       $1271 Add to Transpose 
-DB xx              +DBxx       $174E Set Detune 
-DC ss              Change channel's sample to ss +DC: xx       $1502 Set Instrument 
-DD xx +DDxx       $1538 Set ADSR Attack Value (0-15) 
-DE xx              Disables DF. +DExx       $1568 Set ADSR Decay Value (0-7) 
-DF xx +DFxx       $157B Set ADSR Sustain Value (0-7) 
-E0 xx +E0xx       $158D Set ADSR Release Value (0-31) 
-E1 +E1:          $159D Reset ADSR Default Values 
-E2 nn              Begin loopnn == number of iterations - 1 (max nesting == 4+E2: xx       $16C0 Loop Start (loop xx+1 times
-E3                 End loop +E3:          $16F0 Loop End 
-E4                 ??? +E4:          $15B4 Enable Slur (key on at beginning of first note only, no key off at end of note unless the next note is a rest) 
-E5                 Nothing? +E5:          $0FD3 Disable Slur 
-E6                  +E6:          $15DE Enable Drum Roll (no key off at end of note unless the next note is a rest) 
-E7                 Nothing? +E7:          $0FD3 Disable Drum Roll 
-E8 xx              ??? Set length of next note +E8xx       $174B Add to Note Duration (xx = duration in ticks) 
-E9 xx +E9xx       $1602 Play Game Sound Effect (voice A) 
-EA xx +EAxx       $1606 Play Game Sound Effect (voice B) 
-EB                 End of channel +EB:          $1770 End of Script 
-F0 xx              Set tempo to xx (00-FF), higher values == faster tempo. +EC:          $1770 End of Script 
-F1 ss xx           Fade tempo to xx at speed ss +ED:          $1770 End of Script 
-F2 xx              Set echo to xx +EE:          $1770 End of Script 
-F3 ss xx           Fade echo to xx at speed ss +EF:          $1770 End of Script 
-F4 xx               +</code> 
-F5 nn aaaa         When this instruction has been executed nn times, break out of most recent loop and goto $aaaa +==== Master Commands ==== 
-F6 aaaa            Goto $aaaa +<code> 
-F7 xx yy +F0xx       $11AF Set Tempo 
-F8 xx yy +F1xx yy    $11B8 Set Tempo w/ Envelope 
-F9 +F2xx       $1205 Set Song Echo Volume 
-FA +F3xx yy    $1212 Set Song Echo Volume w/ Envelope 
-FB +F4xx       $11D0 Set Song Volume 
-FC xx yy+F5: xx yyyy  $1665 Jump to yyyy When Loop Count Reaches xx 
 +F6: xxxx     $164A Jump to xxxx 
 +F7xx yy    $1279 Set Echo Feedback to yy over xx frames 
 +F8xx yy    $129B Set Filter ------yy 
 +F9:          $1752 Increment Output Code 
 +FA:          $1755 Clear Output Code 
 +FB:          $15B0 Ignore Song Volume 
 +FC: xxxx     $1759 Conditional Jump to xxxx 
 +FD:          $1770 End of Script 
 +FE:          $1770 End of Script 
 +FF:          $1770 End of Script
 </code> </code>
  • ff3/ff3us/doc/asm/codes/music_codes.txt
  • Last modified: 5 years ago
  • (external edit)