UNPKG

pxt-common-packages

Version:
1,752 lines (1,587 loc) 81.4 kB
// total=81381 new=93.96% cached=0.00% other=6.04% (function (ectx) { 'use strict'; const runtime = ectx.runtime; const oops = ectx.oops; const doNothing = ectx.doNothing; const pxsim = ectx.pxsim; const globals = ectx.globals; const maybeYield = ectx.maybeYield; const setupDebugger = ectx.setupDebugger; const isBreakFrame = ectx.isBreakFrame; const breakpoint = ectx.breakpoint; const trace = ectx.trace; const checkStack = ectx.checkStack; const leave = ectx.leave; const checkResumeConsumed = ectx.checkResumeConsumed; const setupResume = ectx.setupResume; const setupLambda = ectx.setupLambda; const checkSubtype = ectx.checkSubtype; const failedCast = ectx.failedCast; const buildResume = ectx.buildResume; const mkVTable = ectx.mkVTable; const bind = ectx.bind; const leaveAccessor = ectx.leaveAccessor; const __this = runtime; const pxtrt = pxsim.pxtrt; let yieldSteps = 1; ectx.setupYield(function() { yieldSteps = 100; }) pxsim.setTitle("esp32"); pxsim.setConfigData({}, {}); pxtrt.mapKeyNames = [ "", "_busy", "_controller", "_cs", "_gpio0", "_isConnected", "_locked", "_reset", "_socknum_ll", "_spi", "eventID", "factory", "lastScanResults", "onConnectSSIDFailed", "reconnectRunning", "reset", "spiTransfer", "wasConnected" ]; __this.setupPerfCounters([]); const pxsim_Array__getAt = pxsim.Array_.getAt; const pxsim_Array__length = pxsim.Array_.length; const pxsim_Array__mk = pxsim.Array_.mk; const pxsim_Array__push = pxsim.Array_.push; const pxsim_Boolean__bang = pxsim.Boolean_.bang; const pxsim_String__concat = pxsim.String_.concat; const pxsim_String__stringConv = pxsim.String_.stringConv; const pxsim_numops_toBool = pxsim.numops.toBool; const pxsim_numops_toBoolDecr = pxsim.numops.toBoolDecr; const pxsim_pxtcore_mkAction = pxsim.pxtcore.mkAction; const pxsim_pxtcore_mkClassInstance = pxsim.pxtcore.mkClassInstance; const pxsim_pxtrt_ldlocRef = pxsim.pxtrt.ldlocRef; const pxsim_pxtrt_mapGetByString = pxsim.pxtrt.mapGetByString; const pxsim_pxtrt_stclo = pxsim.pxtrt.stclo; const pxsim_pxtrt_stlocRef = pxsim.pxtrt.stlocRef; const pxsim_Boolean_ = pxsim.Boolean_; const pxsim_pxtcore = pxsim.pxtcore; const pxsim_String_ = pxsim.String_; const pxsim_ImageMethods = pxsim.ImageMethods; const pxsim_Array_ = pxsim.Array_; const pxsim_pxtrt = pxsim.pxtrt; const pxsim_numops = pxsim.numops; function _main___P108084(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: globals._evSource___108313 = (32768); globals._intervals___108328 = (undefined); globals._pollEventQueue___108341 = (undefined); globals.minPriority___108347 = (1); r0 = pxsim_Array__mk(); s.tmp_0 = r0; r0 = pxsim_Array__push(s.tmp_0, listeners_inline__P108348); globals.listeners___108349 = (s.tmp_0); globals.RUN_KEY___108518 = ("#run"); globals.SCOPE_KEY___108519 = ("#scope"); s.tmp_0 = settings_initScopes__P108531_mk(s); s.callLocIdx = 22; s.pc = 1; return s.tmp_0; case 1: r0 = s.retval; globals.logPriority___108623 = (-1); r0 = pxsim_pxtcore_mkClassInstance(net_Net__C108633_VT); s.tmp_0 = r0; s.tmp_1 = net_Net_constructor__P108638_mk(s); s.tmp_1.arg0 = s.tmp_0; s.tmp_1.arg1 = esp32_defaultController__P108673; s.callLocIdx = 36; s.pc = 2; return s.tmp_1; case 2: r0 = s.retval; r0 = undefined; return leave(s, r0) default: oops() } } } _main___P108084.info = {"start":0,"length":0,"line":0,"column":0,"endLine":0,"endColumn":0,"fileName":"ninacontroller.ts","functionName":"<main>","argumentNames":[]} _main___P108084.continuations = [ ] function _main___P108084_mk(s) { checkStack(s.depth); return { parent: s, fn: _main___P108084, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, } } function esp32_defaultController__P108673(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.cs___108861 = undefined; s.busy___108866 = undefined; s.reset___108871 = undefined; s.gpio0___108876 = undefined; s.mosi___108892 = undefined; s.miso___108897 = undefined; s.sck___108902 = undefined; s.spi___108907 = undefined; r0 = pxsim_numops_toBoolDecr(globals._defaultController___108672); if (!r0) { step = 1; continue; } r0 = globals._defaultController___108672; { step = 29; continue; } case 1: case 2: r0 = pxsim.pins.pinByCfg(87); s.cs___108861 = (r0); r0 = pxsim.pins.pinByCfg(88); s.busy___108866 = (r0); r0 = pxsim.pins.pinByCfg(89); s.reset___108871 = (r0); r0 = pxsim.pins.pinByCfg(90); s.gpio0___108876 = (r0); r0 = pxsim_numops_toBoolDecr(s.cs___108861); s.tmp_3 = r0; r0 = pxsim_Boolean__bang(s.tmp_3); s.tmp_2 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_2); s.tmp_1 = r0; r0 = pxsim_Boolean__bang(s.tmp_1); s.tmp_0 = r0; r0 = pxsim_numops_toBool(s.tmp_0); if (r0) { step = 3; continue; } r0 = s.tmp_0; { step = 4; continue; } case 3: r0 = pxsim_numops_toBoolDecr(s.busy___108866); s.tmp_6 = r0; r0 = pxsim_Boolean__bang(s.tmp_6); s.tmp_5 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_5); s.tmp_4 = r0; r0 = pxsim_Boolean__bang(s.tmp_4); case 4: // jmp value (already in r0) s.tmp_7 = r0; r0 = pxsim_numops_toBool(s.tmp_7); if (r0) { step = 5; continue; } r0 = s.tmp_7; { step = 6; continue; } case 5: r0 = pxsim_numops_toBoolDecr(s.reset___108871); s.tmp_10 = r0; r0 = pxsim_Boolean__bang(s.tmp_10); s.tmp_9 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_9); s.tmp_8 = r0; r0 = pxsim_Boolean__bang(s.tmp_8); case 6: // jmp value (already in r0) s.tmp_11 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_11); if (!r0) { step = 21; continue; } r0 = pxsim.pins.pinByCfg(82); s.mosi___108892 = (r0); r0 = pxsim.pins.pinByCfg(83); s.miso___108897 = (r0); r0 = pxsim.pins.pinByCfg(84); s.sck___108902 = (r0); r0 = pxsim_numops_toBoolDecr(s.mosi___108892); s.tmp_1 = r0; r0 = pxsim_Boolean__bang(s.tmp_1); s.tmp_0 = r0; r0 = pxsim_numops_toBool(s.tmp_0); if (r0) { step = 7; continue; } r0 = s.tmp_0; { step = 8; continue; } case 7: r0 = pxsim_numops_toBoolDecr(s.miso___108897); s.tmp_2 = r0; r0 = pxsim_Boolean__bang(s.tmp_2); case 8: // jmp value (already in r0) s.tmp_3 = r0; r0 = pxsim_numops_toBool(s.tmp_3); if (r0) { step = 9; continue; } r0 = s.tmp_3; { step = 10; continue; } case 9: r0 = pxsim_numops_toBoolDecr(s.sck___108902); s.tmp_4 = r0; r0 = pxsim_Boolean__bang(s.tmp_4); case 10: // jmp value (already in r0) s.tmp_5 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_5); if (!r0) { step = 11; continue; } s.tmp_6 = pins_spi__P108460_mk(s); s.callLocIdx = 31; s.pc = 30; return s.tmp_6; case 30: r0 = s.retval; s.spi___108907 = (r0); { step = 18; continue; } case 11: s.tmp_0 = r0 = s.mosi___108892; r0 = pxsim_numops_toBool(s.tmp_0); if (r0) { step = 12; continue; } r0 = s.tmp_0; { step = 13; continue; } case 12: r0 = s.miso___108897; case 13: // jmp value (already in r0) s.tmp_1 = r0; r0 = pxsim_numops_toBool(s.tmp_1); if (r0) { step = 14; continue; } r0 = s.tmp_1; { step = 15; continue; } case 14: r0 = s.sck___108902; case 15: // jmp value (already in r0) s.tmp_2 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_2); if (!r0) { step = 16; continue; } r0 = pxsim.pins.createSPI(s.mosi___108892, s.miso___108897, s.sck___108902); s.spi___108907 = (r0); { step = 17; continue; } case 16: s.tmp_0 = net_log__P108624_mk(s); s.tmp_0.arg0 = "esp32 spi configuration error"; s.callLocIdx = 32; s.pc = 31; return s.tmp_0; case 31: r0 = s.retval; r0 = pxsim_pxtrt.panic(90); case 17: case 18: r0 = pxsim_numops_toBoolDecr(s.spi___108907); if (!r0) { step = 19; continue; } r0 = pxsim_pxtcore_mkClassInstance(esp32_NinaController__C108808_VT); s.tmp_0 = r0; s.tmp_1 = esp32_NinaController_constructor__P108857_mk(s); s.tmp_1.arg0 = s.tmp_0; s.tmp_1.arg1 = s.spi___108907; s.tmp_1.arg2 = s.cs___108861; s.tmp_1.arg3 = s.busy___108866; s.tmp_1.arg4 = s.reset___108871; s.tmp_1.arg5 = s.gpio0___108876; s.callLocIdx = 33; s.pc = 32; return s.tmp_1; case 32: r0 = s.retval; globals._defaultController___108672 = (s.tmp_0); r0 = s.tmp_0; { step = 29; continue; } case 19: case 20: { step = 28; continue; } case 21: r0 = pxsim_numops_toBoolDecr(s.cs___108861); s.tmp_3 = r0; r0 = pxsim_Boolean__bang(s.tmp_3); s.tmp_2 = r0; r0 = pxsim_numops_toBool(s.tmp_2); if (r0) { step = 22; continue; } r0 = s.tmp_2; { step = 23; continue; } case 22: r0 = pxsim_numops_toBoolDecr(s.busy___108866); s.tmp_4 = r0; r0 = pxsim_Boolean__bang(s.tmp_4); case 23: // jmp value (already in r0) s.tmp_5 = r0; r0 = pxsim_numops_toBool(s.tmp_5); if (r0) { step = 24; continue; } r0 = s.tmp_5; { step = 25; continue; } case 24: r0 = pxsim_numops_toBoolDecr(s.reset___108871); s.tmp_6 = r0; r0 = pxsim_Boolean__bang(s.tmp_6); case 25: // jmp value (already in r0) s.tmp_7 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_7); if (!r0) { step = 26; continue; } r0 = undefined; { step = 29; continue; } { step = 27; continue; } case 26: s.tmp_8 = net_log__P108624_mk(s); s.tmp_8.arg0 = "esp32 partially configured"; s.callLocIdx = 34; s.pc = 33; return s.tmp_8; case 33: r0 = s.retval; r0 = pxsim_pxtrt.panic(90); case 27: case 28: s.tmp_0 = net_log__P108624_mk(s); s.tmp_0.arg0 = "esp32 configuration error"; s.callLocIdx = 35; s.pc = 34; return s.tmp_0; case 34: r0 = s.retval; r0 = pxsim_pxtrt.panic(90); r0 = undefined; case 29: return leave(s, r0) default: oops() } } } esp32_defaultController__P108673.info = {"start":66,"length":2003,"line":2,"column":4,"endLine":49,"endColumn":5,"fileName":"net.ts","functionName":"defaultController","argumentNames":[]} function esp32_defaultController__P108673_mk(s) { checkStack(s.depth); return { parent: s, fn: esp32_defaultController__P108673, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, tmp_3: undefined, tmp_4: undefined, tmp_5: undefined, tmp_6: undefined, tmp_7: undefined, tmp_8: undefined, tmp_9: undefined, tmp_10: undefined, tmp_11: undefined, cs___108861: undefined, busy___108866: undefined, reset___108871: undefined, gpio0___108876: undefined, mosi___108892: undefined, miso___108897: undefined, sck___108902: undefined, spi___108907: undefined, } } function esp32_NinaController_constructor__P108857(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.arg2 = (s.lambdaArgs[2]); s.arg3 = (s.lambdaArgs[3]); s.arg4 = (s.lambdaArgs[4]); s.arg5 = (s.lambdaArgs[5]); s.lambdaArgs = null; } r0 = s.arg0; if (!checkSubtype(r0, esp32_NinaController__C108808_VT)) failedCast(r0, esp32_NinaController__C108808_VT); r0 = (s.arg0).fields["_spi"] = (s.arg1); r0 = (s.arg0).fields["_cs"] = (s.arg2); r0 = (s.arg0).fields["_busy"] = (s.arg3); r0 = (s.arg0).fields["_reset"] = (s.arg4); r0 = (s.arg0).fields["_gpio0"] = (s.arg5); r0 = (s.arg0).fields["_isConnected"] = (false); s.tmp_0 = net_Controller_constructor__P108594_mk(s); s.tmp_0.arg0 = s.arg0; s.callLocIdx = 37; s.pc = 1; return s.tmp_0; case 1: r0 = s.retval; r0 = s.arg0.fields["_busy"]; s.tmp_0 = r0; r0 = pxsim.DigitalInOutPinMethods.setPull(s.tmp_0, 0); r0 = s.arg0.fields["_busy"]; s.tmp_0 = r0; r0 = pxsim.DigitalInOutPinMethods.digitalRead(s.tmp_0); r0 = pxsim_Array__mk(); s.tmp_0 = r0; s.tmp_2 = esp32_buffer1__P108807_mk(s); s.tmp_2.arg0 = 0; s.callLocIdx = 38; s.pc = 2; return s.tmp_2; case 2: r0 = s.retval; s.tmp_1 = r0; r0 = pxsim_Array__push(s.tmp_0, s.tmp_1); r0 = (s.arg0).fields["_socknum_ll"] = (s.tmp_0); r0 = s.arg0.fields["_spi"]; s.tmp_0 = r0; r0 = pxsim.SPIMethods.setFrequency(s.tmp_0, 8000000); s.tmp_0 = esp32_NinaController_reset__P108810_mk(s); s.tmp_0.arg0 = s.arg0; s.callLocIdx = 39; s.pc = 3; return s.tmp_0; case 3: r0 = s.retval; r0 = (s.arg0).fields["_locked"] = (false); r0 = undefined; return leave(s, r0) default: oops() } } } esp32_NinaController_constructor__P108857.info = {"start":2637,"length":644,"line":80,"column":8,"endLine":96,"endColumn":9,"fileName":"ninacontroller.ts","functionName":"inline","argumentNames":["this","_spi","_cs","_busy","_reset","_gpio0"]} function esp32_NinaController_constructor__P108857_mk(s) { checkStack(s.depth); return { parent: s, fn: esp32_NinaController_constructor__P108857, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, arg0: undefined, arg1: undefined, arg2: undefined, arg3: undefined, arg4: undefined, arg5: undefined, } } function esp32_NinaController_reset__P108810(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.lambdaArgs = null; } r0 = s.arg0; if (!checkSubtype(r0, esp32_NinaController__C108808_VT)) failedCast(r0, esp32_NinaController__C108808_VT); r0 = s.arg0.fields["_gpio0"]; s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 1; continue; } r0 = s.arg0.fields["_gpio0"]; s.tmp_1 = r0; r0 = pxsim.DigitalInOutPinMethods.digitalWrite(s.tmp_1, true); case 1: case 2: r0 = s.arg0.fields["_cs"]; s.tmp_0 = r0; r0 = pxsim.DigitalInOutPinMethods.digitalWrite(s.tmp_0, true); r0 = s.arg0.fields["_reset"]; s.tmp_0 = r0; r0 = pxsim.DigitalInOutPinMethods.digitalWrite(s.tmp_0, false); s.tmp_0 = pause__P108405_mk(s); s.tmp_0.arg0 = 10; s.callLocIdx = 40; s.pc = 5; return s.tmp_0; case 5: r0 = s.retval; r0 = s.arg0.fields["_reset"]; s.tmp_0 = r0; r0 = pxsim.DigitalInOutPinMethods.digitalWrite(s.tmp_0, true); s.tmp_0 = pause__P108405_mk(s); s.tmp_0.arg0 = 750; s.callLocIdx = 41; s.pc = 6; return s.tmp_0; case 6: r0 = s.retval; r0 = s.arg0.fields["_gpio0"]; s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 3; continue; } r0 = s.arg0.fields["_gpio0"]; s.tmp_1 = r0; r0 = pxsim.DigitalInOutPinMethods.digitalRead(s.tmp_1); case 3: case 4: s.tmp_0 = esp32_NinaController_spiTransfer__P108816_mk(s); s.tmp_0.arg0 = s.arg0; r0 = pxsim.control.createBuffer(1); s.tmp_0.arg1 = r0; s.tmp_0.arg2 = null; s.callLocIdx = 42; s.pc = 7; return s.tmp_0; case 7: r0 = s.retval; s.tmp_0 = net_log__P108624_mk(s); s.tmp_0.arg0 = "reseted esp32"; s.callLocIdx = 43; s.pc = 8; return s.tmp_0; case 8: r0 = s.retval; r0 = undefined; return leave(s, r0) default: oops() } } } esp32_NinaController_reset__P108810.info = {"start":3368,"length":574,"line":101,"column":8,"endLine":116,"endColumn":9,"fileName":"ninacontroller.ts","functionName":"reset","argumentNames":["this"]} function esp32_NinaController_reset__P108810_mk(s) { checkStack(s.depth); return { parent: s, fn: esp32_NinaController_reset__P108810, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, arg0: undefined, } } function esp32_NinaController_spiTransfer__P108816(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.arg2 = (s.lambdaArgs[2]); s.lambdaArgs = null; } r0 = s.arg0; if (!checkSubtype(r0, esp32_NinaController__C108808_VT)) failedCast(r0, esp32_NinaController__C108808_VT); r0 = pxsim_numops_toBoolDecr(s.arg1); s.tmp_1 = r0; r0 = pxsim_Boolean__bang(s.tmp_1); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 1; continue; } r0 = pxsim.BufferMethods.length(s.arg2); s.tmp_2 = r0; r0 = pxsim.control.createBuffer(s.tmp_2); s.arg1 = (r0); case 1: case 2: r0 = pxsim_numops_toBoolDecr(s.arg2); s.tmp_1 = r0; r0 = pxsim_Boolean__bang(s.tmp_1); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 3; continue; } r0 = pxsim.BufferMethods.length(s.arg1); s.tmp_2 = r0; r0 = pxsim.control.createBuffer(s.tmp_2); s.arg2 = (r0); case 3: case 4: r0 = s.arg0.fields["_spi"]; s.tmp_0 = r0; r0 = pxsim.SPIMethods.transfer(s.tmp_0, s.arg1, s.arg2); r0 = undefined; return leave(s, r0) default: oops() } } } esp32_NinaController_spiTransfer__P108816.info = {"start":6899,"length":211,"line":207,"column":8,"endLine":211,"endColumn":9,"fileName":"ninacontroller.ts","functionName":"spiTransfer","argumentNames":["this","tx","rx"]} function esp32_NinaController_spiTransfer__P108816_mk(s) { checkStack(s.depth); return { parent: s, fn: esp32_NinaController_spiTransfer__P108816, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, arg0: undefined, arg1: undefined, arg2: undefined, } } function pause__P108405(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.lambdaArgs = null; } setupResume(s, 1); pxsim.loops.pause(s.arg0); checkResumeConsumed(); return; case 1: r0 = s.retval; r0 = undefined; return leave(s, r0) default: oops() } } } pause__P108405.info = {"start":246,"length":57,"line":7,"column":0,"endLine":9,"endColumn":1,"fileName":"pxt_modules/base/pause.ts","functionName":"pause","argumentNames":["ms"]} function pause__P108405_mk(s) { checkStack(s.depth); return { parent: s, fn: pause__P108405, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, arg0: undefined, } } function esp32_buffer1__P108807(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.b___109058 = undefined; if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.lambdaArgs = null; } r0 = pxsim.control.createBuffer(1); s.b___109058 = (r0); r0 = pxsim.BufferMethods.setByte(s.b___109058, 0, s.arg0); r0 = s.b___109058; return leave(s, r0) default: oops() } } } esp32_buffer1__P108807.info = {"start":2344,"length":113,"line":68,"column":4,"endLine":72,"endColumn":5,"fileName":"ninacontroller.ts","functionName":"buffer1","argumentNames":["ch"]} function esp32_buffer1__P108807_mk(s) { checkStack(s.depth); return { parent: s, fn: esp32_buffer1__P108807, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, b___109058: undefined, arg0: undefined, } } function net_Controller_constructor__P108594(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.lambdaArgs = null; } r0 = s.arg0; if (!checkSubtype(r0, net_Controller__C108564_VT)) failedCast(r0, net_Controller__C108564_VT); r0 = (s.arg0).fields["_isConnected"] = (false); s.tmp_0 = r0 = s.arg0; s.tmp_2 = control_allocateEventSource__P108314_mk(s); s.callLocIdx = 29; s.pc = 1; return s.tmp_2; case 1: r0 = s.retval; s.tmp_1 = r0; r0 = (s.tmp_0).fields["eventID"] = (s.tmp_1); r0 = undefined; return leave(s, r0) default: oops() } } } net_Controller_constructor__P108594.info = {"start":415,"length":82,"line":17,"column":8,"endLine":19,"endColumn":9,"fileName":"pxt_modules/net/controller.ts","functionName":"inline","argumentNames":["this"]} function net_Controller_constructor__P108594_mk(s) { checkStack(s.depth); return { parent: s, fn: net_Controller_constructor__P108594, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, arg0: undefined, } } function control_allocateEventSource__P108314(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: r0 = (globals._evSource___108313 + 1); s.tmp_0 = r0; globals._evSource___108313 = (r0); r0 = s.tmp_0; return leave(s, r0) default: oops() } } } control_allocateEventSource__P108314.info = {"start":2528,"length":72,"line":85,"column":4,"endLine":87,"endColumn":5,"fileName":"pxt_modules/base/control.ts","functionName":"allocateEventSource","argumentNames":[]} function control_allocateEventSource__P108314_mk(s) { checkStack(s.depth); return { parent: s, fn: control_allocateEventSource__P108314, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, } } function net_log__P108624(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.lambdaArgs = null; } s.tmp_0 = console_add__P108350_mk(s); s.tmp_0.arg0 = globals.logPriority___108623; if ((s.arg0) && (s.arg0).vtable) { setupResume(s, 2); pxsim_String__stringConv(s.arg0); checkResumeConsumed(); return; } else { s.retval = (s.arg0) + ""; } case 2: r0 = s.retval; s.tmp_1 = r0; r0 = pxsim_String__concat("net:", s.tmp_1); s.tmp_0.arg1 = r0; s.callLocIdx = 30; s.pc = 1; return s.tmp_0; case 1: r0 = s.retval; r0 = undefined; return leave(s, r0) default: oops() } } } net_log__P108624.info = {"start":238,"length":88,"line":11,"column":4,"endLine":13,"endColumn":5,"fileName":"pxt_modules/net/net.ts","functionName":"log","argumentNames":["msg"]} function net_log__P108624_mk(s) { checkStack(s.depth); return { parent: s, fn: net_log__P108624, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, arg0: undefined, } } function console_add__P108350(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.text___109087 = undefined; s.i___109096 = undefined; if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.lambdaArgs = null; } r0 = (s.arg0 < globals.minPriority___108347); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 1; continue; } { step = 5; continue; } case 1: case 2: s.tmp_1 = console_inspect__P108356_mk(s); s.tmp_1.arg0 = s.arg1; s.tmp_1.arg1 = 20; s.callLocIdx = 9; s.pc = 6; return s.tmp_1; case 6: r0 = s.retval; s.text___109087 = (r0); if ((s.text___109087) && (s.text___109087).vtable) { setupResume(s, 7); pxsim_String__stringConv(s.text___109087); checkResumeConsumed(); return; } else { s.retval = (s.text___109087) + ""; } case 7: r0 = s.retval; s.tmp_0 = r0; r0 = pxsim_String__concat(s.tmp_0, "\n"); s.text___109087 = (r0); s.i___109096 = (0); case 3: s.tmp_1 = r0 = s.i___109096; r0 = pxsim_Array__length(globals.listeners___108349); s.tmp_2 = r0; r0 = (s.tmp_1 < s.tmp_2); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 4; continue; } s.tmp_3 = lambda_3_mk(s); r0 = pxsim_Array__getAt(globals.listeners___108349, s.i___109096); s.tmp_3.argL = r0; s.tmp_3.arg0 = s.arg0; s.tmp_3.arg1 = s.text___109087; setupLambda(s.tmp_3, s.tmp_3.argL); s.callLocIdx = 10; s.pc = 8; return s.tmp_3; case 8: r0 = s.retval; r0 = (s.i___109096 + 1); s.i___109096 = (r0); { step = 3; continue; } case 4: case 5: r0 = undefined; return leave(s, r0) default: oops() } } } console_add__P108350.info = {"start":632,"length":317,"line":28,"column":4,"endLine":36,"endColumn":5,"fileName":"pxt_modules/base/console.ts","functionName":"add","argumentNames":["priority","message"]} function console_add__P108350_mk(s) { checkStack(s.depth); return { parent: s, fn: console_add__P108350, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, tmp_3: undefined, text___109087: undefined, i___109096: undefined, arg0: undefined, arg1: undefined, } } function listeners_inline__P108348(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.lambdaArgs = null; } r0 = pxsim.control.__log(s.arg0, s.arg1); r0 = undefined; return leave(s, r0) default: oops() } } } listeners_inline__P108348.info = {"start":534,"length":85,"line":25,"column":8,"endLine":25,"endColumn":93,"fileName":"pxt_modules/base/console.ts","functionName":"inline","argumentNames":["priority","text"]} function listeners_inline__P108348_mk(s) { checkStack(s.depth); return { parent: s, fn: listeners_inline__P108348, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, arg0: undefined, arg1: undefined, } } function console_inspect__P108356(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.asArr___109135 = undefined; s.asString___109155 = undefined; s.keys___109167 = undefined; s.snipped___109171 = undefined; if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.lambdaArgs = null; } r0 = pxsim_pxtcore.typeOf(s.arg0); s.tmp_1 = r0; r0 = (s.tmp_1 == "string"); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 1; continue; } r0 = s.arg0; { step = 17; continue; } { step = 16; continue; } case 1: r0 = pxsim_pxtcore.typeOf(s.arg0); s.tmp_3 = r0; r0 = (s.tmp_3 == "number"); s.tmp_2 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_2); if (!r0) { step = 2; continue; } r0 = pxsim_String_.mkEmpty(); s.tmp_4 = r0; if ((s.arg0) && (s.arg0).vtable) { setupResume(s, 18); pxsim_String__stringConv(s.arg0); checkResumeConsumed(); return; } else { s.retval = (s.arg0) + ""; } case 18: r0 = s.retval; s.tmp_5 = r0; r0 = pxsim_String__concat(s.tmp_4, s.tmp_5); { step = 17; continue; } { step = 15; continue; } case 2: r0 = pxsim_Array_.isArray(s.arg0); s.tmp_6 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_6); if (!r0) { step = 5; continue; } s.asArr___109135 = (s.arg0); r0 = pxsim_Array__length(s.asArr___109135); s.tmp_1 = r0; r0 = (s.tmp_1 <= s.arg1); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 3; continue; } s.tmp_2 = helpers_arrayJoin__P108135_mk(s); s.tmp_2.arg0 = s.asArr___109135; s.tmp_2.arg1 = ","; s.callLocIdx = 11; s.pc = 19; return s.tmp_2; case 19: r0 = s.retval; { step = 17; continue; } { step = 4; continue; } case 3: r0 = pxsim_String_.mkEmpty(); s.tmp_4 = r0; s.tmp_7 = helpers_arrayJoin__P108135_mk(s); s.tmp_8 = helpers_arraySlice__P108149_mk(s); s.tmp_8.arg0 = s.asArr___109135; s.tmp_8.arg1 = 0; s.tmp_8.arg2 = s.arg1; s.callLocIdx = 12; s.pc = 21; return s.tmp_8; case 21: r0 = s.retval; s.tmp_7.arg0 = r0; s.tmp_7.arg1 = ","; s.callLocIdx = 13; s.pc = 20; return s.tmp_7; case 20: r0 = s.retval; s.tmp_6 = r0; if ((s.tmp_6) && (s.tmp_6).vtable) { setupResume(s, 22); pxsim_String__stringConv(s.tmp_6); checkResumeConsumed(); return; } else { s.retval = (s.tmp_6) + ""; } case 22: r0 = s.retval; s.tmp_5 = r0; r0 = pxsim_String__concat(s.tmp_4, s.tmp_5); s.tmp_3 = r0; r0 = pxsim_String__concat(s.tmp_3, "..."); { step = 17; continue; } case 4: { step = 14; continue; } case 5: if ((s.arg0) && (s.arg0).vtable) { setupResume(s, 23); pxsim_String__stringConv(s.arg0); checkResumeConsumed(); return; } else { s.retval = (s.arg0) + ""; } case 23: r0 = s.retval; s.tmp_9 = r0; r0 = pxsim_String_.mkEmpty(); s.tmp_10 = r0; r0 = pxsim_String__concat(s.tmp_9, s.tmp_10); s.asString___109155 = (r0); r0 = (s.asString___109155 != "[object Object]"); s.tmp_0 = r0; r0 = pxsim_numops_toBool(s.tmp_0); if (r0) { step = 6; continue; } r0 = s.tmp_0; { step = 7; continue; } case 6: r0 = (s.asString___109155 != "[Object]"); case 7: // jmp value (already in r0) s.tmp_1 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_1); if (!r0) { step = 8; continue; } r0 = s.asString___109155; { step = 17; continue; } case 8: case 9: r0 = pxsim_pxtrt.keysOf(s.arg0); s.keys___109167 = (r0); r0 = pxsim_Array__length(s.keys___109167); s.tmp_0 = r0; r0 = (s.tmp_0 > s.arg1); s.snipped___109171 = (r0); r0 = pxsim_numops_toBoolDecr(s.snipped___109171); if (!r0) { step = 10; continue; } s.tmp_0 = helpers_arraySlice__P108149_mk(s); s.tmp_0.arg0 = s.keys___109167; s.tmp_0.arg1 = 0; s.tmp_0.arg2 = s.arg1; s.callLocIdx = 14; s.pc = 24; return s.tmp_0; case 24: r0 = s.retval; s.keys___109167 = (r0); case 10: case 11: r0 = pxsim_pxtcore_mkAction(1, console_inspect_inline__P109189); s.tmp_0 = r0; r0 = pxsim_pxtrt_stclo(s.tmp_0, 0, s.arg0); r0 = pxsim_numops_toBoolDecr(s.snipped___109171); if (!r0) { step = 12; continue; } r0 = "\n ..."; { step = 13; continue; } case 12: r0 = pxsim_String_.mkEmpty(); case 13: // jmp value (already in r0) s.tmp_1 = r0; s.tmp_7 = helpers_arrayReduce__P108146_mk(s); s.tmp_7.arg0 = s.keys___109167; s.tmp_7.arg1 = s.tmp_0; r0 = pxsim_String_.mkEmpty(); s.tmp_7.arg2 = r0; s.callLocIdx = 15; s.pc = 25; return s.tmp_7; case 25: r0 = s.retval; s.tmp_6 = r0; if ((s.tmp_6) && (s.tmp_6).vtable) { setupResume(s, 26); pxsim_String__stringConv(s.tmp_6); checkResumeConsumed(); return; } else { s.retval = (s.tmp_6) + ""; } case 26: r0 = s.retval; s.tmp_5 = r0; if ((s.tmp_1) && (s.tmp_1).vtable) { setupResume(s, 27); pxsim_String__stringConv(s.tmp_1); checkResumeConsumed(); return; } else { s.retval = (s.tmp_1) + ""; } case 27: r0 = s.retval; s.tmp_8 = r0; r0 = pxsim_String__concat(s.tmp_5, s.tmp_8); s.tmp_4 = r0; if ((s.tmp_4) && (s.tmp_4).vtable) { setupResume(s, 28); pxsim_String__stringConv(s.tmp_4); checkResumeConsumed(); return; } else { s.retval = (s.tmp_4) + ""; } case 28: r0 = s.retval; s.tmp_3 = r0; r0 = pxsim_String__concat("{", s.tmp_3); s.tmp_2 = r0; r0 = pxsim_String__concat(s.tmp_2, "\n}"); { step = 17; continue; } case 14: case 15: case 16: r0 = undefined; case 17: return leave(s, r0) default: oops() } } } console_inspect__P108356.info = {"start":2271,"length":1190,"line":81,"column":4,"endLine":114,"endColumn":5,"fileName":"pxt_modules/base/console.ts","functionName":"inspect","argumentNames":["obj","maxElements"]} function console_inspect__P108356_mk(s) { checkStack(s.depth); return { parent: s, fn: console_inspect__P108356, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, tmp_3: undefined, tmp_4: undefined, tmp_5: undefined, tmp_6: undefined, tmp_7: undefined, tmp_8: undefined, tmp_9: undefined, tmp_10: undefined, asArr___109135: undefined, asString___109155: undefined, keys___109167: undefined, snipped___109171: undefined, arg0: undefined, arg1: undefined, } } function console_inspect_inline__P109189(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.lambdaArgs = null; } if ((s.arg0) && (s.arg0).vtable) { setupResume(s, 1); pxsim_String__stringConv(s.arg0); checkResumeConsumed(); return; } else { s.retval = (s.arg0) + ""; } case 1: r0 = s.retval; s.tmp_0 = r0; if ((s.arg1) && (s.arg1).vtable) { setupResume(s, 2); pxsim_String__stringConv(s.arg1); checkResumeConsumed(); return; } else { s.retval = (s.arg1) + ""; } case 2: r0 = s.retval; s.tmp_5 = r0; r0 = pxsim_String__concat("\n ", s.tmp_5); s.tmp_4 = r0; r0 = pxsim_String__concat(s.tmp_4, ": "); s.tmp_3 = r0; r0 = pxsim_pxtrt.mapGetGeneric(s.caps[0], s.arg1); s.tmp_7 = r0; if ((s.tmp_7) && (s.tmp_7).vtable) { setupResume(s, 3); pxsim_String__stringConv(s.tmp_7); checkResumeConsumed(); return; } else { s.retval = (s.tmp_7) + ""; } case 3: r0 = s.retval; s.tmp_6 = r0; r0 = pxsim_String__concat(s.tmp_3, s.tmp_6); s.tmp_2 = r0; if ((s.tmp_2) && (s.tmp_2).vtable) { setupResume(s, 4); pxsim_String__stringConv(s.tmp_2); checkResumeConsumed(); return; } else { s.retval = (s.tmp_2) + ""; } case 4: r0 = s.retval; s.tmp_1 = r0; r0 = pxsim_String__concat(s.tmp_0, s.tmp_1); return leave(s, r0) default: oops() } } } console_inspect_inline__P109189.info = {"start":3293,"length":61,"line":108,"column":20,"endLine":108,"endColumn":81,"fileName":"pxt_modules/base/console.ts","functionName":"inline","argumentNames":["prev","currKey"]} function console_inspect_inline__P109189_mk(s) { checkStack(s.depth); return { parent: s, fn: console_inspect_inline__P109189, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, tmp_3: undefined, tmp_4: undefined, tmp_5: undefined, tmp_6: undefined, tmp_7: undefined, arg0: undefined, arg1: undefined, } } function helpers_arrayReduce__P108146(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.len___109216 = undefined; s.i___109219 = undefined; if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.arg2 = (s.lambdaArgs[2]); s.lambdaArgs = null; } r0 = pxsim_Array__length(s.arg0); s.len___109216 = (r0); s.i___109219 = (0); case 1: r0 = (s.i___109219 < s.len___109216); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 2; continue; } s.tmp_1 = lambda_4_mk(s); s.tmp_1.argL = s.arg1; s.tmp_1.arg0 = s.arg2; r0 = pxsim_Array__getAt(s.arg0, s.i___109219); s.tmp_1.arg1 = r0; s.tmp_1.arg2 = s.i___109219; setupLambda(s.tmp_1, s.tmp_1.argL); s.callLocIdx = 0; s.pc = 3; return s.tmp_1; case 3: r0 = s.retval; s.arg2 = (r0); r0 = (s.i___109219 + 1); s.i___109219 = (r0); { step = 1; continue; } case 2: r0 = s.arg2; return leave(s, r0) default: oops() } } } helpers_arrayReduce__P108146.info = {"start":8316,"length":317,"line":280,"column":4,"endLine":286,"endColumn":5,"fileName":"pxt_modules/base/pxt-helpers.ts","functionName":"arrayReduce","argumentNames":["arr","callbackfn","initialValue"]} function helpers_arrayReduce__P108146_mk(s) { checkStack(s.depth); return { parent: s, fn: helpers_arrayReduce__P108146, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, len___109216: undefined, i___109219: undefined, arg0: undefined, arg1: undefined, arg2: undefined, } } function helpers_arraySlice__P108149(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.res___109237 = undefined; s.len___109239 = undefined; s.i___109273 = undefined; if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.arg2 = (s.lambdaArgs[2]); s.lambdaArgs = null; } r0 = pxsim_Array__mk(); s.res___109237 = (r0); r0 = pxsim_Array__length(s.arg0); s.len___109239 = (r0); r0 = (s.arg1 === undefined); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 1; continue; } s.arg1 = (0); { step = 4; continue; } case 1: r0 = (s.arg1 < 0); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 2; continue; } s.tmp_1 = Math_max__P108165_mk(s); r0 = (s.len___109239 + s.arg1); s.tmp_1.arg0 = r0; s.tmp_1.arg1 = 0; s.callLocIdx = 1; s.pc = 16; return s.tmp_1; case 16: r0 = s.retval; s.arg1 = (r0); case 2: case 3: case 4: r0 = (s.arg1 > s.len___109239); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 5; continue; } r0 = s.res___109237; { step = 15; continue; } case 5: case 6: r0 = (s.arg2 === undefined); s.tmp_1 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_1); if (!r0) { step = 7; continue; } s.arg2 = (s.len___109239); { step = 10; continue; } case 7: r0 = (s.arg2 < 0); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 8; continue; } r0 = (s.len___109239 + s.arg2); s.arg2 = (r0); case 8: case 9: case 10: r0 = (s.arg2 > s.len___109239); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 11; continue; } s.arg2 = (s.len___109239); case 11: case 12: s.i___109273 = (s.arg1); case 13: r0 = (s.i___109273 < s.arg2); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 14; continue; } s.tmp_1 = r0 = s.res___109237; r0 = pxsim_Array__getAt(s.arg0, s.i___109273); s.tmp_2 = r0; r0 = pxsim_Array__push(s.tmp_1, s.tmp_2); r0 = (s.i___109273 + 1); s.i___109273 = (r0); { step = 13; continue; } case 14: r0 = s.res___109237; case 15: return leave(s, r0) default: oops() } } } helpers_arraySlice__P108149.info = {"start":9027,"length":690,"line":303,"column":4,"endLine":328,"endColumn":5,"fileName":"pxt_modules/base/pxt-helpers.ts","functionName":"arraySlice","argumentNames":["arr","start","end"]} function helpers_arraySlice__P108149_mk(s) { checkStack(s.depth); return { parent: s, fn: helpers_arraySlice__P108149, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, res___109237: undefined, len___109239: undefined, i___109273: undefined, arg0: undefined, arg1: undefined, arg2: undefined, } } function Math_max__P108165(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.lambdaArgs = null; } r0 = (s.arg0 >= s.arg1); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 1; continue; } r0 = s.arg0; { step = 3; continue; } case 1: case 2: r0 = s.arg1; case 3: return leave(s, r0) default: oops() } } } Math_max__P108165.info = {"start":16614,"length":105,"line":558,"column":4,"endLine":561,"endColumn":5,"fileName":"pxt_modules/base/pxt-helpers.ts","functionName":"max","argumentNames":["a","b"]} function Math_max__P108165_mk(s) { checkStack(s.depth); return { parent: s, fn: Math_max__P108165, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, arg0: undefined, arg1: undefined, } } function helpers_arrayJoin__P108135(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.r___109306 = undefined; s.len___109307 = undefined; s.i___109310 = undefined; if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.lambdaArgs = null; } r0 = (s.arg1 === undefined); s.tmp_0 = r0; r0 = pxsim_numops_toBool(s.tmp_0); if (!r0) { step = 1; continue; } r0 = s.tmp_0; { step = 2; continue; } case 1: r0 = (s.arg1 === null); case 2: // jmp value (already in r0) s.tmp_1 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_1); if (!r0) { step = 3; continue; } s.arg1 = (","); case 3: case 4: r0 = pxsim_String_.mkEmpty(); s.r___109306 = (r0); r0 = pxsim_Array__length(s.arg0); s.len___109307 = (r0); s.i___109310 = (0); case 5: r0 = (s.i___109310 < s.len___109307); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 14; continue; } r0 = (s.i___109310 > 0); s.tmp_1 = r0; r0 = pxsim_numops_toBool(s.tmp_1); if (r0) { step = 6; continue; } r0 = s.tmp_1; { step = 7; continue; } case 6: r0 = s.arg1; case 7: // jmp value (already in r0) s.tmp_2 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_2); if (!r0) { step = 8; continue; } if ((s.r___109306) && (s.r___109306).vtable) { setupResume(s, 15); pxsim_String__stringConv(s.r___109306); checkResumeConsumed(); return; } else { s.retval = (s.r___109306) + ""; } case 15: r0 = s.retval; s.tmp_3 = r0; if ((s.arg1) && (s.arg1).vtable) { setupResume(s, 16); pxsim_String__stringConv(s.arg1); checkResumeConsumed(); return; } else { s.retval = (s.arg1) + ""; } case 16: r0 = s.retval; s.tmp_4 = r0; r0 = pxsim_String__concat(s.tmp_3, s.tmp_4); s.r___109306 = (r0); case 8: case 9: r0 = pxsim_Array__getAt(s.arg0, s.i___109310); s.tmp_1 = r0; r0 = (s.tmp_1 === undefined); s.tmp_0 = r0; r0 = pxsim_numops_toBool(s.tmp_0); if (!r0) { step = 10; continue; } r0 = s.tmp_0; { step = 11; continue; } case 10: r0 = pxsim_Array__getAt(s.arg0, s.i___109310); s.tmp_2 = r0; r0 = (s.tmp_2 === null); case 11: // jmp value (already in r0) s.tmp_3 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_3); if (!r0) { step = 12; continue; } r0 = pxsim_String_.mkEmpty(); { step = 13; continue; } case 12: r0 = pxsim_Array__getAt(s.arg0, s.i___109310); case 13: // jmp value (already in r0) s.tmp_4 = r0; if ((s.r___109306) && (s.r___109306).vtable) { setupResume(s, 17); pxsim_String__stringConv(s.r___109306); checkResumeConsumed(); return; } else { s.retval = (s.r___109306) + ""; } case 17: r0 = s.retval; s.tmp_5 = r0; if ((s.tmp_4) && (s.tmp_4).vtable) { setupResume(s, 18); pxsim_String__stringConv(s.tmp_4); checkResumeConsumed(); return; } else { s.retval = (s.tmp_4) + ""; } case 18: r0 = s.retval; s.tmp_6 = r0; r0 = pxsim_String__concat(s.tmp_5, s.tmp_6); s.r___109306 = (r0); r0 = (s.i___109310 + 1); s.i___109310 = (r0); { step = 5; continue; } case 14: r0 = s.r___109306; return leave(s, r0) default: oops() } } } helpers_arrayJoin__P108135.info = {"start":4133,"length":432,"line":157,"column":4,"endLine":170,"endColumn":5,"fileName":"pxt_modules/base/pxt-helpers.ts","functionName":"arrayJoin","argumentNames":["arr","sep"]} function helpers_arrayJoin__P108135_mk(s) { checkStack(s.depth); return { parent: s, fn: helpers_arrayJoin__P108135, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, tmp_2: undefined, tmp_3: undefined, tmp_4: undefined, tmp_5: undefined, tmp_6: undefined, r___109306: undefined, len___109307: undefined, i___109310: undefined, arg0: undefined, arg1: undefined, } } function pins_spi__P108460(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.mosi___109350 = undefined; s.miso___109355 = undefined; s.sck___109360 = undefined; r0 = pxsim_numops_toBoolDecr(globals._spi___108459); s.tmp_1 = r0; r0 = pxsim_Boolean__bang(s.tmp_1); s.tmp_0 = r0; r0 = pxsim_numops_toBoolDecr(s.tmp_0); if (!r0) { step = 1; continue; } r0 = pxsim.pins.pinByCfg(19); s.mosi___109350 = (r0); r0 = pxsim.pins.pinByCfg(18); s.miso___109355 = (r0); r0 = pxsim.pins.pinByCfg(23); s.sck___109360 = (r0); r0 = pxsim.pins.createSPI(s.mosi___109350, s.miso___109355, s.sck___109360); globals._spi___108459 = (r0); case 1: case 2: r0 = globals._spi___108459; return leave(s, r0) default: oops() } } } pins_spi__P108460.info = {"start":98,"length":305,"line":7,"column":4,"endLine":15,"endColumn":5,"fileName":"pxt_modules/core/spi.ts","functionName":"spi","argumentNames":[]} function pins_spi__P108460_mk(s) { checkStack(s.depth); return { parent: s, fn: pins_spi__P108460, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, tmp_0: undefined, tmp_1: undefined, mosi___109350: undefined, miso___109355: undefined, sck___109360: undefined, } } function net_Net_constructor__P108638(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: if (s.lambdaArgs) { s.arg0 = (s.lambdaArgs[0]); s.arg1 = (s.lambdaArgs[1]); s.lambdaArgs = null; } r0 = s.arg0; if (!checkSubtype(r0, net_Net__C108633_VT)) failedCast(r0, net_Net__C108633_VT); r0 = (s.arg0).fields["factory"] = (s.arg1); globals.net_Net_instance___108639 = (s.arg0); r0 = (s.arg0).fields["_controller"] = (undefined); r0 = undefined; return leave(s, r0) default: oops() } } } net_Net_constructor__P108638.info = {"start":2962,"length":162,"line":94,"column":8,"endLine":97,"endColumn":9,"fileName":"pxt_modules/net/net.ts","functionName":"inline","argumentNames":["this","factory"]} function net_Net_constructor__P108638_mk(s) { checkStack(s.depth); return { parent: s, fn: net_Net_constructor__P108638, depth: s.depth + 1, pc: 0, retval: undefined, r0: undefined, overwrittenPC: false, lambdaArgs: null, arg0: undefined, arg1: undefined, } } function settings_initScopes__P108531(s) { let r0 = s.r0, step = s.pc; s.pc = -1; while (true) { if (yieldSteps-- < 0 && maybeYield(s, step, r0) || runtime !== pxsim.runtime) return null; switch (step) { case 0: s.rn___109379 = undefined; s.tmp_1 = settings_runNumber__P108529_mk(s); s.callLocIdx = 19; s.pc = 1; return s.tmp_1; case 1: r0 = s.retval; s.tmp_0 = r0; r0 = (s.tmp_0 + 1); s.rn___109379 = (r0); s.tmp_0 = settings_writeNumber__P108537_mk(s); s.tmp_0.arg0 = globals.RUN_KEY___108518; s.tmp_0.arg1 = s.rn___109379; s.callLocIdx = 20; s.pc = 2; return s.tmp_0; case 2: r0 = s.retval; r0 = pxsim.control.deviceSerialNumber(); s.tmp_1 = r0; r0 = (s.tmp_1 & 2147483647); s.tmp_0 = r0; r0 = pxsim_pxtcore.seedAddRandom(s.tmp_0); r0 = p