Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
dc4491f
start on parser
thomasjball Nov 22, 2025
b08179e
reverse map
thomasjball Nov 22, 2025
9de1c3a
todo
thomasjball Nov 22, 2025
5284421
refactoring for unique tokens
thomasjball Nov 23, 2025
589e382
old to new conversion
thomasjball Nov 23, 2025
d2483a0
remove old tids
thomasjball Nov 23, 2025
b7bd04c
fix up translation
thomasjball Nov 23, 2025
d0d8644
duplicates found
thomasjball Nov 23, 2025
4d49f4a
eliminate duplicates
thomasjball Nov 23, 2025
b38b80d
new functions for parse/unparse from text
thomasjball Nov 24, 2025
8c463b8
more text conversion
thomasjball Nov 24, 2025
85990be
melody as text
thomasjball Nov 24, 2025
cd0363c
getting closer!
thomasjball Nov 24, 2025
15ce977
finish off parse/unparse for fieldeditors
thomasjball Nov 24, 2025
e4c039e
start on toString
thomasjball Nov 24, 2025
280f7ce
unparser working
thomasjball Nov 24, 2025
94e1b16
done unparsing
thomasjball Nov 24, 2025
1c84f13
add EOP marker
thomasjball Nov 24, 2025
def49de
work on parser
thomasjball Nov 25, 2025
45f54ff
done with parser
thomasjball Nov 26, 2025
76078a8
ugh
thomasjball Nov 26, 2025
37db0a6
return magnet
thomasjball Nov 26, 2025
77682b7
start debugging parser
thomasjball Nov 26, 2025
cb10f94
progress?
thomasjball Nov 26, 2025
4869111
fix up reverse tooltips
thomasjball Nov 26, 2025
379cea4
getting further...
thomasjball Nov 26, 2025
e4cec15
more checking
thomasjball Nov 26, 2025
9b0c0b8
clean up unparser
thomasjball Nov 26, 2025
1893dff
redo syntax
thomasjball Nov 26, 2025
9a57ccb
more changes
thomasjball Nov 26, 2025
ea6dc45
fix corner case
thomasjball Nov 26, 2025
946999b
parser not asserting
thomasjball Nov 26, 2025
ce36ade
fix up corner case
thomasjball Nov 26, 2025
4ce1aac
move pretty printing out of language.ts
thomasjball Nov 26, 2025
599cc6d
syntax error
thomasjball Nov 26, 2025
3bc9504
move to token-based parsing
thomasjball Nov 26, 2025
3ae09bc
compiling, again
thomasjball Nov 26, 2025
579e797
fix up token processing
thomasjball Nov 27, 2025
b9a337c
fix parser
thomasjball Nov 27, 2025
ccd746b
oops
thomasjball Nov 27, 2025
886e745
more testing
thomasjball Nov 27, 2025
2bee7b5
fix up phases (don't rely on isFilter, ...)
thomasjball Nov 27, 2025
374db5b
fix up silliness
thomasjball Nov 27, 2025
4e1f629
Merge branch 'main' of https://github.com/microbit-apps/microcode-v2 …
thomasjball Nov 27, 2025
04ce472
remove files
thomasjball Nov 27, 2025
87339a7
no upper case!
thomasjball Nov 29, 2025
f92c473
debugging
thomasjball Nov 29, 2025
3857456
coin modifier/filter mismatch
thomasjball Nov 29, 2025
7154b58
fix up comparison
thomasjball Nov 29, 2025
098e7a2
move test parser/unparser
thomasjball Nov 29, 2025
eabaef3
refactor
thomasjball Nov 29, 2025
e6ebffe
convert samples to text
thomasjball Nov 29, 2025
9d72895
bring text samples over
thomasjball Nov 29, 2025
0d0d2b8
test text samples out
thomasjball Nov 29, 2025
42013dc
from _ to -
thomasjball Dec 1, 2025
8f76189
Merge branch 'main' of https://github.com/microbit-apps/microcode-v2 …
thomasjball Dec 29, 2025
e24c570
add back
thomasjball Dec 29, 2025
9b011a7
go to underscore
thomasjball Dec 29, 2025
0cd31e6
more testing
thomasjball Dec 29, 2025
ea277fb
fix up errors
thomasjball Dec 29, 2025
c0d1914
fix up error with pages
thomasjball Dec 30, 2025
77861c4
remove test sample gen
thomasjball Dec 30, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 1 addition & 4 deletions assets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,7 @@ namespace microcode {

// math
if (typeof name == "number") {
if (
microcode.isModifierConstant(name) ||
microcode.isFilterConstant(name)
) {
if (microcode.isConstant(name)) {
return icondb.numberToImage(getParam(name))
}
}
Expand Down
91,944 changes: 48,732 additions & 43,212 deletions assets/js/binary-en.js

Large diffs are not rendered by default.

360 changes: 176 additions & 184 deletions assets/strings/en/tooltips.json
Original file line number Diff line number Diff line change
@@ -1,185 +1,177 @@
{
"tagline": "for micro:bit V2",
"sensors": "when...",
"actuators": "do...",
"when": "when",
"do": "do",
"connect": "connect",
"rule": "rule",
"add_rule": "add rule",
"delete_rule": "delete rule",
"rule_up": "move rule up",
"rule_down": "move rule down",
"disk": "save",
"load": "load",
"settings": "settings",
"run": "run program",
"stop": "stop program",
"SR_LED": "LED {x} {y} {state}",
"SR_NOTE": "note {index} {state}",
"SR_ON": "on",
"SR_OFF": "off",
"C0": "edit",
"C1": "samples",
"N1": "new program",
"N2": "flashing heart",
"N3": "smiley buttons",
"N4": "pet hamster",
"N5": "chuck a duck",
"N6": "reaction time",
"N7": "hot potato",
"N8": "rock paper scissors",
"N9": "head or tail",
"N10": "clap lights",
"N11": "firefly",
"N12": "railroad crossing",
"N13": "7 seconds clap",
"N14": "counter",
"T10": "page start",
"T11": "press",
"T12": "release",
"T13": "move",
"T14": "timer",
"T15": "light",
"T16": "temperature",
"T17": "radio receive",
"T18": "sound",
"T19": "variable X set",
"T20": "variable Y set",
"T21": "variable Z set",
"T22": "magnet",
"T23": "slider",
"T24": "dial",
"T25": "wall",
"T26": "line",
"T27": "light",
"T28": "moisture",
"T29": "distance",
"T30": "line",
"T40": "switch page",
"T41": "play sound",
"T43": "music",
"T44": "show image",
"T45": "radio send",
"T46": "radio set group",
"T47": "LED",
"T48": "set variable X",
"T49": "set variable Y",
"T50": "set variable Z",
"T51": "show number",
"T52": "robot",
"T53": "servo set angle",
"T54": "relay",
"T55": "servo power",
"T70": "touch pin 0",
"T71": "touch pin 1",
"T72": "touch pin 2",
"T73": "button A",
"T74": "button B",
"T75": "key 1",
"T76": "key 2",
"T77": "logo",
"T78": "1",
"T79": "2",
"T80": "3",
"T81": "4",
"T82": "5",
"T83": "1/4 second",
"T84": "1 second",
"T85": "1 random second",
"T86": "5 seconds",
"T87": "loud",
"T88": "quiet",
"T89": "NA",
"T90": "shake",
"T91": "tilt up",
"T92": "tilt down",
"T93": "tilt left",
"T94": "tilt right",
"T95": "variable X",
"T96": "variable Y",
"T97": "variable Z",
"T98": "turn left",
"T99": "turn right",
"T100": "up",
"T101": "down",
"T103": "right",
"T104": "both",
"T105": "none",
"T106": "lost left",
"T107": "lost right",
"T108": "face up",
"T109": "face down",
"T110": "on",
"T111": "off",
"T150": "page 1",
"T151": "page 2",
"T152": "page 3",
"T153": "page 4",
"T154": "page 5",
"T155": "1",
"T156": "2",
"T157": "3",
"T158": "4",
"T159": "5",
"T160": "image",
"T161": "red",
"T162": "purple",
"T163": "giggle",
"T164": "happy",
"T165": "hello",
"T166": "mysterious",
"T167": "sad",
"T168": "slide",
"T169": "soaring",
"T170": "spring",
"T171": "twinkle",
"T172": "yawn",
"T173": "variable X",
"T174": "variable Y",
"T175": "variable Z",
"T176": "radio value",
"T177": "random number",
"T178": "repeat",
"T179": "melody",
"T180": "temperature",
"T181": "NA",
"T182": "red",
"T183": "green",
"T184": "blue",
"T185": "purple",
"T186": "yellow",
"T187": "black",
"T188": "rainbow",
"T189": "sparkle",
"T190": "forward",
"T191": "reverse",
"T192": "turn left",
"T193": "turn right",
"T194": "stop",
"T195": "fast forward",
"T196": "spin left",
"T197": "spin right",
"T198": "LED red",
"T199": "LED green",
"T200": "LED blue",
"T201": "LED OFF",
"T202": "arm open",
"T203": "arm close",
"T204": "on",
"T205": "off",
"T206": "light value",
"T207": "magnet value",
"T208": "sound value",
"T210": "add",
"T211": "subtract",
"T212": "multiply",
"T213": "divide",
"T220": "equals",
"T221": "not equals",
"T222": "less than",
"T223": "less than or equals",
"T224": "greater than",
"T225": "greater than or equals",
"T255": "enter number"
}
"tagline": "for micro:bit V2",
"sensors": "when...",
"actuators": "do...",
"when": "when",
"do": "do",
"connect": "connect",
"rule": "rule",
"add_rule": "add rule",
"delete_rule": "delete rule",
"rule_up": "move rule up",
"rule_down": "move rule down",
"disk": "save",
"load": "load",
"settings": "settings",
"run": "run program",
"stop": "stop program",
"SR_LED": "LED {x} {y} {state}",
"SR_NOTE": "note {index} {state}",
"SR_ON": "on",
"SR_OFF": "off",
"C0": "edit",
"C1": "samples",
"N1": "new program",
"N2": "flashing heart",
"N3": "smiley buttons",
"N4": "pet hamster",
"N5": "chuck a duck",
"N6": "reaction time",
"N7": "hot potato",
"N8": "rock paper scissors",
"N9": "head or tail",
"N10": "clap lights",
"N11": "firefly",
"N12": "railroad crossing",
"N13": "7 seconds clap",
"N14": "counter",
"T10": "start page",
"T11": "press",
"T12": "release",
"T13": "move",
"T14": "timer",
"T15": "light (external)",
"T16": "temperature",
"T17": "radio receive",
"T18": "sound",
"T19": "variable X set",
"T20": "variable Y set",
"T21": "variable Z set",
"T22": "magnet",
"T23": "slider",
"T24": "dial",
"T25": "wall",
"T26": "line",
"T27": "light",
"T28": "moisture",
"T29": "distance",
"T30": "reflected light",
"T40": "switch page",
"T41": "play sound",
"T43": "music",
"T44": "show image",
"T45": "radio send",
"T46": "radio set group",
"T47": "LED",
"T48": "set variable X",
"T49": "set variable Y",
"T50": "set variable Z",
"T51": "show number",
"T52": "robot",
"T53": "servo set angle",
"T54": "relay",
"T55": "servo power",
"T70": "touch pin 0",
"T71": "touch pin 1",
"T72": "touch pin 2",
"T73": "button A",
"T74": "button B",
"T75": "key 1",
"T76": "key 2",
"T77": "logo",
"T78": "1",
"T79": "2",
"T80": "3",
"T81": "4",
"T82": "5",
"T83": "1/4 second",
"T84": "1 second",
"T85": "1 random second",
"T86": "5 seconds",
"T87": "loud",
"T88": "quiet",
"T89": "NA1",
"T90": "shake",
"T91": "tilt up",
"T92": "tilt down",
"T93": "tilt left",
"T94": "tilt right",
"T95": "variable X",
"T96": "variable Y",
"T97": "variable Z",
"T98": "turn left",
"T99": "turn right",
"T100": "up",
"T101": "down",
"T103": "right",
"T104": "both",
"T105": "none",
"T106": "lost left",
"T107": "lost right",
"T108": "face up",
"T109": "face down",
"T110": "active",
"T111": "unactive",
"T150": "page 1",
"T151": "page 2",
"T152": "page 3",
"T153": "page 4",
"T154": "page 5",
"T160": "image",
"T161": "NA5",
"T162": "NA6",
"T163": "giggle",
"T164": "happy",
"T165": "hello",
"T166": "mysterious",
"T167": "sad",
"T168": "slide",
"T169": "soaring",
"T170": "spring",
"T171": "twinkle",
"T172": "yawn",
"T176": "radio value",
"T177": "random number",
"T178": "repeat",
"T179": "melody",
"T180": "temp.",
"T181": "NA2",
"T182": "red",
"T183": "green",
"T184": "blue",
"T185": "purple",
"T186": "yellow",
"T187": "black",
"T188": "rainbow",
"T189": "sparkle",
"T190": "forward",
"T191": "reverse",
"T192": "NA3",
"T193": "NA4",
"T194": "stop",
"T195": "fast forward",
"T196": "spin left",
"T197": "spin right",
"T198": "LED red",
"T199": "LED green",
"T200": "LED blue",
"T201": "LED OFF",
"T202": "arm open",
"T203": "arm close",
"T204": "on",
"T205": "off",
"T206": "light value",
"T207": "magnet value",
"T208": "sound value",
"T210": "add",
"T211": "subtract",
"T212": "multiply",
"T213": "divide",
"T220": "equals",
"T221": "not equals",
"T222": "less than",
"T223": "less than or equals",
"T224": "greater than",
"T225": "greater than or equals",
"T255": "enter number"
}
Loading