diff --git a/libs/microbit/input.ts b/libs/microbit/input.ts
index 7bcfc67c..608263b4 100644
--- a/libs/microbit/input.ts
+++ b/libs/microbit/input.ts
@@ -4,12 +4,12 @@ enum Button {
//% enumval=MICROBIT_ID_BUTTON_B
B,
//% enumval=MICROBIT_ID_BUTTON_AB
- //% blockId="A+B"
+ //% blockId="A+B" block="A+B"
AB,
}
enum Dimension {
- //% enumval=0 blockId=x
+ //% enumval=0 blockId=x
X,
//% enumval=1 blockId=y
Y,
diff --git a/libs/microbit/kind.json b/libs/microbit/kind.json
index 050bc40c..105d22f6 100644
--- a/libs/microbit/kind.json
+++ b/libs/microbit/kind.json
@@ -20,8 +20,13 @@
"dependencies": {},
"target": {
"id": "microbit",
- "name": "microbit",
- "title": "micro:bit",
+ "name": "BBC micro:bit",
+ "title": "JavaScript for BBC micro:bit",
+ "theme": {
+ "logoUrl": "https://www.microbit.co.uk/",
+ "logo":"",
+ "footerLogo": ""
+ },
"cloud": true,
"blocksprj": {
"id": "blocksprj",
@@ -63,10 +68,11 @@
"README.md": "Describe your project here!"
}
},
- "koduvscode": true,
+ "koduUrl": "https://www.kodugamelab.com/bbc-microbit/",
+ "visualStudioCode": true,
"compile": {
"isNative": false,
"hasHex": true
}
}
-}
+}
\ No newline at end of file
diff --git a/sim/libmbit.ts b/sim/libmbit.ts
index 28effcc2..8dd45886 100644
--- a/sim/libmbit.ts
+++ b/sim/libmbit.ts
@@ -213,16 +213,22 @@ namespace ks.rt.micro_bit {
/* input */
export function onButtonPressed(button : number, handler: RefAction) : void {
let ens = enums();
- board().bus.listen(button, ens.MICROBIT_BUTTON_EVT_CLICK, handler);
+ let b = board();
+ if (button == ens.MICROBIT_ID_BUTTON_AB && !board().usesButtonAB) {
+ b.usesButtonAB = true;
+ b.updateView();
+ }
+ b.bus.listen(button, ens.MICROBIT_BUTTON_EVT_CLICK, handler);
}
export function isButtonPressed(button: number): boolean {
var ens = enums();
+ let b = board();
if (button == ens.MICROBIT_ID_BUTTON_AB && !board().usesButtonAB) {
- board().usesButtonAB = true;
- runtime.queueDisplayUpdate();
+ b.usesButtonAB = true;
+ b.updateView();
}
- var bts = board().buttons;
+ var bts = b.buttons;
if (button == ens.MICROBIT_ID_BUTTON_A) return bts[0].pressed;
if (button == ens.MICROBIT_ID_BUTTON_B) return bts[1].pressed;
return bts[2].pressed || (bts[0].pressed && bts[1].pressed);