PaCo v1.0
This commit is contained in:
30
parser.cpp
30
parser.cpp
@@ -747,6 +747,28 @@ static void parse_wait() {
|
||||
emmit(OP_SLEEP);
|
||||
}
|
||||
|
||||
static void parse_setmusic() {
|
||||
parse_expression();
|
||||
parse_concatenation();
|
||||
emmit(OP_JSR);
|
||||
emmit_w(get_label_address("_sys_spu_setmusic"));
|
||||
}
|
||||
|
||||
static void parse_playmusic() {
|
||||
emmit(OP_JSR);
|
||||
emmit_w(get_label_address("_sys_spu_playmusic"));
|
||||
}
|
||||
|
||||
static void parse_stopmusic() {
|
||||
emmit(OP_JSR);
|
||||
emmit_w(get_label_address("_sys_spu_stopmusic"));
|
||||
}
|
||||
|
||||
static void parse_ismusicplaying() {
|
||||
emmit(OP_JSR);
|
||||
emmit_w(get_label_address("_sys_spu_ismusicplaying"));
|
||||
}
|
||||
|
||||
|
||||
static void parse_statements() {
|
||||
while (!parser_finished) {
|
||||
@@ -817,6 +839,14 @@ static void parse_statements() {
|
||||
tkn_next(); parse_clrscr(); break;
|
||||
case TOKEN_WAIT:
|
||||
tkn_next(); parse_wait(); break;
|
||||
case TOKEN_SETMUSIC:
|
||||
tkn_next(); parse_setmusic(); break;
|
||||
case TOKEN_PLAYMUSIC:
|
||||
tkn_next(); parse_playmusic(); break;
|
||||
case TOKEN_STOPMUSIC:
|
||||
tkn_next(); parse_stopmusic(); break;
|
||||
case TOKEN_ISMUSICPLAYING:
|
||||
tkn_next(); parse_ismusicplaying(); break;
|
||||
|
||||
case TOKEN_IDENTIFIER:
|
||||
for (int i = 0; i < num_external_functions; i++) {
|
||||
|
||||
Reference in New Issue
Block a user