Elmo HARmonica ユーザーズマニュアル

ページ / 220
Elmo HARmonica Software Manual
 
P R E L I M I N A R Y   D R A F T
 
HARSFEN0602
 
 
 
 
 
217 
command AF  
2 WT 
command 
The keyword ‘wait is used instead the 
command WT 
WT=xxx wait 
xxx 
JP command without condition 
The keyword ‘goto’ is used for jump to 
the label 
JP##LABEL goto##LABEL 
JP command with condition 
The ‘if’ statement is used for condition 
JP##LABEL,cond if 
cond 
     goto##LABEL 
end 
JS command without condition 
The subroutine call is used 
JS##LABEL LABEL 
JS command with condition 
The ‘if’ statement is used for condition 
JS##LABEL,cond if 
cond 
    LABEL 
end 
JZ command without condition 
The keyword ‘reset’ is used for killing 
stack and jump to the subroutine 
JZ##LABEL reset 
LABEL 
JZ command with condition 
The ‘if’ statement is used for condition 
JZ##LABEL,cond if 
cond 
     reset LABEL 
end 
9 EN 
command 
The keyword ‘exit’ is used instead the 
command EN 
EN exit 
10 RT 
command 
The keyword ‘return’ is used instead the 
command RT 
RT return 
11  The ‘is equal’ symbol inside the condition  = == 
12  The ‘not equal’ symbol inside the 
condition 
<> != 
13  Hexadecimal number representation
 
1234H 0x1234 
14  Separation of expressions 
A single line may contain several 
expressions to evaluate separated with 
semicolon. In the Harmonica all 
expressions of the same line must be 
executed without return control to the 
Interpreter. It does not relevant for the 
Saxophone/Clarinet, so every expression 
will be set to the separate line. 
UM=5;MO=1;BG UM=5; 
MO=1; 
BG 
15  IA[N], RA[N] commands 
The global variables IA and RA are 
defined in the beginning of every 
program. They are vectors of the length 
100. 
 int 
IA[100]; 
float RA[100]; 
 
18.5 Examples 
Here are some examples of the conversion: 
 
Clarinet/Saxophone format 
The Harmonica’s format 
 int 
IA[100]; 
float RA[100]; 
##START ##START