pxt-common-packages 12.2.3 → 12.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/libs/azureiot/built/debug/binary.js +461 -461
  2. package/libs/color/built/debug/binary.js +8 -8
  3. package/libs/color-sensor/built/debug/binary.js +8 -8
  4. package/libs/controller/built/debug/binary.js +7120 -7120
  5. package/libs/controller---none/built/debug/binary.js +7100 -7100
  6. package/libs/datalogger/built/debug/binary.js +63 -63
  7. package/libs/edge-connector/built/debug/binary.js +8 -8
  8. package/libs/esp32/built/debug/binary.js +462 -462
  9. package/libs/game/_locales/game-jsdoc-strings.json +2 -0
  10. package/libs/game/_locales/game-strings.json +2 -2
  11. package/libs/game/built/debug/binary.js +7039 -7039
  12. package/libs/game/numberprompt.ts +36 -444
  13. package/libs/game/prompt.ts +222 -258
  14. package/libs/game/pxt.json +2 -0
  15. package/libs/game/systemKeyboard.cpp +32 -0
  16. package/libs/game/systemKeyboard.d.ts +23 -0
  17. package/libs/lcd/built/debug/binary.js +8 -8
  18. package/libs/light-spectrum-sensor/built/debug/binary.js +8 -8
  19. package/libs/lora/built/debug/binary.js +8 -8
  20. package/libs/matrix-keypad/built/debug/binary.js +8 -8
  21. package/libs/mqtt/built/debug/binary.js +176 -176
  22. package/libs/net/built/debug/binary.js +176 -176
  23. package/libs/net-game/built/debug/binary.js +19979 -18810
  24. package/libs/palette/built/debug/binary.js +7038 -7038
  25. package/libs/pixel/built/debug/binary.js +8 -8
  26. package/libs/power/built/debug/binary.js +8 -8
  27. package/libs/proximity/built/debug/binary.js +8 -8
  28. package/libs/radio/built/debug/binary.js +8 -8
  29. package/libs/radio-broadcast/built/debug/binary.js +8 -8
  30. package/libs/rotary-encoder/built/debug/binary.js +8 -8
  31. package/libs/screen/_locales/screen-jsdoc-strings.json +2 -0
  32. package/libs/screen/_locales/screen-strings.json +4 -0
  33. package/libs/screen/built/debug/binary.js +50 -50
  34. package/libs/screen/fieldeditors.ts +1 -0
  35. package/libs/screen/image.d.ts +24 -0
  36. package/libs/screen/image.ts +25 -0
  37. package/libs/servo/built/debug/binary.js +8 -8
  38. package/libs/sprite-scaling/built/debug/binary.js +7038 -7038
  39. package/libs/storyboard/built/debug/binary.js +7038 -7038
  40. package/package.json +1 -1
@@ -56,7 +56,7 @@ const pxsim_pxtrt = pxsim.pxtrt;
56
56
  const pxsim_numops = pxsim.numops;
57
57
 
58
58
 
59
- function _main___P56346(s) {
59
+ function _main___P56243(s) {
60
60
  let r0 = s.r0, step = s.pc;
61
61
  s.pc = -1;
62
62
 
@@ -66,19 +66,19 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
66
66
  switch (step) {
67
67
  case 0:
68
68
 
69
- globals._intervals___56589 = (undefined);
70
- globals._pollEventQueue___56602 = (undefined);
69
+ globals._intervals___56486 = (undefined);
70
+ globals._pollEventQueue___56499 = (undefined);
71
71
  r0 = undefined;
72
72
  return leave(s, r0)
73
73
  default: oops()
74
74
  } } }
75
- _main___P56346.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"pxt_modules/light/neopixel.ts","functionName":"<main>","argumentNames":[]}
76
- _main___P56346.continuations = [ ]
75
+ _main___P56243.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"pxt_modules/light/neopixel.ts","functionName":"<main>","argumentNames":[]}
76
+ _main___P56243.continuations = [ ]
77
77
 
78
- function _main___P56346_mk(s) {
78
+ function _main___P56243_mk(s) {
79
79
  checkStack(s.depth);
80
80
  return {
81
- parent: s, fn: _main___P56346, depth: s.depth + 1,
81
+ parent: s, fn: _main___P56243, depth: s.depth + 1,
82
82
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
83
83
  } }
84
84
 
@@ -88,5 +88,5 @@ function _main___P56346_mk(s) {
88
88
 
89
89
  const breakpoints = setupDebugger(1, [])
90
90
 
91
- return _main___P56346
91
+ return _main___P56243
92
92
  })
@@ -56,7 +56,7 @@ const pxsim_pxtrt = pxsim.pxtrt;
56
56
  const pxsim_numops = pxsim.numops;
57
57
 
58
58
 
59
- function _main___P63194(s) {
59
+ function _main___P63091(s) {
60
60
  let r0 = s.r0, step = s.pc;
61
61
  s.pc = -1;
62
62
 
@@ -66,19 +66,19 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
66
66
  switch (step) {
67
67
  case 0:
68
68
 
69
- globals._intervals___63437 = (undefined);
70
- globals._pollEventQueue___63450 = (undefined);
69
+ globals._intervals___63334 = (undefined);
70
+ globals._pollEventQueue___63347 = (undefined);
71
71
  r0 = undefined;
72
72
  return leave(s, r0)
73
73
  default: oops()
74
74
  } } }
75
- _main___P63194.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"power.ts","functionName":"<main>","argumentNames":[]}
76
- _main___P63194.continuations = [ ]
75
+ _main___P63091.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"power.ts","functionName":"<main>","argumentNames":[]}
76
+ _main___P63091.continuations = [ ]
77
77
 
78
- function _main___P63194_mk(s) {
78
+ function _main___P63091_mk(s) {
79
79
  checkStack(s.depth);
80
80
  return {
81
- parent: s, fn: _main___P63194, depth: s.depth + 1,
81
+ parent: s, fn: _main___P63091, depth: s.depth + 1,
82
82
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
83
83
  } }
84
84
 
@@ -88,5 +88,5 @@ function _main___P63194_mk(s) {
88
88
 
89
89
  const breakpoints = setupDebugger(1, [])
90
90
 
91
- return _main___P63194
91
+ return _main___P63091
92
92
  })
@@ -56,7 +56,7 @@ const pxsim_pxtrt = pxsim.pxtrt;
56
56
  const pxsim_numops = pxsim.numops;
57
57
 
58
58
 
59
- function _main___P103038(s) {
59
+ function _main___P102719(s) {
60
60
  let r0 = s.r0, step = s.pc;
61
61
  s.pc = -1;
62
62
 
@@ -66,19 +66,19 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
66
66
  switch (step) {
67
67
  case 0:
68
68
 
69
- globals._intervals___103281 = (undefined);
70
- globals._pollEventQueue___103294 = (undefined);
69
+ globals._intervals___102962 = (undefined);
70
+ globals._pollEventQueue___102975 = (undefined);
71
71
  r0 = undefined;
72
72
  return leave(s, r0)
73
73
  default: oops()
74
74
  } } }
75
- _main___P103038.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"vl53l0x.ts","functionName":"<main>","argumentNames":[]}
76
- _main___P103038.continuations = [ ]
75
+ _main___P102719.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"vl53l0x.ts","functionName":"<main>","argumentNames":[]}
76
+ _main___P102719.continuations = [ ]
77
77
 
78
- function _main___P103038_mk(s) {
78
+ function _main___P102719_mk(s) {
79
79
  checkStack(s.depth);
80
80
  return {
81
- parent: s, fn: _main___P103038, depth: s.depth + 1,
81
+ parent: s, fn: _main___P102719, depth: s.depth + 1,
82
82
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
83
83
  } }
84
84
 
@@ -88,5 +88,5 @@ function _main___P103038_mk(s) {
88
88
 
89
89
  const breakpoints = setupDebugger(1, [])
90
90
 
91
- return _main___P103038
91
+ return _main___P102719
92
92
  })
@@ -56,7 +56,7 @@ const pxsim_pxtrt = pxsim.pxtrt;
56
56
  const pxsim_numops = pxsim.numops;
57
57
 
58
58
 
59
- function _main___P189252(s) {
59
+ function _main___P188785(s) {
60
60
  let r0 = s.r0, step = s.pc;
61
61
  s.pc = -1;
62
62
 
@@ -66,19 +66,19 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
66
66
  switch (step) {
67
67
  case 0:
68
68
 
69
- globals._intervals___189495 = (undefined);
70
- globals._pollEventQueue___189508 = (undefined);
69
+ globals._intervals___189028 = (undefined);
70
+ globals._pollEventQueue___189041 = (undefined);
71
71
  r0 = undefined;
72
72
  return leave(s, r0)
73
73
  default: oops()
74
74
  } } }
75
- _main___P189252.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"targetoverrides.ts","functionName":"<main>","argumentNames":[]}
76
- _main___P189252.continuations = [ ]
75
+ _main___P188785.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"targetoverrides.ts","functionName":"<main>","argumentNames":[]}
76
+ _main___P188785.continuations = [ ]
77
77
 
78
- function _main___P189252_mk(s) {
78
+ function _main___P188785_mk(s) {
79
79
  checkStack(s.depth);
80
80
  return {
81
- parent: s, fn: _main___P189252, depth: s.depth + 1,
81
+ parent: s, fn: _main___P188785, depth: s.depth + 1,
82
82
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
83
83
  } }
84
84
 
@@ -88,5 +88,5 @@ function _main___P189252_mk(s) {
88
88
 
89
89
  const breakpoints = setupDebugger(1, [])
90
90
 
91
- return _main___P189252
91
+ return _main___P188785
92
92
  })
@@ -56,7 +56,7 @@ const pxsim_pxtrt = pxsim.pxtrt;
56
56
  const pxsim_numops = pxsim.numops;
57
57
 
58
58
 
59
- function _main___P191076(s) {
59
+ function _main___P190609(s) {
60
60
  let r0 = s.r0, step = s.pc;
61
61
  s.pc = -1;
62
62
 
@@ -66,19 +66,19 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
66
66
  switch (step) {
67
67
  case 0:
68
68
 
69
- globals._intervals___191319 = (undefined);
70
- globals._pollEventQueue___191332 = (undefined);
69
+ globals._intervals___190852 = (undefined);
70
+ globals._pollEventQueue___190865 = (undefined);
71
71
  r0 = undefined;
72
72
  return leave(s, r0)
73
73
  default: oops()
74
74
  } } }
75
- _main___P191076.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"radio-broadcast.ts","functionName":"<main>","argumentNames":[]}
76
- _main___P191076.continuations = [ ]
75
+ _main___P190609.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"radio-broadcast.ts","functionName":"<main>","argumentNames":[]}
76
+ _main___P190609.continuations = [ ]
77
77
 
78
- function _main___P191076_mk(s) {
78
+ function _main___P190609_mk(s) {
79
79
  checkStack(s.depth);
80
80
  return {
81
- parent: s, fn: _main___P191076, depth: s.depth + 1,
81
+ parent: s, fn: _main___P190609, depth: s.depth + 1,
82
82
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
83
83
  } }
84
84
 
@@ -88,5 +88,5 @@ function _main___P191076_mk(s) {
88
88
 
89
89
  const breakpoints = setupDebugger(1, [])
90
90
 
91
- return _main___P191076
91
+ return _main___P190609
92
92
  })
@@ -56,7 +56,7 @@ const pxsim_pxtrt = pxsim.pxtrt;
56
56
  const pxsim_numops = pxsim.numops;
57
57
 
58
58
 
59
- function _main___P171815(s) {
59
+ function _main___P171456(s) {
60
60
  let r0 = s.r0, step = s.pc;
61
61
  s.pc = -1;
62
62
 
@@ -66,19 +66,19 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
66
66
  switch (step) {
67
67
  case 0:
68
68
 
69
- globals._intervals___172058 = (undefined);
70
- globals._pollEventQueue___172071 = (undefined);
69
+ globals._intervals___171699 = (undefined);
70
+ globals._pollEventQueue___171712 = (undefined);
71
71
  r0 = undefined;
72
72
  return leave(s, r0)
73
73
  default: oops()
74
74
  } } }
75
- _main___P171815.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"targetoverrides.ts","functionName":"<main>","argumentNames":[]}
76
- _main___P171815.continuations = [ ]
75
+ _main___P171456.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"targetoverrides.ts","functionName":"<main>","argumentNames":[]}
76
+ _main___P171456.continuations = [ ]
77
77
 
78
- function _main___P171815_mk(s) {
78
+ function _main___P171456_mk(s) {
79
79
  checkStack(s.depth);
80
80
  return {
81
- parent: s, fn: _main___P171815, depth: s.depth + 1,
81
+ parent: s, fn: _main___P171456, depth: s.depth + 1,
82
82
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
83
83
  } }
84
84
 
@@ -88,5 +88,5 @@ function _main___P171815_mk(s) {
88
88
 
89
89
  const breakpoints = setupDebugger(1, [])
90
90
 
91
- return _main___P171815
91
+ return _main___P171456
92
92
  })
@@ -38,6 +38,8 @@
38
38
  "helpers.imageRotated": "Returns an image rotated by 90, 180, 270 deg clockwise",
39
39
  "image.create": "Create new empty (transparent) image",
40
40
  "image.doubledIcon": "Double the size of an icon",
41
+ "image.getDimension": "Returns the width or height of a picture.\n* @param picture The picture to get the width or height of\n\n@returns",
42
+ "image.getDimension|param|dimension": "The dimension to get",
41
43
  "image.ofBuffer": "Create new image with given content",
42
44
  "image.screenImage": "Get the screen image",
43
45
  "images": "Image manipulation blocks",
@@ -2,6 +2,7 @@
2
2
  "Image.clone|block": "clone %picture=variables_get",
3
3
  "Image.drawLine|block": "draw line in %picture=variables_get from x %x0 y %y0 to x %x1 y %y1 %c=colorindexpicker",
4
4
  "Image.drawRect|block": "draw rectangle in %picture=variables_get at x %x y %y width %w height %h %c=colorindexpicker",
5
+ "Image.drawTransparentImage|block": "$this draw $from at x $x y $y",
5
6
  "Image.equals|block": "$this is equal to image $other",
6
7
  "Image.fillRect|block": "fill rectangle in %picture=variables_get at x %x y %y width %w height %h %c=colorindexpicker",
7
8
  "Image.fill|block": "fill %picture=variables_get with %c=colorindexpicker",
@@ -11,7 +12,10 @@
11
12
  "Image.replace|block": "change color in %picture=variables_get from %from=colorindexpicker to %to=colorindexpicker",
12
13
  "Image.setPixel|block": "set %picture=variables_get color at x %x y %y to %c=colorindexpicker",
13
14
  "helpers|block": "helpers",
15
+ "image.Dimension.Height|block": "height",
16
+ "image.Dimension.Width|block": "width",
14
17
  "image.create|block": "create image width %width height %height",
18
+ "image.getDimension|block": "$picture $dimension",
15
19
  "image.screenImage|block": "screen",
16
20
  "images._dialogImage|block": "%img",
17
21
  "images._image|block": "$image",
@@ -56,7 +56,7 @@ const pxsim_pxtrt = pxsim.pxtrt;
56
56
  const pxsim_numops = pxsim.numops;
57
57
 
58
58
 
59
- function _main___P50959(s) {
59
+ function _main___P50851(s) {
60
60
  let r0 = s.r0, step = s.pc;
61
61
  s.pc = -1;
62
62
 
@@ -66,29 +66,29 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
66
66
  switch (step) {
67
67
  case 0:
68
68
 
69
- globals._intervals___51202 = (undefined);
70
- globals._pollEventQueue___51215 = (undefined);
71
- globals.__updated___51448 = (false);
72
- r0 = pxsim.control.runInParallel(control___screen_inline__P51453);
69
+ globals._intervals___51094 = (undefined);
70
+ globals._pollEventQueue___51107 = (undefined);
71
+ globals.__updated___51341 = (false);
72
+ r0 = pxsim.control.runInParallel(control___screen_inline__P51346);
73
73
  r0 = pxsim.image.create(178, 128);
74
- globals.screen___51476 = (r0);
75
- s.tmp_0 = control___screen_setupUpdate__P51450_mk(s);
76
- s.tmp_0.arg0 = _screen_internal_inline__P51481;
74
+ globals.screen___51369 = (r0);
75
+ s.tmp_0 = control___screen_setupUpdate__P51343_mk(s);
76
+ s.tmp_0.arg0 = _screen_internal_inline__P51374;
77
77
  s.callLocIdx = 4; s.pc = 1; return s.tmp_0;
78
78
  case 1:
79
79
  r0 = s.retval;
80
- globals.control_EventContext_onStats___51270 = (_screen_internal_inline__P51486);
80
+ globals.control_EventContext_onStats___51162 = (_screen_internal_inline__P51379);
81
81
  r0 = undefined;
82
82
  return leave(s, r0)
83
83
  default: oops()
84
84
  } } }
85
- _main___P50959.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"imagesoverrides.ts","functionName":"<main>","argumentNames":[]}
86
- _main___P50959.continuations = [ ]
85
+ _main___P50851.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"imagesoverrides.ts","functionName":"<main>","argumentNames":[]}
86
+ _main___P50851.continuations = [ ]
87
87
 
88
- function _main___P50959_mk(s) {
88
+ function _main___P50851_mk(s) {
89
89
  checkStack(s.depth);
90
90
  return {
91
- parent: s, fn: _main___P50959, depth: s.depth + 1,
91
+ parent: s, fn: _main___P50851, depth: s.depth + 1,
92
92
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
93
93
  tmp_0: undefined,
94
94
  } }
@@ -97,7 +97,7 @@ function _main___P50959_mk(s) {
97
97
 
98
98
 
99
99
 
100
- function control___screen_inline__P51453(s) {
100
+ function control___screen_inline__P51346(s) {
101
101
  let r0 = s.r0, step = s.pc;
102
102
  s.pc = -1;
103
103
 
@@ -110,23 +110,23 @@ switch (step) {
110
110
  case 1:
111
111
  r0 = pxsim_numops_toBoolDecr(true);
112
112
  if (!r0) { step = 4; continue; }
113
- globals.__updated___51448 = (false);
114
- s.tmp_0 = pause__P51279_mk(s);
113
+ globals.__updated___51341 = (false);
114
+ s.tmp_0 = pause__P51171_mk(s);
115
115
  s.tmp_0.arg0 = 200;
116
116
  s.callLocIdx = 2; s.pc = 5; return s.tmp_0;
117
117
  case 5:
118
118
  r0 = s.retval;
119
- r0 = pxsim_numops_toBoolDecr(globals.__updated___51448);
119
+ r0 = pxsim_numops_toBoolDecr(globals.__updated___51341);
120
120
  s.tmp_1 = r0;
121
121
  r0 = pxsim_Boolean__bang(s.tmp_1);
122
122
  s.tmp_0 = r0;
123
123
  r0 = pxsim_numops_toBoolDecr(s.tmp_0);
124
124
  if (!r0) { step = 2; continue; }
125
- s.tmp_2 = control___screen_update__P51449_mk(s);
125
+ s.tmp_2 = control___screen_update__P51342_mk(s);
126
126
  s.callLocIdx = 3; s.pc = 6; return s.tmp_2;
127
127
  case 6:
128
128
  r0 = s.retval;
129
- globals.__updated___51448 = (true);
129
+ globals.__updated___51341 = (true);
130
130
  case 2:
131
131
  case 3:
132
132
  { step = 1; continue; }
@@ -135,12 +135,12 @@ switch (step) {
135
135
  return leave(s, r0)
136
136
  default: oops()
137
137
  } } }
138
- control___screen_inline__P51453.info = {"start":396,"length":211,"line":17,"column":26,"endLine":26,"endColumn":5,"fileName":"frame.ts","functionName":"inline","argumentNames":[]}
138
+ control___screen_inline__P51346.info = {"start":396,"length":211,"line":17,"column":26,"endLine":26,"endColumn":5,"fileName":"frame.ts","functionName":"inline","argumentNames":[]}
139
139
 
140
- function control___screen_inline__P51453_mk(s) {
140
+ function control___screen_inline__P51346_mk(s) {
141
141
  checkStack(s.depth);
142
142
  return {
143
- parent: s, fn: control___screen_inline__P51453, depth: s.depth + 1,
143
+ parent: s, fn: control___screen_inline__P51346, depth: s.depth + 1,
144
144
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
145
145
  tmp_0: undefined,
146
146
  tmp_1: undefined,
@@ -151,7 +151,7 @@ function control___screen_inline__P51453_mk(s) {
151
151
 
152
152
 
153
153
 
154
- function _screen_internal_inline__P51481(s) {
154
+ function _screen_internal_inline__P51374(s) {
155
155
  let r0 = s.r0, step = s.pc;
156
156
  s.pc = -1;
157
157
 
@@ -161,17 +161,17 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
161
161
  switch (step) {
162
162
  case 0:
163
163
 
164
- r0 = pxsim_pxtcore.updateScreen(globals.screen___51476);
164
+ r0 = pxsim_pxtcore.updateScreen(globals.screen___51369);
165
165
  r0 = undefined;
166
166
  return leave(s, r0)
167
167
  default: oops()
168
168
  } } }
169
- _screen_internal_inline__P51481.info = {"start":327,"length":26,"line":8,"column":33,"endLine":8,"endColumn":59,"fileName":"targetoverrides.ts","functionName":"inline","argumentNames":[]}
169
+ _screen_internal_inline__P51374.info = {"start":327,"length":26,"line":8,"column":33,"endLine":8,"endColumn":59,"fileName":"targetoverrides.ts","functionName":"inline","argumentNames":[]}
170
170
 
171
- function _screen_internal_inline__P51481_mk(s) {
171
+ function _screen_internal_inline__P51374_mk(s) {
172
172
  checkStack(s.depth);
173
173
  return {
174
- parent: s, fn: _screen_internal_inline__P51481, depth: s.depth + 1,
174
+ parent: s, fn: _screen_internal_inline__P51374, depth: s.depth + 1,
175
175
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
176
176
  } }
177
177
 
@@ -179,7 +179,7 @@ function _screen_internal_inline__P51481_mk(s) {
179
179
 
180
180
 
181
181
 
182
- function _screen_internal_inline__P51486(s) {
182
+ function _screen_internal_inline__P51379(s) {
183
183
  let r0 = s.r0, step = s.pc;
184
184
  s.pc = -1;
185
185
 
@@ -198,12 +198,12 @@ switch (step) {
198
198
  return leave(s, r0)
199
199
  default: oops()
200
200
  } } }
201
- _screen_internal_inline__P51486.info = {"start":390,"length":56,"line":9,"column":35,"endLine":11,"endColumn":5,"fileName":"targetoverrides.ts","functionName":"inline","argumentNames":["msg"]}
201
+ _screen_internal_inline__P51379.info = {"start":390,"length":56,"line":9,"column":35,"endLine":11,"endColumn":5,"fileName":"targetoverrides.ts","functionName":"inline","argumentNames":["msg"]}
202
202
 
203
- function _screen_internal_inline__P51486_mk(s) {
203
+ function _screen_internal_inline__P51379_mk(s) {
204
204
  checkStack(s.depth);
205
205
  return {
206
- parent: s, fn: _screen_internal_inline__P51486, depth: s.depth + 1,
206
+ parent: s, fn: _screen_internal_inline__P51379, depth: s.depth + 1,
207
207
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
208
208
  arg0: undefined,
209
209
  } }
@@ -212,7 +212,7 @@ function _screen_internal_inline__P51486_mk(s) {
212
212
 
213
213
 
214
214
 
215
- function control___screen_setupUpdate__P51450(s) {
215
+ function control___screen_setupUpdate__P51343(s) {
216
216
  let r0 = s.r0, step = s.pc;
217
217
  s.pc = -1;
218
218
 
@@ -226,8 +226,8 @@ switch (step) {
226
226
  s.arg0 = (s.lambdaArgs[0]);
227
227
  s.lambdaArgs = null;
228
228
  }
229
- globals.__updated___51448 = (true);
230
- globals.__update___51446 = (s.arg0);
229
+ globals.__updated___51341 = (true);
230
+ globals.__update___51339 = (s.arg0);
231
231
  s.tmp_0 = lambda_1_mk(s);
232
232
  s.tmp_0.argL = s.arg0;
233
233
  setupLambda(s.tmp_0, s.tmp_0.argL);
@@ -238,12 +238,12 @@ switch (step) {
238
238
  return leave(s, r0)
239
239
  default: oops()
240
240
  } } }
241
- control___screen_setupUpdate__P51450.info = {"start":198,"length":125,"line":10,"column":4,"endLine":14,"endColumn":5,"fileName":"frame.ts","functionName":"setupUpdate","argumentNames":["update"]}
241
+ control___screen_setupUpdate__P51343.info = {"start":198,"length":125,"line":10,"column":4,"endLine":14,"endColumn":5,"fileName":"frame.ts","functionName":"setupUpdate","argumentNames":["update"]}
242
242
 
243
- function control___screen_setupUpdate__P51450_mk(s) {
243
+ function control___screen_setupUpdate__P51343_mk(s) {
244
244
  checkStack(s.depth);
245
245
  return {
246
- parent: s, fn: control___screen_setupUpdate__P51450, depth: s.depth + 1,
246
+ parent: s, fn: control___screen_setupUpdate__P51343, depth: s.depth + 1,
247
247
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
248
248
  tmp_0: undefined,
249
249
  arg0: undefined,
@@ -253,7 +253,7 @@ function control___screen_setupUpdate__P51450_mk(s) {
253
253
 
254
254
 
255
255
 
256
- function control___screen_update__P51449(s) {
256
+ function control___screen_update__P51342(s) {
257
257
  let r0 = s.r0, step = s.pc;
258
258
  s.pc = -1;
259
259
 
@@ -263,27 +263,27 @@ if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) re
263
263
  switch (step) {
264
264
  case 0:
265
265
 
266
- r0 = pxsim_numops_toBoolDecr(globals.__update___51446);
266
+ r0 = pxsim_numops_toBoolDecr(globals.__update___51339);
267
267
  if (!r0) { step = 1; continue; }
268
268
  s.tmp_0 = lambda_1_mk(s);
269
- s.tmp_0.argL = globals.__update___51446;
269
+ s.tmp_0.argL = globals.__update___51339;
270
270
  setupLambda(s.tmp_0, s.tmp_0.argL);
271
271
  s.callLocIdx = 0; s.pc = 3; return s.tmp_0;
272
272
  case 3:
273
273
  r0 = s.retval;
274
274
  case 1:
275
275
  case 2:
276
- globals.__updated___51448 = (true);
276
+ globals.__updated___51341 = (true);
277
277
  r0 = undefined;
278
278
  return leave(s, r0)
279
279
  default: oops()
280
280
  } } }
281
- control___screen_update__P51449.info = {"start":90,"length":102,"line":4,"column":4,"endLine":8,"endColumn":5,"fileName":"frame.ts","functionName":"update","argumentNames":[]}
281
+ control___screen_update__P51342.info = {"start":90,"length":102,"line":4,"column":4,"endLine":8,"endColumn":5,"fileName":"frame.ts","functionName":"update","argumentNames":[]}
282
282
 
283
- function control___screen_update__P51449_mk(s) {
283
+ function control___screen_update__P51342_mk(s) {
284
284
  checkStack(s.depth);
285
285
  return {
286
- parent: s, fn: control___screen_update__P51449, depth: s.depth + 1,
286
+ parent: s, fn: control___screen_update__P51342, depth: s.depth + 1,
287
287
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
288
288
  tmp_0: undefined,
289
289
  } }
@@ -292,7 +292,7 @@ function control___screen_update__P51449_mk(s) {
292
292
 
293
293
 
294
294
 
295
- function pause__P51279(s) {
295
+ function pause__P51171(s) {
296
296
  let r0 = s.r0, step = s.pc;
297
297
  s.pc = -1;
298
298
 
@@ -316,12 +316,12 @@ switch (step) {
316
316
  return leave(s, r0)
317
317
  default: oops()
318
318
  } } }
319
- pause__P51279.info = {"start":246,"length":57,"line":7,"column":0,"endLine":9,"endColumn":1,"fileName":"pxt_modules/base/pause.ts","functionName":"pause","argumentNames":["ms"]}
319
+ pause__P51171.info = {"start":246,"length":57,"line":7,"column":0,"endLine":9,"endColumn":1,"fileName":"pxt_modules/base/pause.ts","functionName":"pause","argumentNames":["ms"]}
320
320
 
321
- function pause__P51279_mk(s) {
321
+ function pause__P51171_mk(s) {
322
322
  checkStack(s.depth);
323
323
  return {
324
- parent: s, fn: pause__P51279, depth: s.depth + 1,
324
+ parent: s, fn: pause__P51171, depth: s.depth + 1,
325
325
  pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null,
326
326
  arg0: undefined,
327
327
  } }
@@ -343,7 +343,7 @@ function lambda_1_mk(s) {
343
343
  } }
344
344
 
345
345
 
346
- const breakpoints = setupDebugger(1, ["__updated___51448","screen___51476","__update___51446"])
346
+ const breakpoints = setupDebugger(1, ["__updated___51341","screen___51369","__update___51339"])
347
347
 
348
- return _main___P50959
348
+ return _main___P50851
349
349
  })
@@ -90,6 +90,7 @@ namespace images {
90
90
  //% image.fieldOptions.decompileIndirectFixedInstances="true"
91
91
  //% image.fieldOptions.decompileArgumentAsString="true"
92
92
  //% weight=0 group="Create"
93
+ //% deprecated
93
94
  //% help=images/image
94
95
  export function _image(image: Image): Image {
95
96
  return image;
@@ -5,6 +5,7 @@ interface Image {
5
5
  */
6
6
  //% helper=imageFillRect blockNamespace="images" inlineInputMode="inline" group="Drawing"
7
7
  //% block="fill rectangle in %picture=variables_get at x %x y %y width %w height %h %c=colorindexpicker"
8
+ //% picture.defl="picture"
8
9
  //% help=images/image/fill-rect
9
10
  fillRect(x: number, y: number, w: number, h: number, c: color): void;
10
11
 
@@ -19,6 +20,7 @@ interface Image {
19
20
  */
20
21
  //% helper=imageDrawLine blockNamespace="images" inlineInputMode="inline" group="Drawing"
21
22
  //% block="draw line in %picture=variables_get from x %x0 y %y0 to x %x1 y %y1 %c=colorindexpicker"
23
+ //% picture.defl="picture"
22
24
  //% help=images/image/draw-line
23
25
  drawLine(x0: number, y0: number, x1: number, y1: number, c: color): void;
24
26
 
@@ -27,6 +29,7 @@ interface Image {
27
29
  */
28
30
  //% helper=imageDrawRect blockNamespace="images" inlineInputMode="inline" group="Drawing"
29
31
  //% block="draw rectangle in %picture=variables_get at x %x y %y width %w height %h %c=colorindexpicker"
32
+ //% picture.defl="picture"
30
33
  //% help=images/image/draw-rect
31
34
  drawRect(x: number, y: number, w: number, h: number, c: color): void;
32
35
 
@@ -35,6 +38,7 @@ interface Image {
35
38
  */
36
39
  //% shim=ImageMethods::setPixel blockNamespace="images" group="Drawing"
37
40
  //% block="set %picture=variables_get color at x %x y %y to %c=colorindexpicker"
41
+ //% picture.defl="picture"
38
42
  //% help=images/image/set-pixel
39
43
  setPixel(x: int32, y: int32, c: int32): void;
40
44
 
@@ -43,6 +47,7 @@ interface Image {
43
47
  */
44
48
  //% shim=ImageMethods::getPixel blockNamespace="images" group="Drawing"
45
49
  //% block="%picture=variables_get color at x %x y %y"
50
+ //% picture.defl="picture"
46
51
  //% help=images/image/get-pixel
47
52
  getPixel(x: int32, y: int32): int32;
48
53
 
@@ -51,6 +56,7 @@ interface Image {
51
56
  */
52
57
  //% shim=ImageMethods::fill blockNamespace="images" group="Drawing"
53
58
  //% block="fill %picture=variables_get with %c=colorindexpicker"
59
+ //% picture.defl="picture"
54
60
  //% help=images/image/fill
55
61
  fill(c: int32): void;
56
62
 
@@ -59,6 +65,7 @@ interface Image {
59
65
  */
60
66
  //% shim=ImageMethods::clone blockNamespace="images" group="Create"
61
67
  //% block="clone %picture=variables_get"
68
+ //% picture.defl="picture"
62
69
  //% help=images/image/clone
63
70
  clone(): Image;
64
71
 
@@ -67,6 +74,7 @@ interface Image {
67
74
  */
68
75
  //% shim=ImageMethods::flipX blockNamespace="images" group="Transformations"
69
76
  //% block="flip %picture=variables_get horizontally"
77
+ //% picture.defl="picture"
70
78
  //% help=images/image/flip-x
71
79
  flipX(): void;
72
80
 
@@ -75,6 +83,7 @@ interface Image {
75
83
  */
76
84
  //% shim=ImageMethods::flipY blockNamespace="images" group="Transformations"
77
85
  //% block="flip %picture=variables_get vertically"
86
+ //% picture.defl="picture"
78
87
  //% help=images/image/flip-y
79
88
  flipY(): void;
80
89
 
@@ -90,6 +99,7 @@ interface Image {
90
99
  */
91
100
  //% shim=ImageMethods::replace blockNamespace="images" group="Transformations"
92
101
  //% block="change color in %picture=variables_get from %from=colorindexpicker to %to=colorindexpicker"
102
+ //% picture.defl="picture"
93
103
  //% help=images/image/replace
94
104
  replace(from: int32, to: int32): void;
95
105
 
@@ -111,6 +121,20 @@ interface Image {
111
121
 
112
122
  //% shim=ImageMethods::revision
113
123
  revision(): number;
124
+
125
+ /**
126
+ * Draw given image with transparent background on the current image
127
+ */
128
+ //% shim=ImageMethods::drawTransparentImage
129
+ //% blockNamespace="images"
130
+ //% blockId=image_draw_transparent_image
131
+ //% group="Drawing"
132
+ //% block="$this draw $from at x $x y $y"
133
+ //% this.shadow=variables_get
134
+ //% this.defl="picture"
135
+ //% from.shadow=screen_image_picker
136
+ //% weight=0
137
+ drawTransparentImage(from: Image, x: int32, y: int32): void;
114
138
  }
115
139
 
116
140
  declare namespace image {