diff -Naur ../2021_01_30/module/edit_mode.c ./module/edit_mode.c --- ../2021_01_30/module/edit_mode.c 2021-01-30 15:21:55.000000000 +0100 +++ ./module/edit_mode.c 2021-01-30 15:48:15.802172912 +0100 @@ -409,6 +409,22 @@ } else if (script == INIT_SCRIPT) prefix = 'I'; + else if (script == TT_SCRIPT_A) { + prefix = 'A'; + muted = true; + } + else if (script == TT_SCRIPT_B) { + prefix = 'B'; + muted = true; + } + else if (script == TT_SCRIPT_C) { + prefix = 'C'; + muted = true; + } + else if (script == TT_SCRIPT_D) { + prefix = 'D'; + muted = true; + } else if (script <= TT_SCRIPT_8) muted = ss_get_mute(&scene_state, script); diff -Naur ../2021_01_30/module/usb_disk_mode.c ./module/usb_disk_mode.c --- ../2021_01_30/module/usb_disk_mode.c 2021-01-30 15:21:55.000000000 +0100 +++ ./module/usb_disk_mode.c 2021-01-30 15:48:15.806172859 +0100 @@ -121,7 +121,7 @@ } char input[36]; - for (int s = 0; s < 10; s++) { + for (int s = 0; s < 14; s++) { file_putc('\n'); file_putc('\n'); file_putc('#'); @@ -129,6 +129,14 @@ file_putc('M'); else if (s == 9) file_putc('I'); + else if (s == 10) + file_putc('A'); + else if (s == 11) + file_putc('B'); + else if (s == 12) + file_putc('C'); + else if (s == 13) + file_putc('D'); else file_putc(s + 49); @@ -261,11 +269,19 @@ s = 8; else if (c == 'I') s = 9; - else if (c == 'P') + else if (c == 'A') s = 10; + else if (c == 'B') + s = 11; + else if (c == 'C') + s = 12; + else if (c == 'D') + s = 13; + else if (c == 'P') + s = 14; else if (c == 'G') { grid_state = grid_num = grid_count = 0; - s = 11; + s = 15; } else { s = c - 49; @@ -298,7 +314,7 @@ } } // SCRIPTS - else if (s >= 0 && s <= 9) { + else if (s >= 0 && s <= 13) { if (c == '\n') { if (p && l < SCRIPT_MAX_COMMANDS) { tele_command_t temp; @@ -342,7 +358,7 @@ } // PATTERNS // tele_patterns[]. l wrap start end v[64] - else if (s == 10) { + else if (s == 14) { if (c == '\n' || c == '\t') { if (b < 4) { if (l > 3) { @@ -375,7 +391,8 @@ if (c == '\n') { if (p) l++; - if (l > 68) s = -1; + // ATTE: 64 + 4????? + if (l > PATTERN_LENGTH + 4) s = -1; b = 0; p = 0; } @@ -392,7 +409,7 @@ } } // GRID - else if (s == 11) { + else if (s == 15) { grid_usb_read(&scene, c); } } diff -Naur ../2021_01_30/src/ops/controlflow.c ./src/ops/controlflow.c --- ../2021_01_30/src/ops/controlflow.c 2021-01-30 15:21:55.000000000 +0100 +++ ./src/ops/controlflow.c 2021-01-30 15:48:15.806172859 +0100 @@ -242,7 +242,7 @@ static void op_SCRIPT_set(const void *NOTUSED(data), scene_state_t *ss, exec_state_t *es, command_state_t *cs) { uint16_t a = cs_pop(cs) - 1; - if (a > INIT_SCRIPT || a < TT_SCRIPT_1) return; + if (a > TT_SCRIPT_D || a < TT_SCRIPT_1) return; es_push(es); // an overflow causes all future SCRIPT calls to fail @@ -271,7 +271,7 @@ } else { uint8_t s = a - 1; - if (s >= TT_SCRIPT_1 && s <= TT_SCRIPT_8) { + if (s >= TT_SCRIPT_1 && s <= TT_SCRIPT_D) { ss_set_script_pol(ss, s, pol); } } diff -Naur ../2021_01_30/src/state.h ./src/state.h --- ../2021_01_30/src/state.h 2021-01-30 15:21:55.000000000 +0100 +++ ./src/state.h 2021-01-30 15:48:15.806172859 +0100 @@ -22,7 +22,7 @@ #define PATTERN_COUNT 4 #define PATTERN_LENGTH 64 #define SCRIPT_MAX_COMMANDS 6 -#define SCRIPT_COUNT 11 +#define SCRIPT_COUNT 15 #define EXEC_DEPTH 8 #define WHILE_DEPTH 10000 #define RAND_STATES_COUNT 5 diff -Naur ../2021_01_30/src/turtle.h ./src/turtle.h --- ../2021_01_30/src/turtle.h 2021-01-30 15:21:55.000000000 +0100 +++ ./src/turtle.h 2021-01-30 15:48:15.806172859 +0100 @@ -41,6 +41,10 @@ TT_SCRIPT_8, METRO_SCRIPT, INIT_SCRIPT, + TT_SCRIPT_A, + TT_SCRIPT_B, + TT_SCRIPT_C, + TT_SCRIPT_D, TEMP_SCRIPT } script_number_t;