;::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;	Nintendo64  Original Music Macro Language
;
;                 Macro Define File  
;
;	Version: 1997.04.16 (Wed.) 
;	(Last Change : Add [FIREASY] command. )
;	Creator: Hideaki Shimizu (EAD.Nintendo Co.Ltd)
;
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::


;###################################################
;
;		 Musical Note section
;
;###################################################


;-----------------------------------------
; BASE:CN4 [ Freq. (x1.000) ]
;-----------------------------------------
; FORMAT:
; (A mode:Length Optimize Mode)
;	 ---(W) 
;        ---L1
;	 ---L2
;
; (B mode:Real Length Mode)
;	 ---B0(W)
;	 ---B1(W)
;	 ---B2(W)
;-----------------------------------------
; LENGTH:  0-127  : 1 byte mode(normal)
;        128-32767: 2 byte mode(add "W")   
;-----------------------------------------
;


AN0 	$000 slen 
AS0 	$001 slen
BF0 	$001 slen
BN0 	$002 slen
CN1 	$003 slen
CS1 	$004 slen
DF1 	$004 slen
DN1 	$005 slen
DS1 	$006 slen
EF1 	$006 slen
EN1 	$007 slen
FN1 	$008 slen
FS1 	$009 slen
GF1 	$009 slen
GN1 	$00A slen
GS1 	$00B slen
AF1 	$00B slen
AN1 	$00C slen
AS1 	$00D slen
BF1 	$00D slen
BN1 	$00E slen

CN2 	$00F slen
CS2 	$010 slen
DF2 	$010 slen
DN2 	$011 slen
DS2 	$012 slen
EF2 	$012 slen
EN2 	$013 slen
FN2 	$014 slen
FS2 	$015 slen
GF2 	$015 slen
GN2 	$016 slen 
GS2 	$017 slen 
AF2 	$017 slen 
AN2 	$018 slen 
AS2 	$019 slen 
BF2 	$019 slen 
BN2 	$01A slen 

CN3 	$01B slen 
CS3 	$01C slen 
DF3 	$01C slen 
DN3 	$01D slen 
DS3 	$01E slen 
EF3 	$01E slen 
EN3 	$01F slen 
FN3 	$020 slen 
FS3 	$021 slen 
GF3 	$021 slen 
GN3 	$022 slen 
GS3 	$023 slen 
AF3 	$023 slen 
AN3 	$024 slen 
AS3 	$025 slen 
BF3 	$025 slen 
BN3 	$026 slen 

CN4 	$027 slen 
CS4 	$028 slen 
DF4 	$028 slen 
DN4 	$029 slen 
DS4 	$02a slen 
EF4 	$02a slen 
EN4 	$02b slen 
FN4 	$02c slen 
FS4 	$02d slen 
GF4 	$02d slen 
GN4 	$02e slen 
GS4 	$02f slen 
AF4 	$02f slen 
AN4 	$030 slen 
AS4 	$031 slen 
BF4 	$031 slen 
BN4 	$032 slen 

CN5 	$033 slen 
CS5 	$034 slen 
DF5 	$034 slen 
DN5 	$035 slen 
DS5 	$036 slen 
EF5 	$036 slen 
EN5 	$037 slen 
FN5 	$038 slen 
FS5 	$039 slen 
GF5 	$039 slen 
GN5 	$03a slen 
GS5 	$03b slen 
AF5 	$03b slen 
AN5 	$03c slen 
AS5 	$03d slen 
BF5 	$03d slen 
BN5 	$03E slen 


AN0W 	$000 wlen 
AS0W 	$001 wlen
BF0W 	$001 wlen
BN0W	$002 wlen 
CN1W 	$003 wlen 
CS1W 	$004 wlen
DF1W 	$004 wlen
DN1W 	$005 wlen
DS1W 	$006 wlen
EF1W 	$006 wlen
EN1W 	$007 wlen
FN1W 	$008 wlen
FS1W 	$009 wlen
GF1W 	$009 wlen
GN1W 	$00A wlen
GS1W 	$00B wlen
AF1W 	$00B wlen
AN1W 	$00C wlen
AS1W 	$00D wlen
BF1W 	$00D wlen
BN1W 	$00E wlen

CN2W	$00F wlen
CS2W	$010 wlen
DF2W	$010 wlen
DN2W	$011 wlen
DS2W	$012 wlen
EF2W	$012 wlen
EN2W	$013 wlen
FN2W	$014 wlen
FS2W 	$015 wlen
GF2W	$015 wlen
GN2W	$016 wlen
GS2W	$017 wlen
AF2W 	$017 wlen
AN2W	$018 wlen
AS2W	$019 wlen
BF2W	$019 wlen
BN2W 	$01A wlen

CN3W	$01B wlen
CS3W 	$01C wlen
DF3W	$01C wlen
DN3W 	$01D wlen
DS3W 	$01E wlen
EF3W 	$01E wlen
EN3W 	$01F wlen
FN3W 	$020 wlen
FS3W 	$021 wlen
GF3W 	$021 wlen
GN3W 	$022 wlen
GS3W 	$023 wlen
AF3W 	$023 wlen
AN3W 	$024 wlen
AS3W 	$025 wlen
BF3W 	$025 wlen
BN3W 	$026 wlen

CN4W 	$027 wlen
CS4W 	$028 wlen
DF4W 	$028 wlen
DN4W 	$029 wlen
DS4W 	$02a wlen
EF4W 	$02a wlen
EN4W 	$02b wlen
FN4W 	$02c wlen
FS4W 	$02d wlen
GF4W 	$02d wlen
GN4W 	$02e wlen
GS4W 	$02f wlen
AF4W 	$02f wlen
AN4W 	$030 wlen
AS4W 	$031 wlen
BF4W 	$031 wlen
BN4W 	$032 wlen

CN5W 	$033 wlen
CS5W 	$034 wlen
DF5W 	$034 wlen
DN5W 	$035 wlen
DS5W 	$036 wlen
EF5W 	$036 wlen
EN5W 	$037 wlen
FN5W 	$038 wlen
FS5W 	$039 wlen
GF5W 	$039 wlen
GN5W 	$03a wlen
GS5W 	$03b wlen
AF5W 	$03b wlen
AN5W 	$03c wlen
AS5W 	$03d wlen
BF5W 	$03d wlen
BN5W 	$03E wlen

P00     $000 slen
P01     $001 slen
P02     $002 slen
P03     $003 slen
P04     $004 slen
P05     $005 slen
P06     $006 slen
P07     $007 slen
P08     $008 slen
P09     $009 slen
P0A     $00a slen
P0B     $00b slen
P0C     $00c slen
P0D     $00d slen
P0E     $00e slen
P0F     $00f slen
P10     $010 slen
P11     $011 slen
P12     $012 slen
P13     $013 slen
P14     $014 slen
P15     $015 slen

P00W    $000 wlen
P01W    $001 wlen
P02W    $002 wlen
P03W    $003 wlen
P04W    $004 wlen
P05W    $005 wlen
P06W    $006 wlen
P07W    $007 wlen
P08W    $008 wlen
P09W    $009 wlen
P0AW    $00a wlen
P0BW    $00b wlen
P0CW    $00c wlen
P0DW    $00d wlen
P0EW    $00e wlen
P0FW    $00f wlen
P10W    $010 wlen
P11W    $011 wlen
P12W    $012 wlen
P13W    $013 wlen
P14W    $014 wlen
P15W    $015 wlen




;63
;>51->39->27->15->3

AN0L1	$040 
AS0L1	$041
BF0L1	$041 
BN0L1	$42 
CN1L1	$43 
CS1L1	$44 
DF1L1	$44 
DN1L1	$45 
DS1L1	$46 
EF1L1	$46 
EN1L1	$47 
FN1L1	$48 
FS1L1	$49 
GF1L1	$49 
GN1L1	$4A 
GS1L1	$4B 
AF1L1	$4B 
AN1L1	$4C 
AS1L1	$4D 
BF1L1	$4D 
BN1L1	$4E 

CN2L1	$4F 
CS2L1	$50 
DF2L1	$50 
DN2L1	$51 
DS2L1	$52 
EF2L1	$52 
EN2L1	$53 
FN2L1	$54 
FS2L1	$55 
GF2L1	$55 
GN2L1	$56 
GS2L1	$57 
AF2L1	$57 
AN2L1	$58 
AS2L1	$59 
BF2L1	$59 
BN2L1	$5A 

CN3L1	$5B 
CS3L1	$5C 
DF3L1	$5C 
DN3L1	$5D 
DS3L1	$5E 
EF3L1	$5E 
EN3L1	$5F 
FN3L1	$60 
FS3L1	$61 
GF3L1	$61 
GN3L1	$62 
GS3L1	$63 
AF3L1	$63 
AN3L1	$64 
AS3L1	$65 
BF3L1	$65 
BN3L1	$66 

CN4L1	$67 
CS4L1	$68 
DF4L1	$68 
DN4L1	$69 
DS4L1	$6a 
EF4L1	$6a 
EN4L1	$6b 
FN4L1	$6c 
FS4L1	$6d 
GF4L1	$6d 
GN4L1	$6e 
GS4L1	$6f 
AF4L1	$6f 
AN4L1	$70
AS4L1	$71
BF4L1	$71
BN4L1	$72

CN5L1	$73
CS5L1	$74
DF5L1	$74
DN5L1	$75
DS5L1	$76
EF5L1	$76
EN5L1	$77
FN5L1	$78
FS5L1	$79
GF5L1	$79
GN5L1	$7a
GS5L1	$7b
AF5L1	$7b
AN5L1	$7c
AS5L1	$7d
BF5L1	$7d
BN5L1	$7E

AN0L2	$80 
AS0L2	$81
BF0L2	$81 
BN0L2	$82 
CN1L2	$83 
CS1L2	$84 
DF1L2	$84 
DN1L2	$85 
DS1L2	$86 
EF1L2	$86 
EN1L2	$87 
FN1L2	$88 
FS1L2	$89 
GF1L2	$89 
GN1L2	$8A 
GS1L2	$8B 
AF1L2	$8B 
AN1L2	$8C 
AS1L2	$8D 
BF1L2	$8D 
BN1L2	$8E 

CN2L2	$8F 
CS2L2	$90 
DF2L2	$90 
DN2L2	$91 
DS2L2	$92 
EF2L2	$92 
EN2L2	$93 
FN2L2	$94 
FS2L2	$95 
GF2L2	$95 
GN2L2	$96 
GS2L2	$97 
AF2L2	$97 
AN2L2	$98 
AS2L2	$99 
BF2L2	$99 
BN2L2	$9A 

CN3L2	$9B 
CS3L2	$9C 
DF3L2	$9C 
DN3L2	$9D 
DS3L2	$9E 
EF3L2	$9E 
EN3L2	$9F 
FN3L2	$0A0 
FS3L2	$0A1 
GF3L2	$0A1 
GN3L2	$0A2 
GS3L2	$0A3 
AF3L2	$0A3 
AN3L2	$0A4 
AS3L2	$0A5 
BF3L2	$0A5 
BN3L2	$0A6 

CN4L2	$0A7 
CS4L2	$0A8 
DF4L2	$0A8 
DN4L2	$0A9 
DS4L2	$0Aa 
EF4L2	$0Aa 
EN4L2	$0Ab 
FN4L2	$0Ac 
FS4L2	$0Ad 
GF4L2	$0Ad 
GN4L2	$0Ae 
GS4L2	$0Af 
AF4L2	$0Af 
AN4L2	$0B0
AS4L2	$0B1
BF4L2	$0B1
BN4L2	$0B2

CN5L2	$0B3
CS5L2	$0B4
DF5L2	$0B4
DN5L2	$0B5
DS5L2	$0B6
EF5L2	$0B6
EN5L2	$0B7
FN5L2	$0B8
FS5L2	$0B9
GF5L2	$0B9
GN5L2	$0Ba
GS5L2	$0Bb
AF5L2	$0Bb
AN5L2	$0Bc
AS5L2	$0Bd
BF5L2	$0Bd
BN5L2	$0BE

;/**** BMode ***/


AN0B0 	$000 slen,slen,byte 
AS0B0 	$001 slen,slen,byte
BF0B0 	$001 slen,slen,byte
BN0B0	$002 slen,slen,byte 
CN1B0 	$003 slen,slen,byte 
CS1B0 	$004 slen,slen,byte
DF1B0 	$004 slen,slen,byte
DN1B0 	$005 slen,slen,byte
DS1B0 	$006 slen,slen,byte
EF1B0 	$006 slen,slen,byte
EN1B0 	$007 slen,slen,byte
FN1B0 	$008 slen,slen,byte
FS1B0 	$009 slen,slen,byte
GF1B0 	$009 slen,slen,byte
GN1B0 	$00A slen,slen,byte
GS1B0 	$00B slen,slen,byte
AF1B0 	$00B slen,slen,byte
AN1B0 	$00C slen,slen,byte
AS1B0 	$00D slen,slen,byte
BF1B0 	$00D slen,slen,byte
BN1B0 	$00E slen,slen,byte

CN2B0	$00F slen,slen,byte
CS2B0	$010 slen,slen,byte
DF2B0	$010 slen,slen,byte
DN2B0	$011 slen,slen,byte
DS2B0	$012 slen,slen,byte
EF2B0	$012 slen,slen,byte
EN2B0	$013 slen,slen,byte
FN2B0	$014 slen,slen,byte
FS2B0 	$015 slen,slen,byte
GF2B0	$015 slen,slen,byte
GN2B0	$016 slen,slen,byte
GS2B0	$017 slen,slen,byte
AF2B0 	$017 slen,slen,byte
AN2B0	$018 slen,slen,byte
AS2B0	$019 slen,slen,byte
BF2B0	$019 slen,slen,byte
BN2B0 	$01A slen,slen,byte

CN3B0	$01B slen,slen,byte
CS3B0 	$01C slen,slen,byte
DF3B0	$01C slen,slen,byte
DN3B0 	$01D slen,slen,byte
DS3B0 	$01E slen,slen,byte
EF3B0 	$01E slen,slen,byte
EN3B0 	$01F slen,slen,byte
FN3B0 	$020 slen,slen,byte
FS3B0 	$021 slen,slen,byte
GF3B0 	$021 slen,slen,byte
GN3B0 	$022 slen,slen,byte
GS3B0 	$023 slen,slen,byte
AF3B0 	$023 slen,slen,byte
AN3B0 	$024 slen,slen,byte
AS3B0 	$025 slen,slen,byte
BF3B0 	$025 slen,slen,byte
BN3B0 	$026 slen,slen,byte

CN4B0 	$027 slen,slen,byte
CS4B0 	$028 slen,slen,byte
DF4B0 	$028 slen,slen,byte
DN4B0 	$029 slen,slen,byte
DS4B0 	$02a slen,slen,byte
EF4B0 	$02a slen,slen,byte
EN4B0 	$02b slen,slen,byte
FN4B0 	$02c slen,slen,byte
FS4B0 	$02d slen,slen,byte
GF4B0 	$02d slen,slen,byte
GN4B0 	$02e slen,slen,byte
GS4B0 	$02f slen,slen,byte
AF4B0 	$02f slen,slen,byte
AN4B0 	$030 slen,slen,byte
AS4B0 	$031 slen,slen,byte
BF4B0 	$031 slen,slen,byte
BN4B0 	$032 slen,slen,byte

CN5B0 	$033 slen,slen,byte
CS5B0 	$034 slen,slen,byte
DF5B0 	$034 slen,slen,byte
DN5B0 	$035 slen,slen,byte
DS5B0 	$036 slen,slen,byte
EF5B0 	$036 slen,slen,byte
EN5B0 	$037 slen,slen,byte
FN5B0 	$038 slen,slen,byte
FS5B0 	$039 slen,slen,byte
GF5B0 	$039 slen,slen,byte
GN5B0 	$03a slen,slen,byte
GS5B0 	$03b slen,slen,byte
AF5B0 	$03b slen,slen,byte
AN5B0 	$03c slen,slen,byte
AS5B0 	$03d slen,slen,byte
BF5B0 	$03d slen,slen,byte
BN5B0 	$03E slen,slen,byte


; *** gate 100% ***/

AN0B1 	$040 slen,slen 
AS0B1 	$041 slen,slen
BF0B1 	$041 slen,slen
BN0B1	$042 slen,slen 
CN1B1 	$043 slen,slen 
CS1B1 	$044 slen,slen
DF1B1 	$044 slen,slen
DN1B1 	$045 slen,slen
DS1B1 	$046 slen,slen
EF1B1 	$046 slen,slen
EN1B1 	$047 slen,slen
FN1B1 	$048 slen,slen
FS1B1 	$049 slen,slen
GF1B1 	$049 slen,slen
GN1B1 	$04A slen,slen
GS1B1 	$04B slen,slen
AF1B1 	$04B slen,slen
AN1B1 	$04C slen,slen
AS1B1 	$04D slen,slen
BF1B1 	$04D slen,slen
BN1B1 	$04E slen,slen

CN2B1	$04F slen,slen
CS2B1	$050 slen,slen
DF2B1	$050 slen,slen
DN2B1	$051 slen,slen
DS2B1	$052 slen,slen
EF2B1	$052 slen,slen
EN2B1	$053 slen,slen
FN2B1	$054 slen,slen
FS2B1 	$055 slen,slen
GF2B1	$055 slen,slen
GN2B1	$056 slen,slen
GS2B1	$057 slen,slen
AF2B1 	$057 slen,slen
AN2B1	$058 slen,slen
AS2B1	$059 slen,slen
BF2B1	$059 slen,slen
BN2B1 	$05A slen,slen

CN3B1	$05B slen,slen
CS3B1 	$05C slen,slen
DF3B1	$05C slen,slen
DN3B1 	$05D slen,slen
DS3B1 	$05E slen,slen
EF3B1 	$05E slen,slen
EN3B1 	$05F slen,slen
FN3B1 	$060 slen,slen
FS3B1 	$061 slen,slen
GF3B1 	$061 slen,slen
GN3B1 	$062 slen,slen
GS3B1 	$063 slen,slen
AF3B1 	$063 slen,slen
AN3B1 	$064 slen,slen
AS3B1 	$065 slen,slen
BF3B1 	$065 slen,slen
BN3B1 	$066 slen,slen

CN4B1 	$067 slen,slen
CS4B1 	$068 slen,slen
DF4B1 	$068 slen,slen
DN4B1 	$069 slen,slen
DS4B1 	$06a slen,slen
EF4B1 	$06a slen,slen
EN4B1 	$06b slen,slen
FN4B1 	$06c slen,slen
FS4B1 	$06d slen,slen
GF4B1 	$06d slen,slen
GN4B1 	$06e slen,slen
GS4B1 	$06f slen,slen
AF4B1 	$06f slen,slen
AN4B1 	$070 slen,slen
AS4B1 	$071 slen,slen
BF4B1 	$071 slen,slen
BN4B1 	$072 slen,slen

CN5B1 	$073 slen,slen
CS5B1 	$074 slen,slen
DF5B1 	$074 slen,slen
DN5B1 	$075 slen,slen
DS5B1 	$076 slen,slen
EF5B1 	$076 slen,slen
EN5B1 	$077 slen,slen
FN5B1 	$078 slen,slen
FS5B1 	$079 slen,slen
GF5B1 	$079 slen,slen
GN5B1 	$07a slen,slen
GS5B1 	$07b slen,slen
AF5B1 	$07b slen,slen
AN5B1 	$07c slen,slen
AS5B1 	$07d slen,slen
BF5B1 	$07d slen,slen
BN5B1 	$07E slen,slen


; *** velo before ***/

AN0B2 	$080 slen,byte 
AS0B2 	$081 slen,byte
BF0B2 	$081 slen,byte
BN0B2	$082 slen,byte 
CN1B2 	$083 slen,byte 
CS1B2 	$084 slen,byte
DF1B2 	$084 slen,byte
DN1B2 	$085 slen,byte
DS1B2 	$086 slen,byte
EF1B2 	$086 slen,byte
EN1B2 	$087 slen,byte
FN1B2 	$088 slen,byte
FS1B2 	$089 slen,byte
GF1B2 	$089 slen,byte
GN1B2 	$08A slen,byte
GS1B2 	$08B slen,byte
AF1B2 	$08B slen,byte
AN1B2 	$08C slen,byte
AS1B2 	$08D slen,byte
BF1B2 	$08D slen,byte
BN1B2 	$08E slen,byte

CN2B2	$08F slen,byte
CS2B2	$090 slen,byte
DF2B2	$090 slen,byte
DN2B2	$091 slen,byte
DS2B2	$092 slen,byte
EF2B2	$092 slen,byte
EN2B2	$093 slen,byte
FN2B2	$094 slen,byte
FS2B2 	$095 slen,byte
GF2B2	$095 slen,byte
GN2B2	$096 slen,byte
GS2B2	$097 slen,byte
AF2B2 	$097 slen,byte
AN2B2	$098 slen,byte
AS2B2	$099 slen,byte
BF2B2	$099 slen,byte
BN2B2 	$09A slen,byte

CN3B2	$09B slen,byte
CS3B2 	$09C slen,byte
DF3B2	$09C slen,byte
DN3B2 	$09D slen,byte
DS3B2 	$09E slen,byte
EF3B2 	$09E slen,byte
EN3B2 	$09F slen,byte
FN3B2 	$0A0 slen,byte
FS3B2 	$0A1 slen,byte
GF3B2 	$0A1 slen,byte
GN3B2 	$0A2 slen,byte
GS3B2 	$0A3 slen,byte
AF3B2 	$0A3 slen,byte
AN3B2 	$0A4 slen,byte
AS3B2 	$0A5 slen,byte
BF3B2 	$0A5 slen,byte
BN3B2 	$0A6 slen,byte

CN4B2 	$0A7 slen,byte
CS4B2 	$0A8 slen,byte
DF4B2 	$0A8 slen,byte
DN4B2 	$0A9 slen,byte
DS4B2 	$0Aa slen,byte
EF4B2 	$0Aa slen,byte
EN4B2 	$0Ab slen,byte
FN4B2 	$0Ac slen,byte
FS4B2 	$0Ad slen,byte
GF4B2 	$0Ad slen,byte
GN4B2 	$0Ae slen,byte
GS4B2 	$0Af slen,byte
AF4B2 	$0Af slen,byte
AN4B2 	$0B0 slen,byte
AS4B2 	$0B1 slen,byte
BF4B2 	$0B1 slen,byte
BN4B2 	$0B2 slen,byte

CN5B2 	$0B3 slen,byte
CS5B2 	$0B4 slen,byte
DF5B2 	$0B4 slen,byte
DN5B2 	$0B5 slen,byte
DS5B2 	$0B6 slen,byte
EF5B2 	$0B6 slen,byte
EN5B2 	$0B7 slen,byte
FN5B2 	$0B8 slen,byte
FS5B2 	$0B9 slen,byte
GF5B2 	$0B9 slen,byte
GN5B2 	$0Ba slen,byte
GS5B2 	$0Bb slen,byte
AF5B2 	$0Bb slen,byte
AN5B2 	$0Bc slen,byte
AS5B2 	$0Bd slen,byte
BF5B2 	$0Bd slen,byte
BN5B2 	$0BE slen,byte


;/*** W-Length ***/


AN0B0W 	$000 wlen,slen,byte 
AS0B0W 	$001 wlen,slen,byte
BF0B0W 	$001 wlen,slen,byte
BN0B0W	$002 wlen,slen,byte 
CN1B0W 	$003 wlen,slen,byte 
CS1B0W 	$004 wlen,slen,byte
DF1B0W 	$004 wlen,slen,byte
DN1B0W 	$005 wlen,slen,byte
DS1B0W 	$006 wlen,slen,byte
EF1B0W 	$006 wlen,slen,byte
EN1B0W 	$007 wlen,slen,byte
FN1B0W 	$008 wlen,slen,byte
FS1B0W 	$009 wlen,slen,byte
GF1B0W 	$009 wlen,slen,byte
GN1B0W 	$00A wlen,slen,byte
GS1B0W 	$00B wlen,slen,byte
AF1B0W 	$00B wlen,slen,byte
AN1B0W 	$00C wlen,slen,byte
AS1B0W 	$00D wlen,slen,byte
BF1B0W 	$00D wlen,slen,byte
BN1B0W 	$00E wlen,slen,byte

CN2B0W	$00F wlen,slen,byte
CS2B0W	$010 wlen,slen,byte
DF2B0W	$010 wlen,slen,byte
DN2B0W	$011 wlen,slen,byte
DS2B0W	$012 wlen,slen,byte
EF2B0W	$012 wlen,slen,byte
EN2B0W	$013 wlen,slen,byte
FN2B0W	$014 wlen,slen,byte
FS2B0W 	$015 wlen,slen,byte
GF2B0W	$015 wlen,slen,byte
GN2B0W	$016 wlen,slen,byte
GS2B0W	$017 wlen,slen,byte
AF2B0W 	$017 wlen,slen,byte
AN2B0W	$018 wlen,slen,byte
AS2B0W	$019 wlen,slen,byte
BF2B0W	$019 wlen,slen,byte
BN2B0W 	$01A wlen,slen,byte

CN3B0W	$01B wlen,slen,byte
CS3B0W 	$01C wlen,slen,byte
DF3B0W	$01C wlen,slen,byte
DN3B0W 	$01D wlen,slen,byte
DS3B0W 	$01E wlen,slen,byte
EF3B0W 	$01E wlen,slen,byte
EN3B0W 	$01F wlen,slen,byte
FN3B0W 	$020 wlen,slen,byte
FS3B0W 	$021 wlen,slen,byte
GF3B0W 	$021 wlen,slen,byte
GN3B0W 	$022 wlen,slen,byte
GS3B0W 	$023 wlen,slen,byte
AF3B0W 	$023 wlen,slen,byte
AN3B0W 	$024 wlen,slen,byte
AS3B0W 	$025 wlen,slen,byte
BF3B0W 	$025 wlen,slen,byte
BN3B0W 	$026 wlen,slen,byte

CN4B0W 	$027 wlen,slen,byte
CS4B0W 	$028 wlen,slen,byte
DF4B0W 	$028 wlen,slen,byte
DN4B0W 	$029 wlen,slen,byte
DS4B0W 	$02a wlen,slen,byte
EF4B0W 	$02a wlen,slen,byte
EN4B0W 	$02b wlen,slen,byte
FN4B0W 	$02c wlen,slen,byte
FS4B0W 	$02d wlen,slen,byte
GF4B0W 	$02d wlen,slen,byte
GN4B0W 	$02e wlen,slen,byte
GS4B0W 	$02f wlen,slen,byte
AF4B0W 	$02f wlen,slen,byte
AN4B0W 	$030 wlen,slen,byte
AS4B0W 	$031 wlen,slen,byte
BF4B0W 	$031 wlen,slen,byte
BN4B0W 	$032 wlen,slen,byte

CN5B0W 	$033 wlen,slen,byte
CS5B0W 	$034 wlen,slen,byte
DF5B0W 	$034 wlen,slen,byte
DN5B0W 	$035 wlen,slen,byte
DS5B0W 	$036 wlen,slen,byte
EF5B0W 	$036 wlen,slen,byte
EN5B0W 	$037 wlen,slen,byte
FN5B0W 	$038 wlen,slen,byte
FS5B0W 	$039 wlen,slen,byte
GF5B0W 	$039 wlen,slen,byte
GN5B0W 	$03a wlen,slen,byte
GS5B0W 	$03b wlen,slen,byte
AF5B0W 	$03b wlen,slen,byte
AN5B0W 	$03c wlen,slen,byte
AS5B0W 	$03d wlen,slen,byte
BF5B0W 	$03d wlen,slen,byte
BN5B0W 	$03E wlen,slen,byte


; *** gate 100% ***/

AN0B1W 	$040 wlen,slen 
AS0B1W 	$041 wlen,slen
BF0B1W 	$041 wlen,slen
BN0B1W	$042 wlen,slen 
CN1B1W 	$043 wlen,slen 
CS1B1W 	$044 wlen,slen
DF1B1W 	$044 wlen,slen
DN1B1W 	$045 wlen,slen
DS1B1W 	$046 wlen,slen
EF1B1W 	$046 wlen,slen
EN1B1W 	$047 wlen,slen
FN1B1W 	$048 wlen,slen
FS1B1W 	$049 wlen,slen
GF1B1W 	$049 wlen,slen
GN1B1W 	$04A wlen,slen
GS1B1W 	$04B wlen,slen
AF1B1W 	$04B wlen,slen
AN1B1W 	$04C wlen,slen
AS1B1W 	$04D wlen,slen
BF1B1W 	$04D wlen,slen
BN1B1W 	$04E wlen,slen

CN2B1W	$04F wlen,slen
CS2B1W	$050 wlen,slen
DF2B1W	$050 wlen,slen
DN2B1W	$051 wlen,slen
DS2B1W	$052 wlen,slen
EF2B1W	$052 wlen,slen
EN2B1W	$053 wlen,slen
FN2B1W	$054 wlen,slen
FS2B1W 	$055 wlen,slen
GF2B1W	$055 wlen,slen
GN2B1W	$056 wlen,slen
GS2B1W	$057 wlen,slen
AF2B1W 	$057 wlen,slen
AN2B1W	$058 wlen,slen
AS2B1W	$059 wlen,slen
BF2B1W	$059 wlen,slen
BN2B1W 	$05A wlen,slen

CN3B1W	$05B wlen,slen
CS3B1W 	$05C wlen,slen
DF3B1W	$05C wlen,slen
DN3B1W 	$05D wlen,slen
DS3B1W 	$05E wlen,slen
EF3B1W 	$05E wlen,slen
EN3B1W 	$05F wlen,slen
FN3B1W 	$060 wlen,slen
FS3B1W 	$061 wlen,slen
GF3B1W 	$061 wlen,slen
GN3B1W 	$062 wlen,slen
GS3B1W 	$063 wlen,slen
AF3B1W 	$063 wlen,slen
AN3B1W 	$064 wlen,slen
AS3B1W 	$065 wlen,slen
BF3B1W 	$065 wlen,slen
BN3B1W 	$066 wlen,slen

CN4B1W 	$067 wlen,slen
CS4B1W 	$068 wlen,slen
DF4B1W 	$068 wlen,slen
DN4B1W 	$069 wlen,slen
DS4B1W 	$06a wlen,slen
EF4B1W 	$06a wlen,slen
EN4B1W 	$06b wlen,slen
FN4B1W 	$06c wlen,slen
FS4B1W 	$06d wlen,slen
GF4B1W 	$06d wlen,slen
GN4B1W 	$06e wlen,slen
GS4B1W 	$06f wlen,slen
AF4B1W 	$06f wlen,slen
AN4B1W 	$070 wlen,slen
AS4B1W 	$071 wlen,slen
BF4B1W 	$071 wlen,slen
BN4B1W 	$072 wlen,slen

CN5B1W 	$073 wlen,slen
CS5B1W 	$074 wlen,slen
DF5B1W 	$074 wlen,slen
DN5B1W 	$075 wlen,slen
DS5B1W 	$076 wlen,slen
EF5B1W 	$076 wlen,slen
EN5B1W 	$077 wlen,slen
FN5B1W 	$078 wlen,slen
FS5B1W 	$079 wlen,slen
GF5B1W 	$079 wlen,slen
GN5B1W 	$07a wlen,slen
GS5B1W 	$07b wlen,slen
AF5B1W 	$07b wlen,slen
AN5B1W 	$07c wlen,slen
AS5B1W 	$07d wlen,slen
BF5B1W 	$07d wlen,slen
BN5B1W 	$07E wlen,slen

; *** velo before ***/

AN0B2W 	$080 wlen,byte 
AS0B2W 	$081 wlen,byte
BF0B2W 	$081 wlen,byte
BN0B2W	$082 wlen,byte
CN1B2W 	$083 wlen,byte
CS1B2W 	$084 wlen,byte
DF1B2W 	$084 wlen,byte
DN1B2W 	$085 wlen,byte
DS1B2W 	$086 wlen,byte
EF1B2W 	$086 wlen,byte
EN1B2W 	$087 wlen,byte
FN1B2W 	$088 wlen,byte
FS1B2W 	$089 wlen,byte
GF1B2W 	$089 wlen,byte
GN1B2W 	$08A wlen,byte
GS1B2W 	$08B wlen,byte
AF1B2W 	$08B wlen,byte
AN1B2W 	$08C wlen,byte
AS1B2W 	$08D wlen,byte
BF1B2W 	$08D wlen,byte
BN1B2W 	$08E wlen,byte

CN2B2W	$08F wlen,byte
CS2B2W	$090 wlen,byte
DF2B2W	$090 wlen,byte
DN2B2W	$091 wlen,byte
DS2B2W	$092 wlen,byte
EF2B2W	$092 wlen,byte
EN2B2W	$093 wlen,byte
FN2B2W	$094 wlen,byte
FS2B2W 	$095 wlen,byte
GF2B2W	$095 wlen,byte
GN2B2W	$096 wlen,byte
GS2B2W	$097 wlen,byte
AF2B2W 	$097 wlen,byte
AN2B2W	$098 wlen,byte
AS2B2W	$099 wlen,byte
BF2B2W	$099 wlen,byte
BN2B2W 	$09A wlen,byte

CN3B2W	$09B wlen,byte
CS3B2W 	$09C wlen,byte
DF3B2W	$09C wlen,byte
DN3B2W 	$09D wlen,byte
DS3B2W 	$09E wlen,byte
EF3B2W 	$09E wlen,byte
EN3B2W 	$09F wlen,byte
FN3B2W 	$0A0 wlen,byte
FS3B2W 	$0A1 wlen,byte
GF3B2W 	$0A1 wlen,byte
GN3B2W 	$0A2 wlen,byte
GS3B2W 	$0A3 wlen,byte
AF3B2W 	$0A3 wlen,byte
AN3B2W 	$0A4 wlen,byte
AS3B2W 	$0A5 wlen,byte
BF3B2W 	$0A5 wlen,byte
BN3B2W 	$0A6 wlen,byte

CN4B2W 	$0A7 wlen,byte
CS4B2W 	$0A8 wlen,byte
DF4B2W 	$0A8 wlen,byte
DN4B2W 	$0A9 wlen,byte
DS4B2W 	$0Aa wlen,byte
EF4B2W 	$0Aa wlen,byte
EN4B2W 	$0Ab wlen,byte
FN4B2W 	$0Ac wlen,byte
FS4B2W 	$0Ad wlen,byte
GF4B2W 	$0Ad wlen,byte
GN4B2W 	$0Ae wlen,byte
GS4B2W 	$0Af wlen,byte
AF4B2W 	$0Af wlen,byte
AN4B2W 	$0B0 wlen,byte
AS4B2W 	$0B1 wlen,byte
BF4B2W 	$0B1 wlen,byte
BN4B2W 	$0B2 wlen,byte

CN5B2W 	$0B3 wlen,byte
CS5B2W 	$0B4 wlen,byte
DF5B2W 	$0B4 wlen,byte
DN5B2W 	$0B5 wlen,byte
DS5B2W 	$0B6 wlen,byte
EF5B2W 	$0B6 wlen,byte
EN5B2W 	$0B7 wlen,byte
FN5B2W 	$0B8 wlen,byte
FS5B2W 	$0B9 wlen,byte
GF5B2W 	$0B9 wlen,byte
GN5B2W 	$0Ba wlen,byte
GS5B2W 	$0Bb wlen,byte
AF5B2W 	$0Bb wlen,byte
AN5B2W 	$0Bc wlen,byte
AS5B2W 	$0Bd wlen,byte
BF5B2W 	$0Bd wlen,byte
BN5B2W 	$0BE wlen,byte


;/**** BMode SE ***/

P00B0 	$000 slen,slen,byte 
P00B1   $040 slen,slen
P00B2	$080 slen,byte

P00B0W 	$000 wlen,slen,byte 
P00B1W  $040 wlen,slen
P00B2W 	$080 wlen,byte 

;P01B0W 	$001 wlen,slen,byte 
;P01B1W 	$041 wlen,slen




;###################################################
;
;	    Control Command Section
;
;###################################################



;----------------------------
;
; Common Commands:$f0-$ff
;
;----------------------------

FIN	 $0ff 
RETURN   $0fe
WAIT     $0fd slen
WAITW    $0fd wlen
CALL     $0fc label
JUMP     $0fb label
JUMP0    $0fa label
JUMPN    $0f9 label
LOOPS    $0f8 byte
LOOPE    $0f7 
LOOPBREAK $0f6
JUMPP    $0f5 label
BRA	 $0f4 rela	;branch always
BR0	 $0f3 rela	;branch zero
BRN	 $0f2 rela	;branch negative
ALLOCVOICE $0f1 byte
DEALLOCVOICE $0f0
DPRINT	 $0ef label,byte	;Label of Message Top. (Must terminate \0)


XXXW     $0c0 wlen
XXX 	 $0c0 slen


;----------------------------
;
; Other  Commands
;
;----------------------------

;----------------------------
;
; GROUP TRACK COMMANDS
;
;----------------------------

CHKSUB   $000 half 
OPENSUB	 $090 half,label
CLOSESUB $040 half


GR_PORTREAD	$80 half
GR_PORTWRITE	$70 half 
GR_PORTSBC	$50 half

TRANSCHG $0df byte
TRANSOFS $0de byte
TEMPOCHG $0dd byte
TEMPOOFS $0dc byte
VOLUMECHG  $0db slen
VOLUMEMODE $0da byte word
GR_EVOLUME $0d9 slen
;	  $0d8		reserve

ALLOCSUB    $0d7 word
DEALLOCSUB  $0d6 word
PAUSEVOLUME $0d5 slen
SELFPAUSE   $0d4
DEFPAUSE    $0d3 byte
VTSET       $0d2 label
GTSET       $0d1 label	
DEFMONOMODE $0d0 byte

GR_LOAD   $cc byte
GR_AND    $c9 byte	
GR_SBC    $c8 byte	
GR_STORE  $c7 byte,label	


SEQ_MIDI  $c6

TIMERSET  $c5 word



;---------------------------------
;
; SUB TRACK COMMANDS
;
; 0x0n-0xBn : Half Byte Commands
; 0xC0-0xEf : Normal    Commands
;
;---------------------------------
;       PARAMETER RANGE
;---------------------------------
;
;SVolume 0~127   : x0.0 ~ 1.00 volume
;STune   0~65535 : x0.0 ~ 2.00 pitch
;SPan    0~127   : Left <-> Right  
;SPanPow 0~127   : x0.0 ~ 1.00 (shift between Left and Right)
;STrans  -64~+64 : -64  ~ +64  note
;
;Prg     0~127
;Release 0~127	 : x128 release rate / frame
;
;---------------------------------

;################
; New Names
;################



SR_LOAD   $0cc byte		;old:[CLOAD]	lda ,#value
SR_EXTBL  $0cb label		;old:[CEXTABLE] lda ,(a+y)
SR_AND    $0c9 byte		;old:[CHKBIT]	anda
SR_SBC    $0c8 byte		;old:[CHKCMP]	suba
SR_STORE  $0c7 byte,label	;old:[CSELFWRITEB] sta ,(addr)
SR_JPTBL  $0c5			;old:[CTBLJUMP]	   jmp ,(y+a)	
SR_CALLTBL $0e4			;old:[CTBLCALL]	  call ,(y+a)


;	$00-$bf : half command.



;#################
; Olds or Others
;#################

WAITH     	$000 half
SR_WAVELOAD 	$010 half			; flag return port (reg=program number)
SOPENSUB 	$020 half,label		; subtrack,add
SR_SUBPORTWRITE $030 half,byte		; subtrack,port
SR_SUBPORTREAD  $040 half,byte		; subtrack,port
SR_PORTSBC	$050 half	;old:[CMPMYB]
SR_PORTREAD	$060 half	;old:[CHKMYB]
SR_PORTWRITE	$070 half 	;old:[CPYMYB]


;CPYMYB		$070 half
;CHKMYB		$060 half	;old:[CHKMYB]
;CMPMYB		$050 half	;old:[CMPMYB]


; Note 3bit-Half Command 

CHKNOTE		$080  half
OPENNOTE  	$088 half,label
CLOSENOTE 	$090 half
SR_TBLNOPEN     $098 half       ;old:[CTBLOPEN]

; Reserve	$0a0-$0af


; 	Normal Command. $b0-$ef

FIRSET	    $0b0 label		; 16x16 bits fir-coef table.(cache-align)
FIROFF	    $0b1		; stop fir filter.
WR_EXTBL    $0b2 label		; c=input, w=output
FIREASY     $0b3 byte		; lowpass cutoff &  highpass cutoff

WR_TRSTBL   $0b4		; [txy]
WR_INDEX    $0b5		; ldx,(y+a)
SR_INDEX    $0b6		; lda,(y+a)
		  	    
WR_RANDOM   $0b7 word		; ldx,random % x(0 : 65536)
SR_RANDOM   $0b8 byte		; lda,random % x(0 :  256)

RAND_VELO   $0b9 byte		; random percentage :+- n percent. 
RAND_GATE    $0ba byte		; random percentage :+- n percent.

COMB_SET    $0bb byte,word	; comb filter delay & mix.


PRG         $0c1 byte
TBLSET      $0c2 label
AMODE       $0c3
BMODE       $0c4
CTBLJUMP    $0c5
BANKCHG     $0c6 byte
CSELFWRITEB $0c7 byte,label
CHKCMP     $0c8  byte
CHKBIT     $0c9 byte
PAUSESTATUS $0ca byte
CEXTABLE    $0cb label
CLOAD       $0cc byte
SCLOSESUB   $0cd byte		; Move from halfbyte $20
;SR_EXTBLDEF $0ce		; default table
;BCOPY	    $0cf label,byte,byte ;  writeaddress,size,read offset
WR_LOAD	    $0ce label
WR_LOADVAL  $0ce word
WR_LOADLEN  $0ce wlen
WR_STORE    $0cf label



; CTBLOPEN  $020 half
; DTBLOPEN  $030 half,byte


;	$ef is debug-print.

PITCHBEND2 $0ee byte		; Zen-On-Bend.

FILGAIN	     $ed  byte		;Filter Gain.
INITPITCH    $ec		;Clear Pitch & Modulation.
BPRG	    $0eb  byte,byte	;Bank and Program     
HALT 	      $0ea
PRIORITY      $0e9 byte
MULTIPARAMSET $0e8 byte,byte,byte,byte,byte,byte,byte,byte 
MULTITABLESET $0e7 label 
NOISEMODE  $0e6 byte		;
FXLINE     $0e5	byte		; 
CTBLCALL   $0e4			;No argument 
VIBDELAY   $0e3 byte
VIBDEPTHMV $0e2 byte,byte,byte	;first,target(*8),time(*16)
VIBPITCHMV $0e1 byte,byte,byte	;first,target(*32),time(*16)
EVOLUME  $0e0 slen
SVOLUME  $0df slen
STUNE    $0de word
SPAN     $0dd slen
SPANPOW  $0dc slen
STRANS   $0db byte
ENVELOPE $0da label
RELEASE  $0d9 byte
VIBDEPTH $0d8 byte
VIBPITCH $0d7 byte
VIBINT   $0d6 byte
FXMIX    $0d4 byte
PITCHBEND $0d3 byte

SREVERB  $0d2 byte
MONOMODE $0d1 byte
PANMODE  $0d0 byte

;-------------------------------------------
;
; NOTE TRACK COMMANDS
;
; 0x00-0xBf : Musical Note Commands
; 0xC0-0xCf : Note-track Control Commands
; 0xDn,0xEn : Half byte Commands
;-------------------------------------------
;
;---------------------------------
;       PARAMETER RANGE
;---------------------------------
;
;Vel	 0~127   : x0.0 ~ 1.00 volume
;NTrans -64~ +64  : -64  ~ +64  note
;
;
;-------------------------------------------


VELO	 $0c1  slen
NTRANS	 $0c2  byte

DEFLEN   $0c3  wlen
TIEON    $0c4
TIEOFF   $0c5
NPRG     $0c6  byte
SWEEPFROM  $0c7 byte comm byte
SWEEP	   $0c7 byte comm byte

SWEEPFROMW $0c7 byte comm wlen
SWEEPW     $0c7 byte comm wlen



SWEEPEND   $0c8

DGATE     $0c9  byte
NPAN	  $0ca  slen
NENV	  $0cb  label,byte	; Data,release
KILLPAN   $0cc
PHASE	  $0cd	byte		; 4bit Packed Data (status+phaseside)

DETUNE	  $0ce	byte		; note detune.
NREL	  $0cf	byte		; note release

TVELO     $0d0  half
TGATE     $0e0  half


