diff --git a/lib/libesp32/berry_matter/src/be_matter_module.c b/lib/libesp32/berry_matter/src/be_matter_module.c index b5901619b..d2c4051f6 100644 --- a/lib/libesp32/berry_matter/src/be_matter_module.c +++ b/lib/libesp32/berry_matter/src/be_matter_module.c @@ -232,6 +232,7 @@ extern const bclass be_class_Matter_TLV; // need to declare it upfront because #include "solidify/solidified_Matter_Control_Message.h" #include "solidify/solidified_Matter_Plugin_0.h" #include "solidify/solidified_Matter_z_Commissioning.h" +#include "solidify/solidified_Matter_z_Autoconf.h" #include "solidify/solidified_Matter_Base38.h" #include "solidify/solidified_Matter_UI.h" #include "solidify/solidified_Matter_Profiler.h" @@ -473,6 +474,7 @@ module matter (scope: global, strings: weak) { // Commissioning Commissioning, class(be_class_Matter_Commissioning) + Autoconf, class(be_class_Matter_Autoconf) // QR Code QRCode, class(be_class_Matter_QRCode) diff --git a/lib/libesp32/berry_matter/src/embedded/Matter_UI.be b/lib/libesp32/berry_matter/src/embedded/Matter_UI.be index 3bd31aa98..a1332b252 100644 --- a/lib/libesp32/berry_matter/src/embedded/Matter_UI.be +++ b/lib/libesp32/berry_matter/src/embedded/Matter_UI.be @@ -196,9 +196,9 @@ class Matter_UI def show_passcode_form() import webserver - webserver.content_send("
 Matter Advanced Configuration 

") - # - webserver.content_send("
" + webserver.content_send("
 Matter Advanced Configuration 

" + + "" "

Passcode:

") webserver.content_send(f"") webserver.content_send("

Distinguish id:

") @@ -240,9 +240,9 @@ class Matter_UI webserver.content_send("") webserver.content_send(f"") - webserver.content_send("

") - - webserver.content_send("

") + webserver.content_send("

" + + "

") end end @@ -378,8 +378,8 @@ class Matter_UI var remote_html = webserver.html_escape(remote) var host_device_name = webserver.html_escape( self.device.get_plugin_remote_info(remote).find('name', remote) ) webserver.content_send(f"🔗 {host_device_name}") - webserver.content_send("") - webserver.content_send("" + webserver.content_send("
" + "" "" "" "" + "" + "
" @@ -440,45 +440,46 @@ class Matter_UI # Add new endpoint section self.show_plugins_hints_js(self._CLASSES_TYPES) - webserver.content_send("

 Add to Configuration 

") - webserver.content_send("

Add local sensor or device

" + webserver.content_send("

 Add to Configuration 

" + "

Add local sensor or device

" "
" - "") - webserver.content_send("" + "
" + "" "" "" "" - "") - - webserver.content_send("" + "" + + "" "" "") - webserver.content_send("" - "
NameTypeParameter
") - - webserver.content_send("
") - webserver.content_send("
") + webserver.content_send("
" + + "
" + "" # Add remote endpoint - webserver.content_send("

Add Remote Tasmota or OpenBK

" + "

Add Remote Tasmota or OpenBK

" "
" - "") - webserver.content_send("" - "
http:///
") - - webserver.content_send("
") - webserver.content_send("

") + "" + + "" + "
http:///
" + + "
" + "
" # button "Reset and Auto-discover" - webserver.content_send("
" - "

") - - webserver.content_send("

") + "

" + + "

") end @@ -554,8 +555,8 @@ class Matter_UI self.show_plugins_configuration() end - webserver.content_send("
") - webserver.content_send("

") + webserver.content_send("
" + "

") webserver.content_button(webserver.BUTTON_CONFIGURATION) webserver.content_stop() #- end of web page -# @@ -617,7 +618,7 @@ class Matter_UI # detect sensors - config_list += self.device.autoconf_sensors_list(status10) + config_list += self.device.autoconf.autoconf_sensors_list(status10) return config_list end @@ -703,13 +704,13 @@ class Matter_UI webserver.content_send("") # end of table - webserver.content_send("") - - webserver.content_send("
") - webserver.content_send("") - - webserver.content_send("") + webserver.content_send("" + + "
" + "" + + "") else webserver.content_send(format("

Unable to connect to '%s'

", webserver.html_escape(url))) @@ -831,8 +832,7 @@ class Matter_UI #---------------------------------------------------------------------# elif webserver.has_arg("auto") log(format("MTR: /matterc received '%s' command", 'auto'), 3) - self.device.plugins_persist = false - self.device.save_param() + self.device.reset_param() #- and force restart -# webserver.redirect("/?rst=") diff --git a/lib/libesp32/berry_matter/src/embedded/Matter_z_Autoconf.be b/lib/libesp32/berry_matter/src/embedded/Matter_z_Autoconf.be new file mode 100644 index 000000000..0592669d2 --- /dev/null +++ b/lib/libesp32/berry_matter/src/embedded/Matter_z_Autoconf.be @@ -0,0 +1,240 @@ +# +# Matter_z_Autoconf.be - implements autoconfiguration of Matter from Tasmota native features +# +# Copyright (C) 2023 Stephan Hadinger & Theo Arends +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + +import matter + +#@ solidify:Matter_Autoconf,weak + +class Matter_Autoconf + var device # reference to the main Device instance + + ############################################################# + def init(device) + self.device = device + end + + ############################################################# + # Load plugins configuration from json + # + # 'config' is a map + # Ex: + # {'32': {'filter': 'AXP192#Temperature', 'type': 'temperature'}, '40': {'filter': 'BMP280#Pressure', 'type': 'pressure'}, '34': {'filter': 'SHT3X#Temperature', 'type': 'temperature'}, '33': {'filter': 'BMP280#Temperature', 'type': 'temperature'}, '1': {'relay': 0, 'type': 'relay'}, '56': {'filter': 'SHT3X#Humidity', 'type': 'humidity'}, '0': {'type': 'root'}} + def instantiate_plugins_from_config(config) + var endpoints = self.device.k2l_num(config) + var plugins = self.device.plugins + + # start with mandatory endpoint 0 for root node + plugins.push(matter.Plugin_Root(self.device, 0, {})) + log("MTR: Configuring endpoints", 2) + log(format("MTR: endpoint = %5i type:%s%s", 0, 'root', ''), 2) + + # always include an aggregator for dynamic endpoints + plugins.push(matter.Plugin_Aggregator(self.device, matter.AGGREGATOR_ENDPOINT, {})) + log(format("MTR: endpoint = %5i type:%s%s", matter.AGGREGATOR_ENDPOINT, 'aggregator', ''), 2) + + for ep: endpoints + if ep == 0 continue end # skip endpoint 0 + try + var plugin_conf = config[str(ep)] + # log(format("MTR: endpoint %i config %s", ep, plugin_conf), 3) + + var pi_class_name = plugin_conf.find('type') + if pi_class_name == nil log("MTR: no class name, skipping", 3) continue end + if pi_class_name == 'root' log("MTR: only one root node allowed", 3) continue end + var pi_class = self.device.plugins_classes.find(pi_class_name) + if pi_class == nil log("MTR: unknown class name '"+str(pi_class_name)+"' skipping", 2) continue end + + var pi = pi_class(self.device, ep, plugin_conf) + plugins.push(pi) + + log(format("MTR: endpoint = %5i type:%s%s", ep, pi_class_name, self.device.conf_to_log(plugin_conf)), 2) + except .. as e, m + log("MTR: Exception" + str(e) + "|" + str(m), 2) + end + end + + tasmota.publish_result('{"Matter":{"Initialized":1}}', 'Matter') + end + + ############################################################# + # Autoconfigure device from template to map + # + # Applies only if there are no plugins already configured + def autoconf_device_map() + import json + var m = {} + + # check if we have a light + var endpoint = matter.START_ENDPOINT + var light_present = 0 + + import light + var light_status = light.get(0) + if light_status != nil + var channels_count = size(light_status.find('channels', "")) + light_present = 1 + if channels_count > 0 + if channels_count == 1 + m[str(endpoint)] = {'type':'light1'} + endpoint += 1 + # check if we have secondary Dimmer lights (SetOption68 1) + var idx = 1 + var light_status_i + while (light_status_i := light.get(idx)) != nil + m[str(endpoint)] = {'type':'light1','light':idx + 1} # arg is 1-based so add 1 + endpoint += 1 + light_present += 1 + idx += 1 + end + elif channels_count == 2 + m[str(endpoint)] = {'type':'light2'} + endpoint += 1 + elif channels_count == 3 + m[str(endpoint)] = {'type':'light3'} + endpoint += 1 + # check if we have a split second light (SetOption37 128) with 4/5 channels + var light_status1 = light.get(1) + if (light_status1 != nil) + var channels_count1 = size(light_status1.find('channels', "")) + + if (channels_count1 == 1) + m[str(endpoint)] = {'type':'light1'} + endpoint += 1 + light_present += 1 + elif (channels_count1 == 2) + m[str(endpoint)] = {'type':'light2'} + endpoint += 1 + light_present += 1 + end + end + elif channels_count == 4 + # not supported yet + else # only option left is 5 channels + # not supported yet + end + end + end + + # handle shutters before relays (as we steal relays for shutters) + var r_st13 = tasmota.cmd("Status 13", true) # issue `Status 13` + var relays_reserved = [] # list of relays that are used for non-relay (shutters) + log("MTR: Status 13 = "+str(r_st13), 3) + + if r_st13 != nil && r_st13.contains('StatusSHT') + r_st13 = r_st13['StatusSHT'] # skip root + # Shutter is enabled, iterate + var idx = 0 + while true + var k = 'SHT' + str(idx) # SHT is zero based + if !r_st13.contains(k) break end # no more SHTxxx + var d = r_st13[k] + log(format("MTR: '%s' = %s", k, str(d)), 3) + var relay1 = d.find('Relay1', -1) # relay base 1 or -1 if none + var relay2 = d.find('Relay2', -1) # relay base 1 or -1 if none + + if relay1 > 0 relays_reserved.push(relay1 - 1) end # mark relay1/2 as non-relays + if relay2 > 0 relays_reserved.push(relay2 - 1) end + + log(f"MTR: {relay1=} {relay2=}", 3) + # is there tilt support + var tilt_array = d.find('TiltConfig') + var tilt_config = tilt_array && (tilt_array[2] > 0) + # add shutter to definition + m[str(endpoint)] = {'type': tilt_config ? 'shutter+tilt' : 'shutter', 'shutter':idx} + endpoint += 1 + idx += 1 + end + + end + + # how many relays are present + var relay_count = size(tasmota.get_power()) + var relay_index = 0 # start at index 0 + relay_count -= light_present # last power(s) taken for lights + + while relay_index < relay_count + if relays_reserved.find(relay_index) == nil # if relay is actual relay + m[str(endpoint)] = {'type':'relay','relay':relay_index + 1} # Relay index start with 1 + endpoint += 1 + end + relay_index += 1 + end + + # auto-detect sensors + var sensors = json.load(tasmota.read_sensors()) + + var sensors_list = self.autoconf_sensors_list(sensors) + + for s: sensors_list + m[str(endpoint)] = s + endpoint += 1 + end + + # tasmota.publish_result('{"Matter":{"Initialized":1}}', 'Matter') # MQTT is not yet connected + return m + end + + ############################################################# + # Autoconfigure from sensors + # + # Returns an ordered list + def autoconf_sensors_list(sensors) + var k2l = self.device.k2l + var ret = [] + # temperature sensors + for k1: k2l(sensors) + var sensor_2 = sensors[k1] + if isinstance(sensor_2, map) && sensor_2.contains("Temperature") + var temp_rule = k1 + "#Temperature" + ret.push({'type':'temperature','filter':temp_rule}) + end + end + + # pressure sensors + for k1: k2l(sensors) + var sensor_2 = sensors[k1] + if isinstance(sensor_2, map) && sensor_2.contains("Pressure") + var temp_rule = k1 + "#Pressure" + ret.push({'type':'pressure','filter':temp_rule}) + end + end + + # light sensors + for k1: k2l(sensors) + var sensor_2 = sensors[k1] + if isinstance(sensor_2, map) && sensor_2.contains("Illuminance") + var temp_rule = k1 + "#Illuminance" + ret.push({'type':'illuminance','filter':temp_rule}) + end + end + + # huidity sensors + for k1: k2l(sensors) + var sensor_2 = sensors[k1] + if isinstance(sensor_2, map) && sensor_2.contains("Humidity") + var temp_rule = k1 + "#Humidity" + ret.push({'type':'humidity','filter':temp_rule}) + end + end + + return ret + end + +end +matter.Autoconf = Matter_Autoconf diff --git a/lib/libesp32/berry_matter/src/embedded/Matter_z_Commissioning.be b/lib/libesp32/berry_matter/src/embedded/Matter_z_Commissioning.be index 45b706419..471581812 100644 --- a/lib/libesp32/berry_matter/src/embedded/Matter_z_Commissioning.be +++ b/lib/libesp32/berry_matter/src/embedded/Matter_z_Commissioning.be @@ -47,12 +47,11 @@ class Matter_Commissioning ############################################################# def init(device) self.device = device - self._init_basic_commissioning() end ############################################################# # Start Basic Commissioning Window if needed at startup - def _init_basic_commissioning() + def init_basic_commissioning() # if no fabric is configured, automatically open commissioning at restart if self.device.sessions.count_active_fabrics() == 0 self.start_root_basic_commissioning() diff --git a/lib/libesp32/berry_matter/src/embedded/Matter_zz_Device.be b/lib/libesp32/berry_matter/src/embedded/Matter_zz_Device.be index d547c3df7..b63534c1c 100644 --- a/lib/libesp32/berry_matter/src/embedded/Matter_zz_Device.be +++ b/lib/libesp32/berry_matter/src/embedded/Matter_zz_Device.be @@ -26,6 +26,7 @@ class Matter_Device static var VENDOR_ID = 0xFFF1 static var PRODUCT_ID = 0x8000 static var FILENAME = "_matter_device.json" + static var EP = 2 # first available endpoint number for devices var started # is the Matter Device started (configured, mDNS and UDPServer started) var plugins # list of plugins instances var plugins_persist # true if plugins configuration needs to be saved @@ -36,6 +37,7 @@ class Matter_Device var profiler var message_handler # `matter.MessageHandler()` object var commissioning # `matter.Commissioning()` object + var autoconf # `matter.Autoconf()` objects var sessions # `matter.Session_Store()` objet var ui var tick # increment at each tick, avoids to repeat too frequently some actions @@ -70,9 +72,10 @@ class Matter_Device self.plugins = [] self.plugins_persist = false # plugins need to saved only when the first fabric is associated self.plugins_config_remotes = {} - self.next_ep = 2 # start at endpoint 2 for dynamically allocated endpoints (1 reserved for aggregator) + self.next_ep = self.EP # start at endpoint 2 for dynamically allocated endpoints (1 reserved for aggregator) self.ipv4only = false self.disable_bridge_mode = false + self.commissioning = matter.Commissioning(self) self.load_param() self.sessions = matter.Session_Store(self) @@ -97,8 +100,7 @@ class Matter_Device end, "matter_start") end - self.commissioning = matter.Commissioning(self) - + self.commissioning.init_basic_commissioning() tasmota.add_driver(self) self.register_commands() @@ -503,6 +505,14 @@ class Matter_Device return ret end + ############################################################# + # Reset configuration like a fresh new device + def reset_param() + self.plugins_persist = false + self.next_ep = self.EP + self.save_param() + end + ############################################################# # Load Matter Device parameters def load_param() @@ -561,48 +571,6 @@ class Matter_Device return param_log end - ############################################################# - # Load plugins configuration from json - # - # 'config' is a map - # Ex: - # {'32': {'filter': 'AXP192#Temperature', 'type': 'temperature'}, '40': {'filter': 'BMP280#Pressure', 'type': 'pressure'}, '34': {'filter': 'SHT3X#Temperature', 'type': 'temperature'}, '33': {'filter': 'BMP280#Temperature', 'type': 'temperature'}, '1': {'relay': 0, 'type': 'relay'}, '56': {'filter': 'SHT3X#Humidity', 'type': 'humidity'}, '0': {'type': 'root'}} - def _instantiate_plugins_from_config(config) - var endpoints = self.k2l_num(config) - - # start with mandatory endpoint 0 for root node - self.plugins.push(matter.Plugin_Root(self, 0, {})) - log("MTR: Configuring endpoints", 2) - log(format("MTR: endpoint = %5i type:%s%s", 0, 'root', ''), 2) - - # always include an aggregator for dynamic endpoints - self.plugins.push(matter.Plugin_Aggregator(self, matter.AGGREGATOR_ENDPOINT, {})) - log(format("MTR: endpoint = %5i type:%s%s", matter.AGGREGATOR_ENDPOINT, 'aggregator', ''), 2) - - for ep: endpoints - if ep == 0 continue end # skip endpoint 0 - try - var plugin_conf = config[str(ep)] - # log(format("MTR: endpoint %i config %s", ep, plugin_conf), 3) - - var pi_class_name = plugin_conf.find('type') - if pi_class_name == nil log("MTR: no class name, skipping", 3) continue end - if pi_class_name == 'root' log("MTR: only one root node allowed", 3) continue end - var pi_class = self.plugins_classes.find(pi_class_name) - if pi_class == nil log("MTR: unknown class name '"+str(pi_class_name)+"' skipping", 2) continue end - - var pi = pi_class(self, ep, plugin_conf) - self.plugins.push(pi) - - log(format("MTR: endpoint = %5i type:%s%s", ep, pi_class_name, self.conf_to_log(plugin_conf)), 2) - except .. as e, m - log("MTR: Exception" + str(e) + "|" + str(m), 2) - end - end - - tasmota.publish_result('{"Matter":{"Initialized":1}}', 'Matter') - end - ############################################################# # Matter plugin management # @@ -629,8 +597,8 @@ class Matter_Device # # Called by Tasmota loop as a Tasmota driver. def save_before_restart() - self.stop_basic_commissioning() - self.mdns_remove_op_discovery_all_fabrics() + self.commissioning.stop_basic_commissioning() + self.commissioning.mdns_remove_op_discovery_all_fabrics() end ############################################################# @@ -642,14 +610,15 @@ class Matter_Device import json if size(self.plugins) > 0 return end # already configured + if (self.autoconf == nil) self.autoconf = matter.Autoconf(self) end if !self.plugins_persist - self.plugins_config = self.autoconf_device_map() + self.plugins_config = self.autoconf.autoconf_device_map() self.plugins_config_remotes = {} self.adjust_next_ep() log("MTR: autoconfig = " + str(self.plugins_config), 3) end - self._instantiate_plugins_from_config(self.plugins_config) + self.autoconf.instantiate_plugins_from_config(self.plugins_config) if !self.plugins_persist && self.sessions.count_active_fabrics() > 0 self.plugins_persist = true @@ -657,170 +626,6 @@ class Matter_Device end end - ############################################################# - # Autoconfigure device from template to map - # - # Applies only if there are no plugins already configured - def autoconf_device_map() - import json - var m = {} - - # check if we have a light - var endpoint = matter.START_ENDPOINT - var light_present = 0 - - import light - var light_status = light.get(0) - if light_status != nil - var channels_count = size(light_status.find('channels', "")) - light_present = 1 - if channels_count > 0 - if channels_count == 1 - m[str(endpoint)] = {'type':'light1'} - endpoint += 1 - # check if we have secondary Dimmer lights (SetOption68 1) - var idx = 1 - var light_status_i - while (light_status_i := light.get(idx)) != nil - m[str(endpoint)] = {'type':'light1','light':idx + 1} # arg is 1-based so add 1 - endpoint += 1 - light_present += 1 - idx += 1 - end - elif channels_count == 2 - m[str(endpoint)] = {'type':'light2'} - endpoint += 1 - elif channels_count == 3 - m[str(endpoint)] = {'type':'light3'} - endpoint += 1 - # check if we have a split second light (SetOption37 128) with 4/5 channels - var light_status1 = light.get(1) - if (light_status1 != nil) - var channels_count1 = size(light_status1.find('channels', "")) - - if (channels_count1 == 1) - m[str(endpoint)] = {'type':'light1'} - endpoint += 1 - light_present += 1 - elif (channels_count1 == 2) - m[str(endpoint)] = {'type':'light2'} - endpoint += 1 - light_present += 1 - end - end - elif channels_count == 4 - # not supported yet - else # only option left is 5 channels - # not supported yet - end - end - end - - # handle shutters before relays (as we steal relays for shutters) - var r_st13 = tasmota.cmd("Status 13", true) # issue `Status 13` - var relays_reserved = [] # list of relays that are used for non-relay (shutters) - log("MTR: Status 13 = "+str(r_st13), 3) - - if r_st13 != nil && r_st13.contains('StatusSHT') - r_st13 = r_st13['StatusSHT'] # skip root - # Shutter is enabled, iterate - var idx = 0 - while true - var k = 'SHT' + str(idx) # SHT is zero based - if !r_st13.contains(k) break end # no more SHTxxx - var d = r_st13[k] - log(format("MTR: '%s' = %s", k, str(d)), 3) - var relay1 = d.find('Relay1', -1) # relay base 1 or -1 if none - var relay2 = d.find('Relay2', -1) # relay base 1 or -1 if none - - if relay1 > 0 relays_reserved.push(relay1 - 1) end # mark relay1/2 as non-relays - if relay2 > 0 relays_reserved.push(relay2 - 1) end - - log(f"MTR: {relay1=} {relay2=}", 3) - # is there tilt support - var tilt_array = d.find('TiltConfig') - var tilt_config = tilt_array && (tilt_array[2] > 0) - # add shutter to definition - m[str(endpoint)] = {'type': tilt_config ? 'shutter+tilt' : 'shutter', 'shutter':idx} - endpoint += 1 - idx += 1 - end - - end - - # how many relays are present - var relay_count = size(tasmota.get_power()) - var relay_index = 0 # start at index 0 - relay_count -= light_present # last power(s) taken for lights - - while relay_index < relay_count - if relays_reserved.find(relay_index) == nil # if relay is actual relay - m[str(endpoint)] = {'type':'relay','relay':relay_index + 1} # Relay index start with 1 - endpoint += 1 - end - relay_index += 1 - end - - # auto-detect sensors - var sensors = json.load(tasmota.read_sensors()) - - var sensors_list = self.autoconf_sensors_list(sensors) - - for s: sensors_list - m[str(endpoint)] = s - endpoint += 1 - end - - # tasmota.publish_result('{"Matter":{"Initialized":1}}', 'Matter') # MQTT is not yet connected - return m - end - - - ############################################################# - # Autoconfigure from sensors - # - # Returns an ordered list - def autoconf_sensors_list(sensors) - var ret = [] - # temperature sensors - for k1:self.k2l(sensors) - var sensor_2 = sensors[k1] - if isinstance(sensor_2, map) && sensor_2.contains("Temperature") - var temp_rule = k1 + "#Temperature" - ret.push({'type':'temperature','filter':temp_rule}) - end - end - - # pressure sensors - for k1:self.k2l(sensors) - var sensor_2 = sensors[k1] - if isinstance(sensor_2, map) && sensor_2.contains("Pressure") - var temp_rule = k1 + "#Pressure" - ret.push({'type':'pressure','filter':temp_rule}) - end - end - - # light sensors - for k1:self.k2l(sensors) - var sensor_2 = sensors[k1] - if isinstance(sensor_2, map) && sensor_2.contains("Illuminance") - var temp_rule = k1 + "#Illuminance" - ret.push({'type':'illuminance','filter':temp_rule}) - end - end - - # huidity sensors - for k1:self.k2l(sensors) - var sensor_2 = sensors[k1] - if isinstance(sensor_2, map) && sensor_2.contains("Humidity") - var temp_rule = k1 + "#Humidity" - ret.push({'type':'humidity','filter':temp_rule}) - end - end - - return ret - end - # get keys of a map in sorted order static def k2l(m) var l=[] if m==nil return l end for k:m.keys() l.push(k) end for i:1..size(l)-1 var k = l[i] var j = i while (j > 0) && (l[j-1] > k) l[j] = l[j-1] j -= 1 end l[j] = k end return l @@ -1085,7 +890,7 @@ class Matter_Device if payload_int self.commissioning.start_root_basic_commissioning() else - self.stop_basic_commissioning() + self.commissioning.stop_basic_commissioning() end tasmota.resp_cmnd_done() end diff --git a/lib/libesp32/berry_matter/src/solidify/solidified_Matter_UI.h b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_UI.h index f6f59fc67..8060db9c7 100644 --- a/lib/libesp32/berry_matter/src/solidify/solidified_Matter_UI.h +++ b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_UI.h @@ -158,7 +158,7 @@ be_local_closure(class_Matter_UI_page_part_mgr, /* name */ 0, /* has sup protos */ NULL, /* no sub protos */ 1, /* has constants */ - ( &(const bvalue[14]) { /* constants */ + ( &(const bvalue[13]) { /* constants */ /* K0 */ be_nested_str_weak(webserver), /* K1 */ be_nested_str_weak(check_privileged_access), /* K2 */ be_nested_str_weak(content_start), @@ -168,15 +168,14 @@ be_local_closure(class_Matter_UI_page_part_mgr, /* name */ /* K6 */ be_nested_str_weak(matter_enabled), /* K7 */ be_nested_str_weak(show_plugins_configuration), /* K8 */ be_nested_str_weak(content_send), - /* K9 */ be_nested_str_weak(_X3Cdiv_X20style_X3D_X27display_X3A_X20block_X3B_X27_X3E_X3C_X2Fdiv_X3E), - /* K10 */ be_nested_str_weak(_X3Cp_X3E_X3C_X2Fp_X3E_X3Cform_X20id_X3D_X27butmat_X27_X20style_X3D_X27display_X3A_X20block_X3B_X27_X20action_X3D_X27mattera_X27_X20method_X3D_X27get_X27_X3E_X3Cbutton_X20name_X3D_X27_X27_X3EAdvanced_X20Configuration_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E), - /* K11 */ be_nested_str_weak(content_button), - /* K12 */ be_nested_str_weak(BUTTON_CONFIGURATION), - /* K13 */ be_nested_str_weak(content_stop), + /* K9 */ be_nested_str_weak(_X3Cdiv_X20style_X3D_X27display_X3A_X20block_X3B_X27_X3E_X3C_X2Fdiv_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3Cform_X20id_X3D_X27butmat_X27_X20style_X3D_X27display_X3A_X20block_X3B_X27_X20action_X3D_X27mattera_X27_X20method_X3D_X27get_X27_X3E_X3Cbutton_X20name_X3D_X27_X27_X3EAdvanced_X20Configuration_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E), + /* K10 */ be_nested_str_weak(content_button), + /* K11 */ be_nested_str_weak(BUTTON_CONFIGURATION), + /* K12 */ be_nested_str_weak(content_stop), }), be_str_weak(page_part_mgr), &be_const_str_solidified, - ( &(const binstruction[30]) { /* code */ + ( &(const binstruction[27]) { /* code */ 0xA4060000, // 0000 IMPORT R1 K0 0x8C080301, // 0001 GETMET R2 R1 K1 0x7C080200, // 0002 CALL R2 1 @@ -198,15 +197,12 @@ be_local_closure(class_Matter_UI_page_part_mgr, /* name */ 0x8C080308, // 0012 GETMET R2 R1 K8 0x58100009, // 0013 LDCONST R4 K9 0x7C080400, // 0014 CALL R2 2 - 0x8C080308, // 0015 GETMET R2 R1 K8 - 0x5810000A, // 0016 LDCONST R4 K10 + 0x8C08030A, // 0015 GETMET R2 R1 K10 + 0x8810030B, // 0016 GETMBR R4 R1 K11 0x7C080400, // 0017 CALL R2 2 - 0x8C08030B, // 0018 GETMET R2 R1 K11 - 0x8810030C, // 0019 GETMBR R4 R1 K12 - 0x7C080400, // 001A CALL R2 2 - 0x8C08030D, // 001B GETMET R2 R1 K13 - 0x7C080200, // 001C CALL R2 1 - 0x80000000, // 001D RET 0 + 0x8C08030C, // 0018 GETMET R2 R1 K12 + 0x7C080200, // 0019 CALL R2 1 + 0x80000000, // 001A RET 0 }) ) ); @@ -297,7 +293,7 @@ be_local_closure(class_Matter_UI_generate_config_from_status, /* name */ 0, /* has sup protos */ NULL, /* no sub protos */ 1, /* has constants */ - ( &(const bvalue[17]) { /* constants */ + ( &(const bvalue[18]) { /* constants */ /* K0 */ be_const_int(0), /* K1 */ be_nested_str_weak(contains), /* K2 */ be_nested_str_weak(POWER), @@ -314,11 +310,12 @@ be_local_closure(class_Matter_UI_generate_config_from_status, /* name */ /* K13 */ be_nested_str_weak(light2), /* K14 */ be_nested_str_weak(light3), /* K15 */ be_nested_str_weak(device), - /* K16 */ be_nested_str_weak(autoconf_sensors_list), + /* K16 */ be_nested_str_weak(autoconf), + /* K17 */ be_nested_str_weak(autoconf_sensors_list), }), be_str_weak(generate_config_from_status), &be_const_str_solidified, - ( &(const binstruction[96]) { /* code */ + ( &(const binstruction[97]) { /* code */ 0x600C0012, // 0000 GETGBL R3 G18 0x7C0C0000, // 0001 CALL R3 0 0x58100000, // 0002 LDCONST R4 K0 @@ -410,11 +407,12 @@ be_local_closure(class_Matter_UI_generate_config_from_status, /* name */ 0x982A1407, // 0058 SETIDX R10 K10 R7 0x7C200400, // 0059 CALL R8 2 0x8820010F, // 005A GETMBR R8 R0 K15 - 0x8C201110, // 005B GETMET R8 R8 K16 - 0x5C280200, // 005C MOVE R10 R1 - 0x7C200400, // 005D CALL R8 2 - 0x000C0608, // 005E ADD R3 R3 R8 - 0x80040600, // 005F RET 1 R3 + 0x88201110, // 005B GETMBR R8 R8 K16 + 0x8C201111, // 005C GETMET R8 R8 K17 + 0x5C280200, // 005D MOVE R10 R1 + 0x7C200400, // 005E CALL R8 2 + 0x000C0608, // 005F ADD R3 R3 R8 + 0x80040600, // 0060 RET 1 R3 }) ) ); @@ -588,7 +586,7 @@ be_local_closure(class_Matter_UI_show_plugins_configuration, /* name */ 0, /* has sup protos */ NULL, /* no sub protos */ 1, /* has constants */ - ( &(const bvalue[63]) { /* constants */ + ( &(const bvalue[51]) { /* constants */ /* K0 */ be_nested_str_weak(webserver), /* K1 */ be_nested_str_weak(string), /* K2 */ be_nested_str_weak(introspect), @@ -627,35 +625,23 @@ be_local_closure(class_Matter_UI_show_plugins_configuration, /* name */ /* K35 */ be_nested_str_weak(sort_distinct), /* K36 */ be_nested_str_weak(get_plugin_remote_info), /* K37 */ be_nested_str_weak(_X26_X23x1F517_X3B_X20_X3Ca_X20target_X3D_X27_blank_X27_X20title_X3D_X27http_X3A_X2F_X2F_X25s_X2F_X27_X20href_X3D_X22http_X3A_X2F_X2F_X25s_X2F_X3F_X22_X3E_X25s_X3C_X2Fa_X3E), - /* K38 */ be_nested_str_weak(_X3Ctable_X20style_X3D_X27width_X3A100_X25_X27_X3E), - /* K39 */ be_nested_str_weak(_X3Ctr_X3E_X3Ctd_X20width_X3D_X2725_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X2778_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X27115_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X2715_X27_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E), - /* K40 */ be_nested_str_weak(_X3Ctr_X3E_X3Ctd_X20width_X3D_X2722_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3E_X25i_X3C_X2Fb_X3E_X3C_X2Ftd_X3E), - /* K41 */ be_nested_str_weak(_X3Ctd_X20width_X3D_X2778_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27nam_X25i_X27_X20size_X3D_X271_X27_X20value_X3D_X27_X25s_X27_X20placeholder_X3D_X27_X28optional_X29_X27_X3E_X3C_X2Ftd_X3E), - /* K42 */ be_nested_str_weak(_X3Ctd_X20width_X3D_X27115_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3E_X25s_X3C_X2Fb_X3E_X3C_X2Fselect_X3E_X3C_X2Ftd_X3E), - /* K43 */ be_nested_str_weak(_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27arg_X25i_X27_X20size_X3D_X278_X27_X20value_X3D_X27_X25s_X27_X20title_X3D_X27_X25s_X27_X3E_X3C_X2Ftd_X3E), - /* K44 */ be_nested_str_weak(_X3Ctd_X20width_X3D_X2715_X27_X20style_X3D_X27text_X2Dalign_X3Acenter_X3B_X27_X3E_X3Cbutton_X20name_X3D_X27del_X25i_X27_X20style_X3D_X27background_X3Anone_X3Bborder_X3Anone_X3Bline_X2Dheight_X3A1_X3B_X27_X20onclick_X3D_X22return_X20confirm_X28_X27Confirm_X20removing_X20endpoint_X27_X29_X22_X3E_X26_X23128293_X3B_X3C_X2Fbutton_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E), - /* K45 */ be_nested_str_weak(_X3C_X2Ftable_X3E_X3Cp_X3E_X3C_X2Fp_X3E), - /* K46 */ be_nested_str_weak(_X3Cbutton_X20name_X3D_X27config_X27_X20class_X3D_X27button_X20bgrn_X27_X3EChange_X20configuration_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E), - /* K47 */ be_nested_str_weak(show_plugins_hints_js), - /* K48 */ be_nested_str_weak(_CLASSES_TYPES), - /* K49 */ be_nested_str_weak(_X3Cp_X3E_X3C_X2Fp_X3E_X3Cfieldset_X3E_X3Clegend_X3E_X3Cb_X3E_X26nbsp_X3BAdd_X20to_X20Configuration_X26nbsp_X3B_X3C_X2Fb_X3E_X3C_X2Flegend_X3E_X3Cp_X3E_X3C_X2Fp_X3E), - /* K50 */ be_nested_str_weak(_X3Cp_X3E_X3Cb_X3EAdd_X20local_X20sensor_X20or_X20device_X3C_X2Fb_X3E_X3C_X2Fp_X3E_X3Cform_X20action_X3D_X27_X2Fmatterc_X27_X20method_X3D_X27post_X27_X3E_X3Ctable_X20style_X3D_X27width_X3A100_X25_X27_X3E), - /* K51 */ be_nested_str_weak(_X3Ctr_X3E_X3Ctd_X20width_X3D_X27100_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3EName_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X27115_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3EType_X3C_X2Ftd_X3E_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3EParameter_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E), - /* K52 */ be_nested_str_weak(_X3Ctr_X3E_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27nam_X27_X20size_X3D_X271_X27_X20value_X3D_X27_X27_X20placeholder_X3D_X27_X28optional_X29_X27_X20title_X3D_X27_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cselect_X20id_X3D_X27pi_X27_X20name_X3D_X27pi_X27_X20onchange_X3D_X27otm_X28_X22arg_X22_X2Cthis_X2Evalue_X29_X27_X3E), - /* K53 */ be_nested_str_weak(plugin_option), - /* K54 */ be_nested_str_weak(_X3C_X2Fselect_X3E_X3C_X2Ftd_X3E), - /* K55 */ be_nested_str_weak(_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20id_X3D_X27arg_X27_X20name_X3D_X27arg_X27_X20size_X3D_X271_X27_X20value_X3D_X27_X27_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E_X3C_X2Ftable_X3E), - /* K56 */ be_nested_str_weak(_X3Cdiv_X20style_X3D_X27display_X3A_X20block_X3B_X27_X3E_X3C_X2Fdiv_X3E), - /* K57 */ be_nested_str_weak(_X3Cbutton_X20name_X3D_X27addep_X27_X20class_X3D_X27button_X20bgrn_X27_X3ECreate_X20new_X20endpoint_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E), - /* K58 */ be_nested_str_weak(_X3Chr_X3E_X3Cp_X3E_X3Cb_X3EAdd_X20Remote_X20Tasmota_X20or_X20OpenBK_X3C_X2Fb_X3E_X3C_X2Fp_X3E_X3Cform_X20action_X3D_X27_X2Fmatteradd_X27_X20method_X3D_X27get_X27_X3E_X3Ctable_X20style_X3D_X27width_X3A100_X25_X27_X3E), - /* K59 */ be_nested_str_weak(_X3Ctr_X3E_X3Ctd_X20width_X3D_X2730_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3Ehttp_X3A_X2F_X2F_X3C_X2Fb_X3E_X3C_X2Ftd_X3E_X3Ctd_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27url_X27_X20size_X3D_X278_X27_X20value_X3D_X27_X27_X20required_X20placeholder_X3D_X27IP_X20or_X20domain_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X2710_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3E_X2F_X3C_X2Fb_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E_X3C_X2Ftr_X3E_X3C_X2Ftable_X3E), - /* K60 */ be_nested_str_weak(_X3Cbutton_X20class_X3D_X27button_X20bgrn_X27_X3EAuto_X2Dconfigure_X20remote_X20Tasmota_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3Chr_X3E), - /* K61 */ be_nested_str_weak(_X3Cform_X20action_X3D_X27_X2Fmatterc_X27_X20method_X3D_X27post_X27onsubmit_X3D_X27return_X20confirm_X28_X22This_X20will_X20RESET_X20the_X20configuration_X20to_X20the_X20default_X2E_X20You_X20will_X20need_X20to_X20associate_X20again_X2E_X22_X29_X3B_X27_X3E_X3Cbutton_X20name_X3D_X27auto_X27_X20class_X3D_X27button_X20bred_X27_X3EReset_X20all_X20and_X20Auto_X2Ddiscover_X3C_X2Fbutton_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Fform_X3E), - /* K62 */ be_nested_str_weak(_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E), + /* K38 */ be_nested_str_weak(_X3Ctable_X20style_X3D_X27width_X3A100_X25_X27_X3E_X3Ctr_X3E_X3Ctd_X20width_X3D_X2725_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X2778_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X27115_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X2715_X27_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E), + /* K39 */ be_nested_str_weak(_X3Ctr_X3E_X3Ctd_X20width_X3D_X2722_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3E_X25i_X3C_X2Fb_X3E_X3C_X2Ftd_X3E), + /* K40 */ be_nested_str_weak(_X3Ctd_X20width_X3D_X2778_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27nam_X25i_X27_X20size_X3D_X271_X27_X20value_X3D_X27_X25s_X27_X20placeholder_X3D_X27_X28optional_X29_X27_X3E_X3C_X2Ftd_X3E), + /* K41 */ be_nested_str_weak(_X3Ctd_X20width_X3D_X27115_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3E_X25s_X3C_X2Fb_X3E_X3C_X2Fselect_X3E_X3C_X2Ftd_X3E), + /* K42 */ be_nested_str_weak(_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27arg_X25i_X27_X20size_X3D_X278_X27_X20value_X3D_X27_X25s_X27_X20title_X3D_X27_X25s_X27_X3E_X3C_X2Ftd_X3E), + /* K43 */ be_nested_str_weak(_X3Ctd_X20width_X3D_X2715_X27_X20style_X3D_X27text_X2Dalign_X3Acenter_X3B_X27_X3E_X3Cbutton_X20name_X3D_X27del_X25i_X27_X20style_X3D_X27background_X3Anone_X3Bborder_X3Anone_X3Bline_X2Dheight_X3A1_X3B_X27_X20onclick_X3D_X22return_X20confirm_X28_X27Confirm_X20removing_X20endpoint_X27_X29_X22_X3E_X26_X23128293_X3B_X3C_X2Fbutton_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E), + /* K44 */ be_nested_str_weak(_X3C_X2Ftable_X3E_X3Cp_X3E_X3C_X2Fp_X3E), + /* K45 */ be_nested_str_weak(_X3Cbutton_X20name_X3D_X27config_X27_X20class_X3D_X27button_X20bgrn_X27_X3EChange_X20configuration_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E), + /* K46 */ be_nested_str_weak(show_plugins_hints_js), + /* K47 */ be_nested_str_weak(_CLASSES_TYPES), + /* K48 */ be_nested_str_long(_X3Cp_X3E_X3C_X2Fp_X3E_X3Cfieldset_X3E_X3Clegend_X3E_X3Cb_X3E_X26nbsp_X3BAdd_X20to_X20Configuration_X26nbsp_X3B_X3C_X2Fb_X3E_X3C_X2Flegend_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3Cp_X3E_X3Cb_X3EAdd_X20local_X20sensor_X20or_X20device_X3C_X2Fb_X3E_X3C_X2Fp_X3E_X3Cform_X20action_X3D_X27_X2Fmatterc_X27_X20method_X3D_X27post_X27_X3E_X3Ctable_X20style_X3D_X27width_X3A100_X25_X27_X3E_X3Ctr_X3E_X3Ctd_X20width_X3D_X27100_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3EName_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X27115_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3EType_X3C_X2Ftd_X3E_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3EParameter_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E_X3Ctr_X3E_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27nam_X27_X20size_X3D_X271_X27_X20value_X3D_X27_X27_X20placeholder_X3D_X27_X28optional_X29_X27_X20title_X3D_X27_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cselect_X20id_X3D_X27pi_X27_X20name_X3D_X27pi_X27_X20onchange_X3D_X27otm_X28_X22arg_X22_X2Cthis_X2Evalue_X29_X27_X3E), + /* K49 */ be_nested_str_weak(plugin_option), + /* K50 */ be_nested_str_long(_X3C_X2Fselect_X3E_X3C_X2Ftd_X3E_X3Ctd_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cinput_X20type_X3D_X27text_X27_X20id_X3D_X27arg_X27_X20name_X3D_X27arg_X27_X20size_X3D_X271_X27_X20value_X3D_X27_X27_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E_X3C_X2Ftable_X3E_X3Cdiv_X20style_X3D_X27display_X3A_X20block_X3B_X27_X3E_X3C_X2Fdiv_X3E_X3Cbutton_X20name_X3D_X27addep_X27_X20class_X3D_X27button_X20bgrn_X27_X3ECreate_X20new_X20endpoint_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3Chr_X3E_X3Cp_X3E_X3Cb_X3EAdd_X20Remote_X20Tasmota_X20or_X20OpenBK_X3C_X2Fb_X3E_X3C_X2Fp_X3E_X3Cform_X20action_X3D_X27_X2Fmatteradd_X27_X20method_X3D_X27get_X27_X3E_X3Ctable_X20style_X3D_X27width_X3A100_X25_X27_X3E_X3Ctr_X3E_X3Ctd_X20width_X3D_X2730_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3Ehttp_X3A_X2F_X2F_X3C_X2Fb_X3E_X3C_X2Ftd_X3E_X3Ctd_X3E_X3Cinput_X20type_X3D_X27text_X27_X20name_X3D_X27url_X27_X20size_X3D_X278_X27_X20value_X3D_X27_X27_X20required_X20placeholder_X3D_X27IP_X20or_X20domain_X27_X3E_X3C_X2Ftd_X3E_X3Ctd_X20width_X3D_X2710_X27_X20style_X3D_X27font_X2Dsize_X3Asmaller_X3B_X27_X3E_X3Cb_X3E_X2F_X3C_X2Fb_X3E_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E_X3C_X2Ftr_X3E_X3C_X2Ftable_X3E_X3Cdiv_X20style_X3D_X27display_X3A_X20block_X3B_X27_X3E_X3C_X2Fdiv_X3E_X3Cbutton_X20class_X3D_X27button_X20bgrn_X27_X3EAuto_X2Dconfigure_X20remote_X20Tasmota_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3Chr_X3E_X3Cform_X20action_X3D_X27_X2Fmatterc_X27_X20method_X3D_X27post_X27onsubmit_X3D_X27return_X20confirm_X28_X22This_X20will_X20RESET_X20the_X20configuration_X20to_X20the_X20default_X2E_X20You_X20will_X20need_X20to_X20associate_X20again_X2E_X22_X29_X3B_X27_X3E_X3Cbutton_X20name_X3D_X27auto_X27_X20class_X3D_X27button_X20bred_X27_X3EReset_X20all_X20and_X20Auto_X2Ddiscover_X3C_X2Fbutton_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Fform_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E), }), be_str_weak(show_plugins_configuration), &be_const_str_solidified, - ( &(const binstruction[361]) { /* code */ + ( &(const binstruction[322]) { /* code */ 0xA4060000, // 0000 IMPORT R1 K0 0xA40A0200, // 0001 IMPORT R2 K1 0xA40E0400, // 0002 IMPORT R3 K2 @@ -819,7 +805,7 @@ be_local_closure(class_Matter_UI_show_plugins_configuration, /* name */ 0x60200010, // 00A0 GETGBL R8 G16 0x5C240E00, // 00A1 MOVE R9 R7 0x7C200200, // 00A2 CALL R8 1 - 0xA8020087, // 00A3 EXBLK 0 #012C + 0xA8020084, // 00A3 EXBLK 0 #0129 0x5C241000, // 00A4 MOVE R9 R8 0x7C240000, // 00A5 CALL R9 0 0x8C280317, // 00A6 GETMET R10 R1 K23 @@ -846,177 +832,138 @@ be_local_closure(class_Matter_UI_show_plugins_configuration, /* name */ 0x8C300303, // 00BB GETMET R12 R1 K3 0x58380026, // 00BC LDCONST R14 K38 0x7C300400, // 00BD CALL R12 2 - 0x8C300303, // 00BE GETMET R12 R1 K3 - 0x58380027, // 00BF LDCONST R14 K39 - 0x7C300400, // 00C0 CALL R12 2 - 0x50180000, // 00C1 LDBOOL R6 0 0 - 0x5814000C, // 00C2 LDCONST R5 K12 - 0x6030000C, // 00C3 GETGBL R12 G12 - 0x5C340800, // 00C4 MOVE R13 R4 - 0x7C300200, // 00C5 CALL R12 1 - 0x14300A0C, // 00C6 LT R12 R5 R12 - 0x7832005F, // 00C7 JMPF R12 #0128 - 0x94300805, // 00C8 GETIDX R12 R4 R5 - 0x88340107, // 00C9 GETMBR R13 R0 K7 - 0x88341B08, // 00CA GETMBR R13 R13 K8 - 0x8C341B0D, // 00CB GETMET R13 R13 K13 - 0x603C0008, // 00CC GETGBL R15 G8 - 0x5C401800, // 00CD MOVE R16 R12 - 0x7C3C0200, // 00CE CALL R15 1 - 0x7C340400, // 00CF CALL R13 2 - 0x8C381B0D, // 00D0 GETMET R14 R13 K13 - 0x5840000E, // 00D1 LDCONST R16 K14 - 0x7C380400, // 00D2 CALL R14 2 - 0x5C3C1C00, // 00D3 MOVE R15 R14 - 0x743E0001, // 00D4 JMPT R15 #00D7 - 0x00140B0F, // 00D5 ADD R5 R5 K15 - 0x7001FFEB, // 00D6 JMP #00C3 - 0x8C3C050D, // 00D7 GETMET R15 R2 K13 - 0x5C441C00, // 00D8 MOVE R17 R14 - 0x58480010, // 00D9 LDCONST R18 K16 - 0x7C3C0600, // 00DA CALL R15 3 - 0x203C1F0C, // 00DB NE R15 R15 K12 - 0x783E0001, // 00DC JMPF R15 #00DF - 0x00140B0F, // 00DD ADD R5 R5 K15 - 0x7001FFE3, // 00DE JMP #00C3 - 0x8C3C1B0D, // 00DF GETMET R15 R13 K13 - 0x58440020, // 00E0 LDCONST R17 K32 - 0x7C3C0400, // 00E1 CALL R15 2 - 0x203C1E09, // 00E2 NE R15 R15 R9 - 0x783E0001, // 00E3 JMPF R15 #00E6 - 0x00140B0F, // 00E4 ADD R5 R5 K15 - 0x7001FFDC, // 00E5 JMP #00C3 - 0x883C0107, // 00E6 GETMBR R15 R0 K7 - 0x883C1F11, // 00E7 GETMBR R15 R15 K17 - 0x8C3C1F0D, // 00E8 GETMET R15 R15 K13 - 0x5C441C00, // 00E9 MOVE R17 R14 - 0x7C3C0400, // 00EA CALL R15 2 - 0x58400012, // 00EB LDCONST R16 K18 - 0x58440012, // 00EC LDCONST R17 K18 - 0x4C480000, // 00ED LDNIL R18 - 0x20481E12, // 00EE NE R18 R15 R18 - 0x784A0005, // 00EF JMPF R18 #00F6 - 0x8C481F13, // 00F0 GETMET R18 R15 K19 - 0x5C501E00, // 00F1 MOVE R20 R15 - 0x5C541A00, // 00F2 MOVE R21 R13 - 0x7C480600, // 00F3 CALL R18 3 - 0x5C402400, // 00F4 MOVE R16 R18 - 0x88441F14, // 00F5 GETMBR R17 R15 K20 - 0x50180200, // 00F6 LDBOOL R6 1 0 - 0x8C480303, // 00F7 GETMET R18 R1 K3 - 0x60500018, // 00F8 GETGBL R20 G24 - 0x58540028, // 00F9 LDCONST R21 K40 - 0x5C581800, // 00FA MOVE R22 R12 - 0x7C500400, // 00FB CALL R20 2 - 0x7C480400, // 00FC CALL R18 2 - 0x8C480303, // 00FD GETMET R18 R1 K3 - 0x60500018, // 00FE GETGBL R20 G24 - 0x58540029, // 00FF LDCONST R21 K41 - 0x5C581800, // 0100 MOVE R22 R12 - 0x8C5C0317, // 0101 GETMET R23 R1 K23 - 0x8C641B0D, // 0102 GETMET R25 R13 K13 - 0x586C0018, // 0103 LDCONST R27 K24 - 0x58700012, // 0104 LDCONST R28 K18 - 0x7C640600, // 0105 CALL R25 3 - 0x7C5C0400, // 0106 CALL R23 2 - 0x7C500600, // 0107 CALL R20 3 - 0x7C480400, // 0108 CALL R18 2 - 0x8C480303, // 0109 GETMET R18 R1 K3 - 0x60500018, // 010A GETGBL R20 G24 - 0x5854002A, // 010B LDCONST R21 K42 - 0x8C58011A, // 010C GETMET R22 R0 K26 - 0x8C601B0D, // 010D GETMET R24 R13 K13 - 0x5868000E, // 010E LDCONST R26 K14 - 0x586C0012, // 010F LDCONST R27 K18 - 0x7C600600, // 0110 CALL R24 3 - 0x7C580400, // 0111 CALL R22 2 - 0x7C500400, // 0112 CALL R20 2 - 0x7C480400, // 0113 CALL R18 2 - 0x8C480303, // 0114 GETMET R18 R1 K3 - 0x60500018, // 0115 GETGBL R20 G24 - 0x5854002B, // 0116 LDCONST R21 K43 - 0x5C581800, // 0117 MOVE R22 R12 - 0x8C5C0317, // 0118 GETMET R23 R1 K23 - 0x5C642000, // 0119 MOVE R25 R16 - 0x7C5C0400, // 011A CALL R23 2 - 0x8C600317, // 011B GETMET R24 R1 K23 - 0x5C682200, // 011C MOVE R26 R17 - 0x7C600400, // 011D CALL R24 2 - 0x7C500800, // 011E CALL R20 4 - 0x7C480400, // 011F CALL R18 2 - 0x8C480303, // 0120 GETMET R18 R1 K3 - 0x60500018, // 0121 GETGBL R20 G24 - 0x5854002C, // 0122 LDCONST R21 K44 - 0x5C581800, // 0123 MOVE R22 R12 - 0x7C500400, // 0124 CALL R20 2 - 0x7C480400, // 0125 CALL R18 2 - 0x00140B0F, // 0126 ADD R5 R5 K15 - 0x7001FF9A, // 0127 JMP #00C3 - 0x8C300303, // 0128 GETMET R12 R1 K3 - 0x5838002D, // 0129 LDCONST R14 K45 - 0x7C300400, // 012A CALL R12 2 - 0x7001FF77, // 012B JMP #00A4 - 0x58200022, // 012C LDCONST R8 K34 - 0xAC200200, // 012D CATCH R8 1 0 - 0xB0080000, // 012E RAISE 2 R0 R0 - 0x5C200C00, // 012F MOVE R8 R6 - 0x74220002, // 0130 JMPT R8 #0134 + 0x50180000, // 00BE LDBOOL R6 0 0 + 0x5814000C, // 00BF LDCONST R5 K12 + 0x6030000C, // 00C0 GETGBL R12 G12 + 0x5C340800, // 00C1 MOVE R13 R4 + 0x7C300200, // 00C2 CALL R12 1 + 0x14300A0C, // 00C3 LT R12 R5 R12 + 0x7832005F, // 00C4 JMPF R12 #0125 + 0x94300805, // 00C5 GETIDX R12 R4 R5 + 0x88340107, // 00C6 GETMBR R13 R0 K7 + 0x88341B08, // 00C7 GETMBR R13 R13 K8 + 0x8C341B0D, // 00C8 GETMET R13 R13 K13 + 0x603C0008, // 00C9 GETGBL R15 G8 + 0x5C401800, // 00CA MOVE R16 R12 + 0x7C3C0200, // 00CB CALL R15 1 + 0x7C340400, // 00CC CALL R13 2 + 0x8C381B0D, // 00CD GETMET R14 R13 K13 + 0x5840000E, // 00CE LDCONST R16 K14 + 0x7C380400, // 00CF CALL R14 2 + 0x5C3C1C00, // 00D0 MOVE R15 R14 + 0x743E0001, // 00D1 JMPT R15 #00D4 + 0x00140B0F, // 00D2 ADD R5 R5 K15 + 0x7001FFEB, // 00D3 JMP #00C0 + 0x8C3C050D, // 00D4 GETMET R15 R2 K13 + 0x5C441C00, // 00D5 MOVE R17 R14 + 0x58480010, // 00D6 LDCONST R18 K16 + 0x7C3C0600, // 00D7 CALL R15 3 + 0x203C1F0C, // 00D8 NE R15 R15 K12 + 0x783E0001, // 00D9 JMPF R15 #00DC + 0x00140B0F, // 00DA ADD R5 R5 K15 + 0x7001FFE3, // 00DB JMP #00C0 + 0x8C3C1B0D, // 00DC GETMET R15 R13 K13 + 0x58440020, // 00DD LDCONST R17 K32 + 0x7C3C0400, // 00DE CALL R15 2 + 0x203C1E09, // 00DF NE R15 R15 R9 + 0x783E0001, // 00E0 JMPF R15 #00E3 + 0x00140B0F, // 00E1 ADD R5 R5 K15 + 0x7001FFDC, // 00E2 JMP #00C0 + 0x883C0107, // 00E3 GETMBR R15 R0 K7 + 0x883C1F11, // 00E4 GETMBR R15 R15 K17 + 0x8C3C1F0D, // 00E5 GETMET R15 R15 K13 + 0x5C441C00, // 00E6 MOVE R17 R14 + 0x7C3C0400, // 00E7 CALL R15 2 + 0x58400012, // 00E8 LDCONST R16 K18 + 0x58440012, // 00E9 LDCONST R17 K18 + 0x4C480000, // 00EA LDNIL R18 + 0x20481E12, // 00EB NE R18 R15 R18 + 0x784A0005, // 00EC JMPF R18 #00F3 + 0x8C481F13, // 00ED GETMET R18 R15 K19 + 0x5C501E00, // 00EE MOVE R20 R15 + 0x5C541A00, // 00EF MOVE R21 R13 + 0x7C480600, // 00F0 CALL R18 3 + 0x5C402400, // 00F1 MOVE R16 R18 + 0x88441F14, // 00F2 GETMBR R17 R15 K20 + 0x50180200, // 00F3 LDBOOL R6 1 0 + 0x8C480303, // 00F4 GETMET R18 R1 K3 + 0x60500018, // 00F5 GETGBL R20 G24 + 0x58540027, // 00F6 LDCONST R21 K39 + 0x5C581800, // 00F7 MOVE R22 R12 + 0x7C500400, // 00F8 CALL R20 2 + 0x7C480400, // 00F9 CALL R18 2 + 0x8C480303, // 00FA GETMET R18 R1 K3 + 0x60500018, // 00FB GETGBL R20 G24 + 0x58540028, // 00FC LDCONST R21 K40 + 0x5C581800, // 00FD MOVE R22 R12 + 0x8C5C0317, // 00FE GETMET R23 R1 K23 + 0x8C641B0D, // 00FF GETMET R25 R13 K13 + 0x586C0018, // 0100 LDCONST R27 K24 + 0x58700012, // 0101 LDCONST R28 K18 + 0x7C640600, // 0102 CALL R25 3 + 0x7C5C0400, // 0103 CALL R23 2 + 0x7C500600, // 0104 CALL R20 3 + 0x7C480400, // 0105 CALL R18 2 + 0x8C480303, // 0106 GETMET R18 R1 K3 + 0x60500018, // 0107 GETGBL R20 G24 + 0x58540029, // 0108 LDCONST R21 K41 + 0x8C58011A, // 0109 GETMET R22 R0 K26 + 0x8C601B0D, // 010A GETMET R24 R13 K13 + 0x5868000E, // 010B LDCONST R26 K14 + 0x586C0012, // 010C LDCONST R27 K18 + 0x7C600600, // 010D CALL R24 3 + 0x7C580400, // 010E CALL R22 2 + 0x7C500400, // 010F CALL R20 2 + 0x7C480400, // 0110 CALL R18 2 + 0x8C480303, // 0111 GETMET R18 R1 K3 + 0x60500018, // 0112 GETGBL R20 G24 + 0x5854002A, // 0113 LDCONST R21 K42 + 0x5C581800, // 0114 MOVE R22 R12 + 0x8C5C0317, // 0115 GETMET R23 R1 K23 + 0x5C642000, // 0116 MOVE R25 R16 + 0x7C5C0400, // 0117 CALL R23 2 + 0x8C600317, // 0118 GETMET R24 R1 K23 + 0x5C682200, // 0119 MOVE R26 R17 + 0x7C600400, // 011A CALL R24 2 + 0x7C500800, // 011B CALL R20 4 + 0x7C480400, // 011C CALL R18 2 + 0x8C480303, // 011D GETMET R18 R1 K3 + 0x60500018, // 011E GETGBL R20 G24 + 0x5854002B, // 011F LDCONST R21 K43 + 0x5C581800, // 0120 MOVE R22 R12 + 0x7C500400, // 0121 CALL R20 2 + 0x7C480400, // 0122 CALL R18 2 + 0x00140B0F, // 0123 ADD R5 R5 K15 + 0x7001FF9A, // 0124 JMP #00C0 + 0x8C300303, // 0125 GETMET R12 R1 K3 + 0x5838002C, // 0126 LDCONST R14 K44 + 0x7C300400, // 0127 CALL R12 2 + 0x7001FF7A, // 0128 JMP #00A4 + 0x58200022, // 0129 LDCONST R8 K34 + 0xAC200200, // 012A CATCH R8 1 0 + 0xB0080000, // 012B RAISE 2 R0 R0 + 0x5C200C00, // 012C MOVE R8 R6 + 0x74220002, // 012D JMPT R8 #0131 + 0x8C200303, // 012E GETMET R8 R1 K3 + 0x5828001E, // 012F LDCONST R10 K30 + 0x7C200400, // 0130 CALL R8 2 0x8C200303, // 0131 GETMET R8 R1 K3 - 0x5828001E, // 0132 LDCONST R10 K30 + 0x5828002D, // 0132 LDCONST R10 K45 0x7C200400, // 0133 CALL R8 2 - 0x8C200303, // 0134 GETMET R8 R1 K3 - 0x5828002E, // 0135 LDCONST R10 K46 + 0x8C20012E, // 0134 GETMET R8 R0 K46 + 0x8828012F, // 0135 GETMBR R10 R0 K47 0x7C200400, // 0136 CALL R8 2 - 0x8C20012F, // 0137 GETMET R8 R0 K47 - 0x88280130, // 0138 GETMBR R10 R0 K48 + 0x8C200303, // 0137 GETMET R8 R1 K3 + 0x58280030, // 0138 LDCONST R10 K48 0x7C200400, // 0139 CALL R8 2 - 0x8C200303, // 013A GETMET R8 R1 K3 - 0x58280031, // 013B LDCONST R10 K49 - 0x7C200400, // 013C CALL R8 2 - 0x8C200303, // 013D GETMET R8 R1 K3 - 0x58280032, // 013E LDCONST R10 K50 - 0x7C200400, // 013F CALL R8 2 - 0x8C200303, // 0140 GETMET R8 R1 K3 - 0x58280033, // 0141 LDCONST R10 K51 - 0x7C200400, // 0142 CALL R8 2 - 0x8C200303, // 0143 GETMET R8 R1 K3 - 0x58280034, // 0144 LDCONST R10 K52 - 0x7C200400, // 0145 CALL R8 2 - 0x8C200135, // 0146 GETMET R8 R0 K53 - 0x58280012, // 0147 LDCONST R10 K18 - 0x882C0130, // 0148 GETMBR R11 R0 K48 - 0x7C200600, // 0149 CALL R8 3 - 0x8C200303, // 014A GETMET R8 R1 K3 - 0x58280036, // 014B LDCONST R10 K54 - 0x7C200400, // 014C CALL R8 2 - 0x8C200303, // 014D GETMET R8 R1 K3 - 0x58280037, // 014E LDCONST R10 K55 - 0x7C200400, // 014F CALL R8 2 - 0x8C200303, // 0150 GETMET R8 R1 K3 - 0x58280038, // 0151 LDCONST R10 K56 - 0x7C200400, // 0152 CALL R8 2 - 0x8C200303, // 0153 GETMET R8 R1 K3 - 0x58280039, // 0154 LDCONST R10 K57 - 0x7C200400, // 0155 CALL R8 2 - 0x8C200303, // 0156 GETMET R8 R1 K3 - 0x5828003A, // 0157 LDCONST R10 K58 - 0x7C200400, // 0158 CALL R8 2 - 0x8C200303, // 0159 GETMET R8 R1 K3 - 0x5828003B, // 015A LDCONST R10 K59 - 0x7C200400, // 015B CALL R8 2 - 0x8C200303, // 015C GETMET R8 R1 K3 - 0x58280038, // 015D LDCONST R10 K56 - 0x7C200400, // 015E CALL R8 2 - 0x8C200303, // 015F GETMET R8 R1 K3 - 0x5828003C, // 0160 LDCONST R10 K60 - 0x7C200400, // 0161 CALL R8 2 - 0x8C200303, // 0162 GETMET R8 R1 K3 - 0x5828003D, // 0163 LDCONST R10 K61 - 0x7C200400, // 0164 CALL R8 2 - 0x8C200303, // 0165 GETMET R8 R1 K3 - 0x5828003E, // 0166 LDCONST R10 K62 - 0x7C200400, // 0167 CALL R8 2 - 0x80000000, // 0168 RET 0 + 0x8C200131, // 013A GETMET R8 R0 K49 + 0x58280012, // 013B LDCONST R10 K18 + 0x882C012F, // 013C GETMBR R11 R0 K47 + 0x7C200600, // 013D CALL R8 3 + 0x8C200303, // 013E GETMET R8 R1 K3 + 0x58280032, // 013F LDCONST R10 K50 + 0x7C200400, // 0140 CALL R8 2 + 0x80000000, // 0141 RET 0 }) ) ); @@ -1139,7 +1086,7 @@ be_local_closure(class_Matter_UI_show_remote_autoconf, /* name */ 0, /* has sup protos */ NULL, /* no sub protos */ 1, /* has constants */ - ( &(const bvalue[46]) { /* constants */ + ( &(const bvalue[43]) { /* constants */ /* K0 */ be_nested_str_weak(webserver), /* K1 */ be_nested_str_weak(json), /* K2 */ be_nested_str_weak(), @@ -1181,15 +1128,12 @@ be_local_closure(class_Matter_UI_show_remote_autoconf, /* name */ /* K38 */ be_nested_str_weak(_X3C_X2Ftd_X3E_X3C_X2Ftr_X3E), /* K39 */ be_const_int(1), /* K40 */ be_nested_str_weak(_X3Cinput_X20type_X3D_X27text_X27_X20id_X3D_X27arg_X25i_X27_X20name_X3D_X27arg_X25i_X27_X20size_X3D_X271_X27_X20value_X3D_X27_X25s_X27_X3E), - /* K41 */ be_nested_str_weak(_X3C_X2Ftable_X3E), - /* K42 */ be_nested_str_weak(_X3Cdiv_X20style_X3D_X27display_X3A_X20block_X3B_X27_X3E_X3C_X2Fdiv_X3E), - /* K43 */ be_nested_str_weak(_X3Cbutton_X20name_X3D_X27addrem_X27_X20class_X3D_X27button_X20bgrn_X27_X3EAdd_X20endpoints_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E), - /* K44 */ be_nested_str_weak(_X3C_X2Fform_X3E_X3C_X2Ffieldset_X3E), - /* K45 */ be_nested_str_weak(_X3Cp_X3E_X3Cb_X3EUnable_X20to_X20connect_X20to_X20_X27_X25s_X27_X3C_X2Fb_X3E_X3C_X2Fp_X3E), + /* K41 */ be_nested_str_weak(_X3C_X2Ftable_X3E_X3Cdiv_X20style_X3D_X27display_X3A_X20block_X3B_X27_X3E_X3C_X2Fdiv_X3E_X3Cbutton_X20name_X3D_X27addrem_X27_X20class_X3D_X27button_X20bgrn_X27_X3EAdd_X20endpoints_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fform_X3E_X3C_X2Ffieldset_X3E), + /* K42 */ be_nested_str_weak(_X3Cp_X3E_X3Cb_X3EUnable_X20to_X20connect_X20to_X20_X27_X25s_X27_X3C_X2Fb_X3E_X3C_X2Fp_X3E), }), be_str_weak(show_remote_autoconf), &be_const_str_solidified, - ( &(const binstruction[229]) { /* code */ + ( &(const binstruction[220]) { /* code */ 0xA40A0000, // 0000 IMPORT R2 K0 0xA40E0200, // 0001 IMPORT R3 K1 0x1C100302, // 0002 EQ R4 R1 K2 @@ -1247,10 +1191,10 @@ be_local_closure(class_Matter_UI_show_remote_autoconf, /* name */ 0x5C1C1000, // 0036 MOVE R7 R8 0x4C200000, // 0037 LDNIL R8 0x20200C08, // 0038 NE R8 R6 R8 - 0x782200A1, // 0039 JMPF R8 #00DC + 0x78220098, // 0039 JMPF R8 #00D3 0x4C200000, // 003A LDNIL R8 0x20200E08, // 003B NE R8 R7 R8 - 0x7822009E, // 003C JMPF R8 #00DC + 0x78220095, // 003C JMPF R8 #00D3 0xB8221C00, // 003D GETNGBL R8 K14 0x60240018, // 003E GETGBL R9 G24 0x5828000F, // 003F LDCONST R10 K15 @@ -1400,25 +1344,16 @@ be_local_closure(class_Matter_UI_show_remote_autoconf, /* name */ 0x8C2C0514, // 00CF GETMET R11 R2 K20 0x58340029, // 00D0 LDCONST R13 K41 0x7C2C0400, // 00D1 CALL R11 2 - 0x8C2C0514, // 00D2 GETMET R11 R2 K20 - 0x5834002A, // 00D3 LDCONST R13 K42 - 0x7C2C0400, // 00D4 CALL R11 2 - 0x8C2C0514, // 00D5 GETMET R11 R2 K20 - 0x5834002B, // 00D6 LDCONST R13 K43 - 0x7C2C0400, // 00D7 CALL R11 2 - 0x8C2C0514, // 00D8 GETMET R11 R2 K20 - 0x5834002C, // 00D9 LDCONST R13 K44 - 0x7C2C0400, // 00DA CALL R11 2 - 0x70020007, // 00DB JMP #00E4 - 0x8C200514, // 00DC GETMET R8 R2 K20 - 0x60280018, // 00DD GETGBL R10 G24 - 0x582C002D, // 00DE LDCONST R11 K45 - 0x8C300516, // 00DF GETMET R12 R2 K22 - 0x5C380200, // 00E0 MOVE R14 R1 - 0x7C300400, // 00E1 CALL R12 2 - 0x7C280400, // 00E2 CALL R10 2 - 0x7C200400, // 00E3 CALL R8 2 - 0x80000000, // 00E4 RET 0 + 0x70020007, // 00D2 JMP #00DB + 0x8C200514, // 00D3 GETMET R8 R2 K20 + 0x60280018, // 00D4 GETGBL R10 G24 + 0x582C002A, // 00D5 LDCONST R11 K42 + 0x8C300516, // 00D6 GETMET R12 R2 K22 + 0x5C380200, // 00D7 MOVE R14 R1 + 0x7C300400, // 00D8 CALL R12 2 + 0x7C280400, // 00D9 CALL R10 2 + 0x7C200400, // 00DA CALL R8 2 + 0x80000000, // 00DB RET 0 }) ) ); @@ -1464,13 +1399,13 @@ be_local_closure(class_Matter_UI_show_fabric_info, /* name */ /* K22 */ be_nested_str_weak(Device_X3A_X20_X25s_X3Cbr_X3E_X26nbsp_X3B), /* K23 */ be_nested_str_weak(_X3Cform_X20action_X3D_X27_X2Fmatterc_X27_X20method_X3D_X27post_X27_X20onsubmit_X3D_X27return_X20confirm_X28_X22Are_X20you_X20sure_X3F_X22_X29_X3B_X27_X3E), /* K24 */ be_nested_str_weak(_X3Cinput_X20name_X3D_X27del_fabric_X27_X20type_X3D_X27hidden_X27_X20value_X3D_X27_X25i_X27_X3E), - /* K25 */ be_nested_str_weak(_X3Cbutton_X20name_X3D_X27del_X27_X20class_X3D_X27button_X20bgrn_X27_X3EDelete_X20Fabric_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fp_X3E), - /* K26 */ be_nested_str_weak(_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E_X3Cp_X3E_X3C_X2Fp_X3E), - /* K27 */ be_nested_str_weak(stop_iteration), + /* K25 */ be_nested_str_weak(_X3Cbutton_X20name_X3D_X27del_X27_X20class_X3D_X27button_X20bgrn_X27_X3EDelete_X20Fabric_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fp_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E_X3Cp_X3E_X3C_X2Fp_X3E), + /* K26 */ be_nested_str_weak(stop_iteration), + /* K27 */ be_nested_str_weak(_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E_X3Cp_X3E_X3C_X2Fp_X3E), }), be_str_weak(show_fabric_info), &be_const_str_solidified, - ( &(const binstruction[100]) { /* code */ + ( &(const binstruction[97]) { /* code */ 0xA4060000, // 0000 IMPORT R1 K0 0x8C080301, // 0001 GETMET R2 R1 K1 0x58100002, // 0002 LDCONST R4 K2 @@ -1485,7 +1420,7 @@ be_local_closure(class_Matter_UI_show_fabric_info, /* name */ 0x8C080301, // 000B GETMET R2 R1 K1 0x58100006, // 000C LDCONST R4 K6 0x7C080400, // 000D CALL R2 2 - 0x70020050, // 000E JMP #0060 + 0x7002004D, // 000E JMP #005D 0x50080200, // 000F LDBOOL R2 1 0 0x600C0010, // 0010 GETGBL R3 G16 0x88100103, // 0011 GETMBR R4 R0 K3 @@ -1494,7 +1429,7 @@ be_local_closure(class_Matter_UI_show_fabric_info, /* name */ 0x8C100908, // 0014 GETMET R4 R4 K8 0x7C100200, // 0015 CALL R4 1 0x7C0C0200, // 0016 CALL R3 1 - 0xA8020044, // 0017 EXBLK 0 #005D + 0xA8020041, // 0017 EXBLK 0 #005A 0x5C100600, // 0018 MOVE R4 R3 0x7C100000, // 0019 CALL R4 0 0x5C140400, // 001A MOVE R5 R2 @@ -1560,17 +1495,14 @@ be_local_closure(class_Matter_UI_show_fabric_info, /* name */ 0x8C200301, // 0056 GETMET R8 R1 K1 0x58280019, // 0057 LDCONST R10 K25 0x7C200400, // 0058 CALL R8 2 - 0x8C200301, // 0059 GETMET R8 R1 K1 - 0x5828001A, // 005A LDCONST R10 K26 - 0x7C200400, // 005B CALL R8 2 - 0x7001FFBA, // 005C JMP #0018 - 0x580C001B, // 005D LDCONST R3 K27 - 0xAC0C0200, // 005E CATCH R3 1 0 - 0xB0080000, // 005F RAISE 2 R0 R0 - 0x8C080301, // 0060 GETMET R2 R1 K1 - 0x5810001A, // 0061 LDCONST R4 K26 - 0x7C080400, // 0062 CALL R2 2 - 0x80000000, // 0063 RET 0 + 0x7001FFBD, // 0059 JMP #0018 + 0x580C001A, // 005A LDCONST R3 K26 + 0xAC0C0200, // 005B CATCH R3 1 0 + 0xB0080000, // 005C RAISE 2 R0 R0 + 0x8C080301, // 005D GETMET R2 R1 K1 + 0x5810001B, // 005E LDCONST R4 K27 + 0x7C080400, // 005F CALL R2 2 + 0x80000000, // 0060 RET 0 }) ) ); @@ -2128,66 +2060,62 @@ be_local_closure(class_Matter_UI_show_passcode_form, /* name */ 0, /* has sup protos */ NULL, /* no sub protos */ 1, /* has constants */ - ( &(const bvalue[15]) { /* constants */ + ( &(const bvalue[14]) { /* constants */ /* K0 */ be_nested_str_weak(webserver), /* K1 */ be_nested_str_weak(content_send), - /* K2 */ be_nested_str_weak(_X3Cfieldset_X3E_X3Clegend_X3E_X3Cb_X3E_X26nbsp_X3BMatter_X20Advanced_X20Configuration_X26nbsp_X3B_X3C_X2Fb_X3E_X3C_X2Flegend_X3E_X3Cp_X3E_X3C_X2Fp_X3E), - /* K3 */ be_nested_str_weak(_X3Cform_X20action_X3D_X27_X2Fmatterc_X27_X20method_X3D_X27post_X27_X20onsubmit_X3D_X27return_X20confirm_X28_X22This_X20will_X20cause_X20a_X20restart_X2E_X22_X29_X3B_X27_X3E_X3Cp_X3EPasscode_X3A_X3C_X2Fp_X3E), - /* K4 */ be_nested_str_weak(_X3Cinput_X20type_X3D_X27number_X27_X20min_X3D_X271_X27_X20max_X3D_X2799999998_X27_X20name_X3D_X27passcode_X27_X20value_X3D_X27_X25i_X27_X3E), - /* K5 */ be_nested_str_weak(device), - /* K6 */ be_nested_str_weak(root_passcode), - /* K7 */ be_nested_str_weak(_X3Cp_X3EDistinguish_X20id_X3A_X3C_X2Fp_X3E), - /* K8 */ be_nested_str_weak(_X3Cinput_X20type_X3D_X27number_X27_X20min_X3D_X270_X27_X20max_X3D_X274095_X27_X20name_X3D_X27discriminator_X27_X20value_X3D_X27_X25i_X27_X3E), - /* K9 */ be_nested_str_weak(root_discriminator), - /* K10 */ be_nested_str_weak(ipv4only), - /* K11 */ be_nested_str_weak(_X20checked), - /* K12 */ be_nested_str_weak(), - /* K13 */ be_nested_str_weak(_X3Cp_X3E_X3Cinput_X20type_X3D_X27checkbox_X27_X20name_X3D_X27ipv4_X27_X25s_X3EIPv4_X20only_X3C_X2Fp_X3E), - /* K14 */ be_nested_str_weak(_X3Cp_X3E_X3C_X2Fp_X3E_X3Cbutton_X20name_X3D_X27passcode_X27_X20class_X3D_X27button_X20bgrn_X27_X3EChange_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fp_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E_X3Cp_X3E_X3C_X2Fp_X3E), + /* K2 */ be_nested_str_weak(_X3Cfieldset_X3E_X3Clegend_X3E_X3Cb_X3E_X26nbsp_X3BMatter_X20Advanced_X20Configuration_X26nbsp_X3B_X3C_X2Fb_X3E_X3C_X2Flegend_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3Cform_X20action_X3D_X27_X2Fmatterc_X27_X20method_X3D_X27post_X27_X20onsubmit_X3D_X27return_X20confirm_X28_X22This_X20will_X20cause_X20a_X20restart_X2E_X22_X29_X3B_X27_X3E_X3Cp_X3EPasscode_X3A_X3C_X2Fp_X3E), + /* K3 */ be_nested_str_weak(_X3Cinput_X20type_X3D_X27number_X27_X20min_X3D_X271_X27_X20max_X3D_X2799999998_X27_X20name_X3D_X27passcode_X27_X20value_X3D_X27_X25i_X27_X3E), + /* K4 */ be_nested_str_weak(device), + /* K5 */ be_nested_str_weak(root_passcode), + /* K6 */ be_nested_str_weak(_X3Cp_X3EDistinguish_X20id_X3A_X3C_X2Fp_X3E), + /* K7 */ be_nested_str_weak(_X3Cinput_X20type_X3D_X27number_X27_X20min_X3D_X270_X27_X20max_X3D_X274095_X27_X20name_X3D_X27discriminator_X27_X20value_X3D_X27_X25i_X27_X3E), + /* K8 */ be_nested_str_weak(root_discriminator), + /* K9 */ be_nested_str_weak(ipv4only), + /* K10 */ be_nested_str_weak(_X20checked), + /* K11 */ be_nested_str_weak(), + /* K12 */ be_nested_str_weak(_X3Cp_X3E_X3Cinput_X20type_X3D_X27checkbox_X27_X20name_X3D_X27ipv4_X27_X25s_X3EIPv4_X20only_X3C_X2Fp_X3E), + /* K13 */ be_nested_str_weak(_X3Cp_X3E_X3C_X2Fp_X3E_X3Cbutton_X20name_X3D_X27passcode_X27_X20class_X3D_X27button_X20bgrn_X27_X3EChange_X3C_X2Fbutton_X3E_X3C_X2Fform_X3E_X3C_X2Fp_X3E_X3Cp_X3E_X3C_X2Fp_X3E_X3C_X2Ffieldset_X3E_X3Cp_X3E_X3C_X2Fp_X3E), }), be_str_weak(show_passcode_form), &be_const_str_solidified, - ( &(const binstruction[40]) { /* code */ + ( &(const binstruction[37]) { /* code */ 0xA4060000, // 0000 IMPORT R1 K0 0x8C080301, // 0001 GETMET R2 R1 K1 0x58100002, // 0002 LDCONST R4 K2 0x7C080400, // 0003 CALL R2 2 0x8C080301, // 0004 GETMET R2 R1 K1 - 0x58100003, // 0005 LDCONST R4 K3 - 0x7C080400, // 0006 CALL R2 2 - 0x8C080301, // 0007 GETMET R2 R1 K1 - 0x60100018, // 0008 GETGBL R4 G24 - 0x58140004, // 0009 LDCONST R5 K4 - 0x88180105, // 000A GETMBR R6 R0 K5 - 0x88180D06, // 000B GETMBR R6 R6 K6 - 0x7C100400, // 000C CALL R4 2 + 0x60100018, // 0005 GETGBL R4 G24 + 0x58140003, // 0006 LDCONST R5 K3 + 0x88180104, // 0007 GETMBR R6 R0 K4 + 0x88180D05, // 0008 GETMBR R6 R6 K5 + 0x7C100400, // 0009 CALL R4 2 + 0x7C080400, // 000A CALL R2 2 + 0x8C080301, // 000B GETMET R2 R1 K1 + 0x58100006, // 000C LDCONST R4 K6 0x7C080400, // 000D CALL R2 2 0x8C080301, // 000E GETMET R2 R1 K1 - 0x58100007, // 000F LDCONST R4 K7 - 0x7C080400, // 0010 CALL R2 2 - 0x8C080301, // 0011 GETMET R2 R1 K1 - 0x60100018, // 0012 GETGBL R4 G24 - 0x58140008, // 0013 LDCONST R5 K8 - 0x88180105, // 0014 GETMBR R6 R0 K5 - 0x88180D09, // 0015 GETMBR R6 R6 K9 - 0x7C100400, // 0016 CALL R4 2 - 0x7C080400, // 0017 CALL R2 2 - 0x88080105, // 0018 GETMBR R2 R0 K5 - 0x8808050A, // 0019 GETMBR R2 R2 K10 - 0x780A0001, // 001A JMPF R2 #001D - 0x5808000B, // 001B LDCONST R2 K11 - 0x70020000, // 001C JMP #001E - 0x5808000C, // 001D LDCONST R2 K12 - 0x8C0C0301, // 001E GETMET R3 R1 K1 - 0x60140018, // 001F GETGBL R5 G24 - 0x5818000D, // 0020 LDCONST R6 K13 - 0x5C1C0400, // 0021 MOVE R7 R2 - 0x7C140400, // 0022 CALL R5 2 + 0x60100018, // 000F GETGBL R4 G24 + 0x58140007, // 0010 LDCONST R5 K7 + 0x88180104, // 0011 GETMBR R6 R0 K4 + 0x88180D08, // 0012 GETMBR R6 R6 K8 + 0x7C100400, // 0013 CALL R4 2 + 0x7C080400, // 0014 CALL R2 2 + 0x88080104, // 0015 GETMBR R2 R0 K4 + 0x88080509, // 0016 GETMBR R2 R2 K9 + 0x780A0001, // 0017 JMPF R2 #001A + 0x5808000A, // 0018 LDCONST R2 K10 + 0x70020000, // 0019 JMP #001B + 0x5808000B, // 001A LDCONST R2 K11 + 0x8C0C0301, // 001B GETMET R3 R1 K1 + 0x60140018, // 001C GETGBL R5 G24 + 0x5818000C, // 001D LDCONST R6 K12 + 0x5C1C0400, // 001E MOVE R7 R2 + 0x7C140400, // 001F CALL R5 2 + 0x7C0C0400, // 0020 CALL R3 2 + 0x8C0C0301, // 0021 GETMET R3 R1 K1 + 0x5814000D, // 0022 LDCONST R5 K13 0x7C0C0400, // 0023 CALL R3 2 - 0x8C0C0301, // 0024 GETMET R3 R1 K1 - 0x5814000E, // 0025 LDCONST R5 K14 - 0x7C0C0400, // 0026 CALL R3 2 - 0x80000000, // 0027 RET 0 + 0x80000000, // 0024 RET 0 }) ) ); @@ -2207,7 +2135,7 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ 0, /* has sup protos */ NULL, /* no sub protos */ 1, /* has constants */ - ( &(const bvalue[102]) { /* constants */ + ( &(const bvalue[103]) { /* constants */ /* K0 */ be_nested_str_weak(webserver), /* K1 */ be_nested_str_weak(check_privileged_access), /* K2 */ be_nested_str_weak(string), @@ -2258,7 +2186,7 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ /* K47 */ be_const_int(1), /* K48 */ be_nested_str_weak(_X2Fmattera_X3F), /* K49 */ be_nested_str_weak(auto), - /* K50 */ be_nested_str_weak(plugins_persist), + /* K50 */ be_nested_str_weak(reset_param), /* K51 */ be_nested_str_weak(config), /* K52 */ be_nested_str_weak(arg_size), /* K53 */ be_nested_str_weak(arg_name), @@ -2285,35 +2213,36 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ /* K74 */ be_nested_str_weak(stop_iteration), /* K75 */ be_nested_str_weak(MTR_X3A_X20config_X20_X3D_X20_X25s), /* K76 */ be_nested_str_weak(MTR_X3A_X20config_X20error_X20_X3D_X20_X25s), - /* K77 */ be_nested_str_weak(_X2Fmatterc_X3F), - /* K78 */ be_nested_str_weak(addep), - /* K79 */ be_nested_str_weak(pi), - /* K80 */ be_nested_str_weak(MTR_X3A_X20add_X20endpoint_X20typ_X3D_X27_X25s_X27_X20arg_X3D_X27_X25s_X27), - /* K81 */ be_nested_str_weak(bridge_add_endpoint), - /* K82 */ be_nested_str_weak(addrem), - /* K83 */ be_nested_str_weak(url), - /* K84 */ be_nested_str_weak(value_error), - /* K85 */ be_nested_str_weak(url_X20shouldn_X27t_X20be_X20null), - /* K86 */ be_nested_str_weak(equal_map), - /* K87 */ be_nested_str_weak(MTR_X3A_X20remote_X20add_X20url_X3D_X27_X25s_X27_X20type_X3D_X27_X25s_X27_X20arg_X3D_X27_X25s_X27), - /* K88 */ be_nested_str_weak(del), - /* K89 */ be_nested_str_weak(bridge_remove_endpoint), - /* K90 */ be_nested_str_weak(content_start), - /* K91 */ be_nested_str_weak(Parameter_X20error), - /* K92 */ be_nested_str_weak(content_send_style), - /* K93 */ be_nested_str_weak(content_send), - /* K94 */ be_nested_str_weak(_X3Cp_X20style_X3D_X27width_X3A340px_X3B_X27_X3E_X3Cb_X3EError_X3A_X3C_X2Fb_X3E_X25s_X3C_X2Fp_X3E), - /* K95 */ be_nested_str_weak(html_escape), - /* K96 */ be_nested_str_weak(content_button), - /* K97 */ be_nested_str_weak(BUTTON_CONFIGURATION), - /* K98 */ be_nested_str_weak(content_stop), - /* K99 */ be_nested_str_weak(BRY_X3A_X20Exception_X3E_X20_X27_X25s_X27_X20_X2D_X20_X25s), - /* K100 */ be_const_int(2), - /* K101 */ be_nested_str_weak(_X3Cp_X20style_X3D_X27width_X3A340px_X3B_X27_X3E_X3Cb_X3EException_X3A_X3C_X2Fb_X3E_X3Cbr_X3E_X27_X25s_X27_X3Cbr_X3E_X25s_X3C_X2Fp_X3E), + /* K77 */ be_nested_str_weak(plugins_persist), + /* K78 */ be_nested_str_weak(_X2Fmatterc_X3F), + /* K79 */ be_nested_str_weak(addep), + /* K80 */ be_nested_str_weak(pi), + /* K81 */ be_nested_str_weak(MTR_X3A_X20add_X20endpoint_X20typ_X3D_X27_X25s_X27_X20arg_X3D_X27_X25s_X27), + /* K82 */ be_nested_str_weak(bridge_add_endpoint), + /* K83 */ be_nested_str_weak(addrem), + /* K84 */ be_nested_str_weak(url), + /* K85 */ be_nested_str_weak(value_error), + /* K86 */ be_nested_str_weak(url_X20shouldn_X27t_X20be_X20null), + /* K87 */ be_nested_str_weak(equal_map), + /* K88 */ be_nested_str_weak(MTR_X3A_X20remote_X20add_X20url_X3D_X27_X25s_X27_X20type_X3D_X27_X25s_X27_X20arg_X3D_X27_X25s_X27), + /* K89 */ be_nested_str_weak(del), + /* K90 */ be_nested_str_weak(bridge_remove_endpoint), + /* K91 */ be_nested_str_weak(content_start), + /* K92 */ be_nested_str_weak(Parameter_X20error), + /* K93 */ be_nested_str_weak(content_send_style), + /* K94 */ be_nested_str_weak(content_send), + /* K95 */ be_nested_str_weak(_X3Cp_X20style_X3D_X27width_X3A340px_X3B_X27_X3E_X3Cb_X3EError_X3A_X3C_X2Fb_X3E_X25s_X3C_X2Fp_X3E), + /* K96 */ be_nested_str_weak(html_escape), + /* K97 */ be_nested_str_weak(content_button), + /* K98 */ be_nested_str_weak(BUTTON_CONFIGURATION), + /* K99 */ be_nested_str_weak(content_stop), + /* K100 */ be_nested_str_weak(BRY_X3A_X20Exception_X3E_X20_X27_X25s_X27_X20_X2D_X20_X25s), + /* K101 */ be_const_int(2), + /* K102 */ be_nested_str_weak(_X3Cp_X20style_X3D_X27width_X3A340px_X3B_X27_X3E_X3Cb_X3EException_X3A_X3C_X2Fb_X3E_X3Cbr_X3E_X27_X25s_X27_X3Cbr_X3E_X25s_X3C_X2Fp_X3E), }), be_str_weak(page_part_ctl), &be_const_str_solidified, - ( &(const binstruction[661]) { /* code */ + ( &(const binstruction[658]) { /* code */ 0xA4060000, // 0000 IMPORT R1 K0 0x8C080301, // 0001 GETMET R2 R1 K1 0x7C080200, // 0002 CALL R2 1 @@ -2324,7 +2253,7 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ 0xA40E0600, // 0007 IMPORT R3 K3 0xA4120800, // 0008 IMPORT R4 K4 0x4C140000, // 0009 LDNIL R5 - 0xA802026B, // 000A EXBLK 0 #0277 + 0xA8020268, // 000A EXBLK 0 #0274 0x8C180305, // 000B GETMET R6 R1 K5 0x58200006, // 000C LDCONST R8 K6 0x7C180400, // 000D CALL R6 2 @@ -2374,7 +2303,7 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ 0x8C180313, // 0039 GETMET R6 R1 K19 0x58200014, // 003A LDCONST R8 K20 0x7C180400, // 003B CALL R6 2 - 0x70020224, // 003C JMP #0262 + 0x70020221, // 003C JMP #025F 0x8C180305, // 003D GETMET R6 R1 K5 0x58200015, // 003E LDCONST R8 K21 0x7C180400, // 003F CALL R6 2 @@ -2463,7 +2392,7 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ 0x8C240313, // 0092 GETMET R9 R1 K19 0x582C0028, // 0093 LDCONST R11 K40 0x7C240400, // 0094 CALL R9 2 - 0x700201CB, // 0095 JMP #0262 + 0x700201C8, // 0095 JMP #025F 0x8C180305, // 0096 GETMET R6 R1 K5 0x58200029, // 0097 LDCONST R8 K41 0x7C180400, // 0098 CALL R6 2 @@ -2505,11 +2434,11 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ 0x8C240313, // 00BC GETMET R9 R1 K19 0x582C0030, // 00BD LDCONST R11 K48 0x7C240400, // 00BE CALL R9 2 - 0x700201A1, // 00BF JMP #0262 + 0x7002019E, // 00BF JMP #025F 0x8C180305, // 00C0 GETMET R6 R1 K5 0x58200031, // 00C1 LDCONST R8 K49 0x7C180400, // 00C2 CALL R6 2 - 0x781A0010, // 00C3 JMPF R6 #00D5 + 0x781A000D, // 00C3 JMPF R6 #00D2 0xB81A1000, // 00C4 GETNGBL R6 K8 0x601C0018, // 00C5 GETGBL R7 G24 0x58200009, // 00C6 LDCONST R8 K9 @@ -2518,463 +2447,460 @@ be_local_closure(class_Matter_UI_page_part_ctl, /* name */ 0x5820000A, // 00C9 LDCONST R8 K10 0x7C180400, // 00CA CALL R6 2 0x8818010B, // 00CB GETMBR R6 R0 K11 - 0x501C0000, // 00CC LDBOOL R7 0 0 - 0x901A6407, // 00CD SETMBR R6 K50 R7 - 0x8818010B, // 00CE GETMBR R6 R0 K11 - 0x8C180D12, // 00CF GETMET R6 R6 K18 - 0x7C180200, // 00D0 CALL R6 1 - 0x8C180313, // 00D1 GETMET R6 R1 K19 - 0x58200014, // 00D2 LDCONST R8 K20 - 0x7C180400, // 00D3 CALL R6 2 - 0x7002018C, // 00D4 JMP #0262 - 0x8C180305, // 00D5 GETMET R6 R1 K5 - 0x58200033, // 00D6 LDCONST R8 K51 - 0x7C180400, // 00D7 CALL R6 2 - 0x781A00CE, // 00D8 JMPF R6 #01A8 - 0xB81A1000, // 00D9 GETNGBL R6 K8 - 0x601C0018, // 00DA GETGBL R7 G24 - 0x58200009, // 00DB LDCONST R8 K9 - 0x58240033, // 00DC LDCONST R9 K51 - 0x7C1C0400, // 00DD CALL R7 2 - 0x5820000A, // 00DE LDCONST R8 K10 - 0x7C180400, // 00DF CALL R6 2 - 0x50180000, // 00E0 LDBOOL R6 0 0 - 0x601C0010, // 00E1 GETGBL R7 G16 - 0x8C200334, // 00E2 GETMET R8 R1 K52 - 0x7C200200, // 00E3 CALL R8 1 - 0x0420112F, // 00E4 SUB R8 R8 K47 - 0x40225408, // 00E5 CONNECT R8 K42 R8 - 0x7C1C0200, // 00E6 CALL R7 1 - 0xA802009B, // 00E7 EXBLK 0 #0184 - 0x5C200E00, // 00E8 MOVE R8 R7 - 0x7C200000, // 00E9 CALL R8 0 - 0x8C240335, // 00EA GETMET R9 R1 K53 - 0x5C2C1000, // 00EB MOVE R11 R8 - 0x7C240400, // 00EC CALL R9 2 - 0x8C280536, // 00ED GETMET R10 R2 K54 - 0x5C301200, // 00EE MOVE R12 R9 - 0x5834000D, // 00EF LDCONST R13 K13 - 0x7C280600, // 00F0 CALL R10 3 - 0x1C28152A, // 00F1 EQ R10 R10 K42 - 0x782A0057, // 00F2 JMPF R10 #014B - 0x60280009, // 00F3 GETGBL R10 G9 - 0x402E1537, // 00F4 CONNECT R11 K10 K55 - 0x942C120B, // 00F5 GETIDX R11 R9 R11 - 0x7C280200, // 00F6 CALL R10 1 - 0x8C2C030D, // 00F7 GETMET R11 R1 K13 - 0x5C341000, // 00F8 MOVE R13 R8 - 0x7C2C0400, // 00F9 CALL R11 2 - 0x8830010B, // 00FA GETMBR R12 R0 K11 - 0x88301938, // 00FB GETMBR R12 R12 K56 - 0x8C301936, // 00FC GETMET R12 R12 K54 - 0x60380008, // 00FD GETGBL R14 G8 - 0x5C3C1400, // 00FE MOVE R15 R10 - 0x7C380200, // 00FF CALL R14 1 - 0x7C300400, // 0100 CALL R12 2 - 0x4C340000, // 0101 LDNIL R13 - 0x2034180D, // 0102 NE R13 R12 R13 - 0x7836003E, // 0103 JMPF R13 #0143 - 0x8834010B, // 0104 GETMBR R13 R0 K11 - 0x88341B39, // 0105 GETMBR R13 R13 K57 - 0x8C341B36, // 0106 GETMET R13 R13 K54 - 0x8C3C1936, // 0107 GETMET R15 R12 K54 - 0x5844003A, // 0108 LDCONST R17 K58 - 0x5848003B, // 0109 LDCONST R18 K59 - 0x7C3C0600, // 010A CALL R15 3 - 0x7C340400, // 010B CALL R13 2 - 0x4C380000, // 010C LDNIL R14 - 0x20381A0E, // 010D NE R14 R13 R14 - 0x783A0032, // 010E JMPF R14 #0142 - 0xB83A1000, // 010F GETNGBL R14 K8 - 0x603C0018, // 0110 GETGBL R15 G24 - 0x5840003C, // 0111 LDCONST R16 K60 - 0x5C441400, // 0112 MOVE R17 R10 - 0x5C481600, // 0113 MOVE R18 R11 - 0x7C3C0600, // 0114 CALL R15 3 - 0x5840000A, // 0115 LDCONST R16 K10 - 0x7C380400, // 0116 CALL R14 2 - 0x8C381B3D, // 0117 GETMET R14 R13 K61 - 0x5C401A00, // 0118 MOVE R16 R13 - 0x5C441800, // 0119 MOVE R17 R12 - 0x7C380600, // 011A CALL R14 3 - 0x203C1C0B, // 011B NE R15 R14 R11 - 0xB8421000, // 011C GETNGBL R16 K8 - 0x60440018, // 011D GETGBL R17 G24 - 0x5848003E, // 011E LDCONST R18 K62 - 0x5C4C1400, // 011F MOVE R19 R10 - 0x5C501C00, // 0120 MOVE R20 R14 - 0x5C541600, // 0121 MOVE R21 R11 - 0x20581C0B, // 0122 NE R22 R14 R11 - 0x785A0001, // 0123 JMPF R22 #0126 - 0x5858003F, // 0124 LDCONST R22 K63 - 0x70020000, // 0125 JMP #0127 - 0x5858003B, // 0126 LDCONST R22 K59 - 0x7C440A00, // 0127 CALL R17 5 - 0x5848000A, // 0128 LDCONST R18 K10 - 0x7C400400, // 0129 CALL R16 2 - 0x783E0016, // 012A JMPF R15 #0142 - 0x50180200, // 012B LDBOOL R6 1 0 - 0x8C401B40, // 012C GETMET R16 R13 K64 - 0x5C481A00, // 012D MOVE R18 R13 - 0x5C4C1800, // 012E MOVE R19 R12 - 0x5C501600, // 012F MOVE R20 R11 - 0x7C400800, // 0130 CALL R16 4 - 0x8840010B, // 0131 GETMBR R16 R0 K11 - 0x8C402141, // 0132 GETMET R16 R16 K65 - 0x5C481400, // 0133 MOVE R18 R10 - 0x7C400400, // 0134 CALL R16 2 - 0x7842000B, // 0135 JMPF R16 #0142 - 0xB8461000, // 0136 GETNGBL R17 K8 - 0x60480018, // 0137 GETGBL R18 G24 - 0x584C0042, // 0138 LDCONST R19 K66 - 0x5C501800, // 0139 MOVE R20 R12 - 0x5C541400, // 013A MOVE R21 R10 - 0x5C582000, // 013B MOVE R22 R16 - 0x7C480800, // 013C CALL R18 4 - 0x584C000A, // 013D LDCONST R19 K10 + 0x8C180D32, // 00CC GETMET R6 R6 K50 + 0x7C180200, // 00CD CALL R6 1 + 0x8C180313, // 00CE GETMET R6 R1 K19 + 0x58200014, // 00CF LDCONST R8 K20 + 0x7C180400, // 00D0 CALL R6 2 + 0x7002018C, // 00D1 JMP #025F + 0x8C180305, // 00D2 GETMET R6 R1 K5 + 0x58200033, // 00D3 LDCONST R8 K51 + 0x7C180400, // 00D4 CALL R6 2 + 0x781A00CE, // 00D5 JMPF R6 #01A5 + 0xB81A1000, // 00D6 GETNGBL R6 K8 + 0x601C0018, // 00D7 GETGBL R7 G24 + 0x58200009, // 00D8 LDCONST R8 K9 + 0x58240033, // 00D9 LDCONST R9 K51 + 0x7C1C0400, // 00DA CALL R7 2 + 0x5820000A, // 00DB LDCONST R8 K10 + 0x7C180400, // 00DC CALL R6 2 + 0x50180000, // 00DD LDBOOL R6 0 0 + 0x601C0010, // 00DE GETGBL R7 G16 + 0x8C200334, // 00DF GETMET R8 R1 K52 + 0x7C200200, // 00E0 CALL R8 1 + 0x0420112F, // 00E1 SUB R8 R8 K47 + 0x40225408, // 00E2 CONNECT R8 K42 R8 + 0x7C1C0200, // 00E3 CALL R7 1 + 0xA802009B, // 00E4 EXBLK 0 #0181 + 0x5C200E00, // 00E5 MOVE R8 R7 + 0x7C200000, // 00E6 CALL R8 0 + 0x8C240335, // 00E7 GETMET R9 R1 K53 + 0x5C2C1000, // 00E8 MOVE R11 R8 + 0x7C240400, // 00E9 CALL R9 2 + 0x8C280536, // 00EA GETMET R10 R2 K54 + 0x5C301200, // 00EB MOVE R12 R9 + 0x5834000D, // 00EC LDCONST R13 K13 + 0x7C280600, // 00ED CALL R10 3 + 0x1C28152A, // 00EE EQ R10 R10 K42 + 0x782A0057, // 00EF JMPF R10 #0148 + 0x60280009, // 00F0 GETGBL R10 G9 + 0x402E1537, // 00F1 CONNECT R11 K10 K55 + 0x942C120B, // 00F2 GETIDX R11 R9 R11 + 0x7C280200, // 00F3 CALL R10 1 + 0x8C2C030D, // 00F4 GETMET R11 R1 K13 + 0x5C341000, // 00F5 MOVE R13 R8 + 0x7C2C0400, // 00F6 CALL R11 2 + 0x8830010B, // 00F7 GETMBR R12 R0 K11 + 0x88301938, // 00F8 GETMBR R12 R12 K56 + 0x8C301936, // 00F9 GETMET R12 R12 K54 + 0x60380008, // 00FA GETGBL R14 G8 + 0x5C3C1400, // 00FB MOVE R15 R10 + 0x7C380200, // 00FC CALL R14 1 + 0x7C300400, // 00FD CALL R12 2 + 0x4C340000, // 00FE LDNIL R13 + 0x2034180D, // 00FF NE R13 R12 R13 + 0x7836003E, // 0100 JMPF R13 #0140 + 0x8834010B, // 0101 GETMBR R13 R0 K11 + 0x88341B39, // 0102 GETMBR R13 R13 K57 + 0x8C341B36, // 0103 GETMET R13 R13 K54 + 0x8C3C1936, // 0104 GETMET R15 R12 K54 + 0x5844003A, // 0105 LDCONST R17 K58 + 0x5848003B, // 0106 LDCONST R18 K59 + 0x7C3C0600, // 0107 CALL R15 3 + 0x7C340400, // 0108 CALL R13 2 + 0x4C380000, // 0109 LDNIL R14 + 0x20381A0E, // 010A NE R14 R13 R14 + 0x783A0032, // 010B JMPF R14 #013F + 0xB83A1000, // 010C GETNGBL R14 K8 + 0x603C0018, // 010D GETGBL R15 G24 + 0x5840003C, // 010E LDCONST R16 K60 + 0x5C441400, // 010F MOVE R17 R10 + 0x5C481600, // 0110 MOVE R18 R11 + 0x7C3C0600, // 0111 CALL R15 3 + 0x5840000A, // 0112 LDCONST R16 K10 + 0x7C380400, // 0113 CALL R14 2 + 0x8C381B3D, // 0114 GETMET R14 R13 K61 + 0x5C401A00, // 0115 MOVE R16 R13 + 0x5C441800, // 0116 MOVE R17 R12 + 0x7C380600, // 0117 CALL R14 3 + 0x203C1C0B, // 0118 NE R15 R14 R11 + 0xB8421000, // 0119 GETNGBL R16 K8 + 0x60440018, // 011A GETGBL R17 G24 + 0x5848003E, // 011B LDCONST R18 K62 + 0x5C4C1400, // 011C MOVE R19 R10 + 0x5C501C00, // 011D MOVE R20 R14 + 0x5C541600, // 011E MOVE R21 R11 + 0x20581C0B, // 011F NE R22 R14 R11 + 0x785A0001, // 0120 JMPF R22 #0123 + 0x5858003F, // 0121 LDCONST R22 K63 + 0x70020000, // 0122 JMP #0124 + 0x5858003B, // 0123 LDCONST R22 K59 + 0x7C440A00, // 0124 CALL R17 5 + 0x5848000A, // 0125 LDCONST R18 K10 + 0x7C400400, // 0126 CALL R16 2 + 0x783E0016, // 0127 JMPF R15 #013F + 0x50180200, // 0128 LDBOOL R6 1 0 + 0x8C401B40, // 0129 GETMET R16 R13 K64 + 0x5C481A00, // 012A MOVE R18 R13 + 0x5C4C1800, // 012B MOVE R19 R12 + 0x5C501600, // 012C MOVE R20 R11 + 0x7C400800, // 012D CALL R16 4 + 0x8840010B, // 012E GETMBR R16 R0 K11 + 0x8C402141, // 012F GETMET R16 R16 K65 + 0x5C481400, // 0130 MOVE R18 R10 + 0x7C400400, // 0131 CALL R16 2 + 0x7842000B, // 0132 JMPF R16 #013F + 0xB8461000, // 0133 GETNGBL R17 K8 + 0x60480018, // 0134 GETGBL R18 G24 + 0x584C0042, // 0135 LDCONST R19 K66 + 0x5C501800, // 0136 MOVE R20 R12 + 0x5C541400, // 0137 MOVE R21 R10 + 0x5C582000, // 0138 MOVE R22 R16 + 0x7C480800, // 0139 CALL R18 4 + 0x584C000A, // 013A LDCONST R19 K10 + 0x7C440400, // 013B CALL R17 2 + 0x8C442143, // 013C GETMET R17 R16 K67 + 0x5C4C1800, // 013D MOVE R19 R12 0x7C440400, // 013E CALL R17 2 - 0x8C442143, // 013F GETMET R17 R16 K67 - 0x5C4C1800, // 0140 MOVE R19 R12 - 0x7C440400, // 0141 CALL R17 2 - 0x70020006, // 0142 JMP #014A - 0xB8361000, // 0143 GETNGBL R13 K8 - 0x60380018, // 0144 GETGBL R14 G24 - 0x583C0044, // 0145 LDCONST R15 K68 - 0x5C401400, // 0146 MOVE R16 R10 - 0x7C380400, // 0147 CALL R14 2 - 0x583C000A, // 0148 LDCONST R15 K10 - 0x7C340400, // 0149 CALL R13 2 - 0x70020037, // 014A JMP #0183 - 0x8C280536, // 014B GETMET R10 R2 K54 - 0x5C301200, // 014C MOVE R12 R9 - 0x58340045, // 014D LDCONST R13 K69 - 0x7C280600, // 014E CALL R10 3 - 0x1C28152A, // 014F EQ R10 R10 K42 - 0x782A0031, // 0150 JMPF R10 #0183 - 0x60280009, // 0151 GETGBL R10 G9 - 0x402E1537, // 0152 CONNECT R11 K10 K55 - 0x942C120B, // 0153 GETIDX R11 R9 R11 - 0x7C280200, // 0154 CALL R10 1 - 0x8C2C030D, // 0155 GETMET R11 R1 K13 - 0x5C341000, // 0156 MOVE R13 R8 - 0x7C2C0400, // 0157 CALL R11 2 - 0x8830010B, // 0158 GETMBR R12 R0 K11 - 0x88301938, // 0159 GETMBR R12 R12 K56 - 0x8C301936, // 015A GETMET R12 R12 K54 - 0x60380008, // 015B GETGBL R14 G8 - 0x5C3C1400, // 015C MOVE R15 R10 - 0x7C380200, // 015D CALL R14 1 - 0x7C300400, // 015E CALL R12 2 - 0x4C340000, // 015F LDNIL R13 - 0x2034180D, // 0160 NE R13 R12 R13 - 0x78360020, // 0161 JMPF R13 #0183 - 0x8C341936, // 0162 GETMET R13 R12 K54 - 0x583C0046, // 0163 LDCONST R15 K70 - 0x5840003B, // 0164 LDCONST R16 K59 - 0x7C340600, // 0165 CALL R13 3 - 0x20381A0B, // 0166 NE R14 R13 R11 - 0x783A001A, // 0167 JMPF R14 #0183 - 0x50180200, // 0168 LDBOOL R6 1 0 - 0x883C010B, // 0169 GETMBR R15 R0 K11 - 0x8C3C1F41, // 016A GETMET R15 R15 K65 - 0x5C441400, // 016B MOVE R17 R10 - 0x7C3C0400, // 016C CALL R15 2 - 0x783E0014, // 016D JMPF R15 #0183 - 0x8C401F47, // 016E GETMET R16 R15 K71 - 0x5C481600, // 016F MOVE R18 R11 - 0x7C400400, // 0170 CALL R16 2 - 0x782E0001, // 0171 JMPF R11 #0174 - 0x98328C0B, // 0172 SETIDX R12 K70 R11 - 0x70020002, // 0173 JMP #0177 - 0x8C401948, // 0174 GETMET R16 R12 K72 - 0x58480046, // 0175 LDCONST R18 K70 - 0x7C400400, // 0176 CALL R16 2 - 0xB8421000, // 0177 GETNGBL R16 K8 - 0x60440018, // 0178 GETGBL R17 G24 - 0x58480049, // 0179 LDCONST R18 K73 - 0x5C4C1800, // 017A MOVE R19 R12 - 0x5C501400, // 017B MOVE R20 R10 - 0x5C541E00, // 017C MOVE R21 R15 - 0x7C440800, // 017D CALL R17 4 - 0x5848000A, // 017E LDCONST R18 K10 + 0x70020006, // 013F JMP #0147 + 0xB8361000, // 0140 GETNGBL R13 K8 + 0x60380018, // 0141 GETGBL R14 G24 + 0x583C0044, // 0142 LDCONST R15 K68 + 0x5C401400, // 0143 MOVE R16 R10 + 0x7C380400, // 0144 CALL R14 2 + 0x583C000A, // 0145 LDCONST R15 K10 + 0x7C340400, // 0146 CALL R13 2 + 0x70020037, // 0147 JMP #0180 + 0x8C280536, // 0148 GETMET R10 R2 K54 + 0x5C301200, // 0149 MOVE R12 R9 + 0x58340045, // 014A LDCONST R13 K69 + 0x7C280600, // 014B CALL R10 3 + 0x1C28152A, // 014C EQ R10 R10 K42 + 0x782A0031, // 014D JMPF R10 #0180 + 0x60280009, // 014E GETGBL R10 G9 + 0x402E1537, // 014F CONNECT R11 K10 K55 + 0x942C120B, // 0150 GETIDX R11 R9 R11 + 0x7C280200, // 0151 CALL R10 1 + 0x8C2C030D, // 0152 GETMET R11 R1 K13 + 0x5C341000, // 0153 MOVE R13 R8 + 0x7C2C0400, // 0154 CALL R11 2 + 0x8830010B, // 0155 GETMBR R12 R0 K11 + 0x88301938, // 0156 GETMBR R12 R12 K56 + 0x8C301936, // 0157 GETMET R12 R12 K54 + 0x60380008, // 0158 GETGBL R14 G8 + 0x5C3C1400, // 0159 MOVE R15 R10 + 0x7C380200, // 015A CALL R14 1 + 0x7C300400, // 015B CALL R12 2 + 0x4C340000, // 015C LDNIL R13 + 0x2034180D, // 015D NE R13 R12 R13 + 0x78360020, // 015E JMPF R13 #0180 + 0x8C341936, // 015F GETMET R13 R12 K54 + 0x583C0046, // 0160 LDCONST R15 K70 + 0x5840003B, // 0161 LDCONST R16 K59 + 0x7C340600, // 0162 CALL R13 3 + 0x20381A0B, // 0163 NE R14 R13 R11 + 0x783A001A, // 0164 JMPF R14 #0180 + 0x50180200, // 0165 LDBOOL R6 1 0 + 0x883C010B, // 0166 GETMBR R15 R0 K11 + 0x8C3C1F41, // 0167 GETMET R15 R15 K65 + 0x5C441400, // 0168 MOVE R17 R10 + 0x7C3C0400, // 0169 CALL R15 2 + 0x783E0014, // 016A JMPF R15 #0180 + 0x8C401F47, // 016B GETMET R16 R15 K71 + 0x5C481600, // 016C MOVE R18 R11 + 0x7C400400, // 016D CALL R16 2 + 0x782E0001, // 016E JMPF R11 #0171 + 0x98328C0B, // 016F SETIDX R12 K70 R11 + 0x70020002, // 0170 JMP #0174 + 0x8C401948, // 0171 GETMET R16 R12 K72 + 0x58480046, // 0172 LDCONST R18 K70 + 0x7C400400, // 0173 CALL R16 2 + 0xB8421000, // 0174 GETNGBL R16 K8 + 0x60440018, // 0175 GETGBL R17 G24 + 0x58480049, // 0176 LDCONST R18 K73 + 0x5C4C1800, // 0177 MOVE R19 R12 + 0x5C501400, // 0178 MOVE R20 R10 + 0x5C541E00, // 0179 MOVE R21 R15 + 0x7C440800, // 017A CALL R17 4 + 0x5848000A, // 017B LDCONST R18 K10 + 0x7C400400, // 017C CALL R16 2 + 0x8C401F43, // 017D GETMET R16 R15 K67 + 0x5C481800, // 017E MOVE R18 R12 0x7C400400, // 017F CALL R16 2 - 0x8C401F43, // 0180 GETMET R16 R15 K67 - 0x5C481800, // 0181 MOVE R18 R12 - 0x7C400400, // 0182 CALL R16 2 - 0x7001FF63, // 0183 JMP #00E8 - 0x581C004A, // 0184 LDCONST R7 K74 - 0xAC1C0200, // 0185 CATCH R7 1 0 - 0xB0080000, // 0186 RAISE 2 R0 R0 - 0xB81E1000, // 0187 GETNGBL R7 K8 - 0x60200018, // 0188 GETGBL R8 G24 - 0x5824004B, // 0189 LDCONST R9 K75 - 0x60280008, // 018A GETGBL R10 G8 - 0x882C010B, // 018B GETMBR R11 R0 K11 - 0x882C1738, // 018C GETMBR R11 R11 K56 - 0x7C280200, // 018D CALL R10 1 - 0x7C200400, // 018E CALL R8 2 - 0x5824000A, // 018F LDCONST R9 K10 - 0x7C1C0400, // 0190 CALL R7 2 - 0x78160007, // 0191 JMPF R5 #019A - 0xB81E1000, // 0192 GETNGBL R7 K8 - 0x60200018, // 0193 GETGBL R8 G24 - 0x5824004C, // 0194 LDCONST R9 K76 - 0x5C280A00, // 0195 MOVE R10 R5 - 0x7C200400, // 0196 CALL R8 2 - 0x5824000A, // 0197 LDCONST R9 K10 - 0x7C1C0400, // 0198 CALL R7 2 - 0x7002000C, // 0199 JMP #01A7 - 0x741A0002, // 019A JMPT R6 #019E + 0x7001FF63, // 0180 JMP #00E5 + 0x581C004A, // 0181 LDCONST R7 K74 + 0xAC1C0200, // 0182 CATCH R7 1 0 + 0xB0080000, // 0183 RAISE 2 R0 R0 + 0xB81E1000, // 0184 GETNGBL R7 K8 + 0x60200018, // 0185 GETGBL R8 G24 + 0x5824004B, // 0186 LDCONST R9 K75 + 0x60280008, // 0187 GETGBL R10 G8 + 0x882C010B, // 0188 GETMBR R11 R0 K11 + 0x882C1738, // 0189 GETMBR R11 R11 K56 + 0x7C280200, // 018A CALL R10 1 + 0x7C200400, // 018B CALL R8 2 + 0x5824000A, // 018C LDCONST R9 K10 + 0x7C1C0400, // 018D CALL R7 2 + 0x78160007, // 018E JMPF R5 #0197 + 0xB81E1000, // 018F GETNGBL R7 K8 + 0x60200018, // 0190 GETGBL R8 G24 + 0x5824004C, // 0191 LDCONST R9 K76 + 0x5C280A00, // 0192 MOVE R10 R5 + 0x7C200400, // 0193 CALL R8 2 + 0x5824000A, // 0194 LDCONST R9 K10 + 0x7C1C0400, // 0195 CALL R7 2 + 0x7002000C, // 0196 JMP #01A4 + 0x741A0002, // 0197 JMPT R6 #019B + 0x881C010B, // 0198 GETMBR R7 R0 K11 + 0x881C0F4D, // 0199 GETMBR R7 R7 K77 + 0x741E0005, // 019A JMPT R7 #01A1 0x881C010B, // 019B GETMBR R7 R0 K11 - 0x881C0F32, // 019C GETMBR R7 R7 K50 - 0x741E0005, // 019D JMPT R7 #01A4 + 0x50200200, // 019C LDBOOL R8 1 0 + 0x901E9A08, // 019D SETMBR R7 K77 R8 0x881C010B, // 019E GETMBR R7 R0 K11 - 0x50200200, // 019F LDBOOL R8 1 0 - 0x901E6408, // 01A0 SETMBR R7 K50 R8 - 0x881C010B, // 01A1 GETMBR R7 R0 K11 - 0x8C1C0F12, // 01A2 GETMET R7 R7 K18 - 0x7C1C0200, // 01A3 CALL R7 1 - 0x8C1C0313, // 01A4 GETMET R7 R1 K19 - 0x5824004D, // 01A5 LDCONST R9 K77 - 0x7C1C0400, // 01A6 CALL R7 2 - 0x700200B9, // 01A7 JMP #0262 - 0x8C180305, // 01A8 GETMET R6 R1 K5 - 0x5820004E, // 01A9 LDCONST R8 K78 - 0x7C180400, // 01AA CALL R6 2 - 0x781A002A, // 01AB JMPF R6 #01D7 - 0x8C18030D, // 01AC GETMET R6 R1 K13 - 0x5820004F, // 01AD LDCONST R8 K79 - 0x7C180400, // 01AE CALL R6 2 - 0x8C1C030D, // 01AF GETMET R7 R1 K13 - 0x5824000D, // 01B0 LDCONST R9 K13 - 0x7C1C0400, // 01B1 CALL R7 2 - 0x8C20030D, // 01B2 GETMET R8 R1 K13 - 0x58280045, // 01B3 LDCONST R10 K69 - 0x7C200400, // 01B4 CALL R8 2 - 0xB8261000, // 01B5 GETNGBL R9 K8 - 0x60280018, // 01B6 GETGBL R10 G24 - 0x582C0050, // 01B7 LDCONST R11 K80 - 0x5C300C00, // 01B8 MOVE R12 R6 - 0x5C340E00, // 01B9 MOVE R13 R7 - 0x7C280600, // 01BA CALL R10 3 - 0x582C000A, // 01BB LDCONST R11 K10 - 0x7C240400, // 01BC CALL R9 2 - 0x8824010B, // 01BD GETMBR R9 R0 K11 - 0x88241339, // 01BE GETMBR R9 R9 K57 - 0x8C241336, // 01BF GETMET R9 R9 K54 - 0x5C2C0C00, // 01C0 MOVE R11 R6 - 0x7C240400, // 01C1 CALL R9 2 - 0x4C280000, // 01C2 LDNIL R10 - 0x2028120A, // 01C3 NE R10 R9 R10 - 0x782A000D, // 01C4 JMPF R10 #01D3 - 0x60280013, // 01C5 GETGBL R10 G19 - 0x7C280000, // 01C6 CALL R10 0 - 0x78220000, // 01C7 JMPF R8 #01C9 - 0x982A8C08, // 01C8 SETIDX R10 K70 R8 - 0x8C2C1340, // 01C9 GETMET R11 R9 K64 - 0x5C341200, // 01CA MOVE R13 R9 - 0x5C381400, // 01CB MOVE R14 R10 - 0x5C3C0E00, // 01CC MOVE R15 R7 - 0x7C2C0800, // 01CD CALL R11 4 - 0x882C010B, // 01CE GETMBR R11 R0 K11 - 0x8C2C1751, // 01CF GETMET R11 R11 K81 - 0x5C340C00, // 01D0 MOVE R13 R6 - 0x5C381400, // 01D1 MOVE R14 R10 - 0x7C2C0600, // 01D2 CALL R11 3 - 0x8C280313, // 01D3 GETMET R10 R1 K19 - 0x5830004D, // 01D4 LDCONST R12 K77 - 0x7C280400, // 01D5 CALL R10 2 - 0x7002008A, // 01D6 JMP #0262 - 0x8C180305, // 01D7 GETMET R6 R1 K5 - 0x58200052, // 01D8 LDCONST R8 K82 - 0x7C180400, // 01D9 CALL R6 2 - 0x781A005D, // 01DA JMPF R6 #0239 - 0x8C18030D, // 01DB GETMET R6 R1 K13 - 0x58200053, // 01DC LDCONST R8 K83 - 0x7C180400, // 01DD CALL R6 2 - 0x4C1C0000, // 01DE LDNIL R7 - 0x1C1C0C07, // 01DF EQ R7 R6 R7 - 0x741E0001, // 01E0 JMPT R7 #01E3 - 0x1C1C0D3B, // 01E1 EQ R7 R6 K59 - 0x781E0000, // 01E2 JMPF R7 #01E4 - 0xB006A955, // 01E3 RAISE 1 K84 K85 - 0x581C002A, // 01E4 LDCONST R7 K42 - 0x60200008, // 01E5 GETGBL R8 G8 - 0x5C240E00, // 01E6 MOVE R9 R7 - 0x7C200200, // 01E7 CALL R8 1 - 0x8C240305, // 01E8 GETMET R9 R1 K5 - 0x002E9E08, // 01E9 ADD R11 K79 R8 - 0x7C240400, // 01EA CALL R9 2 - 0x78260048, // 01EB JMPF R9 #0235 - 0x8C24030D, // 01EC GETMET R9 R1 K13 - 0x002E9E08, // 01ED ADD R11 K79 R8 - 0x7C240400, // 01EE CALL R9 2 - 0x8C28030D, // 01EF GETMET R10 R1 K13 - 0x00321A08, // 01F0 ADD R12 K13 R8 - 0x7C280400, // 01F1 CALL R10 2 - 0x8C2C030D, // 01F2 GETMET R11 R1 K13 - 0x00368A08, // 01F3 ADD R13 K69 R8 - 0x7C2C0400, // 01F4 CALL R11 2 - 0x2030133B, // 01F5 NE R12 R9 K59 - 0x78320037, // 01F6 JMPF R12 #022F - 0x8830010B, // 01F7 GETMBR R12 R0 K11 - 0x88301939, // 01F8 GETMBR R12 R12 K57 - 0x8C301936, // 01F9 GETMET R12 R12 K54 - 0x5C381200, // 01FA MOVE R14 R9 - 0x7C300400, // 01FB CALL R12 2 - 0x4C340000, // 01FC LDNIL R13 - 0x2034180D, // 01FD NE R13 R12 R13 - 0x7836002F, // 01FE JMPF R13 #022F - 0x60340013, // 01FF GETGBL R13 G19 - 0x7C340000, // 0200 CALL R13 0 - 0x9836A606, // 0201 SETIDX R13 K83 R6 - 0x98367409, // 0202 SETIDX R13 K58 R9 - 0x782E0000, // 0203 JMPF R11 #0205 - 0x98368C0B, // 0204 SETIDX R13 K70 R11 - 0x8C381940, // 0205 GETMET R14 R12 K64 - 0x5C401800, // 0206 MOVE R16 R12 - 0x5C441A00, // 0207 MOVE R17 R13 - 0x5C481400, // 0208 MOVE R18 R10 - 0x7C380800, // 0209 CALL R14 4 - 0x50380000, // 020A LDBOOL R14 0 0 - 0x603C0010, // 020B GETGBL R15 G16 - 0x8840010B, // 020C GETMBR R16 R0 K11 - 0x88402138, // 020D GETMBR R16 R16 K56 - 0x7C3C0200, // 020E CALL R15 1 - 0xA802000B, // 020F EXBLK 0 #021C - 0x5C401E00, // 0210 MOVE R16 R15 - 0x7C400000, // 0211 CALL R16 0 - 0x8C440156, // 0212 GETMET R17 R0 K86 - 0x5C4C2000, // 0213 MOVE R19 R16 - 0x5C501A00, // 0214 MOVE R20 R13 - 0x7C440600, // 0215 CALL R17 3 - 0x78460001, // 0216 JMPF R17 #0219 - 0x50380200, // 0217 LDBOOL R14 1 0 - 0x70020000, // 0218 JMP #021A - 0x7001FFF5, // 0219 JMP #0210 - 0xA8040001, // 021A EXBLK 1 1 - 0x70020002, // 021B JMP #021F - 0x583C004A, // 021C LDCONST R15 K74 - 0xAC3C0200, // 021D CATCH R15 1 0 - 0xB0080000, // 021E RAISE 2 R0 R0 - 0x5C3C1C00, // 021F MOVE R15 R14 - 0x743E000D, // 0220 JMPT R15 #022F - 0xB83E1000, // 0221 GETNGBL R15 K8 - 0x60400018, // 0222 GETGBL R16 G24 - 0x58440057, // 0223 LDCONST R17 K87 - 0x5C480C00, // 0224 MOVE R18 R6 - 0x5C4C1200, // 0225 MOVE R19 R9 - 0x5C501400, // 0226 MOVE R20 R10 - 0x7C400800, // 0227 CALL R16 4 - 0x5844000A, // 0228 LDCONST R17 K10 - 0x7C3C0400, // 0229 CALL R15 2 - 0x883C010B, // 022A GETMBR R15 R0 K11 - 0x8C3C1F51, // 022B GETMET R15 R15 K81 - 0x5C441200, // 022C MOVE R17 R9 - 0x5C481A00, // 022D MOVE R18 R13 - 0x7C3C0600, // 022E CALL R15 3 - 0x001C0F2F, // 022F ADD R7 R7 K47 - 0x60300008, // 0230 GETGBL R12 G8 - 0x5C340E00, // 0231 MOVE R13 R7 - 0x7C300200, // 0232 CALL R12 1 - 0x5C201800, // 0233 MOVE R8 R12 - 0x7001FFB2, // 0234 JMP #01E8 - 0x8C240313, // 0235 GETMET R9 R1 K19 - 0x582C004D, // 0236 LDCONST R11 K77 - 0x7C240400, // 0237 CALL R9 2 - 0x70020028, // 0238 JMP #0262 - 0x4C180000, // 0239 LDNIL R6 - 0x601C0010, // 023A GETGBL R7 G16 - 0x8C200334, // 023B GETMET R8 R1 K52 - 0x7C200200, // 023C CALL R8 1 - 0x0420112F, // 023D SUB R8 R8 K47 - 0x40225408, // 023E CONNECT R8 K42 R8 - 0x7C1C0200, // 023F CALL R7 1 - 0xA8020013, // 0240 EXBLK 0 #0255 - 0x5C200E00, // 0241 MOVE R8 R7 - 0x7C200000, // 0242 CALL R8 0 - 0x8C240335, // 0243 GETMET R9 R1 K53 - 0x5C2C1000, // 0244 MOVE R11 R8 - 0x7C240400, // 0245 CALL R9 2 - 0x8C280536, // 0246 GETMET R10 R2 K54 - 0x5C301200, // 0247 MOVE R12 R9 - 0x58340058, // 0248 LDCONST R13 K88 - 0x7C280600, // 0249 CALL R10 3 - 0x1C28152A, // 024A EQ R10 R10 K42 - 0x782A0005, // 024B JMPF R10 #0252 - 0x60280009, // 024C GETGBL R10 G9 - 0x402E1537, // 024D CONNECT R11 K10 K55 - 0x942C120B, // 024E GETIDX R11 R9 R11 - 0x7C280200, // 024F CALL R10 1 - 0x5C181400, // 0250 MOVE R6 R10 - 0x70020000, // 0251 JMP #0253 - 0x7001FFED, // 0252 JMP #0241 - 0xA8040001, // 0253 EXBLK 1 1 - 0x70020002, // 0254 JMP #0258 - 0x581C004A, // 0255 LDCONST R7 K74 - 0xAC1C0200, // 0256 CATCH R7 1 0 - 0xB0080000, // 0257 RAISE 2 R0 R0 - 0x4C1C0000, // 0258 LDNIL R7 - 0x201C0C07, // 0259 NE R7 R6 R7 - 0x781E0006, // 025A JMPF R7 #0262 - 0x881C010B, // 025B GETMBR R7 R0 K11 - 0x8C1C0F59, // 025C GETMET R7 R7 K89 - 0x5C240C00, // 025D MOVE R9 R6 + 0x8C1C0F12, // 019F GETMET R7 R7 K18 + 0x7C1C0200, // 01A0 CALL R7 1 + 0x8C1C0313, // 01A1 GETMET R7 R1 K19 + 0x5824004E, // 01A2 LDCONST R9 K78 + 0x7C1C0400, // 01A3 CALL R7 2 + 0x700200B9, // 01A4 JMP #025F + 0x8C180305, // 01A5 GETMET R6 R1 K5 + 0x5820004F, // 01A6 LDCONST R8 K79 + 0x7C180400, // 01A7 CALL R6 2 + 0x781A002A, // 01A8 JMPF R6 #01D4 + 0x8C18030D, // 01A9 GETMET R6 R1 K13 + 0x58200050, // 01AA LDCONST R8 K80 + 0x7C180400, // 01AB CALL R6 2 + 0x8C1C030D, // 01AC GETMET R7 R1 K13 + 0x5824000D, // 01AD LDCONST R9 K13 + 0x7C1C0400, // 01AE CALL R7 2 + 0x8C20030D, // 01AF GETMET R8 R1 K13 + 0x58280045, // 01B0 LDCONST R10 K69 + 0x7C200400, // 01B1 CALL R8 2 + 0xB8261000, // 01B2 GETNGBL R9 K8 + 0x60280018, // 01B3 GETGBL R10 G24 + 0x582C0051, // 01B4 LDCONST R11 K81 + 0x5C300C00, // 01B5 MOVE R12 R6 + 0x5C340E00, // 01B6 MOVE R13 R7 + 0x7C280600, // 01B7 CALL R10 3 + 0x582C000A, // 01B8 LDCONST R11 K10 + 0x7C240400, // 01B9 CALL R9 2 + 0x8824010B, // 01BA GETMBR R9 R0 K11 + 0x88241339, // 01BB GETMBR R9 R9 K57 + 0x8C241336, // 01BC GETMET R9 R9 K54 + 0x5C2C0C00, // 01BD MOVE R11 R6 + 0x7C240400, // 01BE CALL R9 2 + 0x4C280000, // 01BF LDNIL R10 + 0x2028120A, // 01C0 NE R10 R9 R10 + 0x782A000D, // 01C1 JMPF R10 #01D0 + 0x60280013, // 01C2 GETGBL R10 G19 + 0x7C280000, // 01C3 CALL R10 0 + 0x78220000, // 01C4 JMPF R8 #01C6 + 0x982A8C08, // 01C5 SETIDX R10 K70 R8 + 0x8C2C1340, // 01C6 GETMET R11 R9 K64 + 0x5C341200, // 01C7 MOVE R13 R9 + 0x5C381400, // 01C8 MOVE R14 R10 + 0x5C3C0E00, // 01C9 MOVE R15 R7 + 0x7C2C0800, // 01CA CALL R11 4 + 0x882C010B, // 01CB GETMBR R11 R0 K11 + 0x8C2C1752, // 01CC GETMET R11 R11 K82 + 0x5C340C00, // 01CD MOVE R13 R6 + 0x5C381400, // 01CE MOVE R14 R10 + 0x7C2C0600, // 01CF CALL R11 3 + 0x8C280313, // 01D0 GETMET R10 R1 K19 + 0x5830004E, // 01D1 LDCONST R12 K78 + 0x7C280400, // 01D2 CALL R10 2 + 0x7002008A, // 01D3 JMP #025F + 0x8C180305, // 01D4 GETMET R6 R1 K5 + 0x58200053, // 01D5 LDCONST R8 K83 + 0x7C180400, // 01D6 CALL R6 2 + 0x781A005D, // 01D7 JMPF R6 #0236 + 0x8C18030D, // 01D8 GETMET R6 R1 K13 + 0x58200054, // 01D9 LDCONST R8 K84 + 0x7C180400, // 01DA CALL R6 2 + 0x4C1C0000, // 01DB LDNIL R7 + 0x1C1C0C07, // 01DC EQ R7 R6 R7 + 0x741E0001, // 01DD JMPT R7 #01E0 + 0x1C1C0D3B, // 01DE EQ R7 R6 K59 + 0x781E0000, // 01DF JMPF R7 #01E1 + 0xB006AB56, // 01E0 RAISE 1 K85 K86 + 0x581C002A, // 01E1 LDCONST R7 K42 + 0x60200008, // 01E2 GETGBL R8 G8 + 0x5C240E00, // 01E3 MOVE R9 R7 + 0x7C200200, // 01E4 CALL R8 1 + 0x8C240305, // 01E5 GETMET R9 R1 K5 + 0x002EA008, // 01E6 ADD R11 K80 R8 + 0x7C240400, // 01E7 CALL R9 2 + 0x78260048, // 01E8 JMPF R9 #0232 + 0x8C24030D, // 01E9 GETMET R9 R1 K13 + 0x002EA008, // 01EA ADD R11 K80 R8 + 0x7C240400, // 01EB CALL R9 2 + 0x8C28030D, // 01EC GETMET R10 R1 K13 + 0x00321A08, // 01ED ADD R12 K13 R8 + 0x7C280400, // 01EE CALL R10 2 + 0x8C2C030D, // 01EF GETMET R11 R1 K13 + 0x00368A08, // 01F0 ADD R13 K69 R8 + 0x7C2C0400, // 01F1 CALL R11 2 + 0x2030133B, // 01F2 NE R12 R9 K59 + 0x78320037, // 01F3 JMPF R12 #022C + 0x8830010B, // 01F4 GETMBR R12 R0 K11 + 0x88301939, // 01F5 GETMBR R12 R12 K57 + 0x8C301936, // 01F6 GETMET R12 R12 K54 + 0x5C381200, // 01F7 MOVE R14 R9 + 0x7C300400, // 01F8 CALL R12 2 + 0x4C340000, // 01F9 LDNIL R13 + 0x2034180D, // 01FA NE R13 R12 R13 + 0x7836002F, // 01FB JMPF R13 #022C + 0x60340013, // 01FC GETGBL R13 G19 + 0x7C340000, // 01FD CALL R13 0 + 0x9836A806, // 01FE SETIDX R13 K84 R6 + 0x98367409, // 01FF SETIDX R13 K58 R9 + 0x782E0000, // 0200 JMPF R11 #0202 + 0x98368C0B, // 0201 SETIDX R13 K70 R11 + 0x8C381940, // 0202 GETMET R14 R12 K64 + 0x5C401800, // 0203 MOVE R16 R12 + 0x5C441A00, // 0204 MOVE R17 R13 + 0x5C481400, // 0205 MOVE R18 R10 + 0x7C380800, // 0206 CALL R14 4 + 0x50380000, // 0207 LDBOOL R14 0 0 + 0x603C0010, // 0208 GETGBL R15 G16 + 0x8840010B, // 0209 GETMBR R16 R0 K11 + 0x88402138, // 020A GETMBR R16 R16 K56 + 0x7C3C0200, // 020B CALL R15 1 + 0xA802000B, // 020C EXBLK 0 #0219 + 0x5C401E00, // 020D MOVE R16 R15 + 0x7C400000, // 020E CALL R16 0 + 0x8C440157, // 020F GETMET R17 R0 K87 + 0x5C4C2000, // 0210 MOVE R19 R16 + 0x5C501A00, // 0211 MOVE R20 R13 + 0x7C440600, // 0212 CALL R17 3 + 0x78460001, // 0213 JMPF R17 #0216 + 0x50380200, // 0214 LDBOOL R14 1 0 + 0x70020000, // 0215 JMP #0217 + 0x7001FFF5, // 0216 JMP #020D + 0xA8040001, // 0217 EXBLK 1 1 + 0x70020002, // 0218 JMP #021C + 0x583C004A, // 0219 LDCONST R15 K74 + 0xAC3C0200, // 021A CATCH R15 1 0 + 0xB0080000, // 021B RAISE 2 R0 R0 + 0x5C3C1C00, // 021C MOVE R15 R14 + 0x743E000D, // 021D JMPT R15 #022C + 0xB83E1000, // 021E GETNGBL R15 K8 + 0x60400018, // 021F GETGBL R16 G24 + 0x58440058, // 0220 LDCONST R17 K88 + 0x5C480C00, // 0221 MOVE R18 R6 + 0x5C4C1200, // 0222 MOVE R19 R9 + 0x5C501400, // 0223 MOVE R20 R10 + 0x7C400800, // 0224 CALL R16 4 + 0x5844000A, // 0225 LDCONST R17 K10 + 0x7C3C0400, // 0226 CALL R15 2 + 0x883C010B, // 0227 GETMBR R15 R0 K11 + 0x8C3C1F52, // 0228 GETMET R15 R15 K82 + 0x5C441200, // 0229 MOVE R17 R9 + 0x5C481A00, // 022A MOVE R18 R13 + 0x7C3C0600, // 022B CALL R15 3 + 0x001C0F2F, // 022C ADD R7 R7 K47 + 0x60300008, // 022D GETGBL R12 G8 + 0x5C340E00, // 022E MOVE R13 R7 + 0x7C300200, // 022F CALL R12 1 + 0x5C201800, // 0230 MOVE R8 R12 + 0x7001FFB2, // 0231 JMP #01E5 + 0x8C240313, // 0232 GETMET R9 R1 K19 + 0x582C004E, // 0233 LDCONST R11 K78 + 0x7C240400, // 0234 CALL R9 2 + 0x70020028, // 0235 JMP #025F + 0x4C180000, // 0236 LDNIL R6 + 0x601C0010, // 0237 GETGBL R7 G16 + 0x8C200334, // 0238 GETMET R8 R1 K52 + 0x7C200200, // 0239 CALL R8 1 + 0x0420112F, // 023A SUB R8 R8 K47 + 0x40225408, // 023B CONNECT R8 K42 R8 + 0x7C1C0200, // 023C CALL R7 1 + 0xA8020013, // 023D EXBLK 0 #0252 + 0x5C200E00, // 023E MOVE R8 R7 + 0x7C200000, // 023F CALL R8 0 + 0x8C240335, // 0240 GETMET R9 R1 K53 + 0x5C2C1000, // 0241 MOVE R11 R8 + 0x7C240400, // 0242 CALL R9 2 + 0x8C280536, // 0243 GETMET R10 R2 K54 + 0x5C301200, // 0244 MOVE R12 R9 + 0x58340059, // 0245 LDCONST R13 K89 + 0x7C280600, // 0246 CALL R10 3 + 0x1C28152A, // 0247 EQ R10 R10 K42 + 0x782A0005, // 0248 JMPF R10 #024F + 0x60280009, // 0249 GETGBL R10 G9 + 0x402E1537, // 024A CONNECT R11 K10 K55 + 0x942C120B, // 024B GETIDX R11 R9 R11 + 0x7C280200, // 024C CALL R10 1 + 0x5C181400, // 024D MOVE R6 R10 + 0x70020000, // 024E JMP #0250 + 0x7001FFED, // 024F JMP #023E + 0xA8040001, // 0250 EXBLK 1 1 + 0x70020002, // 0251 JMP #0255 + 0x581C004A, // 0252 LDCONST R7 K74 + 0xAC1C0200, // 0253 CATCH R7 1 0 + 0xB0080000, // 0254 RAISE 2 R0 R0 + 0x4C1C0000, // 0255 LDNIL R7 + 0x201C0C07, // 0256 NE R7 R6 R7 + 0x781E0006, // 0257 JMPF R7 #025F + 0x881C010B, // 0258 GETMBR R7 R0 K11 + 0x8C1C0F5A, // 0259 GETMET R7 R7 K90 + 0x5C240C00, // 025A MOVE R9 R6 + 0x7C1C0400, // 025B CALL R7 2 + 0x8C1C0313, // 025C GETMET R7 R1 K19 + 0x5824004E, // 025D LDCONST R9 K78 0x7C1C0400, // 025E CALL R7 2 - 0x8C1C0313, // 025F GETMET R7 R1 K19 - 0x5824004D, // 0260 LDCONST R9 K77 - 0x7C1C0400, // 0261 CALL R7 2 - 0x78160011, // 0262 JMPF R5 #0275 - 0x8C18035A, // 0263 GETMET R6 R1 K90 - 0x5820005B, // 0264 LDCONST R8 K91 - 0x7C180400, // 0265 CALL R6 2 - 0x8C18035C, // 0266 GETMET R6 R1 K92 - 0x7C180200, // 0267 CALL R6 1 - 0x8C18035D, // 0268 GETMET R6 R1 K93 - 0x60200018, // 0269 GETGBL R8 G24 - 0x5824005E, // 026A LDCONST R9 K94 - 0x8C28035F, // 026B GETMET R10 R1 K95 - 0x5C300A00, // 026C MOVE R12 R5 - 0x7C280400, // 026D CALL R10 2 - 0x7C200400, // 026E CALL R8 2 + 0x78160011, // 025F JMPF R5 #0272 + 0x8C18035B, // 0260 GETMET R6 R1 K91 + 0x5820005C, // 0261 LDCONST R8 K92 + 0x7C180400, // 0262 CALL R6 2 + 0x8C18035D, // 0263 GETMET R6 R1 K93 + 0x7C180200, // 0264 CALL R6 1 + 0x8C18035E, // 0265 GETMET R6 R1 K94 + 0x60200018, // 0266 GETGBL R8 G24 + 0x5824005F, // 0267 LDCONST R9 K95 + 0x8C280360, // 0268 GETMET R10 R1 K96 + 0x5C300A00, // 0269 MOVE R12 R5 + 0x7C280400, // 026A CALL R10 2 + 0x7C200400, // 026B CALL R8 2 + 0x7C180400, // 026C CALL R6 2 + 0x8C180361, // 026D GETMET R6 R1 K97 + 0x88200362, // 026E GETMBR R8 R1 K98 0x7C180400, // 026F CALL R6 2 - 0x8C180360, // 0270 GETMET R6 R1 K96 - 0x88200361, // 0271 GETMBR R8 R1 K97 - 0x7C180400, // 0272 CALL R6 2 - 0x8C180362, // 0273 GETMET R6 R1 K98 - 0x7C180200, // 0274 CALL R6 1 - 0xA8040001, // 0275 EXBLK 1 1 - 0x7002001C, // 0276 JMP #0294 - 0xAC180002, // 0277 CATCH R6 0 2 - 0x70020019, // 0278 JMP #0293 - 0xB8221000, // 0279 GETNGBL R8 K8 - 0x60240018, // 027A GETGBL R9 G24 - 0x58280063, // 027B LDCONST R10 K99 - 0x5C2C0C00, // 027C MOVE R11 R6 - 0x5C300E00, // 027D MOVE R12 R7 - 0x7C240600, // 027E CALL R9 3 - 0x58280064, // 027F LDCONST R10 K100 + 0x8C180363, // 0270 GETMET R6 R1 K99 + 0x7C180200, // 0271 CALL R6 1 + 0xA8040001, // 0272 EXBLK 1 1 + 0x7002001C, // 0273 JMP #0291 + 0xAC180002, // 0274 CATCH R6 0 2 + 0x70020019, // 0275 JMP #0290 + 0xB8221000, // 0276 GETNGBL R8 K8 + 0x60240018, // 0277 GETGBL R9 G24 + 0x58280064, // 0278 LDCONST R10 K100 + 0x5C2C0C00, // 0279 MOVE R11 R6 + 0x5C300E00, // 027A MOVE R12 R7 + 0x7C240600, // 027B CALL R9 3 + 0x58280065, // 027C LDCONST R10 K101 + 0x7C200400, // 027D CALL R8 2 + 0x8C20035B, // 027E GETMET R8 R1 K91 + 0x5828005C, // 027F LDCONST R10 K92 0x7C200400, // 0280 CALL R8 2 - 0x8C20035A, // 0281 GETMET R8 R1 K90 - 0x5828005B, // 0282 LDCONST R10 K91 - 0x7C200400, // 0283 CALL R8 2 - 0x8C20035C, // 0284 GETMET R8 R1 K92 - 0x7C200200, // 0285 CALL R8 1 - 0x8C20035D, // 0286 GETMET R8 R1 K93 - 0x60280018, // 0287 GETGBL R10 G24 - 0x582C0065, // 0288 LDCONST R11 K101 - 0x5C300C00, // 0289 MOVE R12 R6 - 0x5C340E00, // 028A MOVE R13 R7 - 0x7C280600, // 028B CALL R10 3 + 0x8C20035D, // 0281 GETMET R8 R1 K93 + 0x7C200200, // 0282 CALL R8 1 + 0x8C20035E, // 0283 GETMET R8 R1 K94 + 0x60280018, // 0284 GETGBL R10 G24 + 0x582C0066, // 0285 LDCONST R11 K102 + 0x5C300C00, // 0286 MOVE R12 R6 + 0x5C340E00, // 0287 MOVE R13 R7 + 0x7C280600, // 0288 CALL R10 3 + 0x7C200400, // 0289 CALL R8 2 + 0x8C200361, // 028A GETMET R8 R1 K97 + 0x88280362, // 028B GETMBR R10 R1 K98 0x7C200400, // 028C CALL R8 2 - 0x8C200360, // 028D GETMET R8 R1 K96 - 0x88280361, // 028E GETMBR R10 R1 K97 - 0x7C200400, // 028F CALL R8 2 - 0x8C200362, // 0290 GETMET R8 R1 K98 - 0x7C200200, // 0291 CALL R8 1 - 0x70020000, // 0292 JMP #0294 - 0xB0080000, // 0293 RAISE 2 R0 R0 - 0x80000000, // 0294 RET 0 + 0x8C200363, // 028D GETMET R8 R1 K99 + 0x7C200200, // 028E CALL R8 1 + 0x70020000, // 028F JMP #0291 + 0xB0080000, // 0290 RAISE 2 R0 R0 + 0x80000000, // 0291 RET 0 }) ) ); diff --git a/lib/libesp32/berry_matter/src/solidify/solidified_Matter_z_Autoconf.h b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_z_Autoconf.h new file mode 100644 index 000000000..74081e32f --- /dev/null +++ b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_z_Autoconf.h @@ -0,0 +1,728 @@ +/* Solidification of Matter_z_Autoconf.h */ +/********************************************************************\ +* Generated code, don't edit * +\********************************************************************/ +#include "be_constobj.h" +// compact class 'Matter_Autoconf' ktab size: 73, total: 90 (saved 136 bytes) +static const bvalue be_ktab_class_Matter_Autoconf[73] = { + /* K0 */ be_nested_str_weak(device), + /* K1 */ be_nested_str_weak(k2l_num), + /* K2 */ be_nested_str_weak(plugins), + /* K3 */ be_nested_str_weak(push), + /* K4 */ be_nested_str_weak(matter), + /* K5 */ be_nested_str_weak(Plugin_Root), + /* K6 */ be_const_int(0), + /* K7 */ be_nested_str_weak(log), + /* K8 */ be_nested_str_weak(MTR_X3A_X20Configuring_X20endpoints), + /* K9 */ be_const_int(2), + /* K10 */ be_nested_str_weak(MTR_X3A_X20_X20_X20endpoint_X20_X3D_X20_X255i_X20type_X3A_X25s_X25s), + /* K11 */ be_nested_str_weak(root), + /* K12 */ be_nested_str_weak(), + /* K13 */ be_nested_str_weak(Plugin_Aggregator), + /* K14 */ be_nested_str_weak(AGGREGATOR_ENDPOINT), + /* K15 */ be_nested_str_weak(aggregator), + /* K16 */ be_nested_str_weak(find), + /* K17 */ be_nested_str_weak(type), + /* K18 */ be_nested_str_weak(MTR_X3A_X20no_X20class_X20name_X2C_X20skipping), + /* K19 */ be_const_int(3), + /* K20 */ be_nested_str_weak(MTR_X3A_X20only_X20one_X20root_X20node_X20allowed), + /* K21 */ be_nested_str_weak(plugins_classes), + /* K22 */ be_nested_str_weak(MTR_X3A_X20unknown_X20class_X20name_X20_X27), + /* K23 */ be_nested_str_weak(_X27_X20skipping), + /* K24 */ be_nested_str_weak(conf_to_log), + /* K25 */ be_nested_str_weak(MTR_X3A_X20Exception), + /* K26 */ be_nested_str_weak(_X7C), + /* K27 */ be_nested_str_weak(stop_iteration), + /* K28 */ be_nested_str_weak(tasmota), + /* K29 */ be_nested_str_weak(publish_result), + /* K30 */ be_nested_str_weak(_X7B_X22Matter_X22_X3A_X7B_X22Initialized_X22_X3A1_X7D_X7D), + /* K31 */ be_nested_str_weak(Matter), + /* K32 */ be_nested_str_weak(json), + /* K33 */ be_nested_str_weak(START_ENDPOINT), + /* K34 */ be_nested_str_weak(light), + /* K35 */ be_nested_str_weak(get), + /* K36 */ be_nested_str_weak(channels), + /* K37 */ be_const_int(1), + /* K38 */ be_nested_str_weak(light1), + /* K39 */ be_nested_str_weak(light2), + /* K40 */ be_nested_str_weak(light3), + /* K41 */ be_nested_str_weak(cmd), + /* K42 */ be_nested_str_weak(Status_X2013), + /* K43 */ be_nested_str_weak(MTR_X3A_X20Status_X2013_X20_X3D_X20), + /* K44 */ be_nested_str_weak(contains), + /* K45 */ be_nested_str_weak(StatusSHT), + /* K46 */ be_nested_str_weak(SHT), + /* K47 */ be_nested_str_weak(MTR_X3A_X20_X27_X25s_X27_X20_X3D_X20_X25s), + /* K48 */ be_nested_str_weak(Relay1), + /* K49 */ be_nested_str_weak(Relay2), + /* K50 */ be_nested_str_weak(MTR_X3A_X20relay1_X3D_X25s_X20relay2_X3D_X25s), + /* K51 */ be_nested_str_weak(TiltConfig), + /* K52 */ be_nested_str_weak(shutter_X2Btilt), + /* K53 */ be_nested_str_weak(shutter), + /* K54 */ be_nested_str_weak(get_power), + /* K55 */ be_nested_str_weak(relay), + /* K56 */ be_nested_str_weak(load), + /* K57 */ be_nested_str_weak(read_sensors), + /* K58 */ be_nested_str_weak(autoconf_sensors_list), + /* K59 */ be_nested_str_weak(k2l), + /* K60 */ be_nested_str_weak(Temperature), + /* K61 */ be_nested_str_weak(_X23Temperature), + /* K62 */ be_nested_str_weak(temperature), + /* K63 */ be_nested_str_weak(filter), + /* K64 */ be_nested_str_weak(Pressure), + /* K65 */ be_nested_str_weak(_X23Pressure), + /* K66 */ be_nested_str_weak(pressure), + /* K67 */ be_nested_str_weak(Illuminance), + /* K68 */ be_nested_str_weak(_X23Illuminance), + /* K69 */ be_nested_str_weak(illuminance), + /* K70 */ be_nested_str_weak(Humidity), + /* K71 */ be_nested_str_weak(_X23Humidity), + /* K72 */ be_nested_str_weak(humidity), +}; + + +extern const bclass be_class_Matter_Autoconf; + +/******************************************************************** +** Solidified function: instantiate_plugins_from_config +********************************************************************/ +be_local_closure(class_Matter_Autoconf_instantiate_plugins_from_config, /* name */ + be_nested_proto( + 18, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Autoconf, /* shared constants */ + be_str_weak(instantiate_plugins_from_config), + &be_const_str_solidified, + ( &(const binstruction[148]) { /* code */ + 0x88080100, // 0000 GETMBR R2 R0 K0 + 0x8C080501, // 0001 GETMET R2 R2 K1 + 0x5C100200, // 0002 MOVE R4 R1 + 0x7C080400, // 0003 CALL R2 2 + 0x880C0100, // 0004 GETMBR R3 R0 K0 + 0x880C0702, // 0005 GETMBR R3 R3 K2 + 0x8C100703, // 0006 GETMET R4 R3 K3 + 0xB81A0800, // 0007 GETNGBL R6 K4 + 0x8C180D05, // 0008 GETMET R6 R6 K5 + 0x88200100, // 0009 GETMBR R8 R0 K0 + 0x58240006, // 000A LDCONST R9 K6 + 0x60280013, // 000B GETGBL R10 G19 + 0x7C280000, // 000C CALL R10 0 + 0x7C180800, // 000D CALL R6 4 + 0x7C100400, // 000E CALL R4 2 + 0xB8120E00, // 000F GETNGBL R4 K7 + 0x58140008, // 0010 LDCONST R5 K8 + 0x58180009, // 0011 LDCONST R6 K9 + 0x7C100400, // 0012 CALL R4 2 + 0xB8120E00, // 0013 GETNGBL R4 K7 + 0x60140018, // 0014 GETGBL R5 G24 + 0x5818000A, // 0015 LDCONST R6 K10 + 0x581C0006, // 0016 LDCONST R7 K6 + 0x5820000B, // 0017 LDCONST R8 K11 + 0x5824000C, // 0018 LDCONST R9 K12 + 0x7C140800, // 0019 CALL R5 4 + 0x58180009, // 001A LDCONST R6 K9 + 0x7C100400, // 001B CALL R4 2 + 0x8C100703, // 001C GETMET R4 R3 K3 + 0xB81A0800, // 001D GETNGBL R6 K4 + 0x8C180D0D, // 001E GETMET R6 R6 K13 + 0x88200100, // 001F GETMBR R8 R0 K0 + 0xB8260800, // 0020 GETNGBL R9 K4 + 0x8824130E, // 0021 GETMBR R9 R9 K14 + 0x60280013, // 0022 GETGBL R10 G19 + 0x7C280000, // 0023 CALL R10 0 + 0x7C180800, // 0024 CALL R6 4 + 0x7C100400, // 0025 CALL R4 2 + 0xB8120E00, // 0026 GETNGBL R4 K7 + 0x60140018, // 0027 GETGBL R5 G24 + 0x5818000A, // 0028 LDCONST R6 K10 + 0xB81E0800, // 0029 GETNGBL R7 K4 + 0x881C0F0E, // 002A GETMBR R7 R7 K14 + 0x5820000F, // 002B LDCONST R8 K15 + 0x5824000C, // 002C LDCONST R9 K12 + 0x7C140800, // 002D CALL R5 4 + 0x58180009, // 002E LDCONST R6 K9 + 0x7C100400, // 002F CALL R4 2 + 0x60100010, // 0030 GETGBL R4 G16 + 0x5C140400, // 0031 MOVE R5 R2 + 0x7C100200, // 0032 CALL R4 1 + 0xA8020056, // 0033 EXBLK 0 #008B + 0x5C140800, // 0034 MOVE R5 R4 + 0x7C140000, // 0035 CALL R5 0 + 0x1C180B06, // 0036 EQ R6 R5 K6 + 0x781A0000, // 0037 JMPF R6 #0039 + 0x7001FFFA, // 0038 JMP #0034 + 0xA802003F, // 0039 EXBLK 0 #007A + 0x60180008, // 003A GETGBL R6 G8 + 0x5C1C0A00, // 003B MOVE R7 R5 + 0x7C180200, // 003C CALL R6 1 + 0x94180206, // 003D GETIDX R6 R1 R6 + 0x8C1C0D10, // 003E GETMET R7 R6 K16 + 0x58240011, // 003F LDCONST R9 K17 + 0x7C1C0400, // 0040 CALL R7 2 + 0x4C200000, // 0041 LDNIL R8 + 0x1C200E08, // 0042 EQ R8 R7 R8 + 0x78220005, // 0043 JMPF R8 #004A + 0xB8220E00, // 0044 GETNGBL R8 K7 + 0x58240012, // 0045 LDCONST R9 K18 + 0x58280013, // 0046 LDCONST R10 K19 + 0x7C200400, // 0047 CALL R8 2 + 0xA8040001, // 0048 EXBLK 1 1 + 0x7001FFE9, // 0049 JMP #0034 + 0x1C200F0B, // 004A EQ R8 R7 K11 + 0x78220005, // 004B JMPF R8 #0052 + 0xB8220E00, // 004C GETNGBL R8 K7 + 0x58240014, // 004D LDCONST R9 K20 + 0x58280013, // 004E LDCONST R10 K19 + 0x7C200400, // 004F CALL R8 2 + 0xA8040001, // 0050 EXBLK 1 1 + 0x7001FFE1, // 0051 JMP #0034 + 0x88200100, // 0052 GETMBR R8 R0 K0 + 0x88201115, // 0053 GETMBR R8 R8 K21 + 0x8C201110, // 0054 GETMET R8 R8 K16 + 0x5C280E00, // 0055 MOVE R10 R7 + 0x7C200400, // 0056 CALL R8 2 + 0x4C240000, // 0057 LDNIL R9 + 0x1C241009, // 0058 EQ R9 R8 R9 + 0x78260009, // 0059 JMPF R9 #0064 + 0xB8260E00, // 005A GETNGBL R9 K7 + 0x60280008, // 005B GETGBL R10 G8 + 0x5C2C0E00, // 005C MOVE R11 R7 + 0x7C280200, // 005D CALL R10 1 + 0x002A2C0A, // 005E ADD R10 K22 R10 + 0x00281517, // 005F ADD R10 R10 K23 + 0x582C0009, // 0060 LDCONST R11 K9 + 0x7C240400, // 0061 CALL R9 2 + 0xA8040001, // 0062 EXBLK 1 1 + 0x7001FFCF, // 0063 JMP #0034 + 0x5C241000, // 0064 MOVE R9 R8 + 0x88280100, // 0065 GETMBR R10 R0 K0 + 0x5C2C0A00, // 0066 MOVE R11 R5 + 0x5C300C00, // 0067 MOVE R12 R6 + 0x7C240600, // 0068 CALL R9 3 + 0x8C280703, // 0069 GETMET R10 R3 K3 + 0x5C301200, // 006A MOVE R12 R9 + 0x7C280400, // 006B CALL R10 2 + 0xB82A0E00, // 006C GETNGBL R10 K7 + 0x602C0018, // 006D GETGBL R11 G24 + 0x5830000A, // 006E LDCONST R12 K10 + 0x5C340A00, // 006F MOVE R13 R5 + 0x5C380E00, // 0070 MOVE R14 R7 + 0x883C0100, // 0071 GETMBR R15 R0 K0 + 0x8C3C1F18, // 0072 GETMET R15 R15 K24 + 0x5C440C00, // 0073 MOVE R17 R6 + 0x7C3C0400, // 0074 CALL R15 2 + 0x7C2C0800, // 0075 CALL R11 4 + 0x58300009, // 0076 LDCONST R12 K9 + 0x7C280400, // 0077 CALL R10 2 + 0xA8040001, // 0078 EXBLK 1 1 + 0x7002000F, // 0079 JMP #008A + 0xAC180002, // 007A CATCH R6 0 2 + 0x7002000C, // 007B JMP #0089 + 0xB8220E00, // 007C GETNGBL R8 K7 + 0x60240008, // 007D GETGBL R9 G8 + 0x5C280C00, // 007E MOVE R10 R6 + 0x7C240200, // 007F CALL R9 1 + 0x00263209, // 0080 ADD R9 K25 R9 + 0x0024131A, // 0081 ADD R9 R9 K26 + 0x60280008, // 0082 GETGBL R10 G8 + 0x5C2C0E00, // 0083 MOVE R11 R7 + 0x7C280200, // 0084 CALL R10 1 + 0x0024120A, // 0085 ADD R9 R9 R10 + 0x58280009, // 0086 LDCONST R10 K9 + 0x7C200400, // 0087 CALL R8 2 + 0x70020000, // 0088 JMP #008A + 0xB0080000, // 0089 RAISE 2 R0 R0 + 0x7001FFA8, // 008A JMP #0034 + 0x5810001B, // 008B LDCONST R4 K27 + 0xAC100200, // 008C CATCH R4 1 0 + 0xB0080000, // 008D RAISE 2 R0 R0 + 0xB8123800, // 008E GETNGBL R4 K28 + 0x8C10091D, // 008F GETMET R4 R4 K29 + 0x5818001E, // 0090 LDCONST R6 K30 + 0x581C001F, // 0091 LDCONST R7 K31 + 0x7C100600, // 0092 CALL R4 3 + 0x80000000, // 0093 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: autoconf_device_map +********************************************************************/ +be_local_closure(class_Matter_Autoconf_autoconf_device_map, /* name */ + be_nested_proto( + 19, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Autoconf, /* shared constants */ + be_str_weak(autoconf_device_map), + &be_const_str_solidified, + ( &(const binstruction[262]) { /* code */ + 0xA4064000, // 0000 IMPORT R1 K32 + 0x60080013, // 0001 GETGBL R2 G19 + 0x7C080000, // 0002 CALL R2 0 + 0xB80E0800, // 0003 GETNGBL R3 K4 + 0x880C0721, // 0004 GETMBR R3 R3 K33 + 0x58100006, // 0005 LDCONST R4 K6 + 0xA4164400, // 0006 IMPORT R5 K34 + 0x8C180B23, // 0007 GETMET R6 R5 K35 + 0x58200006, // 0008 LDCONST R8 K6 + 0x7C180400, // 0009 CALL R6 2 + 0x4C1C0000, // 000A LDNIL R7 + 0x201C0C07, // 000B NE R7 R6 R7 + 0x781E0066, // 000C JMPF R7 #0074 + 0x601C000C, // 000D GETGBL R7 G12 + 0x8C200D10, // 000E GETMET R8 R6 K16 + 0x58280024, // 000F LDCONST R10 K36 + 0x582C000C, // 0010 LDCONST R11 K12 + 0x7C200600, // 0011 CALL R8 3 + 0x7C1C0200, // 0012 CALL R7 1 + 0x58100025, // 0013 LDCONST R4 K37 + 0x24200F06, // 0014 GT R8 R7 K6 + 0x7822005D, // 0015 JMPF R8 #0074 + 0x1C200F25, // 0016 EQ R8 R7 K37 + 0x7822001E, // 0017 JMPF R8 #0037 + 0x60200008, // 0018 GETGBL R8 G8 + 0x5C240600, // 0019 MOVE R9 R3 + 0x7C200200, // 001A CALL R8 1 + 0x60240013, // 001B GETGBL R9 G19 + 0x7C240000, // 001C CALL R9 0 + 0x98262326, // 001D SETIDX R9 K17 K38 + 0x98081009, // 001E SETIDX R2 R8 R9 + 0x000C0725, // 001F ADD R3 R3 K37 + 0x58200025, // 0020 LDCONST R8 K37 + 0x4C240000, // 0021 LDNIL R9 + 0x8C280B23, // 0022 GETMET R10 R5 K35 + 0x5C301000, // 0023 MOVE R12 R8 + 0x7C280400, // 0024 CALL R10 2 + 0x5C241400, // 0025 MOVE R9 R10 + 0x4C2C0000, // 0026 LDNIL R11 + 0x2028140B, // 0027 NE R10 R10 R11 + 0x782A000C, // 0028 JMPF R10 #0036 + 0x60280008, // 0029 GETGBL R10 G8 + 0x5C2C0600, // 002A MOVE R11 R3 + 0x7C280200, // 002B CALL R10 1 + 0x602C0013, // 002C GETGBL R11 G19 + 0x7C2C0000, // 002D CALL R11 0 + 0x982E2326, // 002E SETIDX R11 K17 K38 + 0x00301125, // 002F ADD R12 R8 K37 + 0x982E440C, // 0030 SETIDX R11 K34 R12 + 0x9808140B, // 0031 SETIDX R2 R10 R11 + 0x000C0725, // 0032 ADD R3 R3 K37 + 0x00100925, // 0033 ADD R4 R4 K37 + 0x00201125, // 0034 ADD R8 R8 K37 + 0x7001FFEB, // 0035 JMP #0022 + 0x7002003C, // 0036 JMP #0074 + 0x1C200F09, // 0037 EQ R8 R7 K9 + 0x78220008, // 0038 JMPF R8 #0042 + 0x60200008, // 0039 GETGBL R8 G8 + 0x5C240600, // 003A MOVE R9 R3 + 0x7C200200, // 003B CALL R8 1 + 0x60240013, // 003C GETGBL R9 G19 + 0x7C240000, // 003D CALL R9 0 + 0x98262327, // 003E SETIDX R9 K17 K39 + 0x98081009, // 003F SETIDX R2 R8 R9 + 0x000C0725, // 0040 ADD R3 R3 K37 + 0x70020031, // 0041 JMP #0074 + 0x1C200F13, // 0042 EQ R8 R7 K19 + 0x7822002B, // 0043 JMPF R8 #0070 + 0x60200008, // 0044 GETGBL R8 G8 + 0x5C240600, // 0045 MOVE R9 R3 + 0x7C200200, // 0046 CALL R8 1 + 0x60240013, // 0047 GETGBL R9 G19 + 0x7C240000, // 0048 CALL R9 0 + 0x98262328, // 0049 SETIDX R9 K17 K40 + 0x98081009, // 004A SETIDX R2 R8 R9 + 0x000C0725, // 004B ADD R3 R3 K37 + 0x8C200B23, // 004C GETMET R8 R5 K35 + 0x58280025, // 004D LDCONST R10 K37 + 0x7C200400, // 004E CALL R8 2 + 0x4C240000, // 004F LDNIL R9 + 0x20241009, // 0050 NE R9 R8 R9 + 0x7826001C, // 0051 JMPF R9 #006F + 0x6024000C, // 0052 GETGBL R9 G12 + 0x8C281110, // 0053 GETMET R10 R8 K16 + 0x58300024, // 0054 LDCONST R12 K36 + 0x5834000C, // 0055 LDCONST R13 K12 + 0x7C280600, // 0056 CALL R10 3 + 0x7C240200, // 0057 CALL R9 1 + 0x1C281325, // 0058 EQ R10 R9 K37 + 0x782A0009, // 0059 JMPF R10 #0064 + 0x60280008, // 005A GETGBL R10 G8 + 0x5C2C0600, // 005B MOVE R11 R3 + 0x7C280200, // 005C CALL R10 1 + 0x602C0013, // 005D GETGBL R11 G19 + 0x7C2C0000, // 005E CALL R11 0 + 0x982E2326, // 005F SETIDX R11 K17 K38 + 0x9808140B, // 0060 SETIDX R2 R10 R11 + 0x000C0725, // 0061 ADD R3 R3 K37 + 0x00100925, // 0062 ADD R4 R4 K37 + 0x7002000A, // 0063 JMP #006F + 0x1C281309, // 0064 EQ R10 R9 K9 + 0x782A0008, // 0065 JMPF R10 #006F + 0x60280008, // 0066 GETGBL R10 G8 + 0x5C2C0600, // 0067 MOVE R11 R3 + 0x7C280200, // 0068 CALL R10 1 + 0x602C0013, // 0069 GETGBL R11 G19 + 0x7C2C0000, // 006A CALL R11 0 + 0x982E2327, // 006B SETIDX R11 K17 K39 + 0x9808140B, // 006C SETIDX R2 R10 R11 + 0x000C0725, // 006D ADD R3 R3 K37 + 0x00100925, // 006E ADD R4 R4 K37 + 0x70020003, // 006F JMP #0074 + 0x54220003, // 0070 LDINT R8 4 + 0x1C200E08, // 0071 EQ R8 R7 R8 + 0x78220000, // 0072 JMPF R8 #0074 + 0x7001FFFF, // 0073 JMP #0074 + 0xB81E3800, // 0074 GETNGBL R7 K28 + 0x8C1C0F29, // 0075 GETMET R7 R7 K41 + 0x5824002A, // 0076 LDCONST R9 K42 + 0x50280200, // 0077 LDBOOL R10 1 0 + 0x7C1C0600, // 0078 CALL R7 3 + 0x60200012, // 0079 GETGBL R8 G18 + 0x7C200000, // 007A CALL R8 0 + 0xB8260E00, // 007B GETNGBL R9 K7 + 0x60280008, // 007C GETGBL R10 G8 + 0x5C2C0E00, // 007D MOVE R11 R7 + 0x7C280200, // 007E CALL R10 1 + 0x002A560A, // 007F ADD R10 K43 R10 + 0x582C0013, // 0080 LDCONST R11 K19 + 0x7C240400, // 0081 CALL R9 2 + 0x4C240000, // 0082 LDNIL R9 + 0x20240E09, // 0083 NE R9 R7 R9 + 0x7826004D, // 0084 JMPF R9 #00D3 + 0x8C240F2C, // 0085 GETMET R9 R7 K44 + 0x582C002D, // 0086 LDCONST R11 K45 + 0x7C240400, // 0087 CALL R9 2 + 0x78260049, // 0088 JMPF R9 #00D3 + 0x941C0F2D, // 0089 GETIDX R7 R7 K45 + 0x58240006, // 008A LDCONST R9 K6 + 0x50280200, // 008B LDBOOL R10 1 0 + 0x782A0045, // 008C JMPF R10 #00D3 + 0x60280008, // 008D GETGBL R10 G8 + 0x5C2C1200, // 008E MOVE R11 R9 + 0x7C280200, // 008F CALL R10 1 + 0x002A5C0A, // 0090 ADD R10 K46 R10 + 0x8C2C0F2C, // 0091 GETMET R11 R7 K44 + 0x5C341400, // 0092 MOVE R13 R10 + 0x7C2C0400, // 0093 CALL R11 2 + 0x742E0000, // 0094 JMPT R11 #0096 + 0x7002003C, // 0095 JMP #00D3 + 0x942C0E0A, // 0096 GETIDX R11 R7 R10 + 0xB8320E00, // 0097 GETNGBL R12 K7 + 0x60340018, // 0098 GETGBL R13 G24 + 0x5838002F, // 0099 LDCONST R14 K47 + 0x5C3C1400, // 009A MOVE R15 R10 + 0x60400008, // 009B GETGBL R16 G8 + 0x5C441600, // 009C MOVE R17 R11 + 0x7C400200, // 009D CALL R16 1 + 0x7C340600, // 009E CALL R13 3 + 0x58380013, // 009F LDCONST R14 K19 + 0x7C300400, // 00A0 CALL R12 2 + 0x8C301710, // 00A1 GETMET R12 R11 K16 + 0x58380030, // 00A2 LDCONST R14 K48 + 0x543DFFFE, // 00A3 LDINT R15 -1 + 0x7C300600, // 00A4 CALL R12 3 + 0x8C341710, // 00A5 GETMET R13 R11 K16 + 0x583C0031, // 00A6 LDCONST R15 K49 + 0x5441FFFE, // 00A7 LDINT R16 -1 + 0x7C340600, // 00A8 CALL R13 3 + 0x24381906, // 00A9 GT R14 R12 K6 + 0x783A0002, // 00AA JMPF R14 #00AE + 0x8C381103, // 00AB GETMET R14 R8 K3 + 0x04401925, // 00AC SUB R16 R12 K37 + 0x7C380400, // 00AD CALL R14 2 + 0x24381B06, // 00AE GT R14 R13 K6 + 0x783A0002, // 00AF JMPF R14 #00B3 + 0x8C381103, // 00B0 GETMET R14 R8 K3 + 0x04401B25, // 00B1 SUB R16 R13 K37 + 0x7C380400, // 00B2 CALL R14 2 + 0xB83A0E00, // 00B3 GETNGBL R14 K7 + 0x603C0018, // 00B4 GETGBL R15 G24 + 0x58400032, // 00B5 LDCONST R16 K50 + 0x5C441800, // 00B6 MOVE R17 R12 + 0x5C481A00, // 00B7 MOVE R18 R13 + 0x7C3C0600, // 00B8 CALL R15 3 + 0x58400013, // 00B9 LDCONST R16 K19 + 0x7C380400, // 00BA CALL R14 2 + 0x8C381710, // 00BB GETMET R14 R11 K16 + 0x58400033, // 00BC LDCONST R16 K51 + 0x7C380400, // 00BD CALL R14 2 + 0x783A0002, // 00BE JMPF R14 #00C2 + 0x943C1D09, // 00BF GETIDX R15 R14 K9 + 0x243C1F06, // 00C0 GT R15 R15 K6 + 0x743E0000, // 00C1 JMPT R15 #00C3 + 0x503C0001, // 00C2 LDBOOL R15 0 1 + 0x503C0200, // 00C3 LDBOOL R15 1 0 + 0x60400008, // 00C4 GETGBL R16 G8 + 0x5C440600, // 00C5 MOVE R17 R3 + 0x7C400200, // 00C6 CALL R16 1 + 0x60440013, // 00C7 GETGBL R17 G19 + 0x7C440000, // 00C8 CALL R17 0 + 0x783E0001, // 00C9 JMPF R15 #00CC + 0x58480034, // 00CA LDCONST R18 K52 + 0x70020000, // 00CB JMP #00CD + 0x58480035, // 00CC LDCONST R18 K53 + 0x98462212, // 00CD SETIDX R17 K17 R18 + 0x98466A09, // 00CE SETIDX R17 K53 R9 + 0x98082011, // 00CF SETIDX R2 R16 R17 + 0x000C0725, // 00D0 ADD R3 R3 K37 + 0x00241325, // 00D1 ADD R9 R9 K37 + 0x7001FFB7, // 00D2 JMP #008B + 0x6024000C, // 00D3 GETGBL R9 G12 + 0xB82A3800, // 00D4 GETNGBL R10 K28 + 0x8C281536, // 00D5 GETMET R10 R10 K54 + 0x7C280200, // 00D6 CALL R10 1 + 0x7C240200, // 00D7 CALL R9 1 + 0x58280006, // 00D8 LDCONST R10 K6 + 0x04241204, // 00D9 SUB R9 R9 R4 + 0x142C1409, // 00DA LT R11 R10 R9 + 0x782E0011, // 00DB JMPF R11 #00EE + 0x8C2C1110, // 00DC GETMET R11 R8 K16 + 0x5C341400, // 00DD MOVE R13 R10 + 0x7C2C0400, // 00DE CALL R11 2 + 0x4C300000, // 00DF LDNIL R12 + 0x1C2C160C, // 00E0 EQ R11 R11 R12 + 0x782E0009, // 00E1 JMPF R11 #00EC + 0x602C0008, // 00E2 GETGBL R11 G8 + 0x5C300600, // 00E3 MOVE R12 R3 + 0x7C2C0200, // 00E4 CALL R11 1 + 0x60300013, // 00E5 GETGBL R12 G19 + 0x7C300000, // 00E6 CALL R12 0 + 0x98322337, // 00E7 SETIDX R12 K17 K55 + 0x00341525, // 00E8 ADD R13 R10 K37 + 0x98326E0D, // 00E9 SETIDX R12 K55 R13 + 0x9808160C, // 00EA SETIDX R2 R11 R12 + 0x000C0725, // 00EB ADD R3 R3 K37 + 0x00281525, // 00EC ADD R10 R10 K37 + 0x7001FFEB, // 00ED JMP #00DA + 0x8C2C0338, // 00EE GETMET R11 R1 K56 + 0xB8363800, // 00EF GETNGBL R13 K28 + 0x8C341B39, // 00F0 GETMET R13 R13 K57 + 0x7C340200, // 00F1 CALL R13 1 + 0x7C2C0400, // 00F2 CALL R11 2 + 0x8C30013A, // 00F3 GETMET R12 R0 K58 + 0x5C381600, // 00F4 MOVE R14 R11 + 0x7C300400, // 00F5 CALL R12 2 + 0x60340010, // 00F6 GETGBL R13 G16 + 0x5C381800, // 00F7 MOVE R14 R12 + 0x7C340200, // 00F8 CALL R13 1 + 0xA8020007, // 00F9 EXBLK 0 #0102 + 0x5C381A00, // 00FA MOVE R14 R13 + 0x7C380000, // 00FB CALL R14 0 + 0x603C0008, // 00FC GETGBL R15 G8 + 0x5C400600, // 00FD MOVE R16 R3 + 0x7C3C0200, // 00FE CALL R15 1 + 0x98081E0E, // 00FF SETIDX R2 R15 R14 + 0x000C0725, // 0100 ADD R3 R3 K37 + 0x7001FFF7, // 0101 JMP #00FA + 0x5834001B, // 0102 LDCONST R13 K27 + 0xAC340200, // 0103 CATCH R13 1 0 + 0xB0080000, // 0104 RAISE 2 R0 R0 + 0x80040400, // 0105 RET 1 R2 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: init +********************************************************************/ +be_local_closure(class_Matter_Autoconf_init, /* name */ + be_nested_proto( + 2, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Autoconf, /* shared constants */ + be_str_weak(init), + &be_const_str_solidified, + ( &(const binstruction[ 2]) { /* code */ + 0x90020001, // 0000 SETMBR R0 K0 R1 + 0x80000000, // 0001 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: autoconf_sensors_list +********************************************************************/ +be_local_closure(class_Matter_Autoconf_autoconf_sensors_list, /* name */ + be_nested_proto( + 11, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Autoconf, /* shared constants */ + be_str_weak(autoconf_sensors_list), + &be_const_str_solidified, + ( &(const binstruction[121]) { /* code */ + 0x88080100, // 0000 GETMBR R2 R0 K0 + 0x8808053B, // 0001 GETMBR R2 R2 K59 + 0x600C0012, // 0002 GETGBL R3 G18 + 0x7C0C0000, // 0003 CALL R3 0 + 0x60100010, // 0004 GETGBL R4 G16 + 0x5C140400, // 0005 MOVE R5 R2 + 0x5C180200, // 0006 MOVE R6 R1 + 0x7C140200, // 0007 CALL R5 1 + 0x7C100200, // 0008 CALL R4 1 + 0xA8020013, // 0009 EXBLK 0 #001E + 0x5C140800, // 000A MOVE R5 R4 + 0x7C140000, // 000B CALL R5 0 + 0x94180205, // 000C GETIDX R6 R1 R5 + 0x601C000F, // 000D GETGBL R7 G15 + 0x5C200C00, // 000E MOVE R8 R6 + 0x60240013, // 000F GETGBL R9 G19 + 0x7C1C0400, // 0010 CALL R7 2 + 0x781E000A, // 0011 JMPF R7 #001D + 0x8C1C0D2C, // 0012 GETMET R7 R6 K44 + 0x5824003C, // 0013 LDCONST R9 K60 + 0x7C1C0400, // 0014 CALL R7 2 + 0x781E0006, // 0015 JMPF R7 #001D + 0x001C0B3D, // 0016 ADD R7 R5 K61 + 0x8C200703, // 0017 GETMET R8 R3 K3 + 0x60280013, // 0018 GETGBL R10 G19 + 0x7C280000, // 0019 CALL R10 0 + 0x982A233E, // 001A SETIDX R10 K17 K62 + 0x982A7E07, // 001B SETIDX R10 K63 R7 + 0x7C200400, // 001C CALL R8 2 + 0x7001FFEB, // 001D JMP #000A + 0x5810001B, // 001E LDCONST R4 K27 + 0xAC100200, // 001F CATCH R4 1 0 + 0xB0080000, // 0020 RAISE 2 R0 R0 + 0x60100010, // 0021 GETGBL R4 G16 + 0x5C140400, // 0022 MOVE R5 R2 + 0x5C180200, // 0023 MOVE R6 R1 + 0x7C140200, // 0024 CALL R5 1 + 0x7C100200, // 0025 CALL R4 1 + 0xA8020013, // 0026 EXBLK 0 #003B + 0x5C140800, // 0027 MOVE R5 R4 + 0x7C140000, // 0028 CALL R5 0 + 0x94180205, // 0029 GETIDX R6 R1 R5 + 0x601C000F, // 002A GETGBL R7 G15 + 0x5C200C00, // 002B MOVE R8 R6 + 0x60240013, // 002C GETGBL R9 G19 + 0x7C1C0400, // 002D CALL R7 2 + 0x781E000A, // 002E JMPF R7 #003A + 0x8C1C0D2C, // 002F GETMET R7 R6 K44 + 0x58240040, // 0030 LDCONST R9 K64 + 0x7C1C0400, // 0031 CALL R7 2 + 0x781E0006, // 0032 JMPF R7 #003A + 0x001C0B41, // 0033 ADD R7 R5 K65 + 0x8C200703, // 0034 GETMET R8 R3 K3 + 0x60280013, // 0035 GETGBL R10 G19 + 0x7C280000, // 0036 CALL R10 0 + 0x982A2342, // 0037 SETIDX R10 K17 K66 + 0x982A7E07, // 0038 SETIDX R10 K63 R7 + 0x7C200400, // 0039 CALL R8 2 + 0x7001FFEB, // 003A JMP #0027 + 0x5810001B, // 003B LDCONST R4 K27 + 0xAC100200, // 003C CATCH R4 1 0 + 0xB0080000, // 003D RAISE 2 R0 R0 + 0x60100010, // 003E GETGBL R4 G16 + 0x5C140400, // 003F MOVE R5 R2 + 0x5C180200, // 0040 MOVE R6 R1 + 0x7C140200, // 0041 CALL R5 1 + 0x7C100200, // 0042 CALL R4 1 + 0xA8020013, // 0043 EXBLK 0 #0058 + 0x5C140800, // 0044 MOVE R5 R4 + 0x7C140000, // 0045 CALL R5 0 + 0x94180205, // 0046 GETIDX R6 R1 R5 + 0x601C000F, // 0047 GETGBL R7 G15 + 0x5C200C00, // 0048 MOVE R8 R6 + 0x60240013, // 0049 GETGBL R9 G19 + 0x7C1C0400, // 004A CALL R7 2 + 0x781E000A, // 004B JMPF R7 #0057 + 0x8C1C0D2C, // 004C GETMET R7 R6 K44 + 0x58240043, // 004D LDCONST R9 K67 + 0x7C1C0400, // 004E CALL R7 2 + 0x781E0006, // 004F JMPF R7 #0057 + 0x001C0B44, // 0050 ADD R7 R5 K68 + 0x8C200703, // 0051 GETMET R8 R3 K3 + 0x60280013, // 0052 GETGBL R10 G19 + 0x7C280000, // 0053 CALL R10 0 + 0x982A2345, // 0054 SETIDX R10 K17 K69 + 0x982A7E07, // 0055 SETIDX R10 K63 R7 + 0x7C200400, // 0056 CALL R8 2 + 0x7001FFEB, // 0057 JMP #0044 + 0x5810001B, // 0058 LDCONST R4 K27 + 0xAC100200, // 0059 CATCH R4 1 0 + 0xB0080000, // 005A RAISE 2 R0 R0 + 0x60100010, // 005B GETGBL R4 G16 + 0x5C140400, // 005C MOVE R5 R2 + 0x5C180200, // 005D MOVE R6 R1 + 0x7C140200, // 005E CALL R5 1 + 0x7C100200, // 005F CALL R4 1 + 0xA8020013, // 0060 EXBLK 0 #0075 + 0x5C140800, // 0061 MOVE R5 R4 + 0x7C140000, // 0062 CALL R5 0 + 0x94180205, // 0063 GETIDX R6 R1 R5 + 0x601C000F, // 0064 GETGBL R7 G15 + 0x5C200C00, // 0065 MOVE R8 R6 + 0x60240013, // 0066 GETGBL R9 G19 + 0x7C1C0400, // 0067 CALL R7 2 + 0x781E000A, // 0068 JMPF R7 #0074 + 0x8C1C0D2C, // 0069 GETMET R7 R6 K44 + 0x58240046, // 006A LDCONST R9 K70 + 0x7C1C0400, // 006B CALL R7 2 + 0x781E0006, // 006C JMPF R7 #0074 + 0x001C0B47, // 006D ADD R7 R5 K71 + 0x8C200703, // 006E GETMET R8 R3 K3 + 0x60280013, // 006F GETGBL R10 G19 + 0x7C280000, // 0070 CALL R10 0 + 0x982A2348, // 0071 SETIDX R10 K17 K72 + 0x982A7E07, // 0072 SETIDX R10 K63 R7 + 0x7C200400, // 0073 CALL R8 2 + 0x7001FFEB, // 0074 JMP #0061 + 0x5810001B, // 0075 LDCONST R4 K27 + 0xAC100200, // 0076 CATCH R4 1 0 + 0xB0080000, // 0077 RAISE 2 R0 R0 + 0x80040600, // 0078 RET 1 R3 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified class: Matter_Autoconf +********************************************************************/ +be_local_class(Matter_Autoconf, + 1, + NULL, + be_nested_map(5, + ( (struct bmapnode*) &(const bmapnode[]) { + { be_const_key_weak(instantiate_plugins_from_config, 3), be_const_closure(class_Matter_Autoconf_instantiate_plugins_from_config_closure) }, + { be_const_key_weak(device, -1), be_const_var(0) }, + { be_const_key_weak(autoconf_device_map, -1), be_const_closure(class_Matter_Autoconf_autoconf_device_map_closure) }, + { be_const_key_weak(init, -1), be_const_closure(class_Matter_Autoconf_init_closure) }, + { be_const_key_weak(autoconf_sensors_list, -1), be_const_closure(class_Matter_Autoconf_autoconf_sensors_list_closure) }, + })), + be_str_weak(Matter_Autoconf) +); +/********************************************************************/ +/* End of solidification */ diff --git a/lib/libesp32/berry_matter/src/solidify/solidified_Matter_z_Commissioning.h b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_z_Commissioning.h index 646169710..7c5ea0da7 100644 --- a/lib/libesp32/berry_matter/src/solidify/solidified_Matter_z_Commissioning.h +++ b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_z_Commissioning.h @@ -3,15 +3,15 @@ * Generated code, don't edit * \********************************************************************/ #include "be_constobj.h" -// compact class 'Matter_Commissioning' ktab size: 133, total: 275 (saved 1136 bytes) -static const bvalue be_ktab_class_Matter_Commissioning[133] = { +// compact class 'Matter_Commissioning' ktab size: 132, total: 274 (saved 1136 bytes) +static const bvalue be_ktab_class_Matter_Commissioning[132] = { /* K0 */ be_nested_str_weak(device), - /* K1 */ be_nested_str_weak(root_discriminator), - /* K2 */ be_nested_str_weak(root_passcode), - /* K3 */ be_nested_str_weak(_X251i_X2505i_X2504i), - /* K4 */ be_nested_str_weak(matter), - /* K5 */ be_nested_str_weak(Verhoeff), - /* K6 */ be_nested_str_weak(checksum), + /* K1 */ be_nested_str_weak(sessions), + /* K2 */ be_nested_str_weak(active_fabrics), + /* K3 */ be_nested_str_weak(get_device_id), + /* K4 */ be_nested_str_weak(get_fabric_id), + /* K5 */ be_nested_str_weak(mdns_remove_op_discovery), + /* K6 */ be_nested_str_weak(stop_iteration), /* K7 */ be_nested_str_weak(is_root_commissioning_open), /* K8 */ be_nested_str_weak(tasmota), /* K9 */ be_nested_str_weak(publish_result), @@ -25,130 +25,129 @@ static const bvalue be_ktab_class_Matter_Commissioning[133] = { /* K17 */ be_nested_str_weak(commissioning_w0), /* K18 */ be_nested_str_weak(commissioning_L), /* K19 */ be_nested_str_weak(commissioning_admin_fabric), - /* K20 */ be_nested_str_weak(get_fabric), - /* K21 */ be_nested_str_weak(get_fabric_id), - /* K22 */ be_nested_str_weak(copy), - /* K23 */ be_nested_str_weak(reverse), - /* K24 */ be_nested_str_weak(tohex), - /* K25 */ be_nested_str_weak(get_admin_vendor_name), - /* K26 */ be_nested_str_weak(log), - /* K27 */ be_nested_str_weak(MTR_X3A_X20_X2D_X2D_X2D_X20Commissioning_X20complete_X20for_X20Fabric_X20_X27_X25s_X27_X20_X28Vendor_X20_X25s_X29_X20_X2D_X2D_X2D), - /* K28 */ be_const_int(2), - /* K29 */ be_nested_str_weak(stop_basic_commissioning), - /* K30 */ be_nested_str_weak(resize), - /* K31 */ be_nested_str_weak(setbits), - /* K32 */ be_const_int(3), - /* K33 */ be_nested_str_weak(VENDOR_ID), - /* K34 */ be_nested_str_weak(PRODUCT_ID), - /* K35 */ be_const_int(134217727), - /* K36 */ be_nested_str_weak(MT_X3A), - /* K37 */ be_nested_str_weak(Base38), - /* K38 */ be_nested_str_weak(encode), - /* K39 */ be_nested_str_weak(crypto), - /* K40 */ be_nested_str_weak(mdns), - /* K41 */ be_nested_str_weak(mdns_announce_op_discovery), - /* K42 */ be_nested_str_weak(sessions), - /* K43 */ be_nested_str_weak(active_fabrics), - /* K44 */ be_nested_str_weak(get_device_id), - /* K45 */ be_nested_str_weak(mdns_remove_op_discovery), - /* K46 */ be_nested_str_weak(stop_iteration), - /* K47 */ be_nested_str_weak(get_fabric_compressed), - /* K48 */ be_nested_str_weak(_X2D), - /* K49 */ be_nested_str_weak(eth), - /* K50 */ be_nested_str_weak(find), - /* K51 */ be_nested_str_weak(up), - /* K52 */ be_nested_str_weak(MTR_X3A_X20remove_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27), - /* K53 */ be_nested_str_weak(remove_service), - /* K54 */ be_nested_str_weak(_matter), - /* K55 */ be_nested_str_weak(_tcp), - /* K56 */ be_nested_str_weak(hostname_eth), - /* K57 */ be_nested_str_weak(wifi), - /* K58 */ be_nested_str_weak(hostname_wifi), - /* K59 */ be_nested_str_weak(MTR_X3A_X20Exception), - /* K60 */ be_nested_str_weak(_X7C), - /* K61 */ be_nested_str_weak(millis), - /* K62 */ be_nested_str_weak(mdns_announce_PASE), - /* K63 */ be_nested_str_weak(add_rule), - /* K64 */ be_nested_str_weak(Wifi_X23Connected), - /* K65 */ be_nested_str_weak(Eth_X23Connected), - /* K66 */ be_nested_str_weak(set_timer), - /* K67 */ be_const_int(0), - /* K68 */ be_nested_str_weak(string), - /* K69 */ be_nested_str_weak(start), - /* K70 */ be_nested_str_weak(replace), - /* K71 */ be_nested_str_weak(mac), - /* K72 */ be_nested_str_weak(_X3A), - /* K73 */ be_nested_str_weak(), - /* K74 */ be_nested_str_weak(ipv4only), - /* K75 */ be_nested_str_weak(contains), - /* K76 */ be_nested_str_weak(ip6local), - /* K77 */ be_nested_str_weak(add_hostname), - /* K78 */ be_nested_str_weak(ip), - /* K79 */ be_nested_str_weak(ip6), - /* K80 */ be_nested_str_weak(MTR_X3A_X20calling_X20mdns_X2Eadd_hostname_X28_X25s_X2C_X20_X25s_X29), - /* K81 */ be_nested_str_weak(MTR_X3A_X20start_X20mDNS_X20on_X20_X25s_X20host_X20_X27_X25s_X2Elocal_X27), - /* K82 */ be_nested_str_weak(mdns_announce_op_discovery_all_fabrics), - /* K83 */ be_nested_str_weak(random), - /* K84 */ be_nested_str_weak(get), - /* K85 */ be_const_int(99999998), - /* K86 */ be_nested_str_weak(PASSCODE_INVALID), - /* K87 */ be_nested_str_weak(MTR_X3A_X20Operational_X20Discovery_X20node_X20_X3D_X20), - /* K88 */ be_nested_str_weak(MTR_X3A_X20adding_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27_X20ptr_X20to_X20_X60_X25s_X2Elocal_X60), - /* K89 */ be_nested_str_weak(add_service), - /* K90 */ be_nested_str_weak(_I), - /* K91 */ be_nested_str_weak(MTR_X3A_X20adding_X20subtype_X3A_X20), - /* K92 */ be_nested_str_weak(add_subtype), - /* K93 */ be_nested_str_weak(time_reached), - /* K94 */ be_nested_str_weak(VP), - /* K95 */ be_nested_str_weak(_X25s_X2B_X25s), - /* K96 */ be_nested_str_weak(D), - /* K97 */ be_nested_str_weak(CM), - /* K98 */ be_const_int(1), - /* K99 */ be_nested_str_weak(T), - /* K100 */ be_nested_str_weak(SII), - /* K101 */ be_nested_str_weak(SAI), - /* K102 */ be_nested_str_weak(commissioning_instance_wifi), - /* K103 */ be_nested_str_weak(commissioning_instance_eth), - /* K104 */ be_nested_str_weak(_matterc), - /* K105 */ be_nested_str_weak(_udp), - /* K106 */ be_nested_str_weak(mdns_pase_eth), - /* K107 */ be_nested_str_weak(MTR_X3A_X20announce_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27_X20ptr_X20to_X20_X60_X25s_X2Elocal_X60), - /* K108 */ be_nested_str_weak(_L), - /* K109 */ be_nested_str_weak(_S), - /* K110 */ be_nested_str_weak(_V), - /* K111 */ be_nested_str_weak(_CM1), - /* K112 */ be_nested_str_weak(mdns_pase_wifi), - /* K113 */ be_nested_str_weak(MTR_X3A_X20starting_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27_X20ptr_X20to_X20_X60_X25s_X2Elocal_X60), - /* K114 */ be_nested_str_weak(count_active_fabrics), - /* K115 */ be_nested_str_weak(start_root_basic_commissioning), - /* K116 */ be_nested_str_weak(_mdns_announce_hostname), - /* K117 */ be_nested_str_weak(matter_mdns_host), - /* K118 */ be_nested_str_weak(PASE_TIMEOUT), - /* K119 */ be_nested_str_weak(compute_manual_pairing_code), - /* K120 */ be_nested_str_weak(MTR_X3A_X20Manual_X20pairing_X20code_X3A_X20_X25s), - /* K121 */ be_nested_str_weak(compute_qrcode_content), - /* K122 */ be_nested_str_weak(_X7B_X22Matter_X22_X3A_X7B_X22Commissioning_X22_X3A1_X2C_X22PairingCode_X22_X3A_X22_X25s_X22_X2C_X22QRCode_X22_X3A_X22_X25s_X22_X7D_X7D), - /* K123 */ be_nested_str_weak(add), - /* K124 */ be_nested_str_weak(PBKDF2_HMAC_SHA256), - /* K125 */ be_nested_str_weak(derive), - /* K126 */ be_nested_str_weak(PBKDF_ITERATIONS), - /* K127 */ be_nested_str_weak(EC_P256), - /* K128 */ be_nested_str_weak(mod), - /* K129 */ be_nested_str_weak(public_key), - /* K130 */ be_nested_str_weak(start_basic_commissioning), - /* K131 */ be_nested_str_weak(_init_basic_commissioning), - /* K132 */ be_nested_str_weak(MTR_X3A_X20calling_X20mdns_X2Eremove_service_X28_X25s_X2C_X20_X25s_X2C_X20_X25s_X2C_X20_X25s_X29), + /* K20 */ be_nested_str_weak(count_active_fabrics), + /* K21 */ be_const_int(0), + /* K22 */ be_nested_str_weak(start_root_basic_commissioning), + /* K23 */ be_nested_str_weak(resize), + /* K24 */ be_nested_str_weak(setbits), + /* K25 */ be_const_int(3), + /* K26 */ be_nested_str_weak(VENDOR_ID), + /* K27 */ be_nested_str_weak(PRODUCT_ID), + /* K28 */ be_nested_str_weak(root_discriminator), + /* K29 */ be_nested_str_weak(root_passcode), + /* K30 */ be_const_int(134217727), + /* K31 */ be_nested_str_weak(MT_X3A), + /* K32 */ be_nested_str_weak(matter), + /* K33 */ be_nested_str_weak(Base38), + /* K34 */ be_nested_str_weak(encode), + /* K35 */ be_nested_str_weak(mdns), + /* K36 */ be_nested_str_weak(mdns_pase_eth), + /* K37 */ be_nested_str_weak(log), + /* K38 */ be_nested_str_weak(MTR_X3A_X20calling_X20mdns_X2Eremove_service_X28_X25s_X2C_X20_X25s_X2C_X20_X25s_X2C_X20_X25s_X29), + /* K39 */ be_nested_str_weak(_matterc), + /* K40 */ be_nested_str_weak(_udp), + /* K41 */ be_nested_str_weak(commissioning_instance_eth), + /* K42 */ be_nested_str_weak(hostname_eth), + /* K43 */ be_nested_str_weak(MTR_X3A_X20remove_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27), + /* K44 */ be_nested_str_weak(eth), + /* K45 */ be_nested_str_weak(remove_service), + /* K46 */ be_nested_str_weak(mdns_pase_wifi), + /* K47 */ be_nested_str_weak(commissioning_instance_wifi), + /* K48 */ be_nested_str_weak(hostname_wifi), + /* K49 */ be_nested_str_weak(wifi), + /* K50 */ be_nested_str_weak(MTR_X3A_X20Exception), + /* K51 */ be_nested_str_weak(_X7C), + /* K52 */ be_const_int(2), + /* K53 */ be_nested_str_weak(_X251i_X2505i_X2504i), + /* K54 */ be_nested_str_weak(Verhoeff), + /* K55 */ be_nested_str_weak(checksum), + /* K56 */ be_nested_str_weak(copy), + /* K57 */ be_nested_str_weak(reverse), + /* K58 */ be_nested_str_weak(get_fabric_compressed), + /* K59 */ be_nested_str_weak(tohex), + /* K60 */ be_nested_str_weak(_X2D), + /* K61 */ be_nested_str_weak(find), + /* K62 */ be_nested_str_weak(up), + /* K63 */ be_nested_str_weak(_matter), + /* K64 */ be_nested_str_weak(_tcp), + /* K65 */ be_nested_str_weak(set_timer), + /* K66 */ be_nested_str_weak(crypto), + /* K67 */ be_nested_str_weak(stop_basic_commissioning), + /* K68 */ be_nested_str_weak(mdns_announce_op_discovery), + /* K69 */ be_nested_str_weak(string), + /* K70 */ be_nested_str_weak(start), + /* K71 */ be_nested_str_weak(replace), + /* K72 */ be_nested_str_weak(mac), + /* K73 */ be_nested_str_weak(_X3A), + /* K74 */ be_nested_str_weak(), + /* K75 */ be_nested_str_weak(ipv4only), + /* K76 */ be_nested_str_weak(contains), + /* K77 */ be_nested_str_weak(ip6local), + /* K78 */ be_nested_str_weak(add_hostname), + /* K79 */ be_nested_str_weak(ip), + /* K80 */ be_nested_str_weak(ip6), + /* K81 */ be_nested_str_weak(MTR_X3A_X20calling_X20mdns_X2Eadd_hostname_X28_X25s_X2C_X20_X25s_X29), + /* K82 */ be_nested_str_weak(MTR_X3A_X20start_X20mDNS_X20on_X20_X25s_X20host_X20_X27_X25s_X2Elocal_X27), + /* K83 */ be_nested_str_weak(mdns_announce_op_discovery_all_fabrics), + /* K84 */ be_nested_str_weak(PASE_TIMEOUT), + /* K85 */ be_nested_str_weak(compute_manual_pairing_code), + /* K86 */ be_nested_str_weak(MTR_X3A_X20Manual_X20pairing_X20code_X3A_X20_X25s), + /* K87 */ be_nested_str_weak(compute_qrcode_content), + /* K88 */ be_nested_str_weak(_X7B_X22Matter_X22_X3A_X7B_X22Commissioning_X22_X3A1_X2C_X22PairingCode_X22_X3A_X22_X25s_X22_X2C_X22QRCode_X22_X3A_X22_X25s_X22_X7D_X7D), + /* K89 */ be_nested_str_weak(random), + /* K90 */ be_nested_str_weak(add), + /* K91 */ be_nested_str_weak(PBKDF2_HMAC_SHA256), + /* K92 */ be_nested_str_weak(derive), + /* K93 */ be_nested_str_weak(PBKDF_ITERATIONS), + /* K94 */ be_nested_str_weak(EC_P256), + /* K95 */ be_nested_str_weak(mod), + /* K96 */ be_nested_str_weak(public_key), + /* K97 */ be_nested_str_weak(start_basic_commissioning), + /* K98 */ be_nested_str_weak(get), + /* K99 */ be_const_int(99999998), + /* K100 */ be_nested_str_weak(PASSCODE_INVALID), + /* K101 */ be_nested_str_weak(MTR_X3A_X20Operational_X20Discovery_X20node_X20_X3D_X20), + /* K102 */ be_nested_str_weak(MTR_X3A_X20adding_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27_X20ptr_X20to_X20_X60_X25s_X2Elocal_X60), + /* K103 */ be_nested_str_weak(add_service), + /* K104 */ be_nested_str_weak(_I), + /* K105 */ be_nested_str_weak(MTR_X3A_X20adding_X20subtype_X3A_X20), + /* K106 */ be_nested_str_weak(add_subtype), + /* K107 */ be_nested_str_weak(time_reached), + /* K108 */ be_nested_str_weak(VP), + /* K109 */ be_nested_str_weak(_X25s_X2B_X25s), + /* K110 */ be_nested_str_weak(D), + /* K111 */ be_nested_str_weak(CM), + /* K112 */ be_const_int(1), + /* K113 */ be_nested_str_weak(T), + /* K114 */ be_nested_str_weak(SII), + /* K115 */ be_nested_str_weak(SAI), + /* K116 */ be_nested_str_weak(MTR_X3A_X20announce_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27_X20ptr_X20to_X20_X60_X25s_X2Elocal_X60), + /* K117 */ be_nested_str_weak(_L), + /* K118 */ be_nested_str_weak(_S), + /* K119 */ be_nested_str_weak(_V), + /* K120 */ be_nested_str_weak(_CM1), + /* K121 */ be_nested_str_weak(MTR_X3A_X20starting_X20mDNS_X20on_X20_X25s_X20_X27_X25s_X27_X20ptr_X20to_X20_X60_X25s_X2Elocal_X60), + /* K122 */ be_nested_str_weak(millis), + /* K123 */ be_nested_str_weak(mdns_announce_PASE), + /* K124 */ be_nested_str_weak(add_rule), + /* K125 */ be_nested_str_weak(Wifi_X23Connected), + /* K126 */ be_nested_str_weak(Eth_X23Connected), + /* K127 */ be_nested_str_weak(_mdns_announce_hostname), + /* K128 */ be_nested_str_weak(matter_mdns_host), + /* K129 */ be_nested_str_weak(get_fabric), + /* K130 */ be_nested_str_weak(get_admin_vendor_name), + /* K131 */ be_nested_str_weak(MTR_X3A_X20_X2D_X2D_X2D_X20Commissioning_X20complete_X20for_X20Fabric_X20_X27_X25s_X27_X20_X28Vendor_X20_X25s_X29_X20_X2D_X2D_X2D), }; extern const bclass be_class_Matter_Commissioning; /******************************************************************** -** Solidified function: compute_manual_pairing_code +** Solidified function: mdns_remove_op_discovery_all_fabrics ********************************************************************/ -be_local_closure(class_Matter_Commissioning_compute_manual_pairing_code, /* name */ +be_local_closure(class_Matter_Commissioning_mdns_remove_op_discovery_all_fabrics, /* name */ be_nested_proto( - 9, /* nstack */ + 6, /* nstack */ 1, /* argc */ 10, /* varg */ 0, /* has upvals */ @@ -157,43 +156,32 @@ be_local_closure(class_Matter_Commissioning_compute_manual_pairing_code, /* na NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(compute_manual_pairing_code), + be_str_weak(mdns_remove_op_discovery_all_fabrics), &be_const_str_solidified, - ( &(const binstruction[34]) { /* code */ - 0x88040100, // 0000 GETMBR R1 R0 K0 - 0x88040301, // 0001 GETMBR R1 R1 K1 - 0x540A0FFE, // 0002 LDINT R2 4095 - 0x2C040202, // 0003 AND R1 R1 R2 - 0x540A0009, // 0004 LDINT R2 10 - 0x3C040202, // 0005 SHR R1 R1 R2 - 0x88080100, // 0006 GETMBR R2 R0 K0 - 0x88080501, // 0007 GETMBR R2 R2 K1 - 0x540E02FF, // 0008 LDINT R3 768 - 0x2C080403, // 0009 AND R2 R2 R3 - 0x540E0005, // 000A LDINT R3 6 - 0x38080403, // 000B SHL R2 R2 R3 - 0x880C0100, // 000C GETMBR R3 R0 K0 - 0x880C0702, // 000D GETMBR R3 R3 K2 - 0x54123FFE, // 000E LDINT R4 16383 - 0x2C0C0604, // 000F AND R3 R3 R4 - 0x30080403, // 0010 OR R2 R2 R3 - 0x880C0100, // 0011 GETMBR R3 R0 K0 - 0x880C0702, // 0012 GETMBR R3 R3 K2 - 0x5412000D, // 0013 LDINT R4 14 - 0x3C0C0604, // 0014 SHR R3 R3 R4 - 0x60100018, // 0015 GETGBL R4 G24 - 0x58140003, // 0016 LDCONST R5 K3 - 0x5C180200, // 0017 MOVE R6 R1 - 0x5C1C0400, // 0018 MOVE R7 R2 - 0x5C200600, // 0019 MOVE R8 R3 - 0x7C100800, // 001A CALL R4 4 - 0xB8160800, // 001B GETNGBL R5 K4 - 0x88140B05, // 001C GETMBR R5 R5 K5 - 0x8C140B06, // 001D GETMET R5 R5 K6 - 0x5C1C0800, // 001E MOVE R7 R4 - 0x7C140400, // 001F CALL R5 2 - 0x00100805, // 0020 ADD R4 R4 R5 - 0x80040800, // 0021 RET 1 R4 + ( &(const binstruction[23]) { /* code */ + 0x60040010, // 0000 GETGBL R1 G16 + 0x88080100, // 0001 GETMBR R2 R0 K0 + 0x88080501, // 0002 GETMBR R2 R2 K1 + 0x8C080502, // 0003 GETMET R2 R2 K2 + 0x7C080200, // 0004 CALL R2 1 + 0x7C040200, // 0005 CALL R1 1 + 0xA802000B, // 0006 EXBLK 0 #0013 + 0x5C080200, // 0007 MOVE R2 R1 + 0x7C080000, // 0008 CALL R2 0 + 0x8C0C0503, // 0009 GETMET R3 R2 K3 + 0x7C0C0200, // 000A CALL R3 1 + 0x780E0005, // 000B JMPF R3 #0012 + 0x8C0C0504, // 000C GETMET R3 R2 K4 + 0x7C0C0200, // 000D CALL R3 1 + 0x780E0002, // 000E JMPF R3 #0012 + 0x8C0C0105, // 000F GETMET R3 R0 K5 + 0x5C140400, // 0010 MOVE R5 R2 + 0x7C0C0400, // 0011 CALL R3 2 + 0x7001FFF3, // 0012 JMP #0007 + 0x58040006, // 0013 LDCONST R1 K6 + 0xAC040200, // 0014 CATCH R1 1 0 + 0xB0080000, // 0015 RAISE 2 R0 R0 + 0x80000000, // 0016 RET 0 }) ) ); @@ -243,12 +231,12 @@ be_local_closure(class_Matter_Commissioning_stop_basic_commissioning, /* name /******************************************************************** -** Solidified function: start_commissioning_complete +** Solidified function: init_basic_commissioning ********************************************************************/ -be_local_closure(class_Matter_Commissioning_start_commissioning_complete, /* name */ +be_local_closure(class_Matter_Commissioning_init_basic_commissioning, /* name */ be_nested_proto( - 10, /* nstack */ - 2, /* argc */ + 3, /* nstack */ + 1, /* argc */ 10, /* varg */ 0, /* has upvals */ NULL, /* no upvals */ @@ -256,32 +244,18 @@ be_local_closure(class_Matter_Commissioning_start_commissioning_complete, /* n NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(start_commissioning_complete), + be_str_weak(init_basic_commissioning), &be_const_str_solidified, - ( &(const binstruction[23]) { /* code */ - 0x8C080314, // 0000 GETMET R2 R1 K20 - 0x7C080200, // 0001 CALL R2 1 - 0x8C0C0515, // 0002 GETMET R3 R2 K21 - 0x7C0C0200, // 0003 CALL R3 1 - 0x8C0C0716, // 0004 GETMET R3 R3 K22 - 0x7C0C0200, // 0005 CALL R3 1 - 0x8C0C0717, // 0006 GETMET R3 R3 K23 - 0x7C0C0200, // 0007 CALL R3 1 - 0x8C0C0718, // 0008 GETMET R3 R3 K24 - 0x7C0C0200, // 0009 CALL R3 1 - 0x8C100519, // 000A GETMET R4 R2 K25 - 0x7C100200, // 000B CALL R4 1 - 0xB8163400, // 000C GETNGBL R5 K26 - 0x60180018, // 000D GETGBL R6 G24 - 0x581C001B, // 000E LDCONST R7 K27 - 0x5C200600, // 000F MOVE R8 R3 - 0x5C240800, // 0010 MOVE R9 R4 - 0x7C180600, // 0011 CALL R6 3 - 0x581C001C, // 0012 LDCONST R7 K28 - 0x7C140400, // 0013 CALL R5 2 - 0x8C14011D, // 0014 GETMET R5 R0 K29 - 0x7C140200, // 0015 CALL R5 1 - 0x80000000, // 0016 RET 0 + ( &(const binstruction[ 9]) { /* code */ + 0x88040100, // 0000 GETMBR R1 R0 K0 + 0x88040301, // 0001 GETMBR R1 R1 K1 + 0x8C040314, // 0002 GETMET R1 R1 K20 + 0x7C040200, // 0003 CALL R1 1 + 0x1C040315, // 0004 EQ R1 R1 K21 + 0x78060001, // 0005 JMPF R1 #0008 + 0x8C040116, // 0006 GETMET R1 R0 K22 + 0x7C040200, // 0007 CALL R1 1 + 0x80000000, // 0008 RET 0 }) ) ); @@ -307,47 +281,47 @@ be_local_closure(class_Matter_Commissioning_compute_qrcode_content, /* name */ ( &(const binstruction[44]) { /* code */ 0x60040015, // 0000 GETGBL R1 G21 0x7C040000, // 0001 CALL R1 0 - 0x8C04031E, // 0002 GETMET R1 R1 K30 + 0x8C040317, // 0002 GETMET R1 R1 K23 0x540E000A, // 0003 LDINT R3 11 0x7C040400, // 0004 CALL R1 2 - 0x8C08031F, // 0005 GETMET R2 R1 K31 - 0x58100020, // 0006 LDCONST R4 K32 + 0x8C080318, // 0005 GETMET R2 R1 K24 + 0x58100019, // 0006 LDCONST R4 K25 0x5416000F, // 0007 LDINT R5 16 0x88180100, // 0008 GETMBR R6 R0 K0 - 0x88180D21, // 0009 GETMBR R6 R6 K33 + 0x88180D1A, // 0009 GETMBR R6 R6 K26 0x7C080800, // 000A CALL R2 4 - 0x8C08031F, // 000B GETMET R2 R1 K31 + 0x8C080318, // 000B GETMET R2 R1 K24 0x54120012, // 000C LDINT R4 19 0x5416000F, // 000D LDINT R5 16 0x88180100, // 000E GETMBR R6 R0 K0 - 0x88180D22, // 000F GETMBR R6 R6 K34 + 0x88180D1B, // 000F GETMBR R6 R6 K27 0x7C080800, // 0010 CALL R2 4 - 0x8C08031F, // 0011 GETMET R2 R1 K31 + 0x8C080318, // 0011 GETMET R2 R1 K24 0x54120024, // 0012 LDINT R4 37 0x54160007, // 0013 LDINT R5 8 0x541A0003, // 0014 LDINT R6 4 0x7C080800, // 0015 CALL R2 4 - 0x8C08031F, // 0016 GETMET R2 R1 K31 + 0x8C080318, // 0016 GETMET R2 R1 K24 0x5412002C, // 0017 LDINT R4 45 0x5416000B, // 0018 LDINT R5 12 0x88180100, // 0019 GETMBR R6 R0 K0 - 0x88180D01, // 001A GETMBR R6 R6 K1 + 0x88180D1C, // 001A GETMBR R6 R6 K28 0x541E0FFE, // 001B LDINT R7 4095 0x2C180C07, // 001C AND R6 R6 R7 0x7C080800, // 001D CALL R2 4 - 0x8C08031F, // 001E GETMET R2 R1 K31 + 0x8C080318, // 001E GETMET R2 R1 K24 0x54120038, // 001F LDINT R4 57 0x5416001A, // 0020 LDINT R5 27 0x88180100, // 0021 GETMBR R6 R0 K0 - 0x88180D02, // 0022 GETMBR R6 R6 K2 - 0x2C180D23, // 0023 AND R6 R6 K35 + 0x88180D1D, // 0022 GETMBR R6 R6 K29 + 0x2C180D1E, // 0023 AND R6 R6 K30 0x7C080800, // 0024 CALL R2 4 - 0xB80A0800, // 0025 GETNGBL R2 K4 - 0x88080525, // 0026 GETMBR R2 R2 K37 - 0x8C080526, // 0027 GETMET R2 R2 K38 + 0xB80A4000, // 0025 GETNGBL R2 K32 + 0x88080521, // 0026 GETMBR R2 R2 K33 + 0x8C080522, // 0027 GETMET R2 R2 K34 0x5C100200, // 0028 MOVE R4 R1 0x7C080400, // 0029 CALL R2 2 - 0x000A4802, // 002A ADD R2 K36 R2 + 0x000A3E02, // 002A ADD R2 K31 R2 0x80040400, // 002B RET 1 R2 }) ) @@ -356,42 +330,11 @@ be_local_closure(class_Matter_Commissioning_compute_qrcode_content, /* name */ /******************************************************************** -** Solidified function: start_operational_discovery +** Solidified function: mdns_remove_PASE ********************************************************************/ -be_local_closure(class_Matter_Commissioning_start_operational_discovery, /* name */ +be_local_closure(class_Matter_Commissioning_mdns_remove_PASE, /* name */ be_nested_proto( - 7, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(start_operational_discovery), - &be_const_str_solidified, - ( &(const binstruction[ 8]) { /* code */ - 0xA40A4E00, // 0000 IMPORT R2 K39 - 0xA40E5000, // 0001 IMPORT R3 K40 - 0x8C10011D, // 0002 GETMET R4 R0 K29 - 0x7C100200, // 0003 CALL R4 1 - 0x8C100129, // 0004 GETMET R4 R0 K41 - 0x5C180200, // 0005 MOVE R6 R1 - 0x7C100400, // 0006 CALL R4 2 - 0x80000000, // 0007 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: mdns_remove_op_discovery_all_fabrics -********************************************************************/ -be_local_closure(class_Matter_Commissioning_mdns_remove_op_discovery_all_fabrics, /* name */ - be_nested_proto( - 6, /* nstack */ + 9, /* nstack */ 1, /* argc */ 10, /* varg */ 0, /* has upvals */ @@ -400,32 +343,168 @@ be_local_closure(class_Matter_Commissioning_mdns_remove_op_discovery_all_fabrics NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(mdns_remove_op_discovery_all_fabrics), + be_str_weak(mdns_remove_PASE), &be_const_str_solidified, - ( &(const binstruction[23]) { /* code */ - 0x60040010, // 0000 GETGBL R1 G16 - 0x88080100, // 0001 GETMBR R2 R0 K0 - 0x8808052A, // 0002 GETMBR R2 R2 K42 - 0x8C08052B, // 0003 GETMET R2 R2 K43 - 0x7C080200, // 0004 CALL R2 1 - 0x7C040200, // 0005 CALL R1 1 - 0xA802000B, // 0006 EXBLK 0 #0013 - 0x5C080200, // 0007 MOVE R2 R1 - 0x7C080000, // 0008 CALL R2 0 - 0x8C0C052C, // 0009 GETMET R3 R2 K44 - 0x7C0C0200, // 000A CALL R3 1 - 0x780E0005, // 000B JMPF R3 #0012 - 0x8C0C0515, // 000C GETMET R3 R2 K21 - 0x7C0C0200, // 000D CALL R3 1 - 0x780E0002, // 000E JMPF R3 #0012 - 0x8C0C012D, // 000F GETMET R3 R0 K45 - 0x5C140400, // 0010 MOVE R5 R2 - 0x7C0C0400, // 0011 CALL R3 2 - 0x7001FFF3, // 0012 JMP #0007 - 0x5804002E, // 0013 LDCONST R1 K46 - 0xAC040200, // 0014 CATCH R1 1 0 - 0xB0080000, // 0015 RAISE 2 R0 R0 - 0x80000000, // 0016 RET 0 + ( &(const binstruction[77]) { /* code */ + 0xA4064600, // 0000 IMPORT R1 K35 + 0xA8020039, // 0001 EXBLK 0 #003C + 0x88080124, // 0002 GETMBR R2 R0 K36 + 0x780A0019, // 0003 JMPF R2 #001E + 0xB80A4A00, // 0004 GETNGBL R2 K37 + 0x600C0018, // 0005 GETGBL R3 G24 + 0x58100026, // 0006 LDCONST R4 K38 + 0x58140027, // 0007 LDCONST R5 K39 + 0x58180028, // 0008 LDCONST R6 K40 + 0x881C0129, // 0009 GETMBR R7 R0 K41 + 0x8820012A, // 000A GETMBR R8 R0 K42 + 0x7C0C0A00, // 000B CALL R3 5 + 0x58100019, // 000C LDCONST R4 K25 + 0x7C080400, // 000D CALL R2 2 + 0xB80A4A00, // 000E GETNGBL R2 K37 + 0x600C0018, // 000F GETGBL R3 G24 + 0x5810002B, // 0010 LDCONST R4 K43 + 0x5814002C, // 0011 LDCONST R5 K44 + 0x88180129, // 0012 GETMBR R6 R0 K41 + 0x7C0C0600, // 0013 CALL R3 3 + 0x58100019, // 0014 LDCONST R4 K25 + 0x7C080400, // 0015 CALL R2 2 + 0x50080000, // 0016 LDBOOL R2 0 0 + 0x90024802, // 0017 SETMBR R0 K36 R2 + 0x8C08032D, // 0018 GETMET R2 R1 K45 + 0x58100027, // 0019 LDCONST R4 K39 + 0x58140028, // 001A LDCONST R5 K40 + 0x88180129, // 001B GETMBR R6 R0 K41 + 0x881C012A, // 001C GETMBR R7 R0 K42 + 0x7C080A00, // 001D CALL R2 5 + 0x8808012E, // 001E GETMBR R2 R0 K46 + 0x780A0019, // 001F JMPF R2 #003A + 0xB80A4A00, // 0020 GETNGBL R2 K37 + 0x600C0018, // 0021 GETGBL R3 G24 + 0x58100026, // 0022 LDCONST R4 K38 + 0x58140027, // 0023 LDCONST R5 K39 + 0x58180028, // 0024 LDCONST R6 K40 + 0x881C012F, // 0025 GETMBR R7 R0 K47 + 0x88200130, // 0026 GETMBR R8 R0 K48 + 0x7C0C0A00, // 0027 CALL R3 5 + 0x58100019, // 0028 LDCONST R4 K25 + 0x7C080400, // 0029 CALL R2 2 + 0xB80A4A00, // 002A GETNGBL R2 K37 + 0x600C0018, // 002B GETGBL R3 G24 + 0x5810002B, // 002C LDCONST R4 K43 + 0x58140031, // 002D LDCONST R5 K49 + 0x8818012F, // 002E GETMBR R6 R0 K47 + 0x7C0C0600, // 002F CALL R3 3 + 0x58100019, // 0030 LDCONST R4 K25 + 0x7C080400, // 0031 CALL R2 2 + 0x50080000, // 0032 LDBOOL R2 0 0 + 0x90025C02, // 0033 SETMBR R0 K46 R2 + 0x8C08032D, // 0034 GETMET R2 R1 K45 + 0x58100027, // 0035 LDCONST R4 K39 + 0x58140028, // 0036 LDCONST R5 K40 + 0x8818012F, // 0037 GETMBR R6 R0 K47 + 0x881C0130, // 0038 GETMBR R7 R0 K48 + 0x7C080A00, // 0039 CALL R2 5 + 0xA8040001, // 003A EXBLK 1 1 + 0x7002000F, // 003B JMP #004C + 0xAC080002, // 003C CATCH R2 0 2 + 0x7002000C, // 003D JMP #004B + 0xB8124A00, // 003E GETNGBL R4 K37 + 0x60140008, // 003F GETGBL R5 G8 + 0x5C180400, // 0040 MOVE R6 R2 + 0x7C140200, // 0041 CALL R5 1 + 0x00166405, // 0042 ADD R5 K50 R5 + 0x00140B33, // 0043 ADD R5 R5 K51 + 0x60180008, // 0044 GETGBL R6 G8 + 0x5C1C0600, // 0045 MOVE R7 R3 + 0x7C180200, // 0046 CALL R6 1 + 0x00140A06, // 0047 ADD R5 R5 R6 + 0x58180034, // 0048 LDCONST R6 K52 + 0x7C100400, // 0049 CALL R4 2 + 0x70020000, // 004A JMP #004C + 0xB0080000, // 004B RAISE 2 R0 R0 + 0x80000000, // 004C RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: compute_manual_pairing_code +********************************************************************/ +be_local_closure(class_Matter_Commissioning_compute_manual_pairing_code, /* name */ + be_nested_proto( + 9, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(compute_manual_pairing_code), + &be_const_str_solidified, + ( &(const binstruction[34]) { /* code */ + 0x88040100, // 0000 GETMBR R1 R0 K0 + 0x8804031C, // 0001 GETMBR R1 R1 K28 + 0x540A0FFE, // 0002 LDINT R2 4095 + 0x2C040202, // 0003 AND R1 R1 R2 + 0x540A0009, // 0004 LDINT R2 10 + 0x3C040202, // 0005 SHR R1 R1 R2 + 0x88080100, // 0006 GETMBR R2 R0 K0 + 0x8808051C, // 0007 GETMBR R2 R2 K28 + 0x540E02FF, // 0008 LDINT R3 768 + 0x2C080403, // 0009 AND R2 R2 R3 + 0x540E0005, // 000A LDINT R3 6 + 0x38080403, // 000B SHL R2 R2 R3 + 0x880C0100, // 000C GETMBR R3 R0 K0 + 0x880C071D, // 000D GETMBR R3 R3 K29 + 0x54123FFE, // 000E LDINT R4 16383 + 0x2C0C0604, // 000F AND R3 R3 R4 + 0x30080403, // 0010 OR R2 R2 R3 + 0x880C0100, // 0011 GETMBR R3 R0 K0 + 0x880C071D, // 0012 GETMBR R3 R3 K29 + 0x5412000D, // 0013 LDINT R4 14 + 0x3C0C0604, // 0014 SHR R3 R3 R4 + 0x60100018, // 0015 GETGBL R4 G24 + 0x58140035, // 0016 LDCONST R5 K53 + 0x5C180200, // 0017 MOVE R6 R1 + 0x5C1C0400, // 0018 MOVE R7 R2 + 0x5C200600, // 0019 MOVE R8 R3 + 0x7C100800, // 001A CALL R4 4 + 0xB8164000, // 001B GETNGBL R5 K32 + 0x88140B36, // 001C GETMBR R5 R5 K54 + 0x8C140B37, // 001D GETMET R5 R5 K55 + 0x5C1C0800, // 001E MOVE R7 R4 + 0x7C140400, // 001F CALL R5 2 + 0x00100805, // 0020 ADD R4 R4 R5 + 0x80040800, // 0021 RET 1 R4 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: init +********************************************************************/ +be_local_closure(class_Matter_Commissioning_init, /* name */ + be_nested_proto( + 2, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(init), + &be_const_str_solidified, + ( &(const binstruction[ 2]) { /* code */ + 0x90020001, // 0000 SETMBR R0 K0 R1 + 0x80000000, // 0001 RET 0 }) ) ); @@ -449,79 +528,79 @@ be_local_closure(class_Matter_Commissioning_mdns_remove_op_discovery, /* name be_str_weak(mdns_remove_op_discovery), &be_const_str_solidified, ( &(const binstruction[77]) { /* code */ - 0xA40A5000, // 0000 IMPORT R2 K40 + 0xA40A4600, // 0000 IMPORT R2 K35 0xA8020039, // 0001 EXBLK 0 #003C - 0x8C0C032C, // 0002 GETMET R3 R1 K44 + 0x8C0C0303, // 0002 GETMET R3 R1 K3 0x7C0C0200, // 0003 CALL R3 1 - 0x8C0C0716, // 0004 GETMET R3 R3 K22 + 0x8C0C0738, // 0004 GETMET R3 R3 K56 0x7C0C0200, // 0005 CALL R3 1 - 0x8C0C0717, // 0006 GETMET R3 R3 K23 + 0x8C0C0739, // 0006 GETMET R3 R3 K57 0x7C0C0200, // 0007 CALL R3 1 - 0x8C10032F, // 0008 GETMET R4 R1 K47 + 0x8C10033A, // 0008 GETMET R4 R1 K58 0x7C100200, // 0009 CALL R4 1 - 0x8C140918, // 000A GETMET R5 R4 K24 + 0x8C14093B, // 000A GETMET R5 R4 K59 0x7C140200, // 000B CALL R5 1 - 0x00140B30, // 000C ADD R5 R5 K48 - 0x8C180718, // 000D GETMET R6 R3 K24 + 0x00140B3C, // 000C ADD R5 R5 K60 + 0x8C18073B, // 000D GETMET R6 R3 K59 0x7C180200, // 000E CALL R6 1 0x00140A06, // 000F ADD R5 R5 R6 0xB81A1000, // 0010 GETNGBL R6 K8 - 0x8C180D31, // 0011 GETMET R6 R6 K49 + 0x8C180D2C, // 0011 GETMET R6 R6 K44 0x7C180200, // 0012 CALL R6 1 - 0x8C180D32, // 0013 GETMET R6 R6 K50 - 0x58200033, // 0014 LDCONST R8 K51 + 0x8C180D3D, // 0013 GETMET R6 R6 K61 + 0x5820003E, // 0014 LDCONST R8 K62 0x7C180400, // 0015 CALL R6 2 0x781A000D, // 0016 JMPF R6 #0025 - 0xB81A3400, // 0017 GETNGBL R6 K26 + 0xB81A4A00, // 0017 GETNGBL R6 K37 0x601C0018, // 0018 GETGBL R7 G24 - 0x58200034, // 0019 LDCONST R8 K52 - 0x58240031, // 001A LDCONST R9 K49 + 0x5820002B, // 0019 LDCONST R8 K43 + 0x5824002C, // 001A LDCONST R9 K44 0x5C280A00, // 001B MOVE R10 R5 0x7C1C0600, // 001C CALL R7 3 - 0x58200020, // 001D LDCONST R8 K32 + 0x58200019, // 001D LDCONST R8 K25 0x7C180400, // 001E CALL R6 2 - 0x8C180535, // 001F GETMET R6 R2 K53 - 0x58200036, // 0020 LDCONST R8 K54 - 0x58240037, // 0021 LDCONST R9 K55 + 0x8C18052D, // 001F GETMET R6 R2 K45 + 0x5820003F, // 0020 LDCONST R8 K63 + 0x58240040, // 0021 LDCONST R9 K64 0x5C280A00, // 0022 MOVE R10 R5 - 0x882C0138, // 0023 GETMBR R11 R0 K56 + 0x882C012A, // 0023 GETMBR R11 R0 K42 0x7C180A00, // 0024 CALL R6 5 0xB81A1000, // 0025 GETNGBL R6 K8 - 0x8C180D39, // 0026 GETMET R6 R6 K57 + 0x8C180D31, // 0026 GETMET R6 R6 K49 0x7C180200, // 0027 CALL R6 1 - 0x8C180D32, // 0028 GETMET R6 R6 K50 - 0x58200033, // 0029 LDCONST R8 K51 + 0x8C180D3D, // 0028 GETMET R6 R6 K61 + 0x5820003E, // 0029 LDCONST R8 K62 0x7C180400, // 002A CALL R6 2 0x781A000D, // 002B JMPF R6 #003A - 0xB81A3400, // 002C GETNGBL R6 K26 + 0xB81A4A00, // 002C GETNGBL R6 K37 0x601C0018, // 002D GETGBL R7 G24 - 0x58200034, // 002E LDCONST R8 K52 - 0x58240039, // 002F LDCONST R9 K57 + 0x5820002B, // 002E LDCONST R8 K43 + 0x58240031, // 002F LDCONST R9 K49 0x5C280A00, // 0030 MOVE R10 R5 0x7C1C0600, // 0031 CALL R7 3 - 0x58200020, // 0032 LDCONST R8 K32 + 0x58200019, // 0032 LDCONST R8 K25 0x7C180400, // 0033 CALL R6 2 - 0x8C180535, // 0034 GETMET R6 R2 K53 - 0x58200036, // 0035 LDCONST R8 K54 - 0x58240037, // 0036 LDCONST R9 K55 + 0x8C18052D, // 0034 GETMET R6 R2 K45 + 0x5820003F, // 0035 LDCONST R8 K63 + 0x58240040, // 0036 LDCONST R9 K64 0x5C280A00, // 0037 MOVE R10 R5 - 0x882C013A, // 0038 GETMBR R11 R0 K58 + 0x882C0130, // 0038 GETMBR R11 R0 K48 0x7C180A00, // 0039 CALL R6 5 0xA8040001, // 003A EXBLK 1 1 0x7002000F, // 003B JMP #004C 0xAC0C0002, // 003C CATCH R3 0 2 0x7002000C, // 003D JMP #004B - 0xB8163400, // 003E GETNGBL R5 K26 + 0xB8164A00, // 003E GETNGBL R5 K37 0x60180008, // 003F GETGBL R6 G8 0x5C1C0600, // 0040 MOVE R7 R3 0x7C180200, // 0041 CALL R6 1 - 0x001A7606, // 0042 ADD R6 K59 R6 - 0x00180D3C, // 0043 ADD R6 R6 K60 + 0x001A6406, // 0042 ADD R6 K50 R6 + 0x00180D33, // 0043 ADD R6 R6 K51 0x601C0008, // 0044 GETGBL R7 G8 0x5C200800, // 0045 MOVE R8 R4 0x7C1C0200, // 0046 CALL R7 1 0x00180C07, // 0047 ADD R6 R6 R7 - 0x581C001C, // 0048 LDCONST R7 K28 + 0x581C0034, // 0048 LDCONST R7 K52 0x7C140400, // 0049 CALL R5 2 0x70020000, // 004A JMP #004C 0xB0080000, // 004B RAISE 2 R0 R0 @@ -532,6 +611,943 @@ be_local_closure(class_Matter_Commissioning_mdns_remove_op_discovery, /* name /*******************************************************************/ +/******************************************************************** +** Solidified function: start_operational_discovery_deferred +********************************************************************/ +be_local_closure(class_Matter_Commissioning_start_operational_discovery_deferred, /* name */ + be_nested_proto( + 6, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 1, /* has sup protos */ + ( &(const struct bproto*[ 1]) { + be_nested_proto( + 3, /* nstack */ + 0, /* argc */ + 0, /* varg */ + 1, /* has upvals */ + ( &(const bupvaldesc[ 2]) { /* upvals */ + be_local_const_upval(1, 0), + be_local_const_upval(1, 1), + }), + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + ( &(const bvalue[ 1]) { /* constants */ + /* K0 */ be_nested_str_weak(start_operational_discovery), + }), + be_str_weak(_X3Clambda_X3E), + &be_const_str_solidified, + ( &(const binstruction[ 5]) { /* code */ + 0x68000000, // 0000 GETUPV R0 U0 + 0x8C000100, // 0001 GETMET R0 R0 K0 + 0x68080001, // 0002 GETUPV R2 U1 + 0x7C000400, // 0003 CALL R0 2 + 0x80040000, // 0004 RET 1 R0 + }) + ), + }), + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(start_operational_discovery_deferred), + &be_const_str_solidified, + ( &(const binstruction[ 7]) { /* code */ + 0xB80A1000, // 0000 GETNGBL R2 K8 + 0x8C080541, // 0001 GETMET R2 R2 K65 + 0x58100015, // 0002 LDCONST R4 K21 + 0x84140000, // 0003 CLOSURE R5 P0 + 0x7C080600, // 0004 CALL R2 3 + 0xA0000000, // 0005 CLOSE R0 + 0x80000000, // 0006 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: start_operational_discovery +********************************************************************/ +be_local_closure(class_Matter_Commissioning_start_operational_discovery, /* name */ + be_nested_proto( + 7, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(start_operational_discovery), + &be_const_str_solidified, + ( &(const binstruction[ 8]) { /* code */ + 0xA40A8400, // 0000 IMPORT R2 K66 + 0xA40E4600, // 0001 IMPORT R3 K35 + 0x8C100143, // 0002 GETMET R4 R0 K67 + 0x7C100200, // 0003 CALL R4 1 + 0x8C100144, // 0004 GETMET R4 R0 K68 + 0x5C180200, // 0005 MOVE R6 R1 + 0x7C100400, // 0006 CALL R4 2 + 0x80000000, // 0007 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: _mdns_announce_hostname +********************************************************************/ +be_local_closure(class_Matter_Commissioning__mdns_announce_hostname, /* name */ + be_nested_proto( + 14, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(_mdns_announce_hostname), + &be_const_str_solidified, + ( &(const binstruction[146]) { /* code */ + 0xA40A4600, // 0000 IMPORT R2 K35 + 0xA40E8A00, // 0001 IMPORT R3 K69 + 0x8C100546, // 0002 GETMET R4 R2 K70 + 0x7C100200, // 0003 CALL R4 1 + 0xA8020079, // 0004 EXBLK 0 #007F + 0x78060034, // 0005 JMPF R1 #003B + 0xB8121000, // 0006 GETNGBL R4 K8 + 0x8C10092C, // 0007 GETMET R4 R4 K44 + 0x7C100200, // 0008 CALL R4 1 + 0x8C140747, // 0009 GETMET R5 R3 K71 + 0x8C1C093D, // 000A GETMET R7 R4 K61 + 0x58240048, // 000B LDCONST R9 K72 + 0x7C1C0400, // 000C CALL R7 2 + 0x58200049, // 000D LDCONST R8 K73 + 0x5824004A, // 000E LDCONST R9 K74 + 0x7C140800, // 000F CALL R5 4 + 0x90025405, // 0010 SETMBR R0 K42 R5 + 0x88140100, // 0011 GETMBR R5 R0 K0 + 0x88140B4B, // 0012 GETMBR R5 R5 K75 + 0x78160003, // 0013 JMPF R5 #0018 + 0x8C14094C, // 0014 GETMET R5 R4 K76 + 0x581C004D, // 0015 LDCONST R7 K77 + 0x7C140400, // 0016 CALL R5 2 + 0x7416000F, // 0017 JMPT R5 #0028 + 0x8C14054E, // 0018 GETMET R5 R2 K78 + 0x881C012A, // 0019 GETMBR R7 R0 K42 + 0x8C20093D, // 001A GETMET R8 R4 K61 + 0x5828004D, // 001B LDCONST R10 K77 + 0x582C004A, // 001C LDCONST R11 K74 + 0x7C200600, // 001D CALL R8 3 + 0x8C24093D, // 001E GETMET R9 R4 K61 + 0x582C004F, // 001F LDCONST R11 K79 + 0x5830004A, // 0020 LDCONST R12 K74 + 0x7C240600, // 0021 CALL R9 3 + 0x8C28093D, // 0022 GETMET R10 R4 K61 + 0x58300050, // 0023 LDCONST R12 K80 + 0x5834004A, // 0024 LDCONST R13 K74 + 0x7C280600, // 0025 CALL R10 3 + 0x7C140A00, // 0026 CALL R5 5 + 0x70020011, // 0027 JMP #003A + 0xB8164A00, // 0028 GETNGBL R5 K37 + 0x60180018, // 0029 GETGBL R6 G24 + 0x581C0051, // 002A LDCONST R7 K81 + 0x8820012A, // 002B GETMBR R8 R0 K42 + 0x8C24093D, // 002C GETMET R9 R4 K61 + 0x582C004F, // 002D LDCONST R11 K79 + 0x5830004A, // 002E LDCONST R12 K74 + 0x7C240600, // 002F CALL R9 3 + 0x7C180600, // 0030 CALL R6 3 + 0x581C0019, // 0031 LDCONST R7 K25 + 0x7C140400, // 0032 CALL R5 2 + 0x8C14054E, // 0033 GETMET R5 R2 K78 + 0x881C012A, // 0034 GETMBR R7 R0 K42 + 0x8C20093D, // 0035 GETMET R8 R4 K61 + 0x5828004F, // 0036 LDCONST R10 K79 + 0x582C004A, // 0037 LDCONST R11 K74 + 0x7C200600, // 0038 CALL R8 3 + 0x7C140600, // 0039 CALL R5 3 + 0x70020033, // 003A JMP #006F + 0xB8121000, // 003B GETNGBL R4 K8 + 0x8C100931, // 003C GETMET R4 R4 K49 + 0x7C100200, // 003D CALL R4 1 + 0x8C140747, // 003E GETMET R5 R3 K71 + 0x8C1C093D, // 003F GETMET R7 R4 K61 + 0x58240048, // 0040 LDCONST R9 K72 + 0x7C1C0400, // 0041 CALL R7 2 + 0x58200049, // 0042 LDCONST R8 K73 + 0x5824004A, // 0043 LDCONST R9 K74 + 0x7C140800, // 0044 CALL R5 4 + 0x90026005, // 0045 SETMBR R0 K48 R5 + 0x88140100, // 0046 GETMBR R5 R0 K0 + 0x88140B4B, // 0047 GETMBR R5 R5 K75 + 0x78160003, // 0048 JMPF R5 #004D + 0x8C14094C, // 0049 GETMET R5 R4 K76 + 0x581C004D, // 004A LDCONST R7 K77 + 0x7C140400, // 004B CALL R5 2 + 0x7416000F, // 004C JMPT R5 #005D + 0x8C14054E, // 004D GETMET R5 R2 K78 + 0x881C0130, // 004E GETMBR R7 R0 K48 + 0x8C20093D, // 004F GETMET R8 R4 K61 + 0x5828004D, // 0050 LDCONST R10 K77 + 0x582C004A, // 0051 LDCONST R11 K74 + 0x7C200600, // 0052 CALL R8 3 + 0x8C24093D, // 0053 GETMET R9 R4 K61 + 0x582C004F, // 0054 LDCONST R11 K79 + 0x5830004A, // 0055 LDCONST R12 K74 + 0x7C240600, // 0056 CALL R9 3 + 0x8C28093D, // 0057 GETMET R10 R4 K61 + 0x58300050, // 0058 LDCONST R12 K80 + 0x5834004A, // 0059 LDCONST R13 K74 + 0x7C280600, // 005A CALL R10 3 + 0x7C140A00, // 005B CALL R5 5 + 0x70020011, // 005C JMP #006F + 0xB8164A00, // 005D GETNGBL R5 K37 + 0x60180018, // 005E GETGBL R6 G24 + 0x581C0051, // 005F LDCONST R7 K81 + 0x88200130, // 0060 GETMBR R8 R0 K48 + 0x8C24093D, // 0061 GETMET R9 R4 K61 + 0x582C004F, // 0062 LDCONST R11 K79 + 0x5830004A, // 0063 LDCONST R12 K74 + 0x7C240600, // 0064 CALL R9 3 + 0x7C180600, // 0065 CALL R6 3 + 0x581C0019, // 0066 LDCONST R7 K25 + 0x7C140400, // 0067 CALL R5 2 + 0x8C14054E, // 0068 GETMET R5 R2 K78 + 0x881C0130, // 0069 GETMBR R7 R0 K48 + 0x8C20093D, // 006A GETMET R8 R4 K61 + 0x5828004F, // 006B LDCONST R10 K79 + 0x582C004A, // 006C LDCONST R11 K74 + 0x7C200600, // 006D CALL R8 3 + 0x7C140600, // 006E CALL R5 3 + 0xB8124A00, // 006F GETNGBL R4 K37 + 0x60140018, // 0070 GETGBL R5 G24 + 0x58180052, // 0071 LDCONST R6 K82 + 0x78060001, // 0072 JMPF R1 #0075 + 0x581C002C, // 0073 LDCONST R7 K44 + 0x70020000, // 0074 JMP #0076 + 0x581C0031, // 0075 LDCONST R7 K49 + 0x78060001, // 0076 JMPF R1 #0079 + 0x8820012A, // 0077 GETMBR R8 R0 K42 + 0x70020000, // 0078 JMP #007A + 0x88200130, // 0079 GETMBR R8 R0 K48 + 0x7C140600, // 007A CALL R5 3 + 0x58180019, // 007B LDCONST R6 K25 + 0x7C100400, // 007C CALL R4 2 + 0xA8040001, // 007D EXBLK 1 1 + 0x7002000F, // 007E JMP #008F + 0xAC100002, // 007F CATCH R4 0 2 + 0x7002000C, // 0080 JMP #008E + 0xB81A4A00, // 0081 GETNGBL R6 K37 + 0x601C0008, // 0082 GETGBL R7 G8 + 0x5C200800, // 0083 MOVE R8 R4 + 0x7C1C0200, // 0084 CALL R7 1 + 0x001E6407, // 0085 ADD R7 K50 R7 + 0x001C0F33, // 0086 ADD R7 R7 K51 + 0x60200008, // 0087 GETGBL R8 G8 + 0x5C240A00, // 0088 MOVE R9 R5 + 0x7C200200, // 0089 CALL R8 1 + 0x001C0E08, // 008A ADD R7 R7 R8 + 0x58200034, // 008B LDCONST R8 K52 + 0x7C180400, // 008C CALL R6 2 + 0x70020000, // 008D JMP #008F + 0xB0080000, // 008E RAISE 2 R0 R0 + 0x8C100153, // 008F GETMET R4 R0 K83 + 0x7C100200, // 0090 CALL R4 1 + 0x80000000, // 0091 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: mdns_announce_op_discovery_all_fabrics +********************************************************************/ +be_local_closure(class_Matter_Commissioning_mdns_announce_op_discovery_all_fabrics, /* name */ + be_nested_proto( + 6, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(mdns_announce_op_discovery_all_fabrics), + &be_const_str_solidified, + ( &(const binstruction[23]) { /* code */ + 0x60040010, // 0000 GETGBL R1 G16 + 0x88080100, // 0001 GETMBR R2 R0 K0 + 0x88080501, // 0002 GETMBR R2 R2 K1 + 0x8C080502, // 0003 GETMET R2 R2 K2 + 0x7C080200, // 0004 CALL R2 1 + 0x7C040200, // 0005 CALL R1 1 + 0xA802000B, // 0006 EXBLK 0 #0013 + 0x5C080200, // 0007 MOVE R2 R1 + 0x7C080000, // 0008 CALL R2 0 + 0x8C0C0503, // 0009 GETMET R3 R2 K3 + 0x7C0C0200, // 000A CALL R3 1 + 0x780E0005, // 000B JMPF R3 #0012 + 0x8C0C0504, // 000C GETMET R3 R2 K4 + 0x7C0C0200, // 000D CALL R3 1 + 0x780E0002, // 000E JMPF R3 #0012 + 0x8C0C0144, // 000F GETMET R3 R0 K68 + 0x5C140400, // 0010 MOVE R5 R2 + 0x7C0C0400, // 0011 CALL R3 2 + 0x7001FFF3, // 0012 JMP #0007 + 0x58040006, // 0013 LDCONST R1 K6 + 0xAC040200, // 0014 CATCH R1 1 0 + 0xB0080000, // 0015 RAISE 2 R0 R0 + 0x80000000, // 0016 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: start_root_basic_commissioning +********************************************************************/ +be_local_closure(class_Matter_Commissioning_start_root_basic_commissioning, /* name */ + be_nested_proto( + 22, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(start_root_basic_commissioning), + &be_const_str_solidified, + ( &(const binstruction[76]) { /* code */ + 0x4C080000, // 0000 LDNIL R2 + 0x1C080202, // 0001 EQ R2 R1 R2 + 0x780A0000, // 0002 JMPF R2 #0004 + 0x88040154, // 0003 GETMBR R1 R0 K84 + 0x8C080155, // 0004 GETMET R2 R0 K85 + 0x7C080200, // 0005 CALL R2 1 + 0xB80E4A00, // 0006 GETNGBL R3 K37 + 0x60100018, // 0007 GETGBL R4 G24 + 0x58140056, // 0008 LDCONST R5 K86 + 0x5C180400, // 0009 MOVE R6 R2 + 0x7C100400, // 000A CALL R4 2 + 0x58140034, // 000B LDCONST R5 K52 + 0x7C0C0400, // 000C CALL R3 2 + 0x8C0C0157, // 000D GETMET R3 R0 K87 + 0x7C0C0200, // 000E CALL R3 1 + 0xB8121000, // 000F GETNGBL R4 K8 + 0x8C100909, // 0010 GETMET R4 R4 K9 + 0x60180018, // 0011 GETGBL R6 G24 + 0x581C0058, // 0012 LDCONST R7 K88 + 0x5C200400, // 0013 MOVE R8 R2 + 0x5C240600, // 0014 MOVE R9 R3 + 0x7C180600, // 0015 CALL R6 3 + 0x581C000B, // 0016 LDCONST R7 K11 + 0x7C100600, // 0017 CALL R4 3 + 0xA4128400, // 0018 IMPORT R4 K66 + 0x8C140959, // 0019 GETMET R5 R4 K89 + 0x541E000F, // 001A LDINT R7 16 + 0x7C140400, // 001B CALL R5 2 + 0x60180015, // 001C GETGBL R6 G21 + 0x7C180000, // 001D CALL R6 0 + 0x8C180D5A, // 001E GETMET R6 R6 K90 + 0x88200100, // 001F GETMBR R8 R0 K0 + 0x8820111D, // 0020 GETMBR R8 R8 K29 + 0x54260003, // 0021 LDINT R9 4 + 0x7C180600, // 0022 CALL R6 3 + 0x8C1C095B, // 0023 GETMET R7 R4 K91 + 0x7C1C0200, // 0024 CALL R7 1 + 0x8C1C0F5C, // 0025 GETMET R7 R7 K92 + 0x5C240C00, // 0026 MOVE R9 R6 + 0x5C280A00, // 0027 MOVE R10 R5 + 0x882C015D, // 0028 GETMBR R11 R0 K93 + 0x5432004F, // 0029 LDINT R12 80 + 0x7C1C0A00, // 002A CALL R7 5 + 0x54220026, // 002B LDINT R8 39 + 0x40222A08, // 002C CONNECT R8 K21 R8 + 0x94200E08, // 002D GETIDX R8 R7 R8 + 0x54260027, // 002E LDINT R9 40 + 0x542A004E, // 002F LDINT R10 79 + 0x4024120A, // 0030 CONNECT R9 R9 R10 + 0x94240E09, // 0031 GETIDX R9 R7 R9 + 0x8C28095E, // 0032 GETMET R10 R4 K94 + 0x7C280200, // 0033 CALL R10 1 + 0x8C28155F, // 0034 GETMET R10 R10 K95 + 0x5C301000, // 0035 MOVE R12 R8 + 0x7C280400, // 0036 CALL R10 2 + 0x8C2C095E, // 0037 GETMET R11 R4 K94 + 0x7C2C0200, // 0038 CALL R11 1 + 0x8C2C175F, // 0039 GETMET R11 R11 K95 + 0x5C341200, // 003A MOVE R13 R9 + 0x7C2C0400, // 003B CALL R11 2 + 0x8C30095E, // 003C GETMET R12 R4 K94 + 0x7C300200, // 003D CALL R12 1 + 0x8C301960, // 003E GETMET R12 R12 K96 + 0x5C381600, // 003F MOVE R14 R11 + 0x7C300400, // 0040 CALL R12 2 + 0x8C340161, // 0041 GETMET R13 R0 K97 + 0x5C3C0200, // 0042 MOVE R15 R1 + 0x8840015D, // 0043 GETMBR R16 R0 K93 + 0x88440100, // 0044 GETMBR R17 R0 K0 + 0x8844231C, // 0045 GETMBR R17 R17 K28 + 0x5C480A00, // 0046 MOVE R18 R5 + 0x5C4C1400, // 0047 MOVE R19 R10 + 0x5C501800, // 0048 MOVE R20 R12 + 0x4C540000, // 0049 LDNIL R21 + 0x7C341000, // 004A CALL R13 8 + 0x80000000, // 004B RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: generate_random_passcode +********************************************************************/ +be_local_closure(class_Matter_Commissioning_generate_random_passcode, /* name */ + be_nested_proto( + 7, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(generate_random_passcode), + &be_const_str_solidified, + ( &(const binstruction[35]) { /* code */ + 0xA4068400, // 0000 IMPORT R1 K66 + 0x4C080000, // 0001 LDNIL R2 + 0x500C0200, // 0002 LDBOOL R3 1 0 + 0x780E001D, // 0003 JMPF R3 #0022 + 0x8C0C0359, // 0004 GETMET R3 R1 K89 + 0x54160003, // 0005 LDINT R5 4 + 0x7C0C0400, // 0006 CALL R3 2 + 0x8C0C0762, // 0007 GETMET R3 R3 K98 + 0x58140015, // 0008 LDCONST R5 K21 + 0x541A0003, // 0009 LDINT R6 4 + 0x7C0C0600, // 000A CALL R3 3 + 0x2C0C071E, // 000B AND R3 R3 K30 + 0x5C080600, // 000C MOVE R2 R3 + 0x240C0563, // 000D GT R3 R2 K99 + 0x780E0000, // 000E JMPF R3 #0010 + 0x7001FFF1, // 000F JMP #0002 + 0x600C0010, // 0010 GETGBL R3 G16 + 0x88100164, // 0011 GETMBR R4 R0 K100 + 0x7C0C0200, // 0012 CALL R3 1 + 0xA8020005, // 0013 EXBLK 0 #001A + 0x5C100600, // 0014 MOVE R4 R3 + 0x7C100000, // 0015 CALL R4 0 + 0x1C140404, // 0016 EQ R5 R2 R4 + 0x78160000, // 0017 JMPF R5 #0019 + 0x4C080000, // 0018 LDNIL R2 + 0x7001FFF9, // 0019 JMP #0014 + 0x580C0006, // 001A LDCONST R3 K6 + 0xAC0C0200, // 001B CATCH R3 1 0 + 0xB0080000, // 001C RAISE 2 R0 R0 + 0x4C0C0000, // 001D LDNIL R3 + 0x200C0403, // 001E NE R3 R2 R3 + 0x780E0000, // 001F JMPF R3 #0021 + 0x80040400, // 0020 RET 1 R2 + 0x7001FFDF, // 0021 JMP #0002 + 0x80000000, // 0022 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: mdns_announce_op_discovery +********************************************************************/ +be_local_closure(class_Matter_Commissioning_mdns_announce_op_discovery, /* name */ + be_nested_proto( + 14, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(mdns_announce_op_discovery), + &be_const_str_solidified, + ( &(const binstruction[115]) { /* code */ + 0xA40A4600, // 0000 IMPORT R2 K35 + 0xA802005F, // 0001 EXBLK 0 #0062 + 0x8C0C0303, // 0002 GETMET R3 R1 K3 + 0x7C0C0200, // 0003 CALL R3 1 + 0x8C0C0738, // 0004 GETMET R3 R3 K56 + 0x7C0C0200, // 0005 CALL R3 1 + 0x8C0C0739, // 0006 GETMET R3 R3 K57 + 0x7C0C0200, // 0007 CALL R3 1 + 0x8C10033A, // 0008 GETMET R4 R1 K58 + 0x7C100200, // 0009 CALL R4 1 + 0x8C14093B, // 000A GETMET R5 R4 K59 + 0x7C140200, // 000B CALL R5 1 + 0x00140B3C, // 000C ADD R5 R5 K60 + 0x8C18073B, // 000D GETMET R6 R3 K59 + 0x7C180200, // 000E CALL R6 1 + 0x00140A06, // 000F ADD R5 R5 R6 + 0xB81A4A00, // 0010 GETNGBL R6 K37 + 0x001ECA05, // 0011 ADD R7 K101 R5 + 0x58200019, // 0012 LDCONST R8 K25 + 0x7C180400, // 0013 CALL R6 2 + 0xB81A1000, // 0014 GETNGBL R6 K8 + 0x8C180D2C, // 0015 GETMET R6 R6 K44 + 0x7C180200, // 0016 CALL R6 1 + 0x8C180D3D, // 0017 GETMET R6 R6 K61 + 0x5820003E, // 0018 LDCONST R8 K62 + 0x7C180400, // 0019 CALL R6 2 + 0x781A001E, // 001A JMPF R6 #003A + 0xB81A4A00, // 001B GETNGBL R6 K37 + 0x601C0018, // 001C GETGBL R7 G24 + 0x58200066, // 001D LDCONST R8 K102 + 0x5824002C, // 001E LDCONST R9 K44 + 0x5C280A00, // 001F MOVE R10 R5 + 0x882C012A, // 0020 GETMBR R11 R0 K42 + 0x7C1C0800, // 0021 CALL R7 4 + 0x58200019, // 0022 LDCONST R8 K25 + 0x7C180400, // 0023 CALL R6 2 + 0x8C180567, // 0024 GETMET R6 R2 K103 + 0x5820003F, // 0025 LDCONST R8 K63 + 0x58240040, // 0026 LDCONST R9 K64 + 0x542A15A3, // 0027 LDINT R10 5540 + 0x4C2C0000, // 0028 LDNIL R11 + 0x5C300A00, // 0029 MOVE R12 R5 + 0x8834012A, // 002A GETMBR R13 R0 K42 + 0x7C180E00, // 002B CALL R6 7 + 0x8C18093B, // 002C GETMET R6 R4 K59 + 0x7C180200, // 002D CALL R6 1 + 0x001AD006, // 002E ADD R6 K104 R6 + 0xB81E4A00, // 002F GETNGBL R7 K37 + 0x0022D206, // 0030 ADD R8 K105 R6 + 0x58240019, // 0031 LDCONST R9 K25 + 0x7C1C0400, // 0032 CALL R7 2 + 0x8C1C056A, // 0033 GETMET R7 R2 K106 + 0x5824003F, // 0034 LDCONST R9 K63 + 0x58280040, // 0035 LDCONST R10 K64 + 0x5C2C0A00, // 0036 MOVE R11 R5 + 0x8830012A, // 0037 GETMBR R12 R0 K42 + 0x5C340C00, // 0038 MOVE R13 R6 + 0x7C1C0C00, // 0039 CALL R7 6 + 0xB81A1000, // 003A GETNGBL R6 K8 + 0x8C180D31, // 003B GETMET R6 R6 K49 + 0x7C180200, // 003C CALL R6 1 + 0x8C180D3D, // 003D GETMET R6 R6 K61 + 0x5820003E, // 003E LDCONST R8 K62 + 0x7C180400, // 003F CALL R6 2 + 0x781A001E, // 0040 JMPF R6 #0060 + 0xB81A4A00, // 0041 GETNGBL R6 K37 + 0x601C0018, // 0042 GETGBL R7 G24 + 0x58200066, // 0043 LDCONST R8 K102 + 0x58240031, // 0044 LDCONST R9 K49 + 0x5C280A00, // 0045 MOVE R10 R5 + 0x882C0130, // 0046 GETMBR R11 R0 K48 + 0x7C1C0800, // 0047 CALL R7 4 + 0x58200019, // 0048 LDCONST R8 K25 + 0x7C180400, // 0049 CALL R6 2 + 0x8C180567, // 004A GETMET R6 R2 K103 + 0x5820003F, // 004B LDCONST R8 K63 + 0x58240040, // 004C LDCONST R9 K64 + 0x542A15A3, // 004D LDINT R10 5540 + 0x4C2C0000, // 004E LDNIL R11 + 0x5C300A00, // 004F MOVE R12 R5 + 0x88340130, // 0050 GETMBR R13 R0 K48 + 0x7C180E00, // 0051 CALL R6 7 + 0x8C18093B, // 0052 GETMET R6 R4 K59 + 0x7C180200, // 0053 CALL R6 1 + 0x001AD006, // 0054 ADD R6 K104 R6 + 0xB81E4A00, // 0055 GETNGBL R7 K37 + 0x0022D206, // 0056 ADD R8 K105 R6 + 0x58240019, // 0057 LDCONST R9 K25 + 0x7C1C0400, // 0058 CALL R7 2 + 0x8C1C056A, // 0059 GETMET R7 R2 K106 + 0x5824003F, // 005A LDCONST R9 K63 + 0x58280040, // 005B LDCONST R10 K64 + 0x5C2C0A00, // 005C MOVE R11 R5 + 0x88300130, // 005D GETMBR R12 R0 K48 + 0x5C340C00, // 005E MOVE R13 R6 + 0x7C1C0C00, // 005F CALL R7 6 + 0xA8040001, // 0060 EXBLK 1 1 + 0x7002000F, // 0061 JMP #0072 + 0xAC0C0002, // 0062 CATCH R3 0 2 + 0x7002000C, // 0063 JMP #0071 + 0xB8164A00, // 0064 GETNGBL R5 K37 + 0x60180008, // 0065 GETGBL R6 G8 + 0x5C1C0600, // 0066 MOVE R7 R3 + 0x7C180200, // 0067 CALL R6 1 + 0x001A6406, // 0068 ADD R6 K50 R6 + 0x00180D33, // 0069 ADD R6 R6 K51 + 0x601C0008, // 006A GETGBL R7 G8 + 0x5C200800, // 006B MOVE R8 R4 + 0x7C1C0200, // 006C CALL R7 1 + 0x00180C07, // 006D ADD R6 R6 R7 + 0x581C0034, // 006E LDCONST R7 K52 + 0x7C140400, // 006F CALL R5 2 + 0x70020000, // 0070 JMP #0072 + 0xB0080000, // 0071 RAISE 2 R0 R0 + 0x80000000, // 0072 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: start_commissioning_complete_deferred +********************************************************************/ +be_local_closure(class_Matter_Commissioning_start_commissioning_complete_deferred, /* name */ + be_nested_proto( + 6, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 1, /* has sup protos */ + ( &(const struct bproto*[ 1]) { + be_nested_proto( + 3, /* nstack */ + 0, /* argc */ + 0, /* varg */ + 1, /* has upvals */ + ( &(const bupvaldesc[ 2]) { /* upvals */ + be_local_const_upval(1, 0), + be_local_const_upval(1, 1), + }), + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + ( &(const bvalue[ 1]) { /* constants */ + /* K0 */ be_nested_str_weak(start_commissioning_complete), + }), + be_str_weak(_X3Clambda_X3E), + &be_const_str_solidified, + ( &(const binstruction[ 5]) { /* code */ + 0x68000000, // 0000 GETUPV R0 U0 + 0x8C000100, // 0001 GETMET R0 R0 K0 + 0x68080001, // 0002 GETUPV R2 U1 + 0x7C000400, // 0003 CALL R0 2 + 0x80040000, // 0004 RET 1 R0 + }) + ), + }), + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(start_commissioning_complete_deferred), + &be_const_str_solidified, + ( &(const binstruction[ 7]) { /* code */ + 0xB80A1000, // 0000 GETNGBL R2 K8 + 0x8C080541, // 0001 GETMET R2 R2 K65 + 0x58100015, // 0002 LDCONST R4 K21 + 0x84140000, // 0003 CLOSURE R5 P0 + 0x7C080600, // 0004 CALL R2 3 + 0xA0000000, // 0005 CLOSE R0 + 0x80000000, // 0006 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: every_second +********************************************************************/ +be_local_closure(class_Matter_Commissioning_every_second, /* name */ + be_nested_proto( + 4, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(every_second), + &be_const_str_solidified, + ( &(const binstruction[12]) { /* code */ + 0x8804010C, // 0000 GETMBR R1 R0 K12 + 0x4C080000, // 0001 LDNIL R2 + 0x20040202, // 0002 NE R1 R1 R2 + 0x78060006, // 0003 JMPF R1 #000B + 0xB8061000, // 0004 GETNGBL R1 K8 + 0x8C04036B, // 0005 GETMET R1 R1 K107 + 0x880C010C, // 0006 GETMBR R3 R0 K12 + 0x7C040400, // 0007 CALL R1 2 + 0x78060001, // 0008 JMPF R1 #000B + 0x4C040000, // 0009 LDNIL R1 + 0x90021801, // 000A SETMBR R0 K12 R1 + 0x80000000, // 000B RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: mdns_announce_PASE +********************************************************************/ +be_local_closure(class_Matter_Commissioning_mdns_announce_PASE, /* name */ + be_nested_proto( + 12, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Commissioning, /* shared constants */ + be_str_weak(mdns_announce_PASE), + &be_const_str_solidified, + ( &(const binstruction[226]) { /* code */ + 0xA4064600, // 0000 IMPORT R1 K35 + 0xA40A8400, // 0001 IMPORT R2 K66 + 0x600C0013, // 0002 GETGBL R3 G19 + 0x7C0C0000, // 0003 CALL R3 0 + 0x60100018, // 0004 GETGBL R4 G24 + 0x5814006D, // 0005 LDCONST R5 K109 + 0x88180100, // 0006 GETMBR R6 R0 K0 + 0x88180D1A, // 0007 GETMBR R6 R6 K26 + 0x881C0100, // 0008 GETMBR R7 R0 K0 + 0x881C0F1B, // 0009 GETMBR R7 R7 K27 + 0x7C100600, // 000A CALL R4 3 + 0x980ED804, // 000B SETIDX R3 K108 R4 + 0x8810010F, // 000C GETMBR R4 R0 K15 + 0x980EDC04, // 000D SETIDX R3 K110 R4 + 0x980EDF70, // 000E SETIDX R3 K111 K112 + 0x980EE315, // 000F SETIDX R3 K113 K21 + 0x54121387, // 0010 LDINT R4 5000 + 0x980EE404, // 0011 SETIDX R3 K114 R4 + 0x5412012B, // 0012 LDINT R4 300 + 0x980EE604, // 0013 SETIDX R3 K115 R4 + 0x8C100559, // 0014 GETMET R4 R2 K89 + 0x541A0007, // 0015 LDINT R6 8 + 0x7C100400, // 0016 CALL R4 2 + 0x8C10093B, // 0017 GETMET R4 R4 K59 + 0x7C100200, // 0018 CALL R4 1 + 0x90025E04, // 0019 SETMBR R0 K47 R4 + 0x8C100559, // 001A GETMET R4 R2 K89 + 0x541A0007, // 001B LDINT R6 8 + 0x7C100400, // 001C CALL R4 2 + 0x8C10093B, // 001D GETMET R4 R4 K59 + 0x7C100200, // 001E CALL R4 1 + 0x90025204, // 001F SETMBR R0 K41 R4 + 0xA80200AF, // 0020 EXBLK 0 #00D1 + 0x8810012A, // 0021 GETMBR R4 R0 K42 + 0x78120054, // 0022 JMPF R4 #0078 + 0x8C100367, // 0023 GETMET R4 R1 K103 + 0x58180027, // 0024 LDCONST R6 K39 + 0x581C0028, // 0025 LDCONST R7 K40 + 0x542215A3, // 0026 LDINT R8 5540 + 0x5C240600, // 0027 MOVE R9 R3 + 0x88280129, // 0028 GETMBR R10 R0 K41 + 0x882C012A, // 0029 GETMBR R11 R0 K42 + 0x7C100E00, // 002A CALL R4 7 + 0x50100200, // 002B LDBOOL R4 1 0 + 0x90024804, // 002C SETMBR R0 K36 R4 + 0xB8124A00, // 002D GETNGBL R4 K37 + 0x60140018, // 002E GETGBL R5 G24 + 0x58180074, // 002F LDCONST R6 K116 + 0x581C002C, // 0030 LDCONST R7 K44 + 0x88200129, // 0031 GETMBR R8 R0 K41 + 0x8824012A, // 0032 GETMBR R9 R0 K42 + 0x7C140800, // 0033 CALL R5 4 + 0x58180034, // 0034 LDCONST R6 K52 + 0x7C100400, // 0035 CALL R4 2 + 0x60100008, // 0036 GETGBL R4 G8 + 0x8814010F, // 0037 GETMBR R5 R0 K15 + 0x541A0FFE, // 0038 LDINT R6 4095 + 0x2C140A06, // 0039 AND R5 R5 R6 + 0x7C100200, // 003A CALL R4 1 + 0x0012EA04, // 003B ADD R4 K117 R4 + 0xB8164A00, // 003C GETNGBL R5 K37 + 0x001AD204, // 003D ADD R6 K105 R4 + 0x581C0019, // 003E LDCONST R7 K25 + 0x7C140400, // 003F CALL R5 2 + 0x8C14036A, // 0040 GETMET R5 R1 K106 + 0x581C0027, // 0041 LDCONST R7 K39 + 0x58200028, // 0042 LDCONST R8 K40 + 0x88240129, // 0043 GETMBR R9 R0 K41 + 0x8828012A, // 0044 GETMBR R10 R0 K42 + 0x5C2C0800, // 0045 MOVE R11 R4 + 0x7C140C00, // 0046 CALL R5 6 + 0x60140008, // 0047 GETGBL R5 G8 + 0x8818010F, // 0048 GETMBR R6 R0 K15 + 0x541E0EFF, // 0049 LDINT R7 3840 + 0x2C180C07, // 004A AND R6 R6 R7 + 0x541E0007, // 004B LDINT R7 8 + 0x3C180C07, // 004C SHR R6 R6 R7 + 0x7C140200, // 004D CALL R5 1 + 0x0016EC05, // 004E ADD R5 K118 R5 + 0x5C100A00, // 004F MOVE R4 R5 + 0xB8164A00, // 0050 GETNGBL R5 K37 + 0x001AD204, // 0051 ADD R6 K105 R4 + 0x581C0019, // 0052 LDCONST R7 K25 + 0x7C140400, // 0053 CALL R5 2 + 0x8C14036A, // 0054 GETMET R5 R1 K106 + 0x581C0027, // 0055 LDCONST R7 K39 + 0x58200028, // 0056 LDCONST R8 K40 + 0x88240129, // 0057 GETMBR R9 R0 K41 + 0x8828012A, // 0058 GETMBR R10 R0 K42 + 0x5C2C0800, // 0059 MOVE R11 R4 + 0x7C140C00, // 005A CALL R5 6 + 0x60140008, // 005B GETGBL R5 G8 + 0x88180100, // 005C GETMBR R6 R0 K0 + 0x88180D1A, // 005D GETMBR R6 R6 K26 + 0x7C140200, // 005E CALL R5 1 + 0x0016EE05, // 005F ADD R5 K119 R5 + 0x5C100A00, // 0060 MOVE R4 R5 + 0xB8164A00, // 0061 GETNGBL R5 K37 + 0x001AD204, // 0062 ADD R6 K105 R4 + 0x581C0019, // 0063 LDCONST R7 K25 + 0x7C140400, // 0064 CALL R5 2 + 0x8C14036A, // 0065 GETMET R5 R1 K106 + 0x581C0027, // 0066 LDCONST R7 K39 + 0x58200028, // 0067 LDCONST R8 K40 + 0x88240129, // 0068 GETMBR R9 R0 K41 + 0x8828012A, // 0069 GETMBR R10 R0 K42 + 0x5C2C0800, // 006A MOVE R11 R4 + 0x7C140C00, // 006B CALL R5 6 + 0x58100078, // 006C LDCONST R4 K120 + 0xB8164A00, // 006D GETNGBL R5 K37 + 0x001AD204, // 006E ADD R6 K105 R4 + 0x581C0019, // 006F LDCONST R7 K25 + 0x7C140400, // 0070 CALL R5 2 + 0x8C14036A, // 0071 GETMET R5 R1 K106 + 0x581C0027, // 0072 LDCONST R7 K39 + 0x58200028, // 0073 LDCONST R8 K40 + 0x88240129, // 0074 GETMBR R9 R0 K41 + 0x8828012A, // 0075 GETMBR R10 R0 K42 + 0x5C2C0800, // 0076 MOVE R11 R4 + 0x7C140C00, // 0077 CALL R5 6 + 0x88100130, // 0078 GETMBR R4 R0 K48 + 0x78120054, // 0079 JMPF R4 #00CF + 0x8C100367, // 007A GETMET R4 R1 K103 + 0x58180027, // 007B LDCONST R6 K39 + 0x581C0028, // 007C LDCONST R7 K40 + 0x542215A3, // 007D LDINT R8 5540 + 0x5C240600, // 007E MOVE R9 R3 + 0x8828012F, // 007F GETMBR R10 R0 K47 + 0x882C0130, // 0080 GETMBR R11 R0 K48 + 0x7C100E00, // 0081 CALL R4 7 + 0x50100200, // 0082 LDBOOL R4 1 0 + 0x90025C04, // 0083 SETMBR R0 K46 R4 + 0xB8124A00, // 0084 GETNGBL R4 K37 + 0x60140018, // 0085 GETGBL R5 G24 + 0x58180079, // 0086 LDCONST R6 K121 + 0x581C0031, // 0087 LDCONST R7 K49 + 0x8820012F, // 0088 GETMBR R8 R0 K47 + 0x88240130, // 0089 GETMBR R9 R0 K48 + 0x7C140800, // 008A CALL R5 4 + 0x58180019, // 008B LDCONST R6 K25 + 0x7C100400, // 008C CALL R4 2 + 0x60100008, // 008D GETGBL R4 G8 + 0x8814010F, // 008E GETMBR R5 R0 K15 + 0x541A0FFE, // 008F LDINT R6 4095 + 0x2C140A06, // 0090 AND R5 R5 R6 + 0x7C100200, // 0091 CALL R4 1 + 0x0012EA04, // 0092 ADD R4 K117 R4 + 0xB8164A00, // 0093 GETNGBL R5 K37 + 0x001AD204, // 0094 ADD R6 K105 R4 + 0x581C0019, // 0095 LDCONST R7 K25 + 0x7C140400, // 0096 CALL R5 2 + 0x8C14036A, // 0097 GETMET R5 R1 K106 + 0x581C0027, // 0098 LDCONST R7 K39 + 0x58200028, // 0099 LDCONST R8 K40 + 0x8824012F, // 009A GETMBR R9 R0 K47 + 0x88280130, // 009B GETMBR R10 R0 K48 + 0x5C2C0800, // 009C MOVE R11 R4 + 0x7C140C00, // 009D CALL R5 6 + 0x60140008, // 009E GETGBL R5 G8 + 0x8818010F, // 009F GETMBR R6 R0 K15 + 0x541E0EFF, // 00A0 LDINT R7 3840 + 0x2C180C07, // 00A1 AND R6 R6 R7 + 0x541E0007, // 00A2 LDINT R7 8 + 0x3C180C07, // 00A3 SHR R6 R6 R7 + 0x7C140200, // 00A4 CALL R5 1 + 0x0016EC05, // 00A5 ADD R5 K118 R5 + 0x5C100A00, // 00A6 MOVE R4 R5 + 0xB8164A00, // 00A7 GETNGBL R5 K37 + 0x001AD204, // 00A8 ADD R6 K105 R4 + 0x581C0019, // 00A9 LDCONST R7 K25 + 0x7C140400, // 00AA CALL R5 2 + 0x8C14036A, // 00AB GETMET R5 R1 K106 + 0x581C0027, // 00AC LDCONST R7 K39 + 0x58200028, // 00AD LDCONST R8 K40 + 0x8824012F, // 00AE GETMBR R9 R0 K47 + 0x88280130, // 00AF GETMBR R10 R0 K48 + 0x5C2C0800, // 00B0 MOVE R11 R4 + 0x7C140C00, // 00B1 CALL R5 6 + 0x60140008, // 00B2 GETGBL R5 G8 + 0x88180100, // 00B3 GETMBR R6 R0 K0 + 0x88180D1A, // 00B4 GETMBR R6 R6 K26 + 0x7C140200, // 00B5 CALL R5 1 + 0x0016EE05, // 00B6 ADD R5 K119 R5 + 0x5C100A00, // 00B7 MOVE R4 R5 + 0xB8164A00, // 00B8 GETNGBL R5 K37 + 0x001AD204, // 00B9 ADD R6 K105 R4 + 0x581C0019, // 00BA LDCONST R7 K25 + 0x7C140400, // 00BB CALL R5 2 + 0x8C14036A, // 00BC GETMET R5 R1 K106 + 0x581C0027, // 00BD LDCONST R7 K39 + 0x58200028, // 00BE LDCONST R8 K40 + 0x8824012F, // 00BF GETMBR R9 R0 K47 + 0x88280130, // 00C0 GETMBR R10 R0 K48 + 0x5C2C0800, // 00C1 MOVE R11 R4 + 0x7C140C00, // 00C2 CALL R5 6 + 0x58100078, // 00C3 LDCONST R4 K120 + 0xB8164A00, // 00C4 GETNGBL R5 K37 + 0x001AD204, // 00C5 ADD R6 K105 R4 + 0x581C0019, // 00C6 LDCONST R7 K25 + 0x7C140400, // 00C7 CALL R5 2 + 0x8C14036A, // 00C8 GETMET R5 R1 K106 + 0x581C0027, // 00C9 LDCONST R7 K39 + 0x58200028, // 00CA LDCONST R8 K40 + 0x8824012F, // 00CB GETMBR R9 R0 K47 + 0x88280130, // 00CC GETMBR R10 R0 K48 + 0x5C2C0800, // 00CD MOVE R11 R4 + 0x7C140C00, // 00CE CALL R5 6 + 0xA8040001, // 00CF EXBLK 1 1 + 0x7002000F, // 00D0 JMP #00E1 + 0xAC100002, // 00D1 CATCH R4 0 2 + 0x7002000C, // 00D2 JMP #00E0 + 0xB81A4A00, // 00D3 GETNGBL R6 K37 + 0x601C0008, // 00D4 GETGBL R7 G8 + 0x5C200800, // 00D5 MOVE R8 R4 + 0x7C1C0200, // 00D6 CALL R7 1 + 0x001E6407, // 00D7 ADD R7 K50 R7 + 0x001C0F33, // 00D8 ADD R7 R7 K51 + 0x60200008, // 00D9 GETGBL R8 G8 + 0x5C240A00, // 00DA MOVE R9 R5 + 0x7C200200, // 00DB CALL R8 1 + 0x001C0E08, // 00DC ADD R7 R7 R8 + 0x58200034, // 00DD LDCONST R8 K52 + 0x7C180400, // 00DE CALL R6 2 + 0x70020000, // 00DF JMP #00E1 + 0xB0080000, // 00E0 RAISE 2 R0 R0 + 0x80000000, // 00E1 RET 0 + }) + ) +); +/*******************************************************************/ + + /******************************************************************** ** Solidified function: start_basic_commissioning ********************************************************************/ @@ -613,7 +1629,7 @@ be_local_closure(class_Matter_Commissioning_start_basic_commissioning, /* name &be_const_str_solidified, ( &(const binstruction[40]) { /* code */ 0xB8221000, // 0000 GETNGBL R8 K8 - 0x8C20113D, // 0001 GETMET R8 R8 K61 + 0x8C20117A, // 0001 GETMET R8 R8 K122 0x7C200200, // 0002 CALL R8 1 0x542603E7, // 0003 LDINT R9 1000 0x08240209, // 0004 MUL R9 R1 R9 @@ -626,29 +1642,29 @@ be_local_closure(class_Matter_Commissioning_start_basic_commissioning, /* name 0x90022406, // 000B SETMBR R0 K18 R6 0x90022607, // 000C SETMBR R0 K19 R7 0xB8221000, // 000D GETNGBL R8 K8 - 0x8C201139, // 000E GETMET R8 R8 K57 + 0x8C201131, // 000E GETMET R8 R8 K49 0x7C200200, // 000F CALL R8 1 - 0x94201133, // 0010 GETIDX R8 R8 K51 + 0x9420113E, // 0010 GETIDX R8 R8 K62 0x74220004, // 0011 JMPT R8 #0017 0xB8221000, // 0012 GETNGBL R8 K8 - 0x8C201131, // 0013 GETMET R8 R8 K49 + 0x8C20112C, // 0013 GETMET R8 R8 K44 0x7C200200, // 0014 CALL R8 1 - 0x94201133, // 0015 GETIDX R8 R8 K51 + 0x9420113E, // 0015 GETIDX R8 R8 K62 0x78220002, // 0016 JMPF R8 #001A - 0x8C20013E, // 0017 GETMET R8 R0 K62 + 0x8C20017B, // 0017 GETMET R8 R0 K123 0x7C200200, // 0018 CALL R8 1 0x7002000B, // 0019 JMP #0026 0xB8221000, // 001A GETNGBL R8 K8 - 0x8C20113F, // 001B GETMET R8 R8 K63 - 0x58280040, // 001C LDCONST R10 K64 + 0x8C20117C, // 001B GETMET R8 R8 K124 + 0x5828007D, // 001C LDCONST R10 K125 0x842C0000, // 001D CLOSURE R11 P0 - 0x5830003E, // 001E LDCONST R12 K62 + 0x5830007B, // 001E LDCONST R12 K123 0x7C200800, // 001F CALL R8 4 0xB8221000, // 0020 GETNGBL R8 K8 - 0x8C20113F, // 0021 GETMET R8 R8 K63 - 0x58280041, // 0022 LDCONST R10 K65 + 0x8C20117C, // 0021 GETMET R8 R8 K124 + 0x5828007E, // 0022 LDCONST R10 K126 0x842C0001, // 0023 CLOSURE R11 P1 - 0x5830003E, // 0024 LDCONST R12 K62 + 0x5830007B, // 0024 LDCONST R12 K123 0x7C200800, // 0025 CALL R8 4 0xA0000000, // 0026 CLOSE R0 0x80000000, // 0027 RET 0 @@ -658,845 +1674,6 @@ be_local_closure(class_Matter_Commissioning_start_basic_commissioning, /* name /*******************************************************************/ -/******************************************************************** -** Solidified function: start_operational_discovery_deferred -********************************************************************/ -be_local_closure(class_Matter_Commissioning_start_operational_discovery_deferred, /* name */ - be_nested_proto( - 6, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 1, /* has sup protos */ - ( &(const struct bproto*[ 1]) { - be_nested_proto( - 3, /* nstack */ - 0, /* argc */ - 0, /* varg */ - 1, /* has upvals */ - ( &(const bupvaldesc[ 2]) { /* upvals */ - be_local_const_upval(1, 0), - be_local_const_upval(1, 1), - }), - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - ( &(const bvalue[ 1]) { /* constants */ - /* K0 */ be_nested_str_weak(start_operational_discovery), - }), - be_str_weak(_X3Clambda_X3E), - &be_const_str_solidified, - ( &(const binstruction[ 5]) { /* code */ - 0x68000000, // 0000 GETUPV R0 U0 - 0x8C000100, // 0001 GETMET R0 R0 K0 - 0x68080001, // 0002 GETUPV R2 U1 - 0x7C000400, // 0003 CALL R0 2 - 0x80040000, // 0004 RET 1 R0 - }) - ), - }), - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(start_operational_discovery_deferred), - &be_const_str_solidified, - ( &(const binstruction[ 7]) { /* code */ - 0xB80A1000, // 0000 GETNGBL R2 K8 - 0x8C080542, // 0001 GETMET R2 R2 K66 - 0x58100043, // 0002 LDCONST R4 K67 - 0x84140000, // 0003 CLOSURE R5 P0 - 0x7C080600, // 0004 CALL R2 3 - 0xA0000000, // 0005 CLOSE R0 - 0x80000000, // 0006 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: _mdns_announce_hostname -********************************************************************/ -be_local_closure(class_Matter_Commissioning__mdns_announce_hostname, /* name */ - be_nested_proto( - 14, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(_mdns_announce_hostname), - &be_const_str_solidified, - ( &(const binstruction[146]) { /* code */ - 0xA40A5000, // 0000 IMPORT R2 K40 - 0xA40E8800, // 0001 IMPORT R3 K68 - 0x8C100545, // 0002 GETMET R4 R2 K69 - 0x7C100200, // 0003 CALL R4 1 - 0xA8020079, // 0004 EXBLK 0 #007F - 0x78060034, // 0005 JMPF R1 #003B - 0xB8121000, // 0006 GETNGBL R4 K8 - 0x8C100931, // 0007 GETMET R4 R4 K49 - 0x7C100200, // 0008 CALL R4 1 - 0x8C140746, // 0009 GETMET R5 R3 K70 - 0x8C1C0932, // 000A GETMET R7 R4 K50 - 0x58240047, // 000B LDCONST R9 K71 - 0x7C1C0400, // 000C CALL R7 2 - 0x58200048, // 000D LDCONST R8 K72 - 0x58240049, // 000E LDCONST R9 K73 - 0x7C140800, // 000F CALL R5 4 - 0x90027005, // 0010 SETMBR R0 K56 R5 - 0x88140100, // 0011 GETMBR R5 R0 K0 - 0x88140B4A, // 0012 GETMBR R5 R5 K74 - 0x78160003, // 0013 JMPF R5 #0018 - 0x8C14094B, // 0014 GETMET R5 R4 K75 - 0x581C004C, // 0015 LDCONST R7 K76 - 0x7C140400, // 0016 CALL R5 2 - 0x7416000F, // 0017 JMPT R5 #0028 - 0x8C14054D, // 0018 GETMET R5 R2 K77 - 0x881C0138, // 0019 GETMBR R7 R0 K56 - 0x8C200932, // 001A GETMET R8 R4 K50 - 0x5828004C, // 001B LDCONST R10 K76 - 0x582C0049, // 001C LDCONST R11 K73 - 0x7C200600, // 001D CALL R8 3 - 0x8C240932, // 001E GETMET R9 R4 K50 - 0x582C004E, // 001F LDCONST R11 K78 - 0x58300049, // 0020 LDCONST R12 K73 - 0x7C240600, // 0021 CALL R9 3 - 0x8C280932, // 0022 GETMET R10 R4 K50 - 0x5830004F, // 0023 LDCONST R12 K79 - 0x58340049, // 0024 LDCONST R13 K73 - 0x7C280600, // 0025 CALL R10 3 - 0x7C140A00, // 0026 CALL R5 5 - 0x70020011, // 0027 JMP #003A - 0xB8163400, // 0028 GETNGBL R5 K26 - 0x60180018, // 0029 GETGBL R6 G24 - 0x581C0050, // 002A LDCONST R7 K80 - 0x88200138, // 002B GETMBR R8 R0 K56 - 0x8C240932, // 002C GETMET R9 R4 K50 - 0x582C004E, // 002D LDCONST R11 K78 - 0x58300049, // 002E LDCONST R12 K73 - 0x7C240600, // 002F CALL R9 3 - 0x7C180600, // 0030 CALL R6 3 - 0x581C0020, // 0031 LDCONST R7 K32 - 0x7C140400, // 0032 CALL R5 2 - 0x8C14054D, // 0033 GETMET R5 R2 K77 - 0x881C0138, // 0034 GETMBR R7 R0 K56 - 0x8C200932, // 0035 GETMET R8 R4 K50 - 0x5828004E, // 0036 LDCONST R10 K78 - 0x582C0049, // 0037 LDCONST R11 K73 - 0x7C200600, // 0038 CALL R8 3 - 0x7C140600, // 0039 CALL R5 3 - 0x70020033, // 003A JMP #006F - 0xB8121000, // 003B GETNGBL R4 K8 - 0x8C100939, // 003C GETMET R4 R4 K57 - 0x7C100200, // 003D CALL R4 1 - 0x8C140746, // 003E GETMET R5 R3 K70 - 0x8C1C0932, // 003F GETMET R7 R4 K50 - 0x58240047, // 0040 LDCONST R9 K71 - 0x7C1C0400, // 0041 CALL R7 2 - 0x58200048, // 0042 LDCONST R8 K72 - 0x58240049, // 0043 LDCONST R9 K73 - 0x7C140800, // 0044 CALL R5 4 - 0x90027405, // 0045 SETMBR R0 K58 R5 - 0x88140100, // 0046 GETMBR R5 R0 K0 - 0x88140B4A, // 0047 GETMBR R5 R5 K74 - 0x78160003, // 0048 JMPF R5 #004D - 0x8C14094B, // 0049 GETMET R5 R4 K75 - 0x581C004C, // 004A LDCONST R7 K76 - 0x7C140400, // 004B CALL R5 2 - 0x7416000F, // 004C JMPT R5 #005D - 0x8C14054D, // 004D GETMET R5 R2 K77 - 0x881C013A, // 004E GETMBR R7 R0 K58 - 0x8C200932, // 004F GETMET R8 R4 K50 - 0x5828004C, // 0050 LDCONST R10 K76 - 0x582C0049, // 0051 LDCONST R11 K73 - 0x7C200600, // 0052 CALL R8 3 - 0x8C240932, // 0053 GETMET R9 R4 K50 - 0x582C004E, // 0054 LDCONST R11 K78 - 0x58300049, // 0055 LDCONST R12 K73 - 0x7C240600, // 0056 CALL R9 3 - 0x8C280932, // 0057 GETMET R10 R4 K50 - 0x5830004F, // 0058 LDCONST R12 K79 - 0x58340049, // 0059 LDCONST R13 K73 - 0x7C280600, // 005A CALL R10 3 - 0x7C140A00, // 005B CALL R5 5 - 0x70020011, // 005C JMP #006F - 0xB8163400, // 005D GETNGBL R5 K26 - 0x60180018, // 005E GETGBL R6 G24 - 0x581C0050, // 005F LDCONST R7 K80 - 0x8820013A, // 0060 GETMBR R8 R0 K58 - 0x8C240932, // 0061 GETMET R9 R4 K50 - 0x582C004E, // 0062 LDCONST R11 K78 - 0x58300049, // 0063 LDCONST R12 K73 - 0x7C240600, // 0064 CALL R9 3 - 0x7C180600, // 0065 CALL R6 3 - 0x581C0020, // 0066 LDCONST R7 K32 - 0x7C140400, // 0067 CALL R5 2 - 0x8C14054D, // 0068 GETMET R5 R2 K77 - 0x881C013A, // 0069 GETMBR R7 R0 K58 - 0x8C200932, // 006A GETMET R8 R4 K50 - 0x5828004E, // 006B LDCONST R10 K78 - 0x582C0049, // 006C LDCONST R11 K73 - 0x7C200600, // 006D CALL R8 3 - 0x7C140600, // 006E CALL R5 3 - 0xB8123400, // 006F GETNGBL R4 K26 - 0x60140018, // 0070 GETGBL R5 G24 - 0x58180051, // 0071 LDCONST R6 K81 - 0x78060001, // 0072 JMPF R1 #0075 - 0x581C0031, // 0073 LDCONST R7 K49 - 0x70020000, // 0074 JMP #0076 - 0x581C0039, // 0075 LDCONST R7 K57 - 0x78060001, // 0076 JMPF R1 #0079 - 0x88200138, // 0077 GETMBR R8 R0 K56 - 0x70020000, // 0078 JMP #007A - 0x8820013A, // 0079 GETMBR R8 R0 K58 - 0x7C140600, // 007A CALL R5 3 - 0x58180020, // 007B LDCONST R6 K32 - 0x7C100400, // 007C CALL R4 2 - 0xA8040001, // 007D EXBLK 1 1 - 0x7002000F, // 007E JMP #008F - 0xAC100002, // 007F CATCH R4 0 2 - 0x7002000C, // 0080 JMP #008E - 0xB81A3400, // 0081 GETNGBL R6 K26 - 0x601C0008, // 0082 GETGBL R7 G8 - 0x5C200800, // 0083 MOVE R8 R4 - 0x7C1C0200, // 0084 CALL R7 1 - 0x001E7607, // 0085 ADD R7 K59 R7 - 0x001C0F3C, // 0086 ADD R7 R7 K60 - 0x60200008, // 0087 GETGBL R8 G8 - 0x5C240A00, // 0088 MOVE R9 R5 - 0x7C200200, // 0089 CALL R8 1 - 0x001C0E08, // 008A ADD R7 R7 R8 - 0x5820001C, // 008B LDCONST R8 K28 - 0x7C180400, // 008C CALL R6 2 - 0x70020000, // 008D JMP #008F - 0xB0080000, // 008E RAISE 2 R0 R0 - 0x8C100152, // 008F GETMET R4 R0 K82 - 0x7C100200, // 0090 CALL R4 1 - 0x80000000, // 0091 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: mdns_announce_op_discovery_all_fabrics -********************************************************************/ -be_local_closure(class_Matter_Commissioning_mdns_announce_op_discovery_all_fabrics, /* name */ - be_nested_proto( - 6, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(mdns_announce_op_discovery_all_fabrics), - &be_const_str_solidified, - ( &(const binstruction[23]) { /* code */ - 0x60040010, // 0000 GETGBL R1 G16 - 0x88080100, // 0001 GETMBR R2 R0 K0 - 0x8808052A, // 0002 GETMBR R2 R2 K42 - 0x8C08052B, // 0003 GETMET R2 R2 K43 - 0x7C080200, // 0004 CALL R2 1 - 0x7C040200, // 0005 CALL R1 1 - 0xA802000B, // 0006 EXBLK 0 #0013 - 0x5C080200, // 0007 MOVE R2 R1 - 0x7C080000, // 0008 CALL R2 0 - 0x8C0C052C, // 0009 GETMET R3 R2 K44 - 0x7C0C0200, // 000A CALL R3 1 - 0x780E0005, // 000B JMPF R3 #0012 - 0x8C0C0515, // 000C GETMET R3 R2 K21 - 0x7C0C0200, // 000D CALL R3 1 - 0x780E0002, // 000E JMPF R3 #0012 - 0x8C0C0129, // 000F GETMET R3 R0 K41 - 0x5C140400, // 0010 MOVE R5 R2 - 0x7C0C0400, // 0011 CALL R3 2 - 0x7001FFF3, // 0012 JMP #0007 - 0x5804002E, // 0013 LDCONST R1 K46 - 0xAC040200, // 0014 CATCH R1 1 0 - 0xB0080000, // 0015 RAISE 2 R0 R0 - 0x80000000, // 0016 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: start_commissioning_complete_deferred -********************************************************************/ -be_local_closure(class_Matter_Commissioning_start_commissioning_complete_deferred, /* name */ - be_nested_proto( - 6, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 1, /* has sup protos */ - ( &(const struct bproto*[ 1]) { - be_nested_proto( - 3, /* nstack */ - 0, /* argc */ - 0, /* varg */ - 1, /* has upvals */ - ( &(const bupvaldesc[ 2]) { /* upvals */ - be_local_const_upval(1, 0), - be_local_const_upval(1, 1), - }), - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - ( &(const bvalue[ 1]) { /* constants */ - /* K0 */ be_nested_str_weak(start_commissioning_complete), - }), - be_str_weak(_X3Clambda_X3E), - &be_const_str_solidified, - ( &(const binstruction[ 5]) { /* code */ - 0x68000000, // 0000 GETUPV R0 U0 - 0x8C000100, // 0001 GETMET R0 R0 K0 - 0x68080001, // 0002 GETUPV R2 U1 - 0x7C000400, // 0003 CALL R0 2 - 0x80040000, // 0004 RET 1 R0 - }) - ), - }), - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(start_commissioning_complete_deferred), - &be_const_str_solidified, - ( &(const binstruction[ 7]) { /* code */ - 0xB80A1000, // 0000 GETNGBL R2 K8 - 0x8C080542, // 0001 GETMET R2 R2 K66 - 0x58100043, // 0002 LDCONST R4 K67 - 0x84140000, // 0003 CLOSURE R5 P0 - 0x7C080600, // 0004 CALL R2 3 - 0xA0000000, // 0005 CLOSE R0 - 0x80000000, // 0006 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: generate_random_passcode -********************************************************************/ -be_local_closure(class_Matter_Commissioning_generate_random_passcode, /* name */ - be_nested_proto( - 7, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(generate_random_passcode), - &be_const_str_solidified, - ( &(const binstruction[35]) { /* code */ - 0xA4064E00, // 0000 IMPORT R1 K39 - 0x4C080000, // 0001 LDNIL R2 - 0x500C0200, // 0002 LDBOOL R3 1 0 - 0x780E001D, // 0003 JMPF R3 #0022 - 0x8C0C0353, // 0004 GETMET R3 R1 K83 - 0x54160003, // 0005 LDINT R5 4 - 0x7C0C0400, // 0006 CALL R3 2 - 0x8C0C0754, // 0007 GETMET R3 R3 K84 - 0x58140043, // 0008 LDCONST R5 K67 - 0x541A0003, // 0009 LDINT R6 4 - 0x7C0C0600, // 000A CALL R3 3 - 0x2C0C0723, // 000B AND R3 R3 K35 - 0x5C080600, // 000C MOVE R2 R3 - 0x240C0555, // 000D GT R3 R2 K85 - 0x780E0000, // 000E JMPF R3 #0010 - 0x7001FFF1, // 000F JMP #0002 - 0x600C0010, // 0010 GETGBL R3 G16 - 0x88100156, // 0011 GETMBR R4 R0 K86 - 0x7C0C0200, // 0012 CALL R3 1 - 0xA8020005, // 0013 EXBLK 0 #001A - 0x5C100600, // 0014 MOVE R4 R3 - 0x7C100000, // 0015 CALL R4 0 - 0x1C140404, // 0016 EQ R5 R2 R4 - 0x78160000, // 0017 JMPF R5 #0019 - 0x4C080000, // 0018 LDNIL R2 - 0x7001FFF9, // 0019 JMP #0014 - 0x580C002E, // 001A LDCONST R3 K46 - 0xAC0C0200, // 001B CATCH R3 1 0 - 0xB0080000, // 001C RAISE 2 R0 R0 - 0x4C0C0000, // 001D LDNIL R3 - 0x200C0403, // 001E NE R3 R2 R3 - 0x780E0000, // 001F JMPF R3 #0021 - 0x80040400, // 0020 RET 1 R2 - 0x7001FFDF, // 0021 JMP #0002 - 0x80000000, // 0022 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: mdns_announce_op_discovery -********************************************************************/ -be_local_closure(class_Matter_Commissioning_mdns_announce_op_discovery, /* name */ - be_nested_proto( - 14, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(mdns_announce_op_discovery), - &be_const_str_solidified, - ( &(const binstruction[115]) { /* code */ - 0xA40A5000, // 0000 IMPORT R2 K40 - 0xA802005F, // 0001 EXBLK 0 #0062 - 0x8C0C032C, // 0002 GETMET R3 R1 K44 - 0x7C0C0200, // 0003 CALL R3 1 - 0x8C0C0716, // 0004 GETMET R3 R3 K22 - 0x7C0C0200, // 0005 CALL R3 1 - 0x8C0C0717, // 0006 GETMET R3 R3 K23 - 0x7C0C0200, // 0007 CALL R3 1 - 0x8C10032F, // 0008 GETMET R4 R1 K47 - 0x7C100200, // 0009 CALL R4 1 - 0x8C140918, // 000A GETMET R5 R4 K24 - 0x7C140200, // 000B CALL R5 1 - 0x00140B30, // 000C ADD R5 R5 K48 - 0x8C180718, // 000D GETMET R6 R3 K24 - 0x7C180200, // 000E CALL R6 1 - 0x00140A06, // 000F ADD R5 R5 R6 - 0xB81A3400, // 0010 GETNGBL R6 K26 - 0x001EAE05, // 0011 ADD R7 K87 R5 - 0x58200020, // 0012 LDCONST R8 K32 - 0x7C180400, // 0013 CALL R6 2 - 0xB81A1000, // 0014 GETNGBL R6 K8 - 0x8C180D31, // 0015 GETMET R6 R6 K49 - 0x7C180200, // 0016 CALL R6 1 - 0x8C180D32, // 0017 GETMET R6 R6 K50 - 0x58200033, // 0018 LDCONST R8 K51 - 0x7C180400, // 0019 CALL R6 2 - 0x781A001E, // 001A JMPF R6 #003A - 0xB81A3400, // 001B GETNGBL R6 K26 - 0x601C0018, // 001C GETGBL R7 G24 - 0x58200058, // 001D LDCONST R8 K88 - 0x58240031, // 001E LDCONST R9 K49 - 0x5C280A00, // 001F MOVE R10 R5 - 0x882C0138, // 0020 GETMBR R11 R0 K56 - 0x7C1C0800, // 0021 CALL R7 4 - 0x58200020, // 0022 LDCONST R8 K32 - 0x7C180400, // 0023 CALL R6 2 - 0x8C180559, // 0024 GETMET R6 R2 K89 - 0x58200036, // 0025 LDCONST R8 K54 - 0x58240037, // 0026 LDCONST R9 K55 - 0x542A15A3, // 0027 LDINT R10 5540 - 0x4C2C0000, // 0028 LDNIL R11 - 0x5C300A00, // 0029 MOVE R12 R5 - 0x88340138, // 002A GETMBR R13 R0 K56 - 0x7C180E00, // 002B CALL R6 7 - 0x8C180918, // 002C GETMET R6 R4 K24 - 0x7C180200, // 002D CALL R6 1 - 0x001AB406, // 002E ADD R6 K90 R6 - 0xB81E3400, // 002F GETNGBL R7 K26 - 0x0022B606, // 0030 ADD R8 K91 R6 - 0x58240020, // 0031 LDCONST R9 K32 - 0x7C1C0400, // 0032 CALL R7 2 - 0x8C1C055C, // 0033 GETMET R7 R2 K92 - 0x58240036, // 0034 LDCONST R9 K54 - 0x58280037, // 0035 LDCONST R10 K55 - 0x5C2C0A00, // 0036 MOVE R11 R5 - 0x88300138, // 0037 GETMBR R12 R0 K56 - 0x5C340C00, // 0038 MOVE R13 R6 - 0x7C1C0C00, // 0039 CALL R7 6 - 0xB81A1000, // 003A GETNGBL R6 K8 - 0x8C180D39, // 003B GETMET R6 R6 K57 - 0x7C180200, // 003C CALL R6 1 - 0x8C180D32, // 003D GETMET R6 R6 K50 - 0x58200033, // 003E LDCONST R8 K51 - 0x7C180400, // 003F CALL R6 2 - 0x781A001E, // 0040 JMPF R6 #0060 - 0xB81A3400, // 0041 GETNGBL R6 K26 - 0x601C0018, // 0042 GETGBL R7 G24 - 0x58200058, // 0043 LDCONST R8 K88 - 0x58240039, // 0044 LDCONST R9 K57 - 0x5C280A00, // 0045 MOVE R10 R5 - 0x882C013A, // 0046 GETMBR R11 R0 K58 - 0x7C1C0800, // 0047 CALL R7 4 - 0x58200020, // 0048 LDCONST R8 K32 - 0x7C180400, // 0049 CALL R6 2 - 0x8C180559, // 004A GETMET R6 R2 K89 - 0x58200036, // 004B LDCONST R8 K54 - 0x58240037, // 004C LDCONST R9 K55 - 0x542A15A3, // 004D LDINT R10 5540 - 0x4C2C0000, // 004E LDNIL R11 - 0x5C300A00, // 004F MOVE R12 R5 - 0x8834013A, // 0050 GETMBR R13 R0 K58 - 0x7C180E00, // 0051 CALL R6 7 - 0x8C180918, // 0052 GETMET R6 R4 K24 - 0x7C180200, // 0053 CALL R6 1 - 0x001AB406, // 0054 ADD R6 K90 R6 - 0xB81E3400, // 0055 GETNGBL R7 K26 - 0x0022B606, // 0056 ADD R8 K91 R6 - 0x58240020, // 0057 LDCONST R9 K32 - 0x7C1C0400, // 0058 CALL R7 2 - 0x8C1C055C, // 0059 GETMET R7 R2 K92 - 0x58240036, // 005A LDCONST R9 K54 - 0x58280037, // 005B LDCONST R10 K55 - 0x5C2C0A00, // 005C MOVE R11 R5 - 0x8830013A, // 005D GETMBR R12 R0 K58 - 0x5C340C00, // 005E MOVE R13 R6 - 0x7C1C0C00, // 005F CALL R7 6 - 0xA8040001, // 0060 EXBLK 1 1 - 0x7002000F, // 0061 JMP #0072 - 0xAC0C0002, // 0062 CATCH R3 0 2 - 0x7002000C, // 0063 JMP #0071 - 0xB8163400, // 0064 GETNGBL R5 K26 - 0x60180008, // 0065 GETGBL R6 G8 - 0x5C1C0600, // 0066 MOVE R7 R3 - 0x7C180200, // 0067 CALL R6 1 - 0x001A7606, // 0068 ADD R6 K59 R6 - 0x00180D3C, // 0069 ADD R6 R6 K60 - 0x601C0008, // 006A GETGBL R7 G8 - 0x5C200800, // 006B MOVE R8 R4 - 0x7C1C0200, // 006C CALL R7 1 - 0x00180C07, // 006D ADD R6 R6 R7 - 0x581C001C, // 006E LDCONST R7 K28 - 0x7C140400, // 006F CALL R5 2 - 0x70020000, // 0070 JMP #0072 - 0xB0080000, // 0071 RAISE 2 R0 R0 - 0x80000000, // 0072 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: every_second -********************************************************************/ -be_local_closure(class_Matter_Commissioning_every_second, /* name */ - be_nested_proto( - 4, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(every_second), - &be_const_str_solidified, - ( &(const binstruction[12]) { /* code */ - 0x8804010C, // 0000 GETMBR R1 R0 K12 - 0x4C080000, // 0001 LDNIL R2 - 0x20040202, // 0002 NE R1 R1 R2 - 0x78060006, // 0003 JMPF R1 #000B - 0xB8061000, // 0004 GETNGBL R1 K8 - 0x8C04035D, // 0005 GETMET R1 R1 K93 - 0x880C010C, // 0006 GETMBR R3 R0 K12 - 0x7C040400, // 0007 CALL R1 2 - 0x78060001, // 0008 JMPF R1 #000B - 0x4C040000, // 0009 LDNIL R1 - 0x90021801, // 000A SETMBR R0 K12 R1 - 0x80000000, // 000B RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: mdns_announce_PASE -********************************************************************/ -be_local_closure(class_Matter_Commissioning_mdns_announce_PASE, /* name */ - be_nested_proto( - 12, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(mdns_announce_PASE), - &be_const_str_solidified, - ( &(const binstruction[226]) { /* code */ - 0xA4065000, // 0000 IMPORT R1 K40 - 0xA40A4E00, // 0001 IMPORT R2 K39 - 0x600C0013, // 0002 GETGBL R3 G19 - 0x7C0C0000, // 0003 CALL R3 0 - 0x60100018, // 0004 GETGBL R4 G24 - 0x5814005F, // 0005 LDCONST R5 K95 - 0x88180100, // 0006 GETMBR R6 R0 K0 - 0x88180D21, // 0007 GETMBR R6 R6 K33 - 0x881C0100, // 0008 GETMBR R7 R0 K0 - 0x881C0F22, // 0009 GETMBR R7 R7 K34 - 0x7C100600, // 000A CALL R4 3 - 0x980EBC04, // 000B SETIDX R3 K94 R4 - 0x8810010F, // 000C GETMBR R4 R0 K15 - 0x980EC004, // 000D SETIDX R3 K96 R4 - 0x980EC362, // 000E SETIDX R3 K97 K98 - 0x980EC743, // 000F SETIDX R3 K99 K67 - 0x54121387, // 0010 LDINT R4 5000 - 0x980EC804, // 0011 SETIDX R3 K100 R4 - 0x5412012B, // 0012 LDINT R4 300 - 0x980ECA04, // 0013 SETIDX R3 K101 R4 - 0x8C100553, // 0014 GETMET R4 R2 K83 - 0x541A0007, // 0015 LDINT R6 8 - 0x7C100400, // 0016 CALL R4 2 - 0x8C100918, // 0017 GETMET R4 R4 K24 - 0x7C100200, // 0018 CALL R4 1 - 0x9002CC04, // 0019 SETMBR R0 K102 R4 - 0x8C100553, // 001A GETMET R4 R2 K83 - 0x541A0007, // 001B LDINT R6 8 - 0x7C100400, // 001C CALL R4 2 - 0x8C100918, // 001D GETMET R4 R4 K24 - 0x7C100200, // 001E CALL R4 1 - 0x9002CE04, // 001F SETMBR R0 K103 R4 - 0xA80200AF, // 0020 EXBLK 0 #00D1 - 0x88100138, // 0021 GETMBR R4 R0 K56 - 0x78120054, // 0022 JMPF R4 #0078 - 0x8C100359, // 0023 GETMET R4 R1 K89 - 0x58180068, // 0024 LDCONST R6 K104 - 0x581C0069, // 0025 LDCONST R7 K105 - 0x542215A3, // 0026 LDINT R8 5540 - 0x5C240600, // 0027 MOVE R9 R3 - 0x88280167, // 0028 GETMBR R10 R0 K103 - 0x882C0138, // 0029 GETMBR R11 R0 K56 - 0x7C100E00, // 002A CALL R4 7 - 0x50100200, // 002B LDBOOL R4 1 0 - 0x9002D404, // 002C SETMBR R0 K106 R4 - 0xB8123400, // 002D GETNGBL R4 K26 - 0x60140018, // 002E GETGBL R5 G24 - 0x5818006B, // 002F LDCONST R6 K107 - 0x581C0031, // 0030 LDCONST R7 K49 - 0x88200167, // 0031 GETMBR R8 R0 K103 - 0x88240138, // 0032 GETMBR R9 R0 K56 - 0x7C140800, // 0033 CALL R5 4 - 0x5818001C, // 0034 LDCONST R6 K28 - 0x7C100400, // 0035 CALL R4 2 - 0x60100008, // 0036 GETGBL R4 G8 - 0x8814010F, // 0037 GETMBR R5 R0 K15 - 0x541A0FFE, // 0038 LDINT R6 4095 - 0x2C140A06, // 0039 AND R5 R5 R6 - 0x7C100200, // 003A CALL R4 1 - 0x0012D804, // 003B ADD R4 K108 R4 - 0xB8163400, // 003C GETNGBL R5 K26 - 0x001AB604, // 003D ADD R6 K91 R4 - 0x581C0020, // 003E LDCONST R7 K32 - 0x7C140400, // 003F CALL R5 2 - 0x8C14035C, // 0040 GETMET R5 R1 K92 - 0x581C0068, // 0041 LDCONST R7 K104 - 0x58200069, // 0042 LDCONST R8 K105 - 0x88240167, // 0043 GETMBR R9 R0 K103 - 0x88280138, // 0044 GETMBR R10 R0 K56 - 0x5C2C0800, // 0045 MOVE R11 R4 - 0x7C140C00, // 0046 CALL R5 6 - 0x60140008, // 0047 GETGBL R5 G8 - 0x8818010F, // 0048 GETMBR R6 R0 K15 - 0x541E0EFF, // 0049 LDINT R7 3840 - 0x2C180C07, // 004A AND R6 R6 R7 - 0x541E0007, // 004B LDINT R7 8 - 0x3C180C07, // 004C SHR R6 R6 R7 - 0x7C140200, // 004D CALL R5 1 - 0x0016DA05, // 004E ADD R5 K109 R5 - 0x5C100A00, // 004F MOVE R4 R5 - 0xB8163400, // 0050 GETNGBL R5 K26 - 0x001AB604, // 0051 ADD R6 K91 R4 - 0x581C0020, // 0052 LDCONST R7 K32 - 0x7C140400, // 0053 CALL R5 2 - 0x8C14035C, // 0054 GETMET R5 R1 K92 - 0x581C0068, // 0055 LDCONST R7 K104 - 0x58200069, // 0056 LDCONST R8 K105 - 0x88240167, // 0057 GETMBR R9 R0 K103 - 0x88280138, // 0058 GETMBR R10 R0 K56 - 0x5C2C0800, // 0059 MOVE R11 R4 - 0x7C140C00, // 005A CALL R5 6 - 0x60140008, // 005B GETGBL R5 G8 - 0x88180100, // 005C GETMBR R6 R0 K0 - 0x88180D21, // 005D GETMBR R6 R6 K33 - 0x7C140200, // 005E CALL R5 1 - 0x0016DC05, // 005F ADD R5 K110 R5 - 0x5C100A00, // 0060 MOVE R4 R5 - 0xB8163400, // 0061 GETNGBL R5 K26 - 0x001AB604, // 0062 ADD R6 K91 R4 - 0x581C0020, // 0063 LDCONST R7 K32 - 0x7C140400, // 0064 CALL R5 2 - 0x8C14035C, // 0065 GETMET R5 R1 K92 - 0x581C0068, // 0066 LDCONST R7 K104 - 0x58200069, // 0067 LDCONST R8 K105 - 0x88240167, // 0068 GETMBR R9 R0 K103 - 0x88280138, // 0069 GETMBR R10 R0 K56 - 0x5C2C0800, // 006A MOVE R11 R4 - 0x7C140C00, // 006B CALL R5 6 - 0x5810006F, // 006C LDCONST R4 K111 - 0xB8163400, // 006D GETNGBL R5 K26 - 0x001AB604, // 006E ADD R6 K91 R4 - 0x581C0020, // 006F LDCONST R7 K32 - 0x7C140400, // 0070 CALL R5 2 - 0x8C14035C, // 0071 GETMET R5 R1 K92 - 0x581C0068, // 0072 LDCONST R7 K104 - 0x58200069, // 0073 LDCONST R8 K105 - 0x88240167, // 0074 GETMBR R9 R0 K103 - 0x88280138, // 0075 GETMBR R10 R0 K56 - 0x5C2C0800, // 0076 MOVE R11 R4 - 0x7C140C00, // 0077 CALL R5 6 - 0x8810013A, // 0078 GETMBR R4 R0 K58 - 0x78120054, // 0079 JMPF R4 #00CF - 0x8C100359, // 007A GETMET R4 R1 K89 - 0x58180068, // 007B LDCONST R6 K104 - 0x581C0069, // 007C LDCONST R7 K105 - 0x542215A3, // 007D LDINT R8 5540 - 0x5C240600, // 007E MOVE R9 R3 - 0x88280166, // 007F GETMBR R10 R0 K102 - 0x882C013A, // 0080 GETMBR R11 R0 K58 - 0x7C100E00, // 0081 CALL R4 7 - 0x50100200, // 0082 LDBOOL R4 1 0 - 0x9002E004, // 0083 SETMBR R0 K112 R4 - 0xB8123400, // 0084 GETNGBL R4 K26 - 0x60140018, // 0085 GETGBL R5 G24 - 0x58180071, // 0086 LDCONST R6 K113 - 0x581C0039, // 0087 LDCONST R7 K57 - 0x88200166, // 0088 GETMBR R8 R0 K102 - 0x8824013A, // 0089 GETMBR R9 R0 K58 - 0x7C140800, // 008A CALL R5 4 - 0x58180020, // 008B LDCONST R6 K32 - 0x7C100400, // 008C CALL R4 2 - 0x60100008, // 008D GETGBL R4 G8 - 0x8814010F, // 008E GETMBR R5 R0 K15 - 0x541A0FFE, // 008F LDINT R6 4095 - 0x2C140A06, // 0090 AND R5 R5 R6 - 0x7C100200, // 0091 CALL R4 1 - 0x0012D804, // 0092 ADD R4 K108 R4 - 0xB8163400, // 0093 GETNGBL R5 K26 - 0x001AB604, // 0094 ADD R6 K91 R4 - 0x581C0020, // 0095 LDCONST R7 K32 - 0x7C140400, // 0096 CALL R5 2 - 0x8C14035C, // 0097 GETMET R5 R1 K92 - 0x581C0068, // 0098 LDCONST R7 K104 - 0x58200069, // 0099 LDCONST R8 K105 - 0x88240166, // 009A GETMBR R9 R0 K102 - 0x8828013A, // 009B GETMBR R10 R0 K58 - 0x5C2C0800, // 009C MOVE R11 R4 - 0x7C140C00, // 009D CALL R5 6 - 0x60140008, // 009E GETGBL R5 G8 - 0x8818010F, // 009F GETMBR R6 R0 K15 - 0x541E0EFF, // 00A0 LDINT R7 3840 - 0x2C180C07, // 00A1 AND R6 R6 R7 - 0x541E0007, // 00A2 LDINT R7 8 - 0x3C180C07, // 00A3 SHR R6 R6 R7 - 0x7C140200, // 00A4 CALL R5 1 - 0x0016DA05, // 00A5 ADD R5 K109 R5 - 0x5C100A00, // 00A6 MOVE R4 R5 - 0xB8163400, // 00A7 GETNGBL R5 K26 - 0x001AB604, // 00A8 ADD R6 K91 R4 - 0x581C0020, // 00A9 LDCONST R7 K32 - 0x7C140400, // 00AA CALL R5 2 - 0x8C14035C, // 00AB GETMET R5 R1 K92 - 0x581C0068, // 00AC LDCONST R7 K104 - 0x58200069, // 00AD LDCONST R8 K105 - 0x88240166, // 00AE GETMBR R9 R0 K102 - 0x8828013A, // 00AF GETMBR R10 R0 K58 - 0x5C2C0800, // 00B0 MOVE R11 R4 - 0x7C140C00, // 00B1 CALL R5 6 - 0x60140008, // 00B2 GETGBL R5 G8 - 0x88180100, // 00B3 GETMBR R6 R0 K0 - 0x88180D21, // 00B4 GETMBR R6 R6 K33 - 0x7C140200, // 00B5 CALL R5 1 - 0x0016DC05, // 00B6 ADD R5 K110 R5 - 0x5C100A00, // 00B7 MOVE R4 R5 - 0xB8163400, // 00B8 GETNGBL R5 K26 - 0x001AB604, // 00B9 ADD R6 K91 R4 - 0x581C0020, // 00BA LDCONST R7 K32 - 0x7C140400, // 00BB CALL R5 2 - 0x8C14035C, // 00BC GETMET R5 R1 K92 - 0x581C0068, // 00BD LDCONST R7 K104 - 0x58200069, // 00BE LDCONST R8 K105 - 0x88240166, // 00BF GETMBR R9 R0 K102 - 0x8828013A, // 00C0 GETMBR R10 R0 K58 - 0x5C2C0800, // 00C1 MOVE R11 R4 - 0x7C140C00, // 00C2 CALL R5 6 - 0x5810006F, // 00C3 LDCONST R4 K111 - 0xB8163400, // 00C4 GETNGBL R5 K26 - 0x001AB604, // 00C5 ADD R6 K91 R4 - 0x581C0020, // 00C6 LDCONST R7 K32 - 0x7C140400, // 00C7 CALL R5 2 - 0x8C14035C, // 00C8 GETMET R5 R1 K92 - 0x581C0068, // 00C9 LDCONST R7 K104 - 0x58200069, // 00CA LDCONST R8 K105 - 0x88240166, // 00CB GETMBR R9 R0 K102 - 0x8828013A, // 00CC GETMBR R10 R0 K58 - 0x5C2C0800, // 00CD MOVE R11 R4 - 0x7C140C00, // 00CE CALL R5 6 - 0xA8040001, // 00CF EXBLK 1 1 - 0x7002000F, // 00D0 JMP #00E1 - 0xAC100002, // 00D1 CATCH R4 0 2 - 0x7002000C, // 00D2 JMP #00E0 - 0xB81A3400, // 00D3 GETNGBL R6 K26 - 0x601C0008, // 00D4 GETGBL R7 G8 - 0x5C200800, // 00D5 MOVE R8 R4 - 0x7C1C0200, // 00D6 CALL R7 1 - 0x001E7607, // 00D7 ADD R7 K59 R7 - 0x001C0F3C, // 00D8 ADD R7 R7 K60 - 0x60200008, // 00D9 GETGBL R8 G8 - 0x5C240A00, // 00DA MOVE R9 R5 - 0x7C200200, // 00DB CALL R8 1 - 0x001C0E08, // 00DC ADD R7 R7 R8 - 0x5820001C, // 00DD LDCONST R8 K28 - 0x7C180400, // 00DE CALL R6 2 - 0x70020000, // 00DF JMP #00E1 - 0xB0080000, // 00E0 RAISE 2 R0 R0 - 0x80000000, // 00E1 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: _init_basic_commissioning -********************************************************************/ -be_local_closure(class_Matter_Commissioning__init_basic_commissioning, /* name */ - be_nested_proto( - 3, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(_init_basic_commissioning), - &be_const_str_solidified, - ( &(const binstruction[ 9]) { /* code */ - 0x88040100, // 0000 GETMBR R1 R0 K0 - 0x8804032A, // 0001 GETMBR R1 R1 K42 - 0x8C040372, // 0002 GETMET R1 R1 K114 - 0x7C040200, // 0003 CALL R1 1 - 0x1C040343, // 0004 EQ R1 R1 K67 - 0x78060001, // 0005 JMPF R1 #0008 - 0x8C040173, // 0006 GETMET R1 R0 K115 - 0x7C040200, // 0007 CALL R1 1 - 0x80000000, // 0008 RET 0 - }) - ) -); -/*******************************************************************/ - - /******************************************************************** ** Solidified function: start_mdns_announce_hostnames ********************************************************************/ @@ -1582,34 +1759,34 @@ be_local_closure(class_Matter_Commissioning_start_mdns_announce_hostnames, /* &be_const_str_solidified, ( &(const binstruction[32]) { /* code */ 0xB8061000, // 0000 GETNGBL R1 K8 - 0x8C040339, // 0001 GETMET R1 R1 K57 + 0x8C040331, // 0001 GETMET R1 R1 K49 0x7C040200, // 0002 CALL R1 1 - 0x94040333, // 0003 GETIDX R1 R1 K51 + 0x9404033E, // 0003 GETIDX R1 R1 K62 0x78060003, // 0004 JMPF R1 #0009 - 0x8C040174, // 0005 GETMET R1 R0 K116 + 0x8C04017F, // 0005 GETMET R1 R0 K127 0x500C0000, // 0006 LDBOOL R3 0 0 0x7C040400, // 0007 CALL R1 2 0x70020005, // 0008 JMP #000F 0xB8061000, // 0009 GETNGBL R1 K8 - 0x8C04033F, // 000A GETMET R1 R1 K63 - 0x580C0040, // 000B LDCONST R3 K64 + 0x8C04037C, // 000A GETMET R1 R1 K124 + 0x580C007D, // 000B LDCONST R3 K125 0x84100000, // 000C CLOSURE R4 P0 - 0x58140075, // 000D LDCONST R5 K117 + 0x58140080, // 000D LDCONST R5 K128 0x7C040800, // 000E CALL R1 4 0xB8061000, // 000F GETNGBL R1 K8 - 0x8C040331, // 0010 GETMET R1 R1 K49 + 0x8C04032C, // 0010 GETMET R1 R1 K44 0x7C040200, // 0011 CALL R1 1 - 0x94040333, // 0012 GETIDX R1 R1 K51 + 0x9404033E, // 0012 GETIDX R1 R1 K62 0x78060003, // 0013 JMPF R1 #0018 - 0x8C040174, // 0014 GETMET R1 R0 K116 + 0x8C04017F, // 0014 GETMET R1 R0 K127 0x500C0200, // 0015 LDBOOL R3 1 0 0x7C040400, // 0016 CALL R1 2 0x70020005, // 0017 JMP #001E 0xB8061000, // 0018 GETNGBL R1 K8 - 0x8C04033F, // 0019 GETMET R1 R1 K63 - 0x580C0041, // 001A LDCONST R3 K65 + 0x8C04037C, // 0019 GETMET R1 R1 K124 + 0x580C007E, // 001A LDCONST R3 K126 0x84100001, // 001B CLOSURE R4 P1 - 0x58140075, // 001C LDCONST R5 K117 + 0x58140080, // 001C LDCONST R5 K128 0x7C040800, // 001D CALL R1 4 0xA0000000, // 001E CLOSE R0 0x80000000, // 001F RET 0 @@ -1653,105 +1830,6 @@ be_local_closure(class_Matter_Commissioning_is_root_commissioning_open, /* nam /*******************************************************************/ -/******************************************************************** -** Solidified function: start_root_basic_commissioning -********************************************************************/ -be_local_closure(class_Matter_Commissioning_start_root_basic_commissioning, /* name */ - be_nested_proto( - 22, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(start_root_basic_commissioning), - &be_const_str_solidified, - ( &(const binstruction[76]) { /* code */ - 0x4C080000, // 0000 LDNIL R2 - 0x1C080202, // 0001 EQ R2 R1 R2 - 0x780A0000, // 0002 JMPF R2 #0004 - 0x88040176, // 0003 GETMBR R1 R0 K118 - 0x8C080177, // 0004 GETMET R2 R0 K119 - 0x7C080200, // 0005 CALL R2 1 - 0xB80E3400, // 0006 GETNGBL R3 K26 - 0x60100018, // 0007 GETGBL R4 G24 - 0x58140078, // 0008 LDCONST R5 K120 - 0x5C180400, // 0009 MOVE R6 R2 - 0x7C100400, // 000A CALL R4 2 - 0x5814001C, // 000B LDCONST R5 K28 - 0x7C0C0400, // 000C CALL R3 2 - 0x8C0C0179, // 000D GETMET R3 R0 K121 - 0x7C0C0200, // 000E CALL R3 1 - 0xB8121000, // 000F GETNGBL R4 K8 - 0x8C100909, // 0010 GETMET R4 R4 K9 - 0x60180018, // 0011 GETGBL R6 G24 - 0x581C007A, // 0012 LDCONST R7 K122 - 0x5C200400, // 0013 MOVE R8 R2 - 0x5C240600, // 0014 MOVE R9 R3 - 0x7C180600, // 0015 CALL R6 3 - 0x581C000B, // 0016 LDCONST R7 K11 - 0x7C100600, // 0017 CALL R4 3 - 0xA4124E00, // 0018 IMPORT R4 K39 - 0x8C140953, // 0019 GETMET R5 R4 K83 - 0x541E000F, // 001A LDINT R7 16 - 0x7C140400, // 001B CALL R5 2 - 0x60180015, // 001C GETGBL R6 G21 - 0x7C180000, // 001D CALL R6 0 - 0x8C180D7B, // 001E GETMET R6 R6 K123 - 0x88200100, // 001F GETMBR R8 R0 K0 - 0x88201102, // 0020 GETMBR R8 R8 K2 - 0x54260003, // 0021 LDINT R9 4 - 0x7C180600, // 0022 CALL R6 3 - 0x8C1C097C, // 0023 GETMET R7 R4 K124 - 0x7C1C0200, // 0024 CALL R7 1 - 0x8C1C0F7D, // 0025 GETMET R7 R7 K125 - 0x5C240C00, // 0026 MOVE R9 R6 - 0x5C280A00, // 0027 MOVE R10 R5 - 0x882C017E, // 0028 GETMBR R11 R0 K126 - 0x5432004F, // 0029 LDINT R12 80 - 0x7C1C0A00, // 002A CALL R7 5 - 0x54220026, // 002B LDINT R8 39 - 0x40228608, // 002C CONNECT R8 K67 R8 - 0x94200E08, // 002D GETIDX R8 R7 R8 - 0x54260027, // 002E LDINT R9 40 - 0x542A004E, // 002F LDINT R10 79 - 0x4024120A, // 0030 CONNECT R9 R9 R10 - 0x94240E09, // 0031 GETIDX R9 R7 R9 - 0x8C28097F, // 0032 GETMET R10 R4 K127 - 0x7C280200, // 0033 CALL R10 1 - 0x8C281580, // 0034 GETMET R10 R10 K128 - 0x5C301000, // 0035 MOVE R12 R8 - 0x7C280400, // 0036 CALL R10 2 - 0x8C2C097F, // 0037 GETMET R11 R4 K127 - 0x7C2C0200, // 0038 CALL R11 1 - 0x8C2C1780, // 0039 GETMET R11 R11 K128 - 0x5C341200, // 003A MOVE R13 R9 - 0x7C2C0400, // 003B CALL R11 2 - 0x8C30097F, // 003C GETMET R12 R4 K127 - 0x7C300200, // 003D CALL R12 1 - 0x8C301981, // 003E GETMET R12 R12 K129 - 0x5C381600, // 003F MOVE R14 R11 - 0x7C300400, // 0040 CALL R12 2 - 0x8C340182, // 0041 GETMET R13 R0 K130 - 0x5C3C0200, // 0042 MOVE R15 R1 - 0x8840017E, // 0043 GETMBR R16 R0 K126 - 0x88440100, // 0044 GETMBR R17 R0 K0 - 0x88442301, // 0045 GETMBR R17 R17 K1 - 0x5C480A00, // 0046 MOVE R18 R5 - 0x5C4C1400, // 0047 MOVE R19 R10 - 0x5C501800, // 0048 MOVE R20 R12 - 0x4C540000, // 0049 LDNIL R21 - 0x7C341000, // 004A CALL R13 8 - 0x80000000, // 004B RET 0 - }) - ) -); -/*******************************************************************/ - - /******************************************************************** ** Solidified function: is_commissioning_open ********************************************************************/ @@ -1780,11 +1858,11 @@ be_local_closure(class_Matter_Commissioning_is_commissioning_open, /* name */ /******************************************************************** -** Solidified function: init +** Solidified function: start_commissioning_complete ********************************************************************/ -be_local_closure(class_Matter_Commissioning_init, /* name */ +be_local_closure(class_Matter_Commissioning_start_commissioning_complete, /* name */ be_nested_proto( - 4, /* nstack */ + 10, /* nstack */ 2, /* argc */ 10, /* varg */ 0, /* has upvals */ @@ -1793,113 +1871,32 @@ be_local_closure(class_Matter_Commissioning_init, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(init), + be_str_weak(start_commissioning_complete), &be_const_str_solidified, - ( &(const binstruction[ 4]) { /* code */ - 0x90020001, // 0000 SETMBR R0 K0 R1 - 0x8C080183, // 0001 GETMET R2 R0 K131 - 0x7C080200, // 0002 CALL R2 1 - 0x80000000, // 0003 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: mdns_remove_PASE -********************************************************************/ -be_local_closure(class_Matter_Commissioning_mdns_remove_PASE, /* name */ - be_nested_proto( - 9, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Commissioning, /* shared constants */ - be_str_weak(mdns_remove_PASE), - &be_const_str_solidified, - ( &(const binstruction[77]) { /* code */ - 0xA4065000, // 0000 IMPORT R1 K40 - 0xA8020039, // 0001 EXBLK 0 #003C - 0x8808016A, // 0002 GETMBR R2 R0 K106 - 0x780A0019, // 0003 JMPF R2 #001E - 0xB80A3400, // 0004 GETNGBL R2 K26 - 0x600C0018, // 0005 GETGBL R3 G24 - 0x58100084, // 0006 LDCONST R4 K132 - 0x58140068, // 0007 LDCONST R5 K104 - 0x58180069, // 0008 LDCONST R6 K105 - 0x881C0167, // 0009 GETMBR R7 R0 K103 - 0x88200138, // 000A GETMBR R8 R0 K56 - 0x7C0C0A00, // 000B CALL R3 5 - 0x58100020, // 000C LDCONST R4 K32 - 0x7C080400, // 000D CALL R2 2 - 0xB80A3400, // 000E GETNGBL R2 K26 - 0x600C0018, // 000F GETGBL R3 G24 - 0x58100034, // 0010 LDCONST R4 K52 - 0x58140031, // 0011 LDCONST R5 K49 - 0x88180167, // 0012 GETMBR R6 R0 K103 - 0x7C0C0600, // 0013 CALL R3 3 - 0x58100020, // 0014 LDCONST R4 K32 - 0x7C080400, // 0015 CALL R2 2 - 0x50080000, // 0016 LDBOOL R2 0 0 - 0x9002D402, // 0017 SETMBR R0 K106 R2 - 0x8C080335, // 0018 GETMET R2 R1 K53 - 0x58100068, // 0019 LDCONST R4 K104 - 0x58140069, // 001A LDCONST R5 K105 - 0x88180167, // 001B GETMBR R6 R0 K103 - 0x881C0138, // 001C GETMBR R7 R0 K56 - 0x7C080A00, // 001D CALL R2 5 - 0x88080170, // 001E GETMBR R2 R0 K112 - 0x780A0019, // 001F JMPF R2 #003A - 0xB80A3400, // 0020 GETNGBL R2 K26 - 0x600C0018, // 0021 GETGBL R3 G24 - 0x58100084, // 0022 LDCONST R4 K132 - 0x58140068, // 0023 LDCONST R5 K104 - 0x58180069, // 0024 LDCONST R6 K105 - 0x881C0166, // 0025 GETMBR R7 R0 K102 - 0x8820013A, // 0026 GETMBR R8 R0 K58 - 0x7C0C0A00, // 0027 CALL R3 5 - 0x58100020, // 0028 LDCONST R4 K32 - 0x7C080400, // 0029 CALL R2 2 - 0xB80A3400, // 002A GETNGBL R2 K26 - 0x600C0018, // 002B GETGBL R3 G24 - 0x58100034, // 002C LDCONST R4 K52 - 0x58140039, // 002D LDCONST R5 K57 - 0x88180166, // 002E GETMBR R6 R0 K102 - 0x7C0C0600, // 002F CALL R3 3 - 0x58100020, // 0030 LDCONST R4 K32 - 0x7C080400, // 0031 CALL R2 2 - 0x50080000, // 0032 LDBOOL R2 0 0 - 0x9002E002, // 0033 SETMBR R0 K112 R2 - 0x8C080335, // 0034 GETMET R2 R1 K53 - 0x58100068, // 0035 LDCONST R4 K104 - 0x58140069, // 0036 LDCONST R5 K105 - 0x88180166, // 0037 GETMBR R6 R0 K102 - 0x881C013A, // 0038 GETMBR R7 R0 K58 - 0x7C080A00, // 0039 CALL R2 5 - 0xA8040001, // 003A EXBLK 1 1 - 0x7002000F, // 003B JMP #004C - 0xAC080002, // 003C CATCH R2 0 2 - 0x7002000C, // 003D JMP #004B - 0xB8123400, // 003E GETNGBL R4 K26 - 0x60140008, // 003F GETGBL R5 G8 - 0x5C180400, // 0040 MOVE R6 R2 - 0x7C140200, // 0041 CALL R5 1 - 0x00167605, // 0042 ADD R5 K59 R5 - 0x00140B3C, // 0043 ADD R5 R5 K60 - 0x60180008, // 0044 GETGBL R6 G8 - 0x5C1C0600, // 0045 MOVE R7 R3 - 0x7C180200, // 0046 CALL R6 1 - 0x00140A06, // 0047 ADD R5 R5 R6 - 0x5818001C, // 0048 LDCONST R6 K28 - 0x7C100400, // 0049 CALL R4 2 - 0x70020000, // 004A JMP #004C - 0xB0080000, // 004B RAISE 2 R0 R0 - 0x80000000, // 004C RET 0 + ( &(const binstruction[23]) { /* code */ + 0x8C080381, // 0000 GETMET R2 R1 K129 + 0x7C080200, // 0001 CALL R2 1 + 0x8C0C0504, // 0002 GETMET R3 R2 K4 + 0x7C0C0200, // 0003 CALL R3 1 + 0x8C0C0738, // 0004 GETMET R3 R3 K56 + 0x7C0C0200, // 0005 CALL R3 1 + 0x8C0C0739, // 0006 GETMET R3 R3 K57 + 0x7C0C0200, // 0007 CALL R3 1 + 0x8C0C073B, // 0008 GETMET R3 R3 K59 + 0x7C0C0200, // 0009 CALL R3 1 + 0x8C100582, // 000A GETMET R4 R2 K130 + 0x7C100200, // 000B CALL R4 1 + 0xB8164A00, // 000C GETNGBL R5 K37 + 0x60180018, // 000D GETGBL R6 G24 + 0x581C0083, // 000E LDCONST R7 K131 + 0x5C200600, // 000F MOVE R8 R3 + 0x5C240800, // 0010 MOVE R9 R4 + 0x7C180600, // 0011 CALL R6 3 + 0x581C0034, // 0012 LDCONST R7 K52 + 0x7C140400, // 0013 CALL R5 2 + 0x8C140143, // 0014 GETMET R5 R0 K67 + 0x7C140200, // 0015 CALL R5 1 + 0x80000000, // 0016 RET 0 }) ) ); @@ -1915,18 +1912,18 @@ be_local_class(Matter_Commissioning, be_nested_map(40, ( (struct bmapnode*) &(const bmapnode[]) { { be_const_key_weak(commissioning_admin_fabric, -1), be_const_var(7) }, - { be_const_key_weak(mdns_remove_op_discovery_all_fabrics, -1), be_const_closure(class_Matter_Commissioning_mdns_remove_op_discovery_all_fabrics_closure) }, - { be_const_key_weak(commissioning_instance_eth, 6), be_const_var(9) }, - { be_const_key_weak(mdns_remove_PASE, 1), be_const_closure(class_Matter_Commissioning_mdns_remove_PASE_closure) }, + { be_const_key_weak(commissioning_w0, -1), be_const_var(5) }, + { be_const_key_weak(commissioning_instance_eth, 1), be_const_var(9) }, + { be_const_key_weak(start_commissioning_complete, -1), be_const_closure(class_Matter_Commissioning_start_commissioning_complete_closure) }, { be_const_key_weak(stop_basic_commissioning, -1), be_const_closure(class_Matter_Commissioning_stop_basic_commissioning_closure) }, { be_const_key_weak(mdns_pase_wifi, -1), be_const_var(13) }, - { be_const_key_weak(commissioning_w0, -1), be_const_var(5) }, + { be_const_key_weak(init_basic_commissioning, -1), be_const_closure(class_Matter_Commissioning_init_basic_commissioning_closure) }, { be_const_key_weak(compute_qrcode_content, -1), be_const_closure(class_Matter_Commissioning_compute_qrcode_content_closure) }, - { be_const_key_weak(mdns_remove_op_discovery, -1), be_const_closure(class_Matter_Commissioning_mdns_remove_op_discovery_closure) }, + { be_const_key_weak(compute_manual_pairing_code, 38), be_const_closure(class_Matter_Commissioning_compute_manual_pairing_code_closure) }, { be_const_key_weak(commissioning_open, -1), be_const_var(1) }, - { be_const_key_weak(compute_manual_pairing_code, 3), be_const_closure(class_Matter_Commissioning_compute_manual_pairing_code_closure) }, + { be_const_key_weak(mdns_remove_op_discovery_all_fabrics, 8), be_const_closure(class_Matter_Commissioning_mdns_remove_op_discovery_all_fabrics_closure) }, { be_const_key_weak(device, -1), be_const_var(0) }, - { be_const_key_weak(init, 32), be_const_closure(class_Matter_Commissioning_init_closure) }, + { be_const_key_weak(start_operational_discovery, -1), be_const_closure(class_Matter_Commissioning_start_operational_discovery_closure) }, { be_const_key_weak(PASSCODE_INVALID, -1), be_const_simple_instance(be_nested_simple_instance(&be_class_list, { be_const_list( * be_nested_list(12, ( (struct bvalue*) &(const bvalue[]) { @@ -1943,31 +1940,31 @@ be_local_class(Matter_Commissioning, be_const_int(12345678), be_const_int(87654321), })) ) } )) }, - { be_const_key_weak(start_operational_discovery_deferred, -1), be_const_closure(class_Matter_Commissioning_start_operational_discovery_deferred_closure) }, - { be_const_key_weak(start_commissioning_complete, 8), be_const_closure(class_Matter_Commissioning_start_commissioning_complete_closure) }, - { be_const_key_weak(_mdns_announce_hostname, -1), be_const_closure(class_Matter_Commissioning__mdns_announce_hostname_closure) }, - { be_const_key_weak(start_operational_discovery, 14), be_const_closure(class_Matter_Commissioning_start_operational_discovery_closure) }, - { be_const_key_weak(start_basic_commissioning, 16), be_const_closure(class_Matter_Commissioning_start_basic_commissioning_closure) }, - { be_const_key_weak(mdns_announce_op_discovery_all_fabrics, 28), be_const_closure(class_Matter_Commissioning_mdns_announce_op_discovery_all_fabrics_closure) }, - { be_const_key_weak(start_root_basic_commissioning, -1), be_const_closure(class_Matter_Commissioning_start_root_basic_commissioning_closure) }, + { be_const_key_weak(commissioning_discriminator, 30), be_const_var(3) }, + { be_const_key_weak(mdns_remove_op_discovery, 3), be_const_closure(class_Matter_Commissioning_mdns_remove_op_discovery_closure) }, + { be_const_key_weak(mdns_announce_op_discovery_all_fabrics, -1), be_const_closure(class_Matter_Commissioning_mdns_announce_op_discovery_all_fabrics_closure) }, + { be_const_key_weak(start_operational_discovery_deferred, 12), be_const_closure(class_Matter_Commissioning_start_operational_discovery_deferred_closure) }, + { be_const_key_weak(_mdns_announce_hostname, 28), be_const_closure(class_Matter_Commissioning__mdns_announce_hostname_closure) }, + { be_const_key_weak(commissioning_L, 16), be_const_var(6) }, + { be_const_key_weak(start_commissioning_complete_deferred, -1), be_const_closure(class_Matter_Commissioning_start_commissioning_complete_deferred_closure) }, { be_const_key_weak(generate_random_passcode, -1), be_const_closure(class_Matter_Commissioning_generate_random_passcode_closure) }, { be_const_key_weak(mdns_announce_op_discovery, -1), be_const_closure(class_Matter_Commissioning_mdns_announce_op_discovery_closure) }, - { be_const_key_weak(PASE_TIMEOUT, -1), be_const_int(600) }, + { be_const_key_weak(commissioning_instance_wifi, -1), be_const_var(8) }, { be_const_key_weak(hostname_eth, -1), be_const_var(11) }, - { be_const_key_weak(every_second, 20), be_const_closure(class_Matter_Commissioning_every_second_closure) }, - { be_const_key_weak(commissioning_instance_wifi, 23), be_const_var(8) }, + { be_const_key_weak(start_root_basic_commissioning, 32), be_const_closure(class_Matter_Commissioning_start_root_basic_commissioning_closure) }, + { be_const_key_weak(PASE_TIMEOUT, 23), be_const_int(600) }, { be_const_key_weak(mdns_announce_PASE, -1), be_const_closure(class_Matter_Commissioning_mdns_announce_PASE_closure) }, - { be_const_key_weak(commissioning_L, -1), be_const_var(6) }, - { be_const_key_weak(_init_basic_commissioning, 30), be_const_closure(class_Matter_Commissioning__init_basic_commissioning_closure) }, + { be_const_key_weak(start_basic_commissioning, -1), be_const_closure(class_Matter_Commissioning_start_basic_commissioning_closure) }, { be_const_key_weak(start_mdns_announce_hostnames, -1), be_const_closure(class_Matter_Commissioning_start_mdns_announce_hostnames_closure) }, + { be_const_key_weak(mdns_pase_eth, 20), be_const_var(12) }, { be_const_key_weak(is_root_commissioning_open, -1), be_const_closure(class_Matter_Commissioning_is_root_commissioning_open_closure) }, - { be_const_key_weak(start_commissioning_complete_deferred, 38), be_const_closure(class_Matter_Commissioning_start_commissioning_complete_deferred_closure) }, + { be_const_key_weak(every_second, -1), be_const_closure(class_Matter_Commissioning_every_second_closure) }, { be_const_key_weak(commissioning_salt, -1), be_const_var(4) }, { be_const_key_weak(is_commissioning_open, -1), be_const_closure(class_Matter_Commissioning_is_commissioning_open_closure) }, - { be_const_key_weak(mdns_pase_eth, 12), be_const_var(12) }, + { be_const_key_weak(init, 14), be_const_closure(class_Matter_Commissioning_init_closure) }, { be_const_key_weak(hostname_wifi, -1), be_const_var(10) }, { be_const_key_weak(commissioning_iterations, -1), be_const_var(2) }, - { be_const_key_weak(commissioning_discriminator, -1), be_const_var(3) }, + { be_const_key_weak(mdns_remove_PASE, -1), be_const_closure(class_Matter_Commissioning_mdns_remove_PASE_closure) }, { be_const_key_weak(PBKDF_ITERATIONS, -1), be_const_int(1000) }, })), be_str_weak(Matter_Commissioning) diff --git a/lib/libesp32/berry_matter/src/solidify/solidified_Matter_zz_Device.h b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_zz_Device.h index f59edbdea..4869abc0c 100644 --- a/lib/libesp32/berry_matter/src/solidify/solidified_Matter_zz_Device.h +++ b/lib/libesp32/berry_matter/src/solidify/solidified_Matter_zz_Device.h @@ -4,263 +4,221 @@ \********************************************************************/ #include "be_constobj.h" extern const bclass be_class_Matter_Device; -// compact class 'Matter_Device' ktab size: 255, total: 533 (saved 2224 bytes) -static const bvalue be_ktab_class_Matter_Device[255] = { +// compact class 'Matter_Device' ktab size: 213, total: 455 (saved 1936 bytes) +static const bvalue be_ktab_class_Matter_Device[213] = { /* K0 */ be_nested_str_weak(udp_server), /* K1 */ be_nested_str_weak(received_ack), - /* K2 */ be_nested_str_weak(started), - /* K3 */ be_nested_str_weak(autoconf_device), - /* K4 */ be_nested_str_weak(_start_udp), - /* K5 */ be_nested_str_weak(UDP_PORT), - /* K6 */ be_nested_str_weak(commissioning), - /* K7 */ be_nested_str_weak(start_mdns_announce_hostnames), - /* K8 */ be_nested_str_weak(sessions), - /* K9 */ be_nested_str_weak(count_active_fabrics), - /* K10 */ be_const_int(0), - /* K11 */ be_nested_str_weak(plugins_persist), - /* K12 */ be_nested_str_weak(save_param), - /* K13 */ be_nested_str_weak(stop_basic_commissioning), - /* K14 */ be_nested_str_weak(mdns_remove_op_discovery_all_fabrics), - /* K15 */ be_const_class(be_class_Matter_Device), - /* K16 */ be_nested_str_weak(), - /* K17 */ be_nested_str_weak(k2l), - /* K18 */ be_nested_str_weak(type), - /* K19 */ be_nested_str_weak(_X20_X25s_X3A_X25s), - /* K20 */ be_nested_str_weak(stop_iteration), - /* K21 */ be_nested_str_weak(crypto), - /* K22 */ be_nested_str_weak(tasmota), - /* K23 */ be_nested_str_weak(get_option), - /* K24 */ be_nested_str_weak(matter), - /* K25 */ be_nested_str_weak(MATTER_OPTION), - /* K26 */ be_nested_str_weak(UI), - /* K27 */ be_nested_str_weak(profiler), - /* K28 */ be_nested_str_weak(Profiler), - /* K29 */ be_nested_str_weak(tick), - /* K30 */ be_nested_str_weak(plugins), - /* K31 */ be_nested_str_weak(plugins_config_remotes), - /* K32 */ be_nested_str_weak(next_ep), - /* K33 */ be_const_int(2), - /* K34 */ be_nested_str_weak(ipv4only), - /* K35 */ be_nested_str_weak(disable_bridge_mode), - /* K36 */ be_nested_str_weak(load_param), - /* K37 */ be_nested_str_weak(Session_Store), - /* K38 */ be_nested_str_weak(load_fabrics), - /* K39 */ be_nested_str_weak(message_handler), - /* K40 */ be_nested_str_weak(MessageHandler), - /* K41 */ be_nested_str_weak(events), - /* K42 */ be_nested_str_weak(EventHandler), - /* K43 */ be_nested_str_weak(ui), - /* K44 */ be_nested_str_weak(wifi), - /* K45 */ be_nested_str_weak(up), - /* K46 */ be_nested_str_weak(eth), - /* K47 */ be_nested_str_weak(start), - /* K48 */ be_nested_str_weak(add_rule), - /* K49 */ be_nested_str_weak(Wifi_X23Connected), - /* K50 */ be_nested_str_weak(matter_start), - /* K51 */ be_nested_str_weak(Eth_X23Connected), - /* K52 */ be_nested_str_weak(Commissioning), - /* K53 */ be_nested_str_weak(add_driver), - /* K54 */ be_nested_str_weak(register_commands), - /* K55 */ be_nested_str_weak(get_name), - /* K56 */ be_const_int(1), - /* K57 */ be_nested_str_weak(find), - /* K58 */ be_nested_str_weak(log), - /* K59 */ be_nested_str_weak(MTR_X3A_X20Starting_X20UDP_X20server_X20on_X20port_X3A_X20), - /* K60 */ be_nested_str_weak(UDPServer), - /* K61 */ be_nested_str_weak(MTR_X3A_X20removing_X20fabric_X20), - /* K62 */ be_nested_str_weak(get_fabric_id), - /* K63 */ be_nested_str_weak(copy), - /* K64 */ be_nested_str_weak(reverse), - /* K65 */ be_nested_str_weak(tohex), - /* K66 */ be_nested_str_weak(im), - /* K67 */ be_nested_str_weak(subs_shop), - /* K68 */ be_nested_str_weak(remove_by_fabric), - /* K69 */ be_nested_str_weak(mdns_remove_op_discovery), - /* K70 */ be_nested_str_weak(remove_fabric), - /* K71 */ be_nested_str_weak(save_fabrics), - /* K72 */ be_nested_str_weak(endpoint), - /* K73 */ be_nested_str_weak(cluster), - /* K74 */ be_nested_str_weak(attribute), - /* K75 */ be_nested_str_weak(find_plugin_by_endpoint), - /* K76 */ be_nested_str_weak(status), - /* K77 */ be_nested_str_weak(UNSUPPORTED_ENDPOINT), - /* K78 */ be_nested_str_weak(contains_cluster), - /* K79 */ be_nested_str_weak(UNSUPPORTED_CLUSTER), - /* K80 */ be_nested_str_weak(contains_attribute), - /* K81 */ be_nested_str_weak(UNSUPPORTED_ATTRIBUTE), - /* K82 */ be_nested_str_weak(attribute_updated), - /* K83 */ be_const_int(3), - /* K84 */ be_nested_str_weak(AGGREGATOR_ENDPOINT), - /* K85 */ be_nested_str_weak(json), - /* K86 */ be_nested_str_weak(plugins_config), - /* K87 */ be_nested_str_weak(autoconf_device_map), - /* K88 */ be_nested_str_weak(adjust_next_ep), - /* K89 */ be_nested_str_weak(MTR_X3A_X20autoconfig_X20_X3D_X20), - /* K90 */ be_nested_str_weak(_instantiate_plugins_from_config), - /* K91 */ be_nested_str_weak(read_sensors), - /* K92 */ be_nested_str_weak(loglevel), - /* K93 */ be_nested_str_weak(MTR_X3A_X20read_sensors_X3A_X20), - /* K94 */ be_nested_str_weak(load), - /* K95 */ be_nested_str_weak(parse_sensors), - /* K96 */ be_nested_str_weak(MTR_X3A_X20unable_X20to_X20parse_X20read_sensors_X3A_X20), - /* K97 */ be_nested_str_weak(get_endpoint), - /* K98 */ be_nested_str_weak(push), - /* K99 */ be_nested_str_weak(send_UDP), - /* K100 */ be_nested_str_weak(remove_driver), - /* K101 */ be_nested_str_weak(stop), - /* K102 */ be_nested_str_weak(keys), - /* K103 */ be_nested_str_weak(probe_sensor_time), - /* K104 */ be_nested_str_weak(probe_sensor_timestamp), - /* K105 */ be_nested_str_weak(jitter), - /* K106 */ be_nested_str_weak(button_handler), - /* K107 */ be_nested_str_weak(http_remotes), - /* K108 */ be_nested_str_weak(contains), - /* K109 */ be_nested_str_weak(get_timeout), - /* K110 */ be_nested_str_weak(set_timeout), - /* K111 */ be_nested_str_weak(HTTP_remote), - /* K112 */ be_nested_str_weak(set_info), - /* K113 */ be_nested_str_weak(k2l_num), - /* K114 */ be_nested_str_weak(Plugin_Root), - /* K115 */ be_nested_str_weak(MTR_X3A_X20Configuring_X20endpoints), - /* K116 */ be_nested_str_weak(MTR_X3A_X20_X20_X20endpoint_X20_X3D_X20_X255i_X20type_X3A_X25s_X25s), - /* K117 */ be_nested_str_weak(root), - /* K118 */ be_nested_str_weak(Plugin_Aggregator), - /* K119 */ be_nested_str_weak(aggregator), - /* K120 */ be_nested_str_weak(MTR_X3A_X20no_X20class_X20name_X2C_X20skipping), - /* K121 */ be_nested_str_weak(MTR_X3A_X20only_X20one_X20root_X20node_X20allowed), - /* K122 */ be_nested_str_weak(plugins_classes), - /* K123 */ be_nested_str_weak(MTR_X3A_X20unknown_X20class_X20name_X20_X27), - /* K124 */ be_nested_str_weak(_X27_X20skipping), - /* K125 */ be_nested_str_weak(conf_to_log), - /* K126 */ be_nested_str_weak(MTR_X3A_X20Exception), - /* K127 */ be_nested_str_weak(_X7C), - /* K128 */ be_nested_str_weak(publish_result), - /* K129 */ be_nested_str_weak(_X7B_X22Matter_X22_X3A_X7B_X22Initialized_X22_X3A1_X7D_X7D), - /* K130 */ be_nested_str_weak(Matter), - /* K131 */ be_nested_str_weak(remove), - /* K132 */ be_nested_str_weak(DISPLAY_NAME), - /* K133 */ be_nested_str_weak(introspect), - /* K134 */ be_nested_str_weak(get), - /* K135 */ be_nested_str_weak(http_remote), - /* K136 */ be_nested_str_weak(MTR_X3A_X20remove_X20unused_X20remote_X3A_X20), - /* K137 */ be_nested_str_weak(addr), - /* K138 */ be_nested_str_weak(close), - /* K139 */ be_nested_str_weak(MTR_X3A_X20invalid_X20entry_X20with_X20ep_X20_X270_X27), - /* K140 */ be_nested_str_weak(MTR_X3A_X20endpoint_X20_X25s_X20collides_X20wit_X20aggregator_X2C_X20relocating_X20to_X20_X25s), - /* K141 */ be_nested_str_weak(every_second), - /* K142 */ be_nested_str_weak(Path), - /* K143 */ be_nested_str_weak(attribute_updated_ctx), - /* K144 */ be_nested_str_weak(read_sensors_scheduler), - /* K145 */ be_nested_str_weak(every_250ms), - /* K146 */ be_nested_str_weak(PathGenerator), - /* K147 */ be_nested_str_weak(is_direct), - /* K148 */ be_nested_str_weak(next_attribute), - /* K149 */ be_nested_str_weak(get_pi), - /* K150 */ be_nested_str_weak(START_ENDPOINT), - /* K151 */ be_nested_str_weak(light), - /* K152 */ be_nested_str_weak(channels), - /* K153 */ be_nested_str_weak(light1), - /* K154 */ be_nested_str_weak(light2), - /* K155 */ be_nested_str_weak(light3), - /* K156 */ be_nested_str_weak(cmd), - /* K157 */ be_nested_str_weak(Status_X2013), - /* K158 */ be_nested_str_weak(MTR_X3A_X20Status_X2013_X20_X3D_X20), - /* K159 */ be_nested_str_weak(StatusSHT), - /* K160 */ be_nested_str_weak(SHT), - /* K161 */ be_nested_str_weak(MTR_X3A_X20_X27_X25s_X27_X20_X3D_X20_X25s), - /* K162 */ be_nested_str_weak(Relay1), - /* K163 */ be_nested_str_weak(Relay2), - /* K164 */ be_nested_str_weak(MTR_X3A_X20relay1_X3D_X25s_X20relay2_X3D_X25s), - /* K165 */ be_nested_str_weak(TiltConfig), - /* K166 */ be_nested_str_weak(shutter_X2Btilt), - /* K167 */ be_nested_str_weak(shutter), - /* K168 */ be_nested_str_weak(get_power), - /* K169 */ be_nested_str_weak(relay), - /* K170 */ be_nested_str_weak(autoconf_sensors_list), - /* K171 */ be_nested_str_weak(MTR_X3A_X20adding_X20endpoint_X20_X3D_X20_X25i_X20type_X3A_X25s_X25s), - /* K172 */ be_nested_str_weak(signal_endpoints_changed), - /* K173 */ be_nested_str_weak(MtrInfo_one), - /* K174 */ be_nested_str_weak(int), - /* K175 */ be_nested_str_weak(find_plugin_by_friendly_name), - /* K176 */ be_nested_str_weak(resp_cmnd_done), - /* K177 */ be_nested_str_weak(FILENAME), - /* K178 */ be_nested_str_weak(read), - /* K179 */ be_nested_str_weak(root_discriminator), - /* K180 */ be_nested_str_weak(distinguish), - /* K181 */ be_nested_str_weak(root_passcode), - /* K182 */ be_nested_str_weak(passcode), - /* K183 */ be_nested_str_weak(nextep), - /* K184 */ be_nested_str_weak(config), - /* K185 */ be_nested_str_weak(debug), - /* K186 */ be_nested_str_weak(MTR_X3A_X20Load_config_X20_X3D_X20_X25s), - /* K187 */ be_nested_str_weak(check_config_ep), - /* K188 */ be_nested_str_weak(remotes), - /* K189 */ be_nested_str_weak(MTR_X3A_X20load_remotes_X20_X3D_X20), - /* K190 */ be_nested_str_weak(io_error), - /* K191 */ be_nested_str_weak(MTR_X3A_X20load_param_X20Exception_X3A), - /* K192 */ be_nested_str_weak(random), - /* K193 */ be_nested_str_weak(generate_random_passcode), - /* K194 */ be_nested_str_weak(resp_cmnd_str), - /* K195 */ be_nested_str_weak(Invalid_X20JSON), - /* K196 */ be_nested_str_weak(find_key_i), - /* K197 */ be_nested_str_weak(Ep), - /* K198 */ be_nested_str_weak(Name), - /* K199 */ be_nested_str_weak(Invalid_X20_X27Ep_X27_X20attribute), - /* K200 */ be_nested_str_weak(Invalid_X20Device), - /* K201 */ be_nested_str_weak(VIRTUAL), - /* K202 */ be_nested_str_weak(Device_X20is_X20not_X20virtual), - /* K203 */ be_nested_str_weak(consolidate_update_commands), - /* K204 */ be_nested_str_weak(find_list_i), - /* K205 */ be_nested_str_weak(Invalid_X20attribute_X20_X27_X25s_X27), - /* K206 */ be_nested_str_weak(update_virtual), - /* K207 */ be_nested_str_weak(state_json), - /* K208 */ be_nested_str_weak(_X7B_X22_X25s_X22_X3A_X25s_X7D), - /* K209 */ be_nested_str_weak(resp_cmnd), - /* K210 */ be_nested_str_weak(Missing_X20_X27Device_X27_X20attribute), - /* K211 */ be_nested_str_weak(add_cmd), - /* K212 */ be_nested_str_weak(MtrJoin), - /* K213 */ be_nested_str_weak(MtrUpdate), - /* K214 */ be_nested_str_weak(MtrInfo), - /* K215 */ be_nested_str_weak(update_remotes_info), - /* K216 */ be_nested_str_weak(_X7B_X22distinguish_X22_X3A_X25i_X2C_X22passcode_X22_X3A_X25i_X2C_X22ipv4only_X22_X3A_X25s_X2C_X22disable_bridge_mode_X22_X3A_X25s_X2C_X22nextep_X22_X3A_X25i), - /* K217 */ be_nested_str_weak(true), - /* K218 */ be_nested_str_weak(false), - /* K219 */ be_nested_str_weak(_X2C_X22debug_X22_X3Atrue), - /* K220 */ be_nested_str_weak(_X2C_X0A_X22config_X22_X3A), - /* K221 */ be_nested_str_weak(dump), - /* K222 */ be_nested_str_weak(_X2C_X0A_X22remotes_X22_X3A), - /* K223 */ be_nested_str_weak(_X7D), - /* K224 */ be_nested_str_weak(w), - /* K225 */ be_nested_str_weak(write), - /* K226 */ be_nested_str_weak(MTR_X3A_X20_X3DSaved_X20_X20_X20_X20_X20parameters_X25s), - /* K227 */ be_nested_str_weak(_X20and_X20configuration), - /* K228 */ be_nested_str_weak(MTR_X3A_X20Session_Store_X3A_X3Asave_X20Exception_X3A), - /* K229 */ be_nested_str_weak(MTR_X3A_X20Cannot_X20remove_X20an_X20enpoint_X20not_X20configured_X3A_X20), - /* K230 */ be_nested_str_weak(MTR_X3A_X20deleting_X20endpoint_X20_X3D_X20_X25i), - /* K231 */ be_nested_str_weak(clean_remotes), - /* K232 */ be_nested_str_weak(msg_received), - /* K233 */ be_nested_str_weak(invoke_request), - /* K234 */ be_nested_str_weak(time_reached), - /* K235 */ be_nested_str_weak(_trigger_read_sensors), - /* K236 */ be_nested_str_weak(millis), - /* K237 */ be_nested_str_weak(start_root_basic_commissioning), - /* K238 */ be_nested_str_weak(Temperature), - /* K239 */ be_nested_str_weak(_X23Temperature), - /* K240 */ be_nested_str_weak(temperature), - /* K241 */ be_nested_str_weak(filter), - /* K242 */ be_nested_str_weak(Pressure), - /* K243 */ be_nested_str_weak(_X23Pressure), - /* K244 */ be_nested_str_weak(pressure), - /* K245 */ be_nested_str_weak(Illuminance), - /* K246 */ be_nested_str_weak(_X23Illuminance), - /* K247 */ be_nested_str_weak(illuminance), - /* K248 */ be_nested_str_weak(Humidity), - /* K249 */ be_nested_str_weak(_X23Humidity), - /* K250 */ be_nested_str_weak(humidity), - /* K251 */ be_nested_str_weak(_X7B_X22MtrInfo_X22_X3A_X25s_X7D), - /* K252 */ be_nested_str_weak(every_50ms), - /* K253 */ be_nested_str_weak(ARG), - /* K254 */ be_nested_str_weak(get_info), + /* K2 */ be_nested_str_weak(message_handler), + /* K3 */ be_nested_str_weak(msg_received), + /* K4 */ be_nested_str_weak(sessions), + /* K5 */ be_nested_str_weak(count_active_fabrics), + /* K6 */ be_const_int(0), + /* K7 */ be_nested_str_weak(plugins_persist), + /* K8 */ be_nested_str_weak(save_param), + /* K9 */ be_nested_str_weak(commissioning), + /* K10 */ be_nested_str_weak(stop_basic_commissioning), + /* K11 */ be_nested_str_weak(mdns_remove_op_discovery_all_fabrics), + /* K12 */ be_const_class(be_class_Matter_Device), + /* K13 */ be_nested_str_weak(), + /* K14 */ be_nested_str_weak(k2l), + /* K15 */ be_nested_str_weak(type), + /* K16 */ be_nested_str_weak(_X20_X25s_X3A_X25s), + /* K17 */ be_nested_str_weak(stop_iteration), + /* K18 */ be_nested_str_weak(plugins), + /* K19 */ be_nested_str_weak(get_name), + /* K20 */ be_const_int(1), + /* K21 */ be_nested_str_weak(plugins_config_remotes), + /* K22 */ be_nested_str_weak(find), + /* K23 */ be_nested_str_weak(log), + /* K24 */ be_nested_str_weak(MTR_X3A_X20removing_X20fabric_X20), + /* K25 */ be_nested_str_weak(get_fabric_id), + /* K26 */ be_nested_str_weak(copy), + /* K27 */ be_nested_str_weak(reverse), + /* K28 */ be_nested_str_weak(tohex), + /* K29 */ be_const_int(2), + /* K30 */ be_nested_str_weak(im), + /* K31 */ be_nested_str_weak(subs_shop), + /* K32 */ be_nested_str_weak(remove_by_fabric), + /* K33 */ be_nested_str_weak(mdns_remove_op_discovery), + /* K34 */ be_nested_str_weak(remove_fabric), + /* K35 */ be_nested_str_weak(save_fabrics), + /* K36 */ be_nested_str_weak(endpoint), + /* K37 */ be_nested_str_weak(cluster), + /* K38 */ be_nested_str_weak(attribute), + /* K39 */ be_nested_str_weak(find_plugin_by_endpoint), + /* K40 */ be_nested_str_weak(status), + /* K41 */ be_nested_str_weak(matter), + /* K42 */ be_nested_str_weak(UNSUPPORTED_ENDPOINT), + /* K43 */ be_nested_str_weak(contains_cluster), + /* K44 */ be_nested_str_weak(UNSUPPORTED_CLUSTER), + /* K45 */ be_nested_str_weak(contains_attribute), + /* K46 */ be_nested_str_weak(UNSUPPORTED_ATTRIBUTE), + /* K47 */ be_nested_str_weak(attribute_updated), + /* K48 */ be_const_int(3), + /* K49 */ be_nested_str_weak(AGGREGATOR_ENDPOINT), + /* K50 */ be_nested_str_weak(json), + /* K51 */ be_nested_str_weak(autoconf), + /* K52 */ be_nested_str_weak(Autoconf), + /* K53 */ be_nested_str_weak(plugins_config), + /* K54 */ be_nested_str_weak(autoconf_device_map), + /* K55 */ be_nested_str_weak(adjust_next_ep), + /* K56 */ be_nested_str_weak(MTR_X3A_X20autoconfig_X20_X3D_X20), + /* K57 */ be_nested_str_weak(instantiate_plugins_from_config), + /* K58 */ be_nested_str_weak(tasmota), + /* K59 */ be_nested_str_weak(read_sensors), + /* K60 */ be_nested_str_weak(loglevel), + /* K61 */ be_nested_str_weak(MTR_X3A_X20read_sensors_X3A_X20), + /* K62 */ be_nested_str_weak(load), + /* K63 */ be_nested_str_weak(parse_sensors), + /* K64 */ be_nested_str_weak(MTR_X3A_X20unable_X20to_X20parse_X20read_sensors_X3A_X20), + /* K65 */ be_nested_str_weak(get_endpoint), + /* K66 */ be_nested_str_weak(push), + /* K67 */ be_nested_str_weak(send_UDP), + /* K68 */ be_nested_str_weak(remove_driver), + /* K69 */ be_nested_str_weak(stop), + /* K70 */ be_nested_str_weak(keys), + /* K71 */ be_nested_str_weak(next_ep), + /* K72 */ be_nested_str_weak(probe_sensor_time), + /* K73 */ be_nested_str_weak(probe_sensor_timestamp), + /* K74 */ be_nested_str_weak(jitter), + /* K75 */ be_nested_str_weak(button_handler), + /* K76 */ be_nested_str_weak(started), + /* K77 */ be_nested_str_weak(autoconf_device), + /* K78 */ be_nested_str_weak(_start_udp), + /* K79 */ be_nested_str_weak(UDP_PORT), + /* K80 */ be_nested_str_weak(start_mdns_announce_hostnames), + /* K81 */ be_nested_str_weak(plugins_classes), + /* K82 */ be_nested_str_weak(DISPLAY_NAME), + /* K83 */ be_nested_str_weak(remove), + /* K84 */ be_nested_str_weak(MTR_X3A_X20invalid_X20entry_X20with_X20ep_X20_X270_X27), + /* K85 */ be_nested_str_weak(MTR_X3A_X20endpoint_X20_X25s_X20collides_X20wit_X20aggregator_X2C_X20relocating_X20to_X20_X25s), + /* K86 */ be_nested_str_weak(introspect), + /* K87 */ be_nested_str_weak(contains), + /* K88 */ be_nested_str_weak(crypto), + /* K89 */ be_nested_str_weak(get_option), + /* K90 */ be_nested_str_weak(MATTER_OPTION), + /* K91 */ be_nested_str_weak(UI), + /* K92 */ be_nested_str_weak(profiler), + /* K93 */ be_nested_str_weak(Profiler), + /* K94 */ be_nested_str_weak(tick), + /* K95 */ be_nested_str_weak(EP), + /* K96 */ be_nested_str_weak(ipv4only), + /* K97 */ be_nested_str_weak(disable_bridge_mode), + /* K98 */ be_nested_str_weak(Commissioning), + /* K99 */ be_nested_str_weak(load_param), + /* K100 */ be_nested_str_weak(Session_Store), + /* K101 */ be_nested_str_weak(load_fabrics), + /* K102 */ be_nested_str_weak(MessageHandler), + /* K103 */ be_nested_str_weak(events), + /* K104 */ be_nested_str_weak(EventHandler), + /* K105 */ be_nested_str_weak(ui), + /* K106 */ be_nested_str_weak(wifi), + /* K107 */ be_nested_str_weak(up), + /* K108 */ be_nested_str_weak(eth), + /* K109 */ be_nested_str_weak(start), + /* K110 */ be_nested_str_weak(add_rule), + /* K111 */ be_nested_str_weak(Wifi_X23Connected), + /* K112 */ be_nested_str_weak(matter_start), + /* K113 */ be_nested_str_weak(Eth_X23Connected), + /* K114 */ be_nested_str_weak(init_basic_commissioning), + /* K115 */ be_nested_str_weak(add_driver), + /* K116 */ be_nested_str_weak(register_commands), + /* K117 */ be_nested_str_weak(every_second), + /* K118 */ be_nested_str_weak(http_remotes), + /* K119 */ be_nested_str_weak(get), + /* K120 */ be_nested_str_weak(http_remote), + /* K121 */ be_nested_str_weak(MTR_X3A_X20remove_X20unused_X20remote_X3A_X20), + /* K122 */ be_nested_str_weak(addr), + /* K123 */ be_nested_str_weak(close), + /* K124 */ be_nested_str_weak(read_sensors_scheduler), + /* K125 */ be_nested_str_weak(every_250ms), + /* K126 */ be_nested_str_weak(PathGenerator), + /* K127 */ be_nested_str_weak(is_direct), + /* K128 */ be_nested_str_weak(next_attribute), + /* K129 */ be_nested_str_weak(get_pi), + /* K130 */ be_nested_str_weak(Path), + /* K131 */ be_nested_str_weak(attribute_updated_ctx), + /* K132 */ be_nested_str_weak(MTR_X3A_X20unknown_X20class_X20name_X20_X27), + /* K133 */ be_nested_str_weak(_X27_X20skipping), + /* K134 */ be_nested_str_weak(MTR_X3A_X20adding_X20endpoint_X20_X3D_X20_X25i_X20type_X3A_X25s_X25s), + /* K135 */ be_nested_str_weak(conf_to_log), + /* K136 */ be_nested_str_weak(signal_endpoints_changed), + /* K137 */ be_nested_str_weak(MtrInfo_one), + /* K138 */ be_nested_str_weak(int), + /* K139 */ be_nested_str_weak(find_plugin_by_friendly_name), + /* K140 */ be_nested_str_weak(resp_cmnd_done), + /* K141 */ be_nested_str_weak(MTR_X3A_X20Starting_X20UDP_X20server_X20on_X20port_X3A_X20), + /* K142 */ be_nested_str_weak(UDPServer), + /* K143 */ be_nested_str_weak(FILENAME), + /* K144 */ be_nested_str_weak(read), + /* K145 */ be_nested_str_weak(root_discriminator), + /* K146 */ be_nested_str_weak(distinguish), + /* K147 */ be_nested_str_weak(root_passcode), + /* K148 */ be_nested_str_weak(passcode), + /* K149 */ be_nested_str_weak(nextep), + /* K150 */ be_nested_str_weak(config), + /* K151 */ be_nested_str_weak(debug), + /* K152 */ be_nested_str_weak(MTR_X3A_X20Load_config_X20_X3D_X20_X25s), + /* K153 */ be_nested_str_weak(check_config_ep), + /* K154 */ be_nested_str_weak(remotes), + /* K155 */ be_nested_str_weak(MTR_X3A_X20load_remotes_X20_X3D_X20), + /* K156 */ be_nested_str_weak(io_error), + /* K157 */ be_nested_str_weak(MTR_X3A_X20load_param_X20Exception_X3A), + /* K158 */ be_nested_str_weak(_X7C), + /* K159 */ be_nested_str_weak(random), + /* K160 */ be_nested_str_weak(generate_random_passcode), + /* K161 */ be_nested_str_weak(every_50ms), + /* K162 */ be_nested_str_weak(add_cmd), + /* K163 */ be_nested_str_weak(MtrJoin), + /* K164 */ be_nested_str_weak(MtrUpdate), + /* K165 */ be_nested_str_weak(MtrInfo), + /* K166 */ be_nested_str_weak(update_remotes_info), + /* K167 */ be_nested_str_weak(_X7B_X22distinguish_X22_X3A_X25i_X2C_X22passcode_X22_X3A_X25i_X2C_X22ipv4only_X22_X3A_X25s_X2C_X22disable_bridge_mode_X22_X3A_X25s_X2C_X22nextep_X22_X3A_X25i), + /* K168 */ be_nested_str_weak(true), + /* K169 */ be_nested_str_weak(false), + /* K170 */ be_nested_str_weak(_X2C_X22debug_X22_X3Atrue), + /* K171 */ be_nested_str_weak(_X2C_X0A_X22config_X22_X3A), + /* K172 */ be_nested_str_weak(dump), + /* K173 */ be_nested_str_weak(_X2C_X0A_X22remotes_X22_X3A), + /* K174 */ be_nested_str_weak(_X7D), + /* K175 */ be_nested_str_weak(w), + /* K176 */ be_nested_str_weak(write), + /* K177 */ be_nested_str_weak(MTR_X3A_X20_X3DSaved_X20_X20_X20_X20_X20parameters_X25s), + /* K178 */ be_nested_str_weak(_X20and_X20configuration), + /* K179 */ be_nested_str_weak(MTR_X3A_X20Session_Store_X3A_X3Asave_X20Exception_X3A), + /* K180 */ be_nested_str_weak(MTR_X3A_X20Cannot_X20remove_X20an_X20enpoint_X20not_X20configured_X3A_X20), + /* K181 */ be_nested_str_weak(MTR_X3A_X20deleting_X20endpoint_X20_X3D_X20_X25i), + /* K182 */ be_nested_str_weak(clean_remotes), + /* K183 */ be_nested_str_weak(invoke_request), + /* K184 */ be_nested_str_weak(time_reached), + /* K185 */ be_nested_str_weak(_trigger_read_sensors), + /* K186 */ be_nested_str_weak(millis), + /* K187 */ be_nested_str_weak(get_timeout), + /* K188 */ be_nested_str_weak(set_timeout), + /* K189 */ be_nested_str_weak(HTTP_remote), + /* K190 */ be_nested_str_weak(set_info), + /* K191 */ be_nested_str_weak(resp_cmnd_str), + /* K192 */ be_nested_str_weak(Invalid_X20JSON), + /* K193 */ be_nested_str_weak(find_key_i), + /* K194 */ be_nested_str_weak(Ep), + /* K195 */ be_nested_str_weak(Name), + /* K196 */ be_nested_str_weak(Invalid_X20_X27Ep_X27_X20attribute), + /* K197 */ be_nested_str_weak(Invalid_X20Device), + /* K198 */ be_nested_str_weak(VIRTUAL), + /* K199 */ be_nested_str_weak(Device_X20is_X20not_X20virtual), + /* K200 */ be_nested_str_weak(consolidate_update_commands), + /* K201 */ be_nested_str_weak(find_list_i), + /* K202 */ be_nested_str_weak(Invalid_X20attribute_X20_X27_X25s_X27), + /* K203 */ be_nested_str_weak(update_virtual), + /* K204 */ be_nested_str_weak(state_json), + /* K205 */ be_nested_str_weak(_X7B_X22_X25s_X22_X3A_X25s_X7D), + /* K206 */ be_nested_str_weak(resp_cmnd), + /* K207 */ be_nested_str_weak(Missing_X20_X27Device_X27_X20attribute), + /* K208 */ be_nested_str_weak(_X7B_X22MtrInfo_X22_X3A_X25s_X7D), + /* K209 */ be_nested_str_weak(publish_result), + /* K210 */ be_nested_str_weak(start_root_basic_commissioning), + /* K211 */ be_nested_str_weak(ARG), + /* K212 */ be_nested_str_weak(get_info), }; @@ -295,12 +253,12 @@ be_local_closure(class_Matter_Device_received_ack, /* name */ /******************************************************************** -** Solidified function: start +** Solidified function: msg_received ********************************************************************/ -be_local_closure(class_Matter_Device_start, /* name */ +be_local_closure(class_Matter_Device_msg_received, /* name */ be_nested_proto( - 4, /* nstack */ - 1, /* argc */ + 9, /* nstack */ + 4, /* argc */ 10, /* varg */ 0, /* has upvals */ NULL, /* no upvals */ @@ -308,23 +266,16 @@ be_local_closure(class_Matter_Device_start, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(start), + be_str_weak(msg_received), &be_const_str_solidified, - ( &(const binstruction[14]) { /* code */ - 0x88040102, // 0000 GETMBR R1 R0 K2 - 0x78060000, // 0001 JMPF R1 #0003 - 0x80000200, // 0002 RET 0 - 0x8C040103, // 0003 GETMET R1 R0 K3 - 0x7C040200, // 0004 CALL R1 1 - 0x8C040104, // 0005 GETMET R1 R0 K4 - 0x880C0105, // 0006 GETMBR R3 R0 K5 - 0x7C040400, // 0007 CALL R1 2 - 0x88040106, // 0008 GETMBR R1 R0 K6 - 0x8C040307, // 0009 GETMET R1 R1 K7 - 0x7C040200, // 000A CALL R1 1 - 0x50040200, // 000B LDBOOL R1 1 0 - 0x90020401, // 000C SETMBR R0 K2 R1 - 0x80000000, // 000D RET 0 + ( &(const binstruction[ 7]) { /* code */ + 0x88100102, // 0000 GETMBR R4 R0 K2 + 0x8C100903, // 0001 GETMET R4 R4 K3 + 0x5C180200, // 0002 MOVE R6 R1 + 0x5C1C0400, // 0003 MOVE R7 R2 + 0x5C200600, // 0004 MOVE R8 R3 + 0x7C100800, // 0005 CALL R4 4 + 0x80040800, // 0006 RET 1 R4 }) ) ); @@ -348,16 +299,16 @@ be_local_closure(class_Matter_Device_event_fabrics_saved, /* name */ be_str_weak(event_fabrics_saved), &be_const_str_solidified, ( &(const binstruction[12]) { /* code */ - 0x88040108, // 0000 GETMBR R1 R0 K8 - 0x8C040309, // 0001 GETMET R1 R1 K9 + 0x88040104, // 0000 GETMBR R1 R0 K4 + 0x8C040305, // 0001 GETMET R1 R1 K5 0x7C040200, // 0002 CALL R1 1 - 0x2404030A, // 0003 GT R1 R1 K10 + 0x24040306, // 0003 GT R1 R1 K6 0x78060005, // 0004 JMPF R1 #000B - 0x8804010B, // 0005 GETMBR R1 R0 K11 + 0x88040107, // 0005 GETMBR R1 R0 K7 0x74060003, // 0006 JMPT R1 #000B 0x50040200, // 0007 LDBOOL R1 1 0 - 0x90021601, // 0008 SETMBR R0 K11 R1 - 0x8C04010C, // 0009 GETMET R1 R0 K12 + 0x90020E01, // 0008 SETMBR R0 K7 R1 + 0x8C040108, // 0009 GETMET R1 R0 K8 0x7C040200, // 000A CALL R1 1 0x80000000, // 000B RET 0 }) @@ -382,12 +333,14 @@ be_local_closure(class_Matter_Device_save_before_restart, /* name */ &be_ktab_class_Matter_Device, /* shared constants */ be_str_weak(save_before_restart), &be_const_str_solidified, - ( &(const binstruction[ 5]) { /* code */ - 0x8C04010D, // 0000 GETMET R1 R0 K13 - 0x7C040200, // 0001 CALL R1 1 - 0x8C04010E, // 0002 GETMET R1 R0 K14 - 0x7C040200, // 0003 CALL R1 1 - 0x80000000, // 0004 RET 0 + ( &(const binstruction[ 7]) { /* code */ + 0x88040109, // 0000 GETMBR R1 R0 K9 + 0x8C04030A, // 0001 GETMET R1 R1 K10 + 0x7C040200, // 0002 CALL R1 1 + 0x88040109, // 0003 GETMBR R1 R0 K9 + 0x8C04030B, // 0004 GETMET R1 R1 K11 + 0x7C040200, // 0005 CALL R1 1 + 0x80000000, // 0006 RET 0 }) ) ); @@ -411,27 +364,27 @@ be_local_closure(class_Matter_Device_conf_to_log, /* name */ be_str_weak(conf_to_log), &be_const_str_solidified, ( &(const binstruction[24]) { /* code */ - 0x5804000F, // 0000 LDCONST R1 K15 - 0x58080010, // 0001 LDCONST R2 K16 + 0x5804000C, // 0000 LDCONST R1 K12 + 0x5808000D, // 0001 LDCONST R2 K13 0x600C0010, // 0002 GETGBL R3 G16 - 0x8C100311, // 0003 GETMET R4 R1 K17 + 0x8C10030E, // 0003 GETMET R4 R1 K14 0x5C180000, // 0004 MOVE R6 R0 0x7C100400, // 0005 CALL R4 2 0x7C0C0200, // 0006 CALL R3 1 0xA802000B, // 0007 EXBLK 0 #0014 0x5C100600, // 0008 MOVE R4 R3 0x7C100000, // 0009 CALL R4 0 - 0x1C140912, // 000A EQ R5 R4 K18 + 0x1C14090F, // 000A EQ R5 R4 K15 0x78160000, // 000B JMPF R5 #000D 0x7001FFFA, // 000C JMP #0008 0x60140018, // 000D GETGBL R5 G24 - 0x58180013, // 000E LDCONST R6 K19 + 0x58180010, // 000E LDCONST R6 K16 0x5C1C0800, // 000F MOVE R7 R4 0x94200004, // 0010 GETIDX R8 R0 R4 0x7C140600, // 0011 CALL R5 3 0x00080405, // 0012 ADD R2 R2 R5 0x7001FFF3, // 0013 JMP #0008 - 0x580C0014, // 0014 LDCONST R3 K20 + 0x580C0011, // 0014 LDCONST R3 K17 0xAC0C0200, // 0015 CATCH R3 1 0 0xB0080000, // 0016 RAISE 2 R0 R0 0x80040400, // 0017 RET 1 R2 @@ -441,6 +394,978 @@ be_local_closure(class_Matter_Device_conf_to_log, /* name */ /*******************************************************************/ +/******************************************************************** +** Solidified function: find_plugin_by_friendly_name +********************************************************************/ +be_local_closure(class_Matter_Device_find_plugin_by_friendly_name, /* name */ + be_nested_proto( + 7, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(find_plugin_by_friendly_name), + &be_const_str_solidified, + ( &(const binstruction[35]) { /* code */ + 0x4C080000, // 0000 LDNIL R2 + 0x1C080202, // 0001 EQ R2 R1 R2 + 0x740A0004, // 0002 JMPT R2 #0008 + 0x6008000C, // 0003 GETGBL R2 G12 + 0x5C0C0200, // 0004 MOVE R3 R1 + 0x7C080200, // 0005 CALL R2 1 + 0x1C080506, // 0006 EQ R2 R2 K6 + 0x780A0001, // 0007 JMPF R2 #000A + 0x4C080000, // 0008 LDNIL R2 + 0x80040400, // 0009 RET 1 R2 + 0x58080006, // 000A LDCONST R2 K6 + 0x600C000C, // 000B GETGBL R3 G12 + 0x88100112, // 000C GETMBR R4 R0 K18 + 0x7C0C0200, // 000D CALL R3 1 + 0x140C0403, // 000E LT R3 R2 R3 + 0x780E0010, // 000F JMPF R3 #0021 + 0x880C0112, // 0010 GETMBR R3 R0 K18 + 0x940C0602, // 0011 GETIDX R3 R3 R2 + 0x8C100713, // 0012 GETMET R4 R3 K19 + 0x7C100200, // 0013 CALL R4 1 + 0x4C140000, // 0014 LDNIL R5 + 0x20140805, // 0015 NE R5 R4 R5 + 0x78160007, // 0016 JMPF R5 #001F + 0x6014000C, // 0017 GETGBL R5 G12 + 0x5C180800, // 0018 MOVE R6 R4 + 0x7C140200, // 0019 CALL R5 1 + 0x24140B06, // 001A GT R5 R5 K6 + 0x78160002, // 001B JMPF R5 #001F + 0x1C140801, // 001C EQ R5 R4 R1 + 0x78160000, // 001D JMPF R5 #001F + 0x80040600, // 001E RET 1 R3 + 0x00080514, // 001F ADD R2 R2 K20 + 0x7001FFE9, // 0020 JMP #000B + 0x4C0C0000, // 0021 LDNIL R3 + 0x80040600, // 0022 RET 1 R3 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: get_plugin_remote_info +********************************************************************/ +be_local_closure(class_Matter_Device_get_plugin_remote_info, /* name */ + be_nested_proto( + 6, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(get_plugin_remote_info), + &be_const_str_solidified, + ( &(const binstruction[ 7]) { /* code */ + 0x88080115, // 0000 GETMBR R2 R0 K21 + 0x8C080516, // 0001 GETMET R2 R2 K22 + 0x5C100200, // 0002 MOVE R4 R1 + 0x60140013, // 0003 GETGBL R5 G19 + 0x7C140000, // 0004 CALL R5 0 + 0x7C080600, // 0005 CALL R2 3 + 0x80040400, // 0006 RET 1 R2 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: remove_fabric +********************************************************************/ +be_local_closure(class_Matter_Device_remove_fabric, /* name */ + be_nested_proto( + 5, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(remove_fabric), + &be_const_str_solidified, + ( &(const binstruction[33]) { /* code */ + 0x4C080000, // 0000 LDNIL R2 + 0x20080202, // 0001 NE R2 R1 R2 + 0x780A0019, // 0002 JMPF R2 #001D + 0xB80A2E00, // 0003 GETNGBL R2 K23 + 0x8C0C0319, // 0004 GETMET R3 R1 K25 + 0x7C0C0200, // 0005 CALL R3 1 + 0x8C0C071A, // 0006 GETMET R3 R3 K26 + 0x7C0C0200, // 0007 CALL R3 1 + 0x8C0C071B, // 0008 GETMET R3 R3 K27 + 0x7C0C0200, // 0009 CALL R3 1 + 0x8C0C071C, // 000A GETMET R3 R3 K28 + 0x7C0C0200, // 000B CALL R3 1 + 0x000E3003, // 000C ADD R3 K24 R3 + 0x5810001D, // 000D LDCONST R4 K29 + 0x7C080400, // 000E CALL R2 2 + 0x88080102, // 000F GETMBR R2 R0 K2 + 0x8808051E, // 0010 GETMBR R2 R2 K30 + 0x8808051F, // 0011 GETMBR R2 R2 K31 + 0x8C080520, // 0012 GETMET R2 R2 K32 + 0x5C100200, // 0013 MOVE R4 R1 + 0x7C080400, // 0014 CALL R2 2 + 0x88080109, // 0015 GETMBR R2 R0 K9 + 0x8C080521, // 0016 GETMET R2 R2 K33 + 0x5C100200, // 0017 MOVE R4 R1 + 0x7C080400, // 0018 CALL R2 2 + 0x88080104, // 0019 GETMBR R2 R0 K4 + 0x8C080522, // 001A GETMET R2 R2 K34 + 0x5C100200, // 001B MOVE R4 R1 + 0x7C080400, // 001C CALL R2 2 + 0x88080104, // 001D GETMBR R2 R0 K4 + 0x8C080523, // 001E GETMET R2 R2 K35 + 0x7C080200, // 001F CALL R2 1 + 0x80000000, // 0020 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: resolve_attribute_read_solo +********************************************************************/ +be_local_closure(class_Matter_Device_resolve_attribute_read_solo, /* name */ + be_nested_proto( + 10, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(resolve_attribute_read_solo), + &be_const_str_solidified, + ( &(const binstruction[47]) { /* code */ + 0x88080324, // 0000 GETMBR R2 R1 K36 + 0x880C0325, // 0001 GETMBR R3 R1 K37 + 0x88100326, // 0002 GETMBR R4 R1 K38 + 0x4C140000, // 0003 LDNIL R5 + 0x1C140405, // 0004 EQ R5 R2 R5 + 0x74160005, // 0005 JMPT R5 #000C + 0x4C140000, // 0006 LDNIL R5 + 0x1C140605, // 0007 EQ R5 R3 R5 + 0x74160002, // 0008 JMPT R5 #000C + 0x4C140000, // 0009 LDNIL R5 + 0x1C140805, // 000A EQ R5 R4 R5 + 0x78160001, // 000B JMPF R5 #000E + 0x4C140000, // 000C LDNIL R5 + 0x80040A00, // 000D RET 1 R5 + 0x8C140127, // 000E GETMET R5 R0 K39 + 0x5C1C0400, // 000F MOVE R7 R2 + 0x7C140400, // 0010 CALL R5 2 + 0x4C180000, // 0011 LDNIL R6 + 0x1C180A06, // 0012 EQ R6 R5 R6 + 0x781A0005, // 0013 JMPF R6 #001A + 0xB81A5200, // 0014 GETNGBL R6 K41 + 0x88180D2A, // 0015 GETMBR R6 R6 K42 + 0x90065006, // 0016 SETMBR R1 K40 R6 + 0x4C180000, // 0017 LDNIL R6 + 0x80040C00, // 0018 RET 1 R6 + 0x70020013, // 0019 JMP #002E + 0x8C180B2B, // 001A GETMET R6 R5 K43 + 0x5C200600, // 001B MOVE R8 R3 + 0x7C180400, // 001C CALL R6 2 + 0x741A0005, // 001D JMPT R6 #0024 + 0xB81A5200, // 001E GETNGBL R6 K41 + 0x88180D2C, // 001F GETMBR R6 R6 K44 + 0x90065006, // 0020 SETMBR R1 K40 R6 + 0x4C180000, // 0021 LDNIL R6 + 0x80040C00, // 0022 RET 1 R6 + 0x70020009, // 0023 JMP #002E + 0x8C180B2D, // 0024 GETMET R6 R5 K45 + 0x5C200600, // 0025 MOVE R8 R3 + 0x5C240800, // 0026 MOVE R9 R4 + 0x7C180600, // 0027 CALL R6 3 + 0x741A0004, // 0028 JMPT R6 #002E + 0xB81A5200, // 0029 GETNGBL R6 K41 + 0x88180D2E, // 002A GETMBR R6 R6 K46 + 0x90065006, // 002B SETMBR R1 K40 R6 + 0x4C180000, // 002C LDNIL R6 + 0x80040C00, // 002D RET 1 R6 + 0x80040A00, // 002E RET 1 R5 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: signal_endpoints_changed +********************************************************************/ +be_local_closure(class_Matter_Device_signal_endpoints_changed, /* name */ + be_nested_proto( + 7, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(signal_endpoints_changed), + &be_const_str_solidified, + ( &(const binstruction[14]) { /* code */ + 0x8C04012F, // 0000 GETMET R1 R0 K47 + 0x580C0006, // 0001 LDCONST R3 K6 + 0x5412001C, // 0002 LDINT R4 29 + 0x58140030, // 0003 LDCONST R5 K48 + 0x50180000, // 0004 LDBOOL R6 0 0 + 0x7C040A00, // 0005 CALL R1 5 + 0x8C04012F, // 0006 GETMET R1 R0 K47 + 0xB80E5200, // 0007 GETNGBL R3 K41 + 0x880C0731, // 0008 GETMBR R3 R3 K49 + 0x5412001C, // 0009 LDINT R4 29 + 0x58140030, // 000A LDCONST R5 K48 + 0x50180000, // 000B LDBOOL R6 0 0 + 0x7C040A00, // 000C CALL R1 5 + 0x80000000, // 000D RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: autoconf_device +********************************************************************/ +be_local_closure(class_Matter_Device_autoconf_device, /* name */ + be_nested_proto( + 5, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(autoconf_device), + &be_const_str_solidified, + ( &(const binstruction[50]) { /* code */ + 0xA4066400, // 0000 IMPORT R1 K50 + 0x6008000C, // 0001 GETGBL R2 G12 + 0x880C0112, // 0002 GETMBR R3 R0 K18 + 0x7C080200, // 0003 CALL R2 1 + 0x24080506, // 0004 GT R2 R2 K6 + 0x780A0000, // 0005 JMPF R2 #0007 + 0x80000400, // 0006 RET 0 + 0x88080133, // 0007 GETMBR R2 R0 K51 + 0x4C0C0000, // 0008 LDNIL R3 + 0x1C080403, // 0009 EQ R2 R2 R3 + 0x780A0004, // 000A JMPF R2 #0010 + 0xB80A5200, // 000B GETNGBL R2 K41 + 0x8C080534, // 000C GETMET R2 R2 K52 + 0x5C100000, // 000D MOVE R4 R0 + 0x7C080400, // 000E CALL R2 2 + 0x90026602, // 000F SETMBR R0 K51 R2 + 0x88080107, // 0010 GETMBR R2 R0 K7 + 0x740A000F, // 0011 JMPT R2 #0022 + 0x88080133, // 0012 GETMBR R2 R0 K51 + 0x8C080536, // 0013 GETMET R2 R2 K54 + 0x7C080200, // 0014 CALL R2 1 + 0x90026A02, // 0015 SETMBR R0 K53 R2 + 0x60080013, // 0016 GETGBL R2 G19 + 0x7C080000, // 0017 CALL R2 0 + 0x90022A02, // 0018 SETMBR R0 K21 R2 + 0x8C080137, // 0019 GETMET R2 R0 K55 + 0x7C080200, // 001A CALL R2 1 + 0xB80A2E00, // 001B GETNGBL R2 K23 + 0x600C0008, // 001C GETGBL R3 G8 + 0x88100135, // 001D GETMBR R4 R0 K53 + 0x7C0C0200, // 001E CALL R3 1 + 0x000E7003, // 001F ADD R3 K56 R3 + 0x58100030, // 0020 LDCONST R4 K48 + 0x7C080400, // 0021 CALL R2 2 + 0x88080133, // 0022 GETMBR R2 R0 K51 + 0x8C080539, // 0023 GETMET R2 R2 K57 + 0x88100135, // 0024 GETMBR R4 R0 K53 + 0x7C080400, // 0025 CALL R2 2 + 0x88080107, // 0026 GETMBR R2 R0 K7 + 0x740A0008, // 0027 JMPT R2 #0031 + 0x88080104, // 0028 GETMBR R2 R0 K4 + 0x8C080505, // 0029 GETMET R2 R2 K5 + 0x7C080200, // 002A CALL R2 1 + 0x24080506, // 002B GT R2 R2 K6 + 0x780A0003, // 002C JMPF R2 #0031 + 0x50080200, // 002D LDBOOL R2 1 0 + 0x90020E02, // 002E SETMBR R0 K7 R2 + 0x8C080108, // 002F GETMET R2 R0 K8 + 0x7C080200, // 0030 CALL R2 1 + 0x80000000, // 0031 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: _trigger_read_sensors +********************************************************************/ +be_local_closure(class_Matter_Device__trigger_read_sensors, /* name */ + be_nested_proto( + 8, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(_trigger_read_sensors), + &be_const_str_solidified, + ( &(const binstruction[48]) { /* code */ + 0xA4066400, // 0000 IMPORT R1 K50 + 0xB80A7400, // 0001 GETNGBL R2 K58 + 0x8C08053B, // 0002 GETMET R2 R2 K59 + 0x7C080200, // 0003 CALL R2 1 + 0xB80E7400, // 0004 GETNGBL R3 K58 + 0x8C0C073C, // 0005 GETMET R3 R3 K60 + 0x58140030, // 0006 LDCONST R5 K48 + 0x7C0C0400, // 0007 CALL R3 2 + 0x780E0006, // 0008 JMPF R3 #0010 + 0xB80E2E00, // 0009 GETNGBL R3 K23 + 0x60100008, // 000A GETGBL R4 G8 + 0x5C140400, // 000B MOVE R5 R2 + 0x7C100200, // 000C CALL R4 1 + 0x00127A04, // 000D ADD R4 K61 R4 + 0x58140030, // 000E LDCONST R5 K48 + 0x7C0C0400, // 000F CALL R3 2 + 0x4C0C0000, // 0010 LDNIL R3 + 0x1C0C0403, // 0011 EQ R3 R2 R3 + 0x780E0000, // 0012 JMPF R3 #0014 + 0x80000600, // 0013 RET 0 + 0x8C0C033E, // 0014 GETMET R3 R1 K62 + 0x5C140400, // 0015 MOVE R5 R2 + 0x7C0C0400, // 0016 CALL R3 2 + 0x4C100000, // 0017 LDNIL R4 + 0x20100604, // 0018 NE R4 R3 R4 + 0x7812000D, // 0019 JMPF R4 #0028 + 0x58100006, // 001A LDCONST R4 K6 + 0x6014000C, // 001B GETGBL R5 G12 + 0x88180112, // 001C GETMBR R6 R0 K18 + 0x7C140200, // 001D CALL R5 1 + 0x14140805, // 001E LT R5 R4 R5 + 0x78160006, // 001F JMPF R5 #0027 + 0x88140112, // 0020 GETMBR R5 R0 K18 + 0x94140A04, // 0021 GETIDX R5 R5 R4 + 0x8C140B3F, // 0022 GETMET R5 R5 K63 + 0x5C1C0600, // 0023 MOVE R7 R3 + 0x7C140400, // 0024 CALL R5 2 + 0x00100914, // 0025 ADD R4 R4 K20 + 0x7001FFF3, // 0026 JMP #001B + 0x70020006, // 0027 JMP #002F + 0xB8122E00, // 0028 GETNGBL R4 K23 + 0x60140008, // 0029 GETGBL R5 G8 + 0x5C180400, // 002A MOVE R6 R2 + 0x7C140200, // 002B CALL R5 1 + 0x00168005, // 002C ADD R5 K64 R5 + 0x58180030, // 002D LDCONST R6 K48 + 0x7C100400, // 002E CALL R4 2 + 0x80000000, // 002F RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: get_active_endpoints +********************************************************************/ +be_local_closure(class_Matter_Device_get_active_endpoints, /* name */ + be_nested_proto( + 9, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(get_active_endpoints), + &be_const_str_solidified, + ( &(const binstruction[28]) { /* code */ + 0x60080012, // 0000 GETGBL R2 G18 + 0x7C080000, // 0001 CALL R2 0 + 0x600C0010, // 0002 GETGBL R3 G16 + 0x88100112, // 0003 GETMBR R4 R0 K18 + 0x7C0C0200, // 0004 CALL R3 1 + 0xA8020011, // 0005 EXBLK 0 #0018 + 0x5C100600, // 0006 MOVE R4 R3 + 0x7C100000, // 0007 CALL R4 0 + 0x8C140941, // 0008 GETMET R5 R4 K65 + 0x7C140200, // 0009 CALL R5 1 + 0x78060002, // 000A JMPF R1 #000E + 0x1C180B06, // 000B EQ R6 R5 K6 + 0x781A0000, // 000C JMPF R6 #000E + 0x7001FFF7, // 000D JMP #0006 + 0x8C180516, // 000E GETMET R6 R2 K22 + 0x5C200A00, // 000F MOVE R8 R5 + 0x7C180400, // 0010 CALL R6 2 + 0x4C1C0000, // 0011 LDNIL R7 + 0x1C180C07, // 0012 EQ R6 R6 R7 + 0x781A0002, // 0013 JMPF R6 #0017 + 0x8C180542, // 0014 GETMET R6 R2 K66 + 0x5C200A00, // 0015 MOVE R8 R5 + 0x7C180400, // 0016 CALL R6 2 + 0x7001FFED, // 0017 JMP #0006 + 0x580C0011, // 0018 LDCONST R3 K17 + 0xAC0C0200, // 0019 CATCH R3 1 0 + 0xB0080000, // 001A RAISE 2 R0 R0 + 0x80040400, // 001B RET 1 R2 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: msg_send +********************************************************************/ +be_local_closure(class_Matter_Device_msg_send, /* name */ + be_nested_proto( + 5, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(msg_send), + &be_const_str_solidified, + ( &(const binstruction[ 5]) { /* code */ + 0x88080100, // 0000 GETMBR R2 R0 K0 + 0x8C080543, // 0001 GETMET R2 R2 K67 + 0x5C100200, // 0002 MOVE R4 R1 + 0x7C080400, // 0003 CALL R2 2 + 0x80040400, // 0004 RET 1 R2 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: stop +********************************************************************/ +be_local_closure(class_Matter_Device_stop, /* name */ + be_nested_proto( + 4, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(stop), + &be_const_str_solidified, + ( &(const binstruction[10]) { /* code */ + 0xB8067400, // 0000 GETNGBL R1 K58 + 0x8C040344, // 0001 GETMET R1 R1 K68 + 0x5C0C0000, // 0002 MOVE R3 R0 + 0x7C040400, // 0003 CALL R1 2 + 0x88040100, // 0004 GETMBR R1 R0 K0 + 0x78060002, // 0005 JMPF R1 #0009 + 0x88040100, // 0006 GETMBR R1 R0 K0 + 0x8C040345, // 0007 GETMET R1 R1 K69 + 0x7C040200, // 0008 CALL R1 1 + 0x80000000, // 0009 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: adjust_next_ep +********************************************************************/ +be_local_closure(class_Matter_Device_adjust_next_ep, /* name */ + be_nested_proto( + 5, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(adjust_next_ep), + &be_const_str_solidified, + ( &(const binstruction[21]) { /* code */ + 0x60040010, // 0000 GETGBL R1 G16 + 0x88080135, // 0001 GETMBR R2 R0 K53 + 0x8C080546, // 0002 GETMET R2 R2 K70 + 0x7C080200, // 0003 CALL R2 1 + 0x7C040200, // 0004 CALL R1 1 + 0xA802000A, // 0005 EXBLK 0 #0011 + 0x5C080200, // 0006 MOVE R2 R1 + 0x7C080000, // 0007 CALL R2 0 + 0x600C0009, // 0008 GETGBL R3 G9 + 0x5C100400, // 0009 MOVE R4 R2 + 0x7C0C0200, // 000A CALL R3 1 + 0x88100147, // 000B GETMBR R4 R0 K71 + 0x28100604, // 000C GE R4 R3 R4 + 0x78120001, // 000D JMPF R4 #0010 + 0x00100714, // 000E ADD R4 R3 K20 + 0x90028E04, // 000F SETMBR R0 K71 R4 + 0x7001FFF4, // 0010 JMP #0006 + 0x58040011, // 0011 LDCONST R1 K17 + 0xAC040200, // 0012 CATCH R1 1 0 + 0xB0080000, // 0013 RAISE 2 R0 R0 + 0x80000000, // 0014 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: add_read_sensors_schedule +********************************************************************/ +be_local_closure(class_Matter_Device_add_read_sensors_schedule, /* name */ + be_nested_proto( + 5, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(add_read_sensors_schedule), + &be_const_str_solidified, + ( &(const binstruction[14]) { /* code */ + 0x88080148, // 0000 GETMBR R2 R0 K72 + 0x4C0C0000, // 0001 LDNIL R3 + 0x1C080403, // 0002 EQ R2 R2 R3 + 0x740A0002, // 0003 JMPT R2 #0007 + 0x88080148, // 0004 GETMBR R2 R0 K72 + 0x24080401, // 0005 GT R2 R2 R1 + 0x780A0005, // 0006 JMPF R2 #000D + 0x90029001, // 0007 SETMBR R0 K72 R1 + 0xB80A5200, // 0008 GETNGBL R2 K41 + 0x8C08054A, // 0009 GETMET R2 R2 K74 + 0x5C100200, // 000A MOVE R4 R1 + 0x7C080400, // 000B CALL R2 2 + 0x90029202, // 000C SETMBR R0 K73 R2 + 0x80000000, // 000D RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: button_pressed +********************************************************************/ +be_local_closure(class_Matter_Device_button_pressed, /* name */ + be_nested_proto( + 13, /* nstack */ + 3, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(button_pressed), + &be_const_str_solidified, + ( &(const binstruction[28]) { /* code */ + 0x540E000F, // 0000 LDINT R3 16 + 0x3C0C0403, // 0001 SHR R3 R2 R3 + 0x541200FE, // 0002 LDINT R4 255 + 0x2C0C0604, // 0003 AND R3 R3 R4 + 0x54120007, // 0004 LDINT R4 8 + 0x3C100404, // 0005 SHR R4 R2 R4 + 0x541600FE, // 0006 LDINT R5 255 + 0x2C100805, // 0007 AND R4 R4 R5 + 0x541600FE, // 0008 LDINT R5 255 + 0x2C140405, // 0009 AND R5 R2 R5 + 0x541A0017, // 000A LDINT R6 24 + 0x3C180406, // 000B SHR R6 R2 R6 + 0x541E00FE, // 000C LDINT R7 255 + 0x2C180C07, // 000D AND R6 R6 R7 + 0x8C1C014B, // 000E GETMET R7 R0 K75 + 0x00240B14, // 000F ADD R9 R5 K20 + 0x20280604, // 0010 NE R10 R3 R4 + 0x782A0001, // 0011 JMPF R10 #0014 + 0x58280014, // 0012 LDCONST R10 K20 + 0x70020000, // 0013 JMP #0015 + 0x58280006, // 0014 LDCONST R10 K6 + 0x780E0001, // 0015 JMPF R3 #0018 + 0x582C0006, // 0016 LDCONST R11 K6 + 0x70020000, // 0017 JMP #0019 + 0x582C0014, // 0018 LDCONST R11 K20 + 0x5C300C00, // 0019 MOVE R12 R6 + 0x7C1C0A00, // 001A CALL R7 5 + 0x80000000, // 001B RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: start +********************************************************************/ +be_local_closure(class_Matter_Device_start, /* name */ + be_nested_proto( + 4, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(start), + &be_const_str_solidified, + ( &(const binstruction[14]) { /* code */ + 0x8804014C, // 0000 GETMBR R1 R0 K76 + 0x78060000, // 0001 JMPF R1 #0003 + 0x80000200, // 0002 RET 0 + 0x8C04014D, // 0003 GETMET R1 R0 K77 + 0x7C040200, // 0004 CALL R1 1 + 0x8C04014E, // 0005 GETMET R1 R0 K78 + 0x880C014F, // 0006 GETMBR R3 R0 K79 + 0x7C040400, // 0007 CALL R1 2 + 0x88040109, // 0008 GETMBR R1 R0 K9 + 0x8C040350, // 0009 GETMET R1 R1 K80 + 0x7C040200, // 000A CALL R1 1 + 0x50040200, // 000B LDBOOL R1 1 0 + 0x90029801, // 000C SETMBR R0 K76 R1 + 0x80000000, // 000D RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: get_plugin_class_displayname +********************************************************************/ +be_local_closure(class_Matter_Device_get_plugin_class_displayname, /* name */ + be_nested_proto( + 5, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(get_plugin_class_displayname), + &be_const_str_solidified, + ( &(const binstruction[ 9]) { /* code */ + 0x88080151, // 0000 GETMBR R2 R0 K81 + 0x8C080516, // 0001 GETMET R2 R2 K22 + 0x5C100200, // 0002 MOVE R4 R1 + 0x7C080400, // 0003 CALL R2 2 + 0x780A0001, // 0004 JMPF R2 #0007 + 0x880C0552, // 0005 GETMBR R3 R2 K82 + 0x70020000, // 0006 JMP #0008 + 0x580C000D, // 0007 LDCONST R3 K13 + 0x80040600, // 0008 RET 1 R3 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: find_plugin_by_endpoint +********************************************************************/ +be_local_closure(class_Matter_Device_find_plugin_by_endpoint, /* name */ + be_nested_proto( + 6, /* nstack */ + 2, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(find_plugin_by_endpoint), + &be_const_str_solidified, + ( &(const binstruction[17]) { /* code */ + 0x58080006, // 0000 LDCONST R2 K6 + 0x600C000C, // 0001 GETGBL R3 G12 + 0x88100112, // 0002 GETMBR R4 R0 K18 + 0x7C0C0200, // 0003 CALL R3 1 + 0x140C0403, // 0004 LT R3 R2 R3 + 0x780E0008, // 0005 JMPF R3 #000F + 0x880C0112, // 0006 GETMBR R3 R0 K18 + 0x940C0602, // 0007 GETIDX R3 R3 R2 + 0x8C100741, // 0008 GETMET R4 R3 K65 + 0x7C100200, // 0009 CALL R4 1 + 0x1C100801, // 000A EQ R4 R4 R1 + 0x78120000, // 000B JMPF R4 #000D + 0x80040600, // 000C RET 1 R3 + 0x00080514, // 000D ADD R2 R2 K20 + 0x7001FFF1, // 000E JMP #0001 + 0x4C0C0000, // 000F LDNIL R3 + 0x80040600, // 0010 RET 1 R3 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: sort_distinct +********************************************************************/ +be_local_closure(class_Matter_Device_sort_distinct, /* name */ + be_nested_proto( + 7, /* nstack */ + 1, /* argc */ + 12, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(sort_distinct), + &be_const_str_solidified, + ( &(const binstruction[53]) { /* code */ + 0x5804000C, // 0000 LDCONST R1 K12 + 0x60080010, // 0001 GETGBL R2 G16 + 0x600C000C, // 0002 GETGBL R3 G12 + 0x5C100000, // 0003 MOVE R4 R0 + 0x7C0C0200, // 0004 CALL R3 1 + 0x040C0714, // 0005 SUB R3 R3 K20 + 0x400E2803, // 0006 CONNECT R3 K20 R3 + 0x7C080200, // 0007 CALL R2 1 + 0xA8020010, // 0008 EXBLK 0 #001A + 0x5C0C0400, // 0009 MOVE R3 R2 + 0x7C0C0000, // 000A CALL R3 0 + 0x94100003, // 000B GETIDX R4 R0 R3 + 0x5C140600, // 000C MOVE R5 R3 + 0x24180B06, // 000D GT R6 R5 K6 + 0x781A0008, // 000E JMPF R6 #0018 + 0x04180B14, // 000F SUB R6 R5 K20 + 0x94180006, // 0010 GETIDX R6 R0 R6 + 0x24180C04, // 0011 GT R6 R6 R4 + 0x781A0004, // 0012 JMPF R6 #0018 + 0x04180B14, // 0013 SUB R6 R5 K20 + 0x94180006, // 0014 GETIDX R6 R0 R6 + 0x98000A06, // 0015 SETIDX R0 R5 R6 + 0x04140B14, // 0016 SUB R5 R5 K20 + 0x7001FFF4, // 0017 JMP #000D + 0x98000A04, // 0018 SETIDX R0 R5 R4 + 0x7001FFEE, // 0019 JMP #0009 + 0x58080011, // 001A LDCONST R2 K17 + 0xAC080200, // 001B CATCH R2 1 0 + 0xB0080000, // 001C RAISE 2 R0 R0 + 0x58080014, // 001D LDCONST R2 K20 + 0x600C000C, // 001E GETGBL R3 G12 + 0x5C100000, // 001F MOVE R4 R0 + 0x7C0C0200, // 0020 CALL R3 1 + 0x180C0714, // 0021 LE R3 R3 K20 + 0x780E0000, // 0022 JMPF R3 #0024 + 0x80040000, // 0023 RET 1 R0 + 0x940C0106, // 0024 GETIDX R3 R0 K6 + 0x6010000C, // 0025 GETGBL R4 G12 + 0x5C140000, // 0026 MOVE R5 R0 + 0x7C100200, // 0027 CALL R4 1 + 0x14100404, // 0028 LT R4 R2 R4 + 0x78120009, // 0029 JMPF R4 #0034 + 0x94100002, // 002A GETIDX R4 R0 R2 + 0x1C100803, // 002B EQ R4 R4 R3 + 0x78120003, // 002C JMPF R4 #0031 + 0x8C100153, // 002D GETMET R4 R0 K83 + 0x5C180400, // 002E MOVE R6 R2 + 0x7C100400, // 002F CALL R4 2 + 0x70020001, // 0030 JMP #0033 + 0x940C0002, // 0031 GETIDX R3 R0 R2 + 0x00080514, // 0032 ADD R2 R2 K20 + 0x7001FFF0, // 0033 JMP #0025 + 0x80040000, // 0034 RET 1 R0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: check_config_ep +********************************************************************/ +be_local_closure(class_Matter_Device_check_config_ep, /* name */ + be_nested_proto( + 10, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(check_config_ep), + &be_const_str_solidified, + ( &(const binstruction[77]) { /* code */ + 0x50040000, // 0000 LDBOOL R1 0 0 + 0x60080012, // 0001 GETGBL R2 G18 + 0x7C080000, // 0002 CALL R2 0 + 0x600C0010, // 0003 GETGBL R3 G16 + 0x88100135, // 0004 GETMBR R4 R0 K53 + 0x8C100946, // 0005 GETMET R4 R4 K70 + 0x7C100200, // 0006 CALL R4 1 + 0x7C0C0200, // 0007 CALL R3 1 + 0xA8020007, // 0008 EXBLK 0 #0011 + 0x5C100600, // 0009 MOVE R4 R3 + 0x7C100000, // 000A CALL R4 0 + 0x8C140542, // 000B GETMET R5 R2 K66 + 0x601C0009, // 000C GETGBL R7 G9 + 0x5C200800, // 000D MOVE R8 R4 + 0x7C1C0200, // 000E CALL R7 1 + 0x7C140400, // 000F CALL R5 2 + 0x7001FFF7, // 0010 JMP #0009 + 0x580C0011, // 0011 LDCONST R3 K17 + 0xAC0C0200, // 0012 CATCH R3 1 0 + 0xB0080000, // 0013 RAISE 2 R0 R0 + 0x600C0010, // 0014 GETGBL R3 G16 + 0x5C100400, // 0015 MOVE R4 R2 + 0x7C0C0200, // 0016 CALL R3 1 + 0xA8020030, // 0017 EXBLK 0 #0049 + 0x5C100600, // 0018 MOVE R4 R3 + 0x7C100000, // 0019 CALL R4 0 + 0x1C140906, // 001A EQ R5 R4 K6 + 0x7816000B, // 001B JMPF R5 #0028 + 0xB8162E00, // 001C GETNGBL R5 K23 + 0x58180054, // 001D LDCONST R6 K84 + 0x581C001D, // 001E LDCONST R7 K29 + 0x7C140400, // 001F CALL R5 2 + 0x88140135, // 0020 GETMBR R5 R0 K53 + 0x8C140B53, // 0021 GETMET R5 R5 K83 + 0x601C0008, // 0022 GETGBL R7 G8 + 0x5C200800, // 0023 MOVE R8 R4 + 0x7C1C0200, // 0024 CALL R7 1 + 0x7C140400, // 0025 CALL R5 2 + 0x50040200, // 0026 LDBOOL R1 1 0 + 0x7002001F, // 0027 JMP #0048 + 0xB8165200, // 0028 GETNGBL R5 K41 + 0x88140B31, // 0029 GETMBR R5 R5 K49 + 0x1C140805, // 002A EQ R5 R4 R5 + 0x7816001B, // 002B JMPF R5 #0048 + 0x50040200, // 002C LDBOOL R1 1 0 + 0xB8162E00, // 002D GETNGBL R5 K23 + 0x60180018, // 002E GETGBL R6 G24 + 0x581C0055, // 002F LDCONST R7 K85 + 0x5C200800, // 0030 MOVE R8 R4 + 0x88240147, // 0031 GETMBR R9 R0 K71 + 0x7C180600, // 0032 CALL R6 3 + 0x581C001D, // 0033 LDCONST R7 K29 + 0x7C140400, // 0034 CALL R5 2 + 0x60140008, // 0035 GETGBL R5 G8 + 0x88180147, // 0036 GETMBR R6 R0 K71 + 0x7C140200, // 0037 CALL R5 1 + 0x88180135, // 0038 GETMBR R6 R0 K53 + 0x601C0008, // 0039 GETGBL R7 G8 + 0x5C200800, // 003A MOVE R8 R4 + 0x7C1C0200, // 003B CALL R7 1 + 0x88200135, // 003C GETMBR R8 R0 K53 + 0x941C1007, // 003D GETIDX R7 R8 R7 + 0x98180A07, // 003E SETIDX R6 R5 R7 + 0x88140135, // 003F GETMBR R5 R0 K53 + 0x8C140B53, // 0040 GETMET R5 R5 K83 + 0x601C0008, // 0041 GETGBL R7 G8 + 0x5C200800, // 0042 MOVE R8 R4 + 0x7C1C0200, // 0043 CALL R7 1 + 0x7C140400, // 0044 CALL R5 2 + 0x88140147, // 0045 GETMBR R5 R0 K71 + 0x00140B14, // 0046 ADD R5 R5 K20 + 0x90028E05, // 0047 SETMBR R0 K71 R5 + 0x7001FFCE, // 0048 JMP #0018 + 0x580C0011, // 0049 LDCONST R3 K17 + 0xAC0C0200, // 004A CATCH R3 1 0 + 0xB0080000, // 004B RAISE 2 R0 R0 + 0x80040200, // 004C RET 1 R1 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: button_handler +********************************************************************/ +be_local_closure(class_Matter_Device_button_handler, /* name */ + be_nested_proto( + 14, /* nstack */ + 5, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(button_handler), + &be_const_str_solidified, + ( &(const binstruction[25]) { /* code */ + 0x58140006, // 0000 LDCONST R5 K6 + 0xA41AAC00, // 0001 IMPORT R6 K86 + 0x601C000C, // 0002 GETGBL R7 G12 + 0x88200112, // 0003 GETMBR R8 R0 K18 + 0x7C1C0200, // 0004 CALL R7 1 + 0x141C0A07, // 0005 LT R7 R5 R7 + 0x781E0010, // 0006 JMPF R7 #0018 + 0x881C0112, // 0007 GETMBR R7 R0 K18 + 0x941C0E05, // 0008 GETIDX R7 R7 R5 + 0x8C200D57, // 0009 GETMET R8 R6 K87 + 0x5C280E00, // 000A MOVE R10 R7 + 0x582C004B, // 000B LDCONST R11 K75 + 0x7C200600, // 000C CALL R8 3 + 0x78220007, // 000D JMPF R8 #0016 + 0x88200112, // 000E GETMBR R8 R0 K18 + 0x94201005, // 000F GETIDX R8 R8 R5 + 0x8C20114B, // 0010 GETMET R8 R8 K75 + 0x5C280200, // 0011 MOVE R10 R1 + 0x5C2C0400, // 0012 MOVE R11 R2 + 0x5C300600, // 0013 MOVE R12 R3 + 0x5C340800, // 0014 MOVE R13 R4 + 0x7C200A00, // 0015 CALL R8 5 + 0x00140B14, // 0016 ADD R5 R5 K20 + 0x7001FFE9, // 0017 JMP #0002 + 0x80000000, // 0018 RET 0 + }) + ) +); +/*******************************************************************/ + + /******************************************************************** ** Solidified function: init ********************************************************************/ @@ -522,112 +1447,116 @@ be_local_closure(class_Matter_Device_init, /* name */ &be_ktab_class_Matter_Device, /* shared constants */ be_str_weak(init), &be_const_str_solidified, - ( &(const binstruction[105]) { /* code */ - 0xA4062A00, // 0000 IMPORT R1 K21 - 0xB80A2C00, // 0001 GETNGBL R2 K22 - 0x8C080517, // 0002 GETMET R2 R2 K23 - 0xB8123000, // 0003 GETNGBL R4 K24 - 0x88100919, // 0004 GETMBR R4 R4 K25 + ( &(const binstruction[109]) { /* code */ + 0xA406B000, // 0000 IMPORT R1 K88 + 0xB80A7400, // 0001 GETNGBL R2 K58 + 0x8C080559, // 0002 GETMET R2 R2 K89 + 0xB8125200, // 0003 GETNGBL R4 K41 + 0x8810095A, // 0004 GETMBR R4 R4 K90 0x7C080400, // 0005 CALL R2 2 0x740A0004, // 0006 JMPT R2 #000C - 0xB80A3000, // 0007 GETNGBL R2 K24 - 0x8C08051A, // 0008 GETMET R2 R2 K26 + 0xB80A5200, // 0007 GETNGBL R2 K41 + 0x8C08055B, // 0008 GETMET R2 R2 K91 0x5C100000, // 0009 MOVE R4 R0 0x7C080400, // 000A CALL R2 2 0x80000400, // 000B RET 0 - 0xB80A3000, // 000C GETNGBL R2 K24 - 0xB80E3000, // 000D GETNGBL R3 K24 - 0x8C0C071C, // 000E GETMET R3 R3 K28 + 0xB80A5200, // 000C GETNGBL R2 K41 + 0xB80E5200, // 000D GETNGBL R3 K41 + 0x8C0C075D, // 000E GETMET R3 R3 K93 0x7C0C0200, // 000F CALL R3 1 - 0x900A3603, // 0010 SETMBR R2 K27 R3 + 0x900AB803, // 0010 SETMBR R2 K92 R3 0x50080000, // 0011 LDBOOL R2 0 0 - 0x90020402, // 0012 SETMBR R0 K2 R2 - 0x90023B0A, // 0013 SETMBR R0 K29 K10 + 0x90029802, // 0012 SETMBR R0 K76 R2 + 0x9002BD06, // 0013 SETMBR R0 K94 K6 0x60080012, // 0014 GETGBL R2 G18 0x7C080000, // 0015 CALL R2 0 - 0x90023C02, // 0016 SETMBR R0 K30 R2 + 0x90022402, // 0016 SETMBR R0 K18 R2 0x50080000, // 0017 LDBOOL R2 0 0 - 0x90021602, // 0018 SETMBR R0 K11 R2 + 0x90020E02, // 0018 SETMBR R0 K7 R2 0x60080013, // 0019 GETGBL R2 G19 0x7C080000, // 001A CALL R2 0 - 0x90023E02, // 001B SETMBR R0 K31 R2 - 0x90024121, // 001C SETMBR R0 K32 K33 - 0x50080000, // 001D LDBOOL R2 0 0 - 0x90024402, // 001E SETMBR R0 K34 R2 - 0x50080000, // 001F LDBOOL R2 0 0 - 0x90024602, // 0020 SETMBR R0 K35 R2 - 0x8C080124, // 0021 GETMET R2 R0 K36 - 0x7C080200, // 0022 CALL R2 1 - 0xB80A3000, // 0023 GETNGBL R2 K24 - 0x8C080525, // 0024 GETMET R2 R2 K37 - 0x5C100000, // 0025 MOVE R4 R0 - 0x7C080400, // 0026 CALL R2 2 - 0x90021002, // 0027 SETMBR R0 K8 R2 - 0x88080108, // 0028 GETMBR R2 R0 K8 - 0x8C080526, // 0029 GETMET R2 R2 K38 - 0x7C080200, // 002A CALL R2 1 - 0xB80A3000, // 002B GETNGBL R2 K24 - 0x8C080528, // 002C GETMET R2 R2 K40 - 0x5C100000, // 002D MOVE R4 R0 - 0x7C080400, // 002E CALL R2 2 - 0x90024E02, // 002F SETMBR R0 K39 R2 - 0xB80A3000, // 0030 GETNGBL R2 K24 - 0x8C08052A, // 0031 GETMET R2 R2 K42 - 0x5C100000, // 0032 MOVE R4 R0 - 0x7C080400, // 0033 CALL R2 2 - 0x90025202, // 0034 SETMBR R0 K41 R2 - 0xB80A3000, // 0035 GETNGBL R2 K24 - 0x8C08051A, // 0036 GETMET R2 R2 K26 - 0x5C100000, // 0037 MOVE R4 R0 - 0x7C080400, // 0038 CALL R2 2 - 0x90025602, // 0039 SETMBR R0 K43 R2 - 0xB80A2C00, // 003A GETNGBL R2 K22 - 0x8C08052C, // 003B GETMET R2 R2 K44 - 0x7C080200, // 003C CALL R2 1 - 0x9408052D, // 003D GETIDX R2 R2 K45 - 0x740A0004, // 003E JMPT R2 #0044 - 0xB80A2C00, // 003F GETNGBL R2 K22 - 0x8C08052E, // 0040 GETMET R2 R2 K46 - 0x7C080200, // 0041 CALL R2 1 - 0x9408052D, // 0042 GETIDX R2 R2 K45 - 0x780A0001, // 0043 JMPF R2 #0046 - 0x8C08012F, // 0044 GETMET R2 R0 K47 - 0x7C080200, // 0045 CALL R2 1 - 0xB80A2C00, // 0046 GETNGBL R2 K22 - 0x8C08052C, // 0047 GETMET R2 R2 K44 - 0x7C080200, // 0048 CALL R2 1 - 0x9408052D, // 0049 GETIDX R2 R2 K45 - 0x740A0005, // 004A JMPT R2 #0051 - 0xB80A2C00, // 004B GETNGBL R2 K22 - 0x8C080530, // 004C GETMET R2 R2 K48 - 0x58100031, // 004D LDCONST R4 K49 - 0x84140000, // 004E CLOSURE R5 P0 - 0x58180032, // 004F LDCONST R6 K50 - 0x7C080800, // 0050 CALL R2 4 - 0xB80A2C00, // 0051 GETNGBL R2 K22 - 0x8C08052E, // 0052 GETMET R2 R2 K46 - 0x7C080200, // 0053 CALL R2 1 - 0x9408052D, // 0054 GETIDX R2 R2 K45 - 0x740A0005, // 0055 JMPT R2 #005C - 0xB80A2C00, // 0056 GETNGBL R2 K22 - 0x8C080530, // 0057 GETMET R2 R2 K48 - 0x58100033, // 0058 LDCONST R4 K51 - 0x84140001, // 0059 CLOSURE R5 P1 - 0x58180032, // 005A LDCONST R6 K50 - 0x7C080800, // 005B CALL R2 4 - 0xB80A3000, // 005C GETNGBL R2 K24 - 0x8C080534, // 005D GETMET R2 R2 K52 - 0x5C100000, // 005E MOVE R4 R0 - 0x7C080400, // 005F CALL R2 2 - 0x90020C02, // 0060 SETMBR R0 K6 R2 - 0xB80A2C00, // 0061 GETNGBL R2 K22 - 0x8C080535, // 0062 GETMET R2 R2 K53 - 0x5C100000, // 0063 MOVE R4 R0 - 0x7C080400, // 0064 CALL R2 2 - 0x8C080136, // 0065 GETMET R2 R0 K54 - 0x7C080200, // 0066 CALL R2 1 - 0xA0000000, // 0067 CLOSE R0 - 0x80000000, // 0068 RET 0 + 0x90022A02, // 001B SETMBR R0 K21 R2 + 0x8808015F, // 001C GETMBR R2 R0 K95 + 0x90028E02, // 001D SETMBR R0 K71 R2 + 0x50080000, // 001E LDBOOL R2 0 0 + 0x9002C002, // 001F SETMBR R0 K96 R2 + 0x50080000, // 0020 LDBOOL R2 0 0 + 0x9002C202, // 0021 SETMBR R0 K97 R2 + 0xB80A5200, // 0022 GETNGBL R2 K41 + 0x8C080562, // 0023 GETMET R2 R2 K98 + 0x5C100000, // 0024 MOVE R4 R0 + 0x7C080400, // 0025 CALL R2 2 + 0x90021202, // 0026 SETMBR R0 K9 R2 + 0x8C080163, // 0027 GETMET R2 R0 K99 + 0x7C080200, // 0028 CALL R2 1 + 0xB80A5200, // 0029 GETNGBL R2 K41 + 0x8C080564, // 002A GETMET R2 R2 K100 + 0x5C100000, // 002B MOVE R4 R0 + 0x7C080400, // 002C CALL R2 2 + 0x90020802, // 002D SETMBR R0 K4 R2 + 0x88080104, // 002E GETMBR R2 R0 K4 + 0x8C080565, // 002F GETMET R2 R2 K101 + 0x7C080200, // 0030 CALL R2 1 + 0xB80A5200, // 0031 GETNGBL R2 K41 + 0x8C080566, // 0032 GETMET R2 R2 K102 + 0x5C100000, // 0033 MOVE R4 R0 + 0x7C080400, // 0034 CALL R2 2 + 0x90020402, // 0035 SETMBR R0 K2 R2 + 0xB80A5200, // 0036 GETNGBL R2 K41 + 0x8C080568, // 0037 GETMET R2 R2 K104 + 0x5C100000, // 0038 MOVE R4 R0 + 0x7C080400, // 0039 CALL R2 2 + 0x9002CE02, // 003A SETMBR R0 K103 R2 + 0xB80A5200, // 003B GETNGBL R2 K41 + 0x8C08055B, // 003C GETMET R2 R2 K91 + 0x5C100000, // 003D MOVE R4 R0 + 0x7C080400, // 003E CALL R2 2 + 0x9002D202, // 003F SETMBR R0 K105 R2 + 0xB80A7400, // 0040 GETNGBL R2 K58 + 0x8C08056A, // 0041 GETMET R2 R2 K106 + 0x7C080200, // 0042 CALL R2 1 + 0x9408056B, // 0043 GETIDX R2 R2 K107 + 0x740A0004, // 0044 JMPT R2 #004A + 0xB80A7400, // 0045 GETNGBL R2 K58 + 0x8C08056C, // 0046 GETMET R2 R2 K108 + 0x7C080200, // 0047 CALL R2 1 + 0x9408056B, // 0048 GETIDX R2 R2 K107 + 0x780A0001, // 0049 JMPF R2 #004C + 0x8C08016D, // 004A GETMET R2 R0 K109 + 0x7C080200, // 004B CALL R2 1 + 0xB80A7400, // 004C GETNGBL R2 K58 + 0x8C08056A, // 004D GETMET R2 R2 K106 + 0x7C080200, // 004E CALL R2 1 + 0x9408056B, // 004F GETIDX R2 R2 K107 + 0x740A0005, // 0050 JMPT R2 #0057 + 0xB80A7400, // 0051 GETNGBL R2 K58 + 0x8C08056E, // 0052 GETMET R2 R2 K110 + 0x5810006F, // 0053 LDCONST R4 K111 + 0x84140000, // 0054 CLOSURE R5 P0 + 0x58180070, // 0055 LDCONST R6 K112 + 0x7C080800, // 0056 CALL R2 4 + 0xB80A7400, // 0057 GETNGBL R2 K58 + 0x8C08056C, // 0058 GETMET R2 R2 K108 + 0x7C080200, // 0059 CALL R2 1 + 0x9408056B, // 005A GETIDX R2 R2 K107 + 0x740A0005, // 005B JMPT R2 #0062 + 0xB80A7400, // 005C GETNGBL R2 K58 + 0x8C08056E, // 005D GETMET R2 R2 K110 + 0x58100071, // 005E LDCONST R4 K113 + 0x84140001, // 005F CLOSURE R5 P1 + 0x58180070, // 0060 LDCONST R6 K112 + 0x7C080800, // 0061 CALL R2 4 + 0x88080109, // 0062 GETMBR R2 R0 K9 + 0x8C080572, // 0063 GETMET R2 R2 K114 + 0x7C080200, // 0064 CALL R2 1 + 0xB80A7400, // 0065 GETNGBL R2 K58 + 0x8C080573, // 0066 GETMET R2 R2 K115 + 0x5C100000, // 0067 MOVE R4 R0 + 0x7C080400, // 0068 CALL R2 2 + 0x8C080174, // 0069 GETMET R2 R0 K116 + 0x7C080200, // 006A CALL R2 1 + 0xA0000000, // 006B CLOSE R0 + 0x80000000, // 006C RET 0 }) ) ); @@ -635,12 +1564,12 @@ be_local_closure(class_Matter_Device_init, /* name */ /******************************************************************** -** Solidified function: find_plugin_by_friendly_name +** Solidified function: every_second ********************************************************************/ -be_local_closure(class_Matter_Device_find_plugin_by_friendly_name, /* name */ +be_local_closure(class_Matter_Device_every_second, /* name */ be_nested_proto( - 7, /* nstack */ - 2, /* argc */ + 3, /* nstack */ + 1, /* argc */ 10, /* varg */ 0, /* has upvals */ NULL, /* no upvals */ @@ -648,44 +1577,22 @@ be_local_closure(class_Matter_Device_find_plugin_by_friendly_name, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(find_plugin_by_friendly_name), + be_str_weak(every_second), &be_const_str_solidified, - ( &(const binstruction[35]) { /* code */ - 0x4C080000, // 0000 LDNIL R2 - 0x1C080202, // 0001 EQ R2 R1 R2 - 0x740A0004, // 0002 JMPT R2 #0008 - 0x6008000C, // 0003 GETGBL R2 G12 - 0x5C0C0200, // 0004 MOVE R3 R1 - 0x7C080200, // 0005 CALL R2 1 - 0x1C08050A, // 0006 EQ R2 R2 K10 - 0x780A0001, // 0007 JMPF R2 #000A - 0x4C080000, // 0008 LDNIL R2 - 0x80040400, // 0009 RET 1 R2 - 0x5808000A, // 000A LDCONST R2 K10 - 0x600C000C, // 000B GETGBL R3 G12 - 0x8810011E, // 000C GETMBR R4 R0 K30 - 0x7C0C0200, // 000D CALL R3 1 - 0x140C0403, // 000E LT R3 R2 R3 - 0x780E0010, // 000F JMPF R3 #0021 - 0x880C011E, // 0010 GETMBR R3 R0 K30 - 0x940C0602, // 0011 GETIDX R3 R3 R2 - 0x8C100737, // 0012 GETMET R4 R3 K55 - 0x7C100200, // 0013 CALL R4 1 - 0x4C140000, // 0014 LDNIL R5 - 0x20140805, // 0015 NE R5 R4 R5 - 0x78160007, // 0016 JMPF R5 #001F - 0x6014000C, // 0017 GETGBL R5 G12 - 0x5C180800, // 0018 MOVE R6 R4 - 0x7C140200, // 0019 CALL R5 1 - 0x24140B0A, // 001A GT R5 R5 K10 - 0x78160002, // 001B JMPF R5 #001F - 0x1C140801, // 001C EQ R5 R4 R1 - 0x78160000, // 001D JMPF R5 #001F - 0x80040600, // 001E RET 1 R3 - 0x00080538, // 001F ADD R2 R2 K56 - 0x7001FFE9, // 0020 JMP #000B - 0x4C0C0000, // 0021 LDNIL R3 - 0x80040600, // 0022 RET 1 R3 + ( &(const binstruction[13]) { /* code */ + 0x88040104, // 0000 GETMBR R1 R0 K4 + 0x8C040375, // 0001 GETMET R1 R1 K117 + 0x7C040200, // 0002 CALL R1 1 + 0x88040102, // 0003 GETMBR R1 R0 K2 + 0x8C040375, // 0004 GETMET R1 R1 K117 + 0x7C040200, // 0005 CALL R1 1 + 0x88040167, // 0006 GETMBR R1 R0 K103 + 0x8C040375, // 0007 GETMET R1 R1 K117 + 0x7C040200, // 0008 CALL R1 1 + 0x88040109, // 0009 GETMBR R1 R0 K9 + 0x8C040375, // 000A GETMET R1 R1 K117 + 0x7C040200, // 000B CALL R1 1 + 0x80000000, // 000C RET 0 }) ) ); @@ -693,12 +1600,87 @@ be_local_closure(class_Matter_Device_find_plugin_by_friendly_name, /* name */ /******************************************************************** -** Solidified function: get_plugin_remote_info +** Solidified function: k2l_num ********************************************************************/ -be_local_closure(class_Matter_Device_get_plugin_remote_info, /* name */ +be_local_closure(class_Matter_Device_k2l_num, /* name */ be_nested_proto( - 6, /* nstack */ - 2, /* argc */ + 9, /* nstack */ + 1, /* argc */ + 12, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(k2l_num), + &be_const_str_solidified, + ( &(const binstruction[52]) { /* code */ + 0x5804000C, // 0000 LDCONST R1 K12 + 0x60080012, // 0001 GETGBL R2 G18 + 0x7C080000, // 0002 CALL R2 0 + 0x4C0C0000, // 0003 LDNIL R3 + 0x1C0C0003, // 0004 EQ R3 R0 R3 + 0x780E0000, // 0005 JMPF R3 #0007 + 0x80040400, // 0006 RET 1 R2 + 0x600C0010, // 0007 GETGBL R3 G16 + 0x8C100146, // 0008 GETMET R4 R0 K70 + 0x7C100200, // 0009 CALL R4 1 + 0x7C0C0200, // 000A CALL R3 1 + 0xA8020007, // 000B EXBLK 0 #0014 + 0x5C100600, // 000C MOVE R4 R3 + 0x7C100000, // 000D CALL R4 0 + 0x8C140542, // 000E GETMET R5 R2 K66 + 0x601C0009, // 000F GETGBL R7 G9 + 0x5C200800, // 0010 MOVE R8 R4 + 0x7C1C0200, // 0011 CALL R7 1 + 0x7C140400, // 0012 CALL R5 2 + 0x7001FFF7, // 0013 JMP #000C + 0x580C0011, // 0014 LDCONST R3 K17 + 0xAC0C0200, // 0015 CATCH R3 1 0 + 0xB0080000, // 0016 RAISE 2 R0 R0 + 0x600C0010, // 0017 GETGBL R3 G16 + 0x6010000C, // 0018 GETGBL R4 G12 + 0x5C140400, // 0019 MOVE R5 R2 + 0x7C100200, // 001A CALL R4 1 + 0x04100914, // 001B SUB R4 R4 K20 + 0x40122804, // 001C CONNECT R4 K20 R4 + 0x7C0C0200, // 001D CALL R3 1 + 0xA8020010, // 001E EXBLK 0 #0030 + 0x5C100600, // 001F MOVE R4 R3 + 0x7C100000, // 0020 CALL R4 0 + 0x94140404, // 0021 GETIDX R5 R2 R4 + 0x5C180800, // 0022 MOVE R6 R4 + 0x241C0D06, // 0023 GT R7 R6 K6 + 0x781E0008, // 0024 JMPF R7 #002E + 0x041C0D14, // 0025 SUB R7 R6 K20 + 0x941C0407, // 0026 GETIDX R7 R2 R7 + 0x241C0E05, // 0027 GT R7 R7 R5 + 0x781E0004, // 0028 JMPF R7 #002E + 0x041C0D14, // 0029 SUB R7 R6 K20 + 0x941C0407, // 002A GETIDX R7 R2 R7 + 0x98080C07, // 002B SETIDX R2 R6 R7 + 0x04180D14, // 002C SUB R6 R6 K20 + 0x7001FFF4, // 002D JMP #0023 + 0x98080C05, // 002E SETIDX R2 R6 R5 + 0x7001FFEE, // 002F JMP #001F + 0x580C0011, // 0030 LDCONST R3 K17 + 0xAC0C0200, // 0031 CATCH R3 1 0 + 0xB0080000, // 0032 RAISE 2 R0 R0 + 0x80040400, // 0033 RET 1 R2 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: clean_remotes +********************************************************************/ +be_local_closure(class_Matter_Device_clean_remotes, /* name */ + be_nested_proto( + 10, /* nstack */ + 1, /* argc */ 10, /* varg */ 0, /* has upvals */ NULL, /* no upvals */ @@ -706,16 +1688,403 @@ be_local_closure(class_Matter_Device_get_plugin_remote_info, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(get_plugin_remote_info), + be_str_weak(clean_remotes), + &be_const_str_solidified, + ( &(const binstruction[80]) { /* code */ + 0xA406AC00, // 0000 IMPORT R1 K86 + 0x88080176, // 0001 GETMBR R2 R0 K118 + 0x780A004B, // 0002 JMPF R2 #004F + 0x60080013, // 0003 GETGBL R2 G19 + 0x7C080000, // 0004 CALL R2 0 + 0x600C0010, // 0005 GETGBL R3 G16 + 0x88100176, // 0006 GETMBR R4 R0 K118 + 0x7C0C0200, // 0007 CALL R3 1 + 0xA8020003, // 0008 EXBLK 0 #000D + 0x5C100600, // 0009 MOVE R4 R3 + 0x7C100000, // 000A CALL R4 0 + 0x98080906, // 000B SETIDX R2 R4 K6 + 0x7001FFFB, // 000C JMP #0009 + 0x580C0011, // 000D LDCONST R3 K17 + 0xAC0C0200, // 000E CATCH R3 1 0 + 0xB0080000, // 000F RAISE 2 R0 R0 + 0x600C0010, // 0010 GETGBL R3 G16 + 0x88100112, // 0011 GETMBR R4 R0 K18 + 0x7C0C0200, // 0012 CALL R3 1 + 0xA802000F, // 0013 EXBLK 0 #0024 + 0x5C100600, // 0014 MOVE R4 R3 + 0x7C100000, // 0015 CALL R4 0 + 0x8C140377, // 0016 GETMET R5 R1 K119 + 0x5C1C0800, // 0017 MOVE R7 R4 + 0x58200078, // 0018 LDCONST R8 K120 + 0x7C140600, // 0019 CALL R5 3 + 0x4C180000, // 001A LDNIL R6 + 0x20180A06, // 001B NE R6 R5 R6 + 0x781A0005, // 001C JMPF R6 #0023 + 0x8C180516, // 001D GETMET R6 R2 K22 + 0x5C200A00, // 001E MOVE R8 R5 + 0x58240006, // 001F LDCONST R9 K6 + 0x7C180600, // 0020 CALL R6 3 + 0x00180D14, // 0021 ADD R6 R6 K20 + 0x98080A06, // 0022 SETIDX R2 R5 R6 + 0x7001FFEF, // 0023 JMP #0014 + 0x580C0011, // 0024 LDCONST R3 K17 + 0xAC0C0200, // 0025 CATCH R3 1 0 + 0xB0080000, // 0026 RAISE 2 R0 R0 + 0x600C0012, // 0027 GETGBL R3 G18 + 0x7C0C0000, // 0028 CALL R3 0 + 0x60100010, // 0029 GETGBL R4 G16 + 0x8C140546, // 002A GETMET R5 R2 K70 + 0x7C140200, // 002B CALL R5 1 + 0x7C100200, // 002C CALL R4 1 + 0xA8020008, // 002D EXBLK 0 #0037 + 0x5C140800, // 002E MOVE R5 R4 + 0x7C140000, // 002F CALL R5 0 + 0x94180405, // 0030 GETIDX R6 R2 R5 + 0x1C180D06, // 0031 EQ R6 R6 K6 + 0x781A0002, // 0032 JMPF R6 #0036 + 0x8C180742, // 0033 GETMET R6 R3 K66 + 0x5C200A00, // 0034 MOVE R8 R5 + 0x7C180400, // 0035 CALL R6 2 + 0x7001FFF6, // 0036 JMP #002E + 0x58100011, // 0037 LDCONST R4 K17 + 0xAC100200, // 0038 CATCH R4 1 0 + 0xB0080000, // 0039 RAISE 2 R0 R0 + 0x60100010, // 003A GETGBL R4 G16 + 0x5C140600, // 003B MOVE R5 R3 + 0x7C100200, // 003C CALL R4 1 + 0xA802000D, // 003D EXBLK 0 #004C + 0x5C140800, // 003E MOVE R5 R4 + 0x7C140000, // 003F CALL R5 0 + 0xB81A2E00, // 0040 GETNGBL R6 K23 + 0x881C0B7A, // 0041 GETMBR R7 R5 K122 + 0x001EF207, // 0042 ADD R7 K121 R7 + 0x58200030, // 0043 LDCONST R8 K48 + 0x7C180400, // 0044 CALL R6 2 + 0x8C180B7B, // 0045 GETMET R6 R5 K123 + 0x7C180200, // 0046 CALL R6 1 + 0x88180176, // 0047 GETMBR R6 R0 K118 + 0x8C180D53, // 0048 GETMET R6 R6 K83 + 0x88200B7A, // 0049 GETMBR R8 R5 K122 + 0x7C180400, // 004A CALL R6 2 + 0x7001FFF1, // 004B JMP #003E + 0x58100011, // 004C LDCONST R4 K17 + 0xAC100200, // 004D CATCH R4 1 0 + 0xB0080000, // 004E RAISE 2 R0 R0 + 0x80000000, // 004F RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: every_250ms +********************************************************************/ +be_local_closure(class_Matter_Device_every_250ms, /* name */ + be_nested_proto( + 4, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(every_250ms), + &be_const_str_solidified, + ( &(const binstruction[15]) { /* code */ + 0x8C04017C, // 0000 GETMET R1 R0 K124 + 0x7C040200, // 0001 CALL R1 1 + 0x58040006, // 0002 LDCONST R1 K6 + 0x6008000C, // 0003 GETGBL R2 G12 + 0x880C0112, // 0004 GETMBR R3 R0 K18 + 0x7C080200, // 0005 CALL R2 1 + 0x14080202, // 0006 LT R2 R1 R2 + 0x780A0005, // 0007 JMPF R2 #000E + 0x88080112, // 0008 GETMBR R2 R0 K18 + 0x94080401, // 0009 GETIDX R2 R2 R1 + 0x8C08057D, // 000A GETMET R2 R2 K125 + 0x7C080200, // 000B CALL R2 1 + 0x00040314, // 000C ADD R1 R1 K20 + 0x7001FFF4, // 000D JMP #0003 + 0x80000000, // 000E RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: process_attribute_expansion +********************************************************************/ +be_local_closure(class_Matter_Device_process_attribute_expansion, /* name */ + be_nested_proto( + 12, /* nstack */ + 3, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(process_attribute_expansion), + &be_const_str_solidified, + ( &(const binstruction[28]) { /* code */ + 0x880C0324, // 0000 GETMBR R3 R1 K36 + 0x88100325, // 0001 GETMBR R4 R1 K37 + 0x88140326, // 0002 GETMBR R5 R1 K38 + 0xB81A5200, // 0003 GETNGBL R6 K41 + 0x8C180D7E, // 0004 GETMET R6 R6 K126 + 0x5C200000, // 0005 MOVE R8 R0 + 0x7C180400, // 0006 CALL R6 2 + 0x8C1C0D6D, // 0007 GETMET R7 R6 K109 + 0x5C240600, // 0008 MOVE R9 R3 + 0x5C280800, // 0009 MOVE R10 R4 + 0x5C2C0A00, // 000A MOVE R11 R5 + 0x7C1C0800, // 000B CALL R7 4 + 0x8C1C0D7F, // 000C GETMET R7 R6 K127 + 0x7C1C0200, // 000D CALL R7 1 + 0x4C200000, // 000E LDNIL R8 + 0x8C240D80, // 000F GETMET R9 R6 K128 + 0x7C240200, // 0010 CALL R9 1 + 0x5C201200, // 0011 MOVE R8 R9 + 0x4C280000, // 0012 LDNIL R10 + 0x2024120A, // 0013 NE R9 R9 R10 + 0x78260005, // 0014 JMPF R9 #001B + 0x5C240400, // 0015 MOVE R9 R2 + 0x8C280D81, // 0016 GETMET R10 R6 K129 + 0x7C280200, // 0017 CALL R10 1 + 0x5C2C1000, // 0018 MOVE R11 R8 + 0x7C240400, // 0019 CALL R9 2 + 0x7001FFF3, // 001A JMP #000F + 0x80000000, // 001B RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: attribute_updated +********************************************************************/ +be_local_closure(class_Matter_Device_attribute_updated, /* name */ + be_nested_proto( + 10, /* nstack */ + 5, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(attribute_updated), + &be_const_str_solidified, + ( &(const binstruction[18]) { /* code */ + 0x4C140000, // 0000 LDNIL R5 + 0x1C140805, // 0001 EQ R5 R4 R5 + 0x78160000, // 0002 JMPF R5 #0004 + 0x50100000, // 0003 LDBOOL R4 0 0 + 0xB8165200, // 0004 GETNGBL R5 K41 + 0x8C140B82, // 0005 GETMET R5 R5 K130 + 0x7C140200, // 0006 CALL R5 1 + 0x90164801, // 0007 SETMBR R5 K36 R1 + 0x90164A02, // 0008 SETMBR R5 K37 R2 + 0x90164C03, // 0009 SETMBR R5 K38 R3 + 0x88180102, // 000A GETMBR R6 R0 K2 + 0x88180D1E, // 000B GETMBR R6 R6 K30 + 0x88180D1F, // 000C GETMBR R6 R6 K31 + 0x8C180D83, // 000D GETMET R6 R6 K131 + 0x5C200A00, // 000E MOVE R8 R5 + 0x5C240800, // 000F MOVE R9 R4 + 0x7C180600, // 0010 CALL R6 3 + 0x80000000, // 0011 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: reset_param +********************************************************************/ +be_local_closure(class_Matter_Device_reset_param, /* name */ + be_nested_proto( + 3, /* nstack */ + 1, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(reset_param), &be_const_str_solidified, ( &(const binstruction[ 7]) { /* code */ - 0x8808011F, // 0000 GETMBR R2 R0 K31 - 0x8C080539, // 0001 GETMET R2 R2 K57 - 0x5C100200, // 0002 MOVE R4 R1 - 0x60140013, // 0003 GETGBL R5 G19 - 0x7C140000, // 0004 CALL R5 0 - 0x7C080600, // 0005 CALL R2 3 - 0x80040400, // 0006 RET 1 R2 + 0x50040000, // 0000 LDBOOL R1 0 0 + 0x90020E01, // 0001 SETMBR R0 K7 R1 + 0x8804015F, // 0002 GETMBR R1 R0 K95 + 0x90028E01, // 0003 SETMBR R0 K71 R1 + 0x8C040108, // 0004 GETMET R1 R0 K8 + 0x7C040200, // 0005 CALL R1 1 + 0x80000000, // 0006 RET 0 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: bridge_add_endpoint +********************************************************************/ +be_local_closure(class_Matter_Device_bridge_add_endpoint, /* name */ + be_nested_proto( + 16, /* nstack */ + 3, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(bridge_add_endpoint), + &be_const_str_solidified, + ( &(const binstruction[68]) { /* code */ + 0x880C0151, // 0000 GETMBR R3 R0 K81 + 0x8C0C0716, // 0001 GETMET R3 R3 K22 + 0x5C140200, // 0002 MOVE R5 R1 + 0x7C0C0400, // 0003 CALL R3 2 + 0x4C100000, // 0004 LDNIL R4 + 0x1C100604, // 0005 EQ R4 R3 R4 + 0x78120008, // 0006 JMPF R4 #0010 + 0xB8122E00, // 0007 GETNGBL R4 K23 + 0x60140008, // 0008 GETGBL R5 G8 + 0x5C180200, // 0009 MOVE R6 R1 + 0x7C140200, // 000A CALL R5 1 + 0x00170805, // 000B ADD R5 K132 R5 + 0x00140B85, // 000C ADD R5 R5 K133 + 0x58180030, // 000D LDCONST R6 K48 + 0x7C100400, // 000E CALL R4 2 + 0x80000800, // 000F RET 0 + 0x88100147, // 0010 GETMBR R4 R0 K71 + 0x60140008, // 0011 GETGBL R5 G8 + 0x5C180800, // 0012 MOVE R6 R4 + 0x7C140200, // 0013 CALL R5 1 + 0x5C180600, // 0014 MOVE R6 R3 + 0x5C1C0000, // 0015 MOVE R7 R0 + 0x5C200800, // 0016 MOVE R8 R4 + 0x5C240400, // 0017 MOVE R9 R2 + 0x7C180600, // 0018 CALL R6 3 + 0x881C0112, // 0019 GETMBR R7 R0 K18 + 0x8C1C0F42, // 001A GETMET R7 R7 K66 + 0x5C240C00, // 001B MOVE R9 R6 + 0x7C1C0400, // 001C CALL R7 2 + 0x601C0013, // 001D GETGBL R7 G19 + 0x7C1C0000, // 001E CALL R7 0 + 0x981E1E01, // 001F SETIDX R7 K15 R1 + 0x60200010, // 0020 GETGBL R8 G16 + 0x8C240546, // 0021 GETMET R9 R2 K70 + 0x7C240200, // 0022 CALL R9 1 + 0x7C200200, // 0023 CALL R8 1 + 0xA8020004, // 0024 EXBLK 0 #002A + 0x5C241000, // 0025 MOVE R9 R8 + 0x7C240000, // 0026 CALL R9 0 + 0x94280409, // 0027 GETIDX R10 R2 R9 + 0x981C120A, // 0028 SETIDX R7 R9 R10 + 0x7001FFFA, // 0029 JMP #0025 + 0x58200011, // 002A LDCONST R8 K17 + 0xAC200200, // 002B CATCH R8 1 0 + 0xB0080000, // 002C RAISE 2 R0 R0 + 0xB8222E00, // 002D GETNGBL R8 K23 + 0x60240018, // 002E GETGBL R9 G24 + 0x58280086, // 002F LDCONST R10 K134 + 0x5C2C0800, // 0030 MOVE R11 R4 + 0x5C300200, // 0031 MOVE R12 R1 + 0x8C340187, // 0032 GETMET R13 R0 K135 + 0x5C3C0400, // 0033 MOVE R15 R2 + 0x7C340400, // 0034 CALL R13 2 + 0x7C240800, // 0035 CALL R9 4 + 0x5828001D, // 0036 LDCONST R10 K29 + 0x7C200400, // 0037 CALL R8 2 + 0x88200135, // 0038 GETMBR R8 R0 K53 + 0x98200A07, // 0039 SETIDX R8 R5 R7 + 0x50200200, // 003A LDBOOL R8 1 0 + 0x90020E08, // 003B SETMBR R0 K7 R8 + 0x88200147, // 003C GETMBR R8 R0 K71 + 0x00201114, // 003D ADD R8 R8 K20 + 0x90028E08, // 003E SETMBR R0 K71 R8 + 0x8C200108, // 003F GETMET R8 R0 K8 + 0x7C200200, // 0040 CALL R8 1 + 0x8C200188, // 0041 GETMET R8 R0 K136 + 0x7C200200, // 0042 CALL R8 1 + 0x80040800, // 0043 RET 1 R4 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: MtrInfo +********************************************************************/ +be_local_closure(class_Matter_Device_MtrInfo, /* name */ + be_nested_proto( + 10, /* nstack */ + 5, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(MtrInfo), + &be_const_str_solidified, + ( &(const binstruction[40]) { /* code */ + 0x1C14070D, // 0000 EQ R5 R3 K13 + 0x7815FFFF, // 0001 JMPF R5 #0002 + 0x1C14070D, // 0002 EQ R5 R3 K13 + 0x7816000D, // 0003 JMPF R5 #0012 + 0x60140010, // 0004 GETGBL R5 G16 + 0x88180112, // 0005 GETMBR R6 R0 K18 + 0x7C140200, // 0006 CALL R5 1 + 0xA8020005, // 0007 EXBLK 0 #000E + 0x5C180A00, // 0008 MOVE R6 R5 + 0x7C180000, // 0009 CALL R6 0 + 0x8C1C0189, // 000A GETMET R7 R0 K137 + 0x88240D24, // 000B GETMBR R9 R6 K36 + 0x7C1C0400, // 000C CALL R7 2 + 0x7001FFF9, // 000D JMP #0008 + 0x58140011, // 000E LDCONST R5 K17 + 0xAC140200, // 000F CATCH R5 1 0 + 0xB0080000, // 0010 RAISE 2 R0 R0 + 0x70020011, // 0011 JMP #0024 + 0x60140004, // 0012 GETGBL R5 G4 + 0x5C180800, // 0013 MOVE R6 R4 + 0x7C140200, // 0014 CALL R5 1 + 0x1C140B8A, // 0015 EQ R5 R5 K138 + 0x78160003, // 0016 JMPF R5 #001B + 0x8C140189, // 0017 GETMET R5 R0 K137 + 0x5C1C0800, // 0018 MOVE R7 R4 + 0x7C140400, // 0019 CALL R5 2 + 0x70020008, // 001A JMP #0024 + 0x8C14018B, // 001B GETMET R5 R0 K139 + 0x5C1C0600, // 001C MOVE R7 R3 + 0x7C140400, // 001D CALL R5 2 + 0x4C180000, // 001E LDNIL R6 + 0x20180A06, // 001F NE R6 R5 R6 + 0x781A0002, // 0020 JMPF R6 #0024 + 0x8C180189, // 0021 GETMET R6 R0 K137 + 0x88200B24, // 0022 GETMBR R8 R5 K36 + 0x7C180400, // 0023 CALL R6 2 + 0xB8167400, // 0024 GETNGBL R5 K58 + 0x8C140B8C, // 0025 GETMET R5 R5 K140 + 0x7C140200, // 0026 CALL R5 1 + 0x80000000, // 0027 RET 0 }) ) ); @@ -773,22 +2142,22 @@ be_local_closure(class_Matter_Device__start_udp, /* name */ 0x1C080202, // 0004 EQ R2 R1 R2 0x780A0000, // 0005 JMPF R2 #0007 0x540615A3, // 0006 LDINT R1 5540 - 0xB80A7400, // 0007 GETNGBL R2 K58 + 0xB80A2E00, // 0007 GETNGBL R2 K23 0x600C0008, // 0008 GETGBL R3 G8 0x5C100200, // 0009 MOVE R4 R1 0x7C0C0200, // 000A CALL R3 1 - 0x000E7603, // 000B ADD R3 K59 R3 - 0x58100021, // 000C LDCONST R4 K33 + 0x000F1A03, // 000B ADD R3 K141 R3 + 0x5810001D, // 000C LDCONST R4 K29 0x7C080400, // 000D CALL R2 2 - 0xB80A3000, // 000E GETNGBL R2 K24 - 0x8C08053C, // 000F GETMET R2 R2 K60 + 0xB80A5200, // 000E GETNGBL R2 K41 + 0x8C08058E, // 000F GETMET R2 R2 K142 0x5C100000, // 0010 MOVE R4 R0 - 0x58140010, // 0011 LDCONST R5 K16 + 0x5814000D, // 0011 LDCONST R5 K13 0x5C180200, // 0012 MOVE R6 R1 0x7C080800, // 0013 CALL R2 4 0x90020002, // 0014 SETMBR R0 K0 R2 0x88080100, // 0015 GETMBR R2 R0 K0 - 0x8C08052F, // 0016 GETMET R2 R2 K47 + 0x8C08056D, // 0016 GETMET R2 R2 K109 0x84100000, // 0017 CLOSURE R4 P0 0x7C080400, // 0018 CALL R2 2 0xA0000000, // 0019 CLOSE R0 @@ -799,1847 +2168,6 @@ be_local_closure(class_Matter_Device__start_udp, /* name */ /*******************************************************************/ -/******************************************************************** -** Solidified function: remove_fabric -********************************************************************/ -be_local_closure(class_Matter_Device_remove_fabric, /* name */ - be_nested_proto( - 5, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(remove_fabric), - &be_const_str_solidified, - ( &(const binstruction[33]) { /* code */ - 0x4C080000, // 0000 LDNIL R2 - 0x20080202, // 0001 NE R2 R1 R2 - 0x780A0019, // 0002 JMPF R2 #001D - 0xB80A7400, // 0003 GETNGBL R2 K58 - 0x8C0C033E, // 0004 GETMET R3 R1 K62 - 0x7C0C0200, // 0005 CALL R3 1 - 0x8C0C073F, // 0006 GETMET R3 R3 K63 - 0x7C0C0200, // 0007 CALL R3 1 - 0x8C0C0740, // 0008 GETMET R3 R3 K64 - 0x7C0C0200, // 0009 CALL R3 1 - 0x8C0C0741, // 000A GETMET R3 R3 K65 - 0x7C0C0200, // 000B CALL R3 1 - 0x000E7A03, // 000C ADD R3 K61 R3 - 0x58100021, // 000D LDCONST R4 K33 - 0x7C080400, // 000E CALL R2 2 - 0x88080127, // 000F GETMBR R2 R0 K39 - 0x88080542, // 0010 GETMBR R2 R2 K66 - 0x88080543, // 0011 GETMBR R2 R2 K67 - 0x8C080544, // 0012 GETMET R2 R2 K68 - 0x5C100200, // 0013 MOVE R4 R1 - 0x7C080400, // 0014 CALL R2 2 - 0x88080106, // 0015 GETMBR R2 R0 K6 - 0x8C080545, // 0016 GETMET R2 R2 K69 - 0x5C100200, // 0017 MOVE R4 R1 - 0x7C080400, // 0018 CALL R2 2 - 0x88080108, // 0019 GETMBR R2 R0 K8 - 0x8C080546, // 001A GETMET R2 R2 K70 - 0x5C100200, // 001B MOVE R4 R1 - 0x7C080400, // 001C CALL R2 2 - 0x88080108, // 001D GETMBR R2 R0 K8 - 0x8C080547, // 001E GETMET R2 R2 K71 - 0x7C080200, // 001F CALL R2 1 - 0x80000000, // 0020 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: resolve_attribute_read_solo -********************************************************************/ -be_local_closure(class_Matter_Device_resolve_attribute_read_solo, /* name */ - be_nested_proto( - 10, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(resolve_attribute_read_solo), - &be_const_str_solidified, - ( &(const binstruction[47]) { /* code */ - 0x88080348, // 0000 GETMBR R2 R1 K72 - 0x880C0349, // 0001 GETMBR R3 R1 K73 - 0x8810034A, // 0002 GETMBR R4 R1 K74 - 0x4C140000, // 0003 LDNIL R5 - 0x1C140405, // 0004 EQ R5 R2 R5 - 0x74160005, // 0005 JMPT R5 #000C - 0x4C140000, // 0006 LDNIL R5 - 0x1C140605, // 0007 EQ R5 R3 R5 - 0x74160002, // 0008 JMPT R5 #000C - 0x4C140000, // 0009 LDNIL R5 - 0x1C140805, // 000A EQ R5 R4 R5 - 0x78160001, // 000B JMPF R5 #000E - 0x4C140000, // 000C LDNIL R5 - 0x80040A00, // 000D RET 1 R5 - 0x8C14014B, // 000E GETMET R5 R0 K75 - 0x5C1C0400, // 000F MOVE R7 R2 - 0x7C140400, // 0010 CALL R5 2 - 0x4C180000, // 0011 LDNIL R6 - 0x1C180A06, // 0012 EQ R6 R5 R6 - 0x781A0005, // 0013 JMPF R6 #001A - 0xB81A3000, // 0014 GETNGBL R6 K24 - 0x88180D4D, // 0015 GETMBR R6 R6 K77 - 0x90069806, // 0016 SETMBR R1 K76 R6 - 0x4C180000, // 0017 LDNIL R6 - 0x80040C00, // 0018 RET 1 R6 - 0x70020013, // 0019 JMP #002E - 0x8C180B4E, // 001A GETMET R6 R5 K78 - 0x5C200600, // 001B MOVE R8 R3 - 0x7C180400, // 001C CALL R6 2 - 0x741A0005, // 001D JMPT R6 #0024 - 0xB81A3000, // 001E GETNGBL R6 K24 - 0x88180D4F, // 001F GETMBR R6 R6 K79 - 0x90069806, // 0020 SETMBR R1 K76 R6 - 0x4C180000, // 0021 LDNIL R6 - 0x80040C00, // 0022 RET 1 R6 - 0x70020009, // 0023 JMP #002E - 0x8C180B50, // 0024 GETMET R6 R5 K80 - 0x5C200600, // 0025 MOVE R8 R3 - 0x5C240800, // 0026 MOVE R9 R4 - 0x7C180600, // 0027 CALL R6 3 - 0x741A0004, // 0028 JMPT R6 #002E - 0xB81A3000, // 0029 GETNGBL R6 K24 - 0x88180D51, // 002A GETMBR R6 R6 K81 - 0x90069806, // 002B SETMBR R1 K76 R6 - 0x4C180000, // 002C LDNIL R6 - 0x80040C00, // 002D RET 1 R6 - 0x80040A00, // 002E RET 1 R5 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: signal_endpoints_changed -********************************************************************/ -be_local_closure(class_Matter_Device_signal_endpoints_changed, /* name */ - be_nested_proto( - 7, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(signal_endpoints_changed), - &be_const_str_solidified, - ( &(const binstruction[14]) { /* code */ - 0x8C040152, // 0000 GETMET R1 R0 K82 - 0x580C000A, // 0001 LDCONST R3 K10 - 0x5412001C, // 0002 LDINT R4 29 - 0x58140053, // 0003 LDCONST R5 K83 - 0x50180000, // 0004 LDBOOL R6 0 0 - 0x7C040A00, // 0005 CALL R1 5 - 0x8C040152, // 0006 GETMET R1 R0 K82 - 0xB80E3000, // 0007 GETNGBL R3 K24 - 0x880C0754, // 0008 GETMBR R3 R3 K84 - 0x5412001C, // 0009 LDINT R4 29 - 0x58140053, // 000A LDCONST R5 K83 - 0x50180000, // 000B LDBOOL R6 0 0 - 0x7C040A00, // 000C CALL R1 5 - 0x80000000, // 000D RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: autoconf_device -********************************************************************/ -be_local_closure(class_Matter_Device_autoconf_device, /* name */ - be_nested_proto( - 5, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(autoconf_device), - &be_const_str_solidified, - ( &(const binstruction[39]) { /* code */ - 0xA406AA00, // 0000 IMPORT R1 K85 - 0x6008000C, // 0001 GETGBL R2 G12 - 0x880C011E, // 0002 GETMBR R3 R0 K30 - 0x7C080200, // 0003 CALL R2 1 - 0x2408050A, // 0004 GT R2 R2 K10 - 0x780A0000, // 0005 JMPF R2 #0007 - 0x80000400, // 0006 RET 0 - 0x8808010B, // 0007 GETMBR R2 R0 K11 - 0x740A000E, // 0008 JMPT R2 #0018 - 0x8C080157, // 0009 GETMET R2 R0 K87 - 0x7C080200, // 000A CALL R2 1 - 0x9002AC02, // 000B SETMBR R0 K86 R2 - 0x60080013, // 000C GETGBL R2 G19 - 0x7C080000, // 000D CALL R2 0 - 0x90023E02, // 000E SETMBR R0 K31 R2 - 0x8C080158, // 000F GETMET R2 R0 K88 - 0x7C080200, // 0010 CALL R2 1 - 0xB80A7400, // 0011 GETNGBL R2 K58 - 0x600C0008, // 0012 GETGBL R3 G8 - 0x88100156, // 0013 GETMBR R4 R0 K86 - 0x7C0C0200, // 0014 CALL R3 1 - 0x000EB203, // 0015 ADD R3 K89 R3 - 0x58100053, // 0016 LDCONST R4 K83 - 0x7C080400, // 0017 CALL R2 2 - 0x8C08015A, // 0018 GETMET R2 R0 K90 - 0x88100156, // 0019 GETMBR R4 R0 K86 - 0x7C080400, // 001A CALL R2 2 - 0x8808010B, // 001B GETMBR R2 R0 K11 - 0x740A0008, // 001C JMPT R2 #0026 - 0x88080108, // 001D GETMBR R2 R0 K8 - 0x8C080509, // 001E GETMET R2 R2 K9 - 0x7C080200, // 001F CALL R2 1 - 0x2408050A, // 0020 GT R2 R2 K10 - 0x780A0003, // 0021 JMPF R2 #0026 - 0x50080200, // 0022 LDBOOL R2 1 0 - 0x90021602, // 0023 SETMBR R0 K11 R2 - 0x8C08010C, // 0024 GETMET R2 R0 K12 - 0x7C080200, // 0025 CALL R2 1 - 0x80000000, // 0026 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: _trigger_read_sensors -********************************************************************/ -be_local_closure(class_Matter_Device__trigger_read_sensors, /* name */ - be_nested_proto( - 8, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(_trigger_read_sensors), - &be_const_str_solidified, - ( &(const binstruction[48]) { /* code */ - 0xA406AA00, // 0000 IMPORT R1 K85 - 0xB80A2C00, // 0001 GETNGBL R2 K22 - 0x8C08055B, // 0002 GETMET R2 R2 K91 - 0x7C080200, // 0003 CALL R2 1 - 0xB80E2C00, // 0004 GETNGBL R3 K22 - 0x8C0C075C, // 0005 GETMET R3 R3 K92 - 0x58140053, // 0006 LDCONST R5 K83 - 0x7C0C0400, // 0007 CALL R3 2 - 0x780E0006, // 0008 JMPF R3 #0010 - 0xB80E7400, // 0009 GETNGBL R3 K58 - 0x60100008, // 000A GETGBL R4 G8 - 0x5C140400, // 000B MOVE R5 R2 - 0x7C100200, // 000C CALL R4 1 - 0x0012BA04, // 000D ADD R4 K93 R4 - 0x58140053, // 000E LDCONST R5 K83 - 0x7C0C0400, // 000F CALL R3 2 - 0x4C0C0000, // 0010 LDNIL R3 - 0x1C0C0403, // 0011 EQ R3 R2 R3 - 0x780E0000, // 0012 JMPF R3 #0014 - 0x80000600, // 0013 RET 0 - 0x8C0C035E, // 0014 GETMET R3 R1 K94 - 0x5C140400, // 0015 MOVE R5 R2 - 0x7C0C0400, // 0016 CALL R3 2 - 0x4C100000, // 0017 LDNIL R4 - 0x20100604, // 0018 NE R4 R3 R4 - 0x7812000D, // 0019 JMPF R4 #0028 - 0x5810000A, // 001A LDCONST R4 K10 - 0x6014000C, // 001B GETGBL R5 G12 - 0x8818011E, // 001C GETMBR R6 R0 K30 - 0x7C140200, // 001D CALL R5 1 - 0x14140805, // 001E LT R5 R4 R5 - 0x78160006, // 001F JMPF R5 #0027 - 0x8814011E, // 0020 GETMBR R5 R0 K30 - 0x94140A04, // 0021 GETIDX R5 R5 R4 - 0x8C140B5F, // 0022 GETMET R5 R5 K95 - 0x5C1C0600, // 0023 MOVE R7 R3 - 0x7C140400, // 0024 CALL R5 2 - 0x00100938, // 0025 ADD R4 R4 K56 - 0x7001FFF3, // 0026 JMP #001B - 0x70020006, // 0027 JMP #002F - 0xB8127400, // 0028 GETNGBL R4 K58 - 0x60140008, // 0029 GETGBL R5 G8 - 0x5C180400, // 002A MOVE R6 R2 - 0x7C140200, // 002B CALL R5 1 - 0x0016C005, // 002C ADD R5 K96 R5 - 0x58180053, // 002D LDCONST R6 K83 - 0x7C100400, // 002E CALL R4 2 - 0x80000000, // 002F RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: get_active_endpoints -********************************************************************/ -be_local_closure(class_Matter_Device_get_active_endpoints, /* name */ - be_nested_proto( - 9, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(get_active_endpoints), - &be_const_str_solidified, - ( &(const binstruction[28]) { /* code */ - 0x60080012, // 0000 GETGBL R2 G18 - 0x7C080000, // 0001 CALL R2 0 - 0x600C0010, // 0002 GETGBL R3 G16 - 0x8810011E, // 0003 GETMBR R4 R0 K30 - 0x7C0C0200, // 0004 CALL R3 1 - 0xA8020011, // 0005 EXBLK 0 #0018 - 0x5C100600, // 0006 MOVE R4 R3 - 0x7C100000, // 0007 CALL R4 0 - 0x8C140961, // 0008 GETMET R5 R4 K97 - 0x7C140200, // 0009 CALL R5 1 - 0x78060002, // 000A JMPF R1 #000E - 0x1C180B0A, // 000B EQ R6 R5 K10 - 0x781A0000, // 000C JMPF R6 #000E - 0x7001FFF7, // 000D JMP #0006 - 0x8C180539, // 000E GETMET R6 R2 K57 - 0x5C200A00, // 000F MOVE R8 R5 - 0x7C180400, // 0010 CALL R6 2 - 0x4C1C0000, // 0011 LDNIL R7 - 0x1C180C07, // 0012 EQ R6 R6 R7 - 0x781A0002, // 0013 JMPF R6 #0017 - 0x8C180562, // 0014 GETMET R6 R2 K98 - 0x5C200A00, // 0015 MOVE R8 R5 - 0x7C180400, // 0016 CALL R6 2 - 0x7001FFED, // 0017 JMP #0006 - 0x580C0014, // 0018 LDCONST R3 K20 - 0xAC0C0200, // 0019 CATCH R3 1 0 - 0xB0080000, // 001A RAISE 2 R0 R0 - 0x80040400, // 001B RET 1 R2 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: msg_send -********************************************************************/ -be_local_closure(class_Matter_Device_msg_send, /* name */ - be_nested_proto( - 5, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(msg_send), - &be_const_str_solidified, - ( &(const binstruction[ 5]) { /* code */ - 0x88080100, // 0000 GETMBR R2 R0 K0 - 0x8C080563, // 0001 GETMET R2 R2 K99 - 0x5C100200, // 0002 MOVE R4 R1 - 0x7C080400, // 0003 CALL R2 2 - 0x80040400, // 0004 RET 1 R2 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: stop -********************************************************************/ -be_local_closure(class_Matter_Device_stop, /* name */ - be_nested_proto( - 4, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(stop), - &be_const_str_solidified, - ( &(const binstruction[10]) { /* code */ - 0xB8062C00, // 0000 GETNGBL R1 K22 - 0x8C040364, // 0001 GETMET R1 R1 K100 - 0x5C0C0000, // 0002 MOVE R3 R0 - 0x7C040400, // 0003 CALL R1 2 - 0x88040100, // 0004 GETMBR R1 R0 K0 - 0x78060002, // 0005 JMPF R1 #0009 - 0x88040100, // 0006 GETMBR R1 R0 K0 - 0x8C040365, // 0007 GETMET R1 R1 K101 - 0x7C040200, // 0008 CALL R1 1 - 0x80000000, // 0009 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: adjust_next_ep -********************************************************************/ -be_local_closure(class_Matter_Device_adjust_next_ep, /* name */ - be_nested_proto( - 5, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(adjust_next_ep), - &be_const_str_solidified, - ( &(const binstruction[21]) { /* code */ - 0x60040010, // 0000 GETGBL R1 G16 - 0x88080156, // 0001 GETMBR R2 R0 K86 - 0x8C080566, // 0002 GETMET R2 R2 K102 - 0x7C080200, // 0003 CALL R2 1 - 0x7C040200, // 0004 CALL R1 1 - 0xA802000A, // 0005 EXBLK 0 #0011 - 0x5C080200, // 0006 MOVE R2 R1 - 0x7C080000, // 0007 CALL R2 0 - 0x600C0009, // 0008 GETGBL R3 G9 - 0x5C100400, // 0009 MOVE R4 R2 - 0x7C0C0200, // 000A CALL R3 1 - 0x88100120, // 000B GETMBR R4 R0 K32 - 0x28100604, // 000C GE R4 R3 R4 - 0x78120001, // 000D JMPF R4 #0010 - 0x00100738, // 000E ADD R4 R3 K56 - 0x90024004, // 000F SETMBR R0 K32 R4 - 0x7001FFF4, // 0010 JMP #0006 - 0x58040014, // 0011 LDCONST R1 K20 - 0xAC040200, // 0012 CATCH R1 1 0 - 0xB0080000, // 0013 RAISE 2 R0 R0 - 0x80000000, // 0014 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: add_read_sensors_schedule -********************************************************************/ -be_local_closure(class_Matter_Device_add_read_sensors_schedule, /* name */ - be_nested_proto( - 5, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(add_read_sensors_schedule), - &be_const_str_solidified, - ( &(const binstruction[14]) { /* code */ - 0x88080167, // 0000 GETMBR R2 R0 K103 - 0x4C0C0000, // 0001 LDNIL R3 - 0x1C080403, // 0002 EQ R2 R2 R3 - 0x740A0002, // 0003 JMPT R2 #0007 - 0x88080167, // 0004 GETMBR R2 R0 K103 - 0x24080401, // 0005 GT R2 R2 R1 - 0x780A0005, // 0006 JMPF R2 #000D - 0x9002CE01, // 0007 SETMBR R0 K103 R1 - 0xB80A3000, // 0008 GETNGBL R2 K24 - 0x8C080569, // 0009 GETMET R2 R2 K105 - 0x5C100200, // 000A MOVE R4 R1 - 0x7C080400, // 000B CALL R2 2 - 0x9002D002, // 000C SETMBR R0 K104 R2 - 0x80000000, // 000D RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: button_pressed -********************************************************************/ -be_local_closure(class_Matter_Device_button_pressed, /* name */ - be_nested_proto( - 13, /* nstack */ - 3, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(button_pressed), - &be_const_str_solidified, - ( &(const binstruction[28]) { /* code */ - 0x540E000F, // 0000 LDINT R3 16 - 0x3C0C0403, // 0001 SHR R3 R2 R3 - 0x541200FE, // 0002 LDINT R4 255 - 0x2C0C0604, // 0003 AND R3 R3 R4 - 0x54120007, // 0004 LDINT R4 8 - 0x3C100404, // 0005 SHR R4 R2 R4 - 0x541600FE, // 0006 LDINT R5 255 - 0x2C100805, // 0007 AND R4 R4 R5 - 0x541600FE, // 0008 LDINT R5 255 - 0x2C140405, // 0009 AND R5 R2 R5 - 0x541A0017, // 000A LDINT R6 24 - 0x3C180406, // 000B SHR R6 R2 R6 - 0x541E00FE, // 000C LDINT R7 255 - 0x2C180C07, // 000D AND R6 R6 R7 - 0x8C1C016A, // 000E GETMET R7 R0 K106 - 0x00240B38, // 000F ADD R9 R5 K56 - 0x20280604, // 0010 NE R10 R3 R4 - 0x782A0001, // 0011 JMPF R10 #0014 - 0x58280038, // 0012 LDCONST R10 K56 - 0x70020000, // 0013 JMP #0015 - 0x5828000A, // 0014 LDCONST R10 K10 - 0x780E0001, // 0015 JMPF R3 #0018 - 0x582C000A, // 0016 LDCONST R11 K10 - 0x70020000, // 0017 JMP #0019 - 0x582C0038, // 0018 LDCONST R11 K56 - 0x5C300C00, // 0019 MOVE R12 R6 - 0x7C1C0A00, // 001A CALL R7 5 - 0x80000000, // 001B RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: register_http_remote -********************************************************************/ -be_local_closure(class_Matter_Device_register_http_remote, /* name */ - be_nested_proto( - 9, /* nstack */ - 3, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(register_http_remote), - &be_const_str_solidified, - ( &(const binstruction[42]) { /* code */ - 0x880C016B, // 0000 GETMBR R3 R0 K107 - 0x4C100000, // 0001 LDNIL R4 - 0x1C0C0604, // 0002 EQ R3 R3 R4 - 0x780E0002, // 0003 JMPF R3 #0007 - 0x600C0013, // 0004 GETGBL R3 G19 - 0x7C0C0000, // 0005 CALL R3 0 - 0x9002D603, // 0006 SETMBR R0 K107 R3 - 0x4C0C0000, // 0007 LDNIL R3 - 0x8810016B, // 0008 GETMBR R4 R0 K107 - 0x8C10096C, // 0009 GETMET R4 R4 K108 - 0x5C180200, // 000A MOVE R6 R1 - 0x7C100400, // 000B CALL R4 2 - 0x78120009, // 000C JMPF R4 #0017 - 0x8810016B, // 000D GETMBR R4 R0 K107 - 0x940C0801, // 000E GETIDX R3 R4 R1 - 0x8C14076D, // 000F GETMET R5 R3 K109 - 0x7C140200, // 0010 CALL R5 1 - 0x14140405, // 0011 LT R5 R2 R5 - 0x78160002, // 0012 JMPF R5 #0016 - 0x8C14076E, // 0013 GETMET R5 R3 K110 - 0x5C1C0400, // 0014 MOVE R7 R2 - 0x7C140400, // 0015 CALL R5 2 - 0x70020011, // 0016 JMP #0029 - 0xB8123000, // 0017 GETNGBL R4 K24 - 0x8C10096F, // 0018 GETMET R4 R4 K111 - 0x5C180000, // 0019 MOVE R6 R0 - 0x5C1C0200, // 001A MOVE R7 R1 - 0x5C200400, // 001B MOVE R8 R2 - 0x7C100800, // 001C CALL R4 4 - 0x5C0C0800, // 001D MOVE R3 R4 - 0x8810011F, // 001E GETMBR R4 R0 K31 - 0x8C10096C, // 001F GETMET R4 R4 K108 - 0x5C180200, // 0020 MOVE R6 R1 - 0x7C100400, // 0021 CALL R4 2 - 0x78120003, // 0022 JMPF R4 #0027 - 0x8C100770, // 0023 GETMET R4 R3 K112 - 0x8818011F, // 0024 GETMBR R6 R0 K31 - 0x94180C01, // 0025 GETIDX R6 R6 R1 - 0x7C100400, // 0026 CALL R4 2 - 0x8810016B, // 0027 GETMBR R4 R0 K107 - 0x98100203, // 0028 SETIDX R4 R1 R3 - 0x80040600, // 0029 RET 1 R3 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: _instantiate_plugins_from_config -********************************************************************/ -be_local_closure(class_Matter_Device__instantiate_plugins_from_config, /* name */ - be_nested_proto( - 17, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(_instantiate_plugins_from_config), - &be_const_str_solidified, - ( &(const binstruction[146]) { /* code */ - 0x8C080171, // 0000 GETMET R2 R0 K113 - 0x5C100200, // 0001 MOVE R4 R1 - 0x7C080400, // 0002 CALL R2 2 - 0x880C011E, // 0003 GETMBR R3 R0 K30 - 0x8C0C0762, // 0004 GETMET R3 R3 K98 - 0xB8163000, // 0005 GETNGBL R5 K24 - 0x8C140B72, // 0006 GETMET R5 R5 K114 - 0x5C1C0000, // 0007 MOVE R7 R0 - 0x5820000A, // 0008 LDCONST R8 K10 - 0x60240013, // 0009 GETGBL R9 G19 - 0x7C240000, // 000A CALL R9 0 - 0x7C140800, // 000B CALL R5 4 - 0x7C0C0400, // 000C CALL R3 2 - 0xB80E7400, // 000D GETNGBL R3 K58 - 0x58100073, // 000E LDCONST R4 K115 - 0x58140021, // 000F LDCONST R5 K33 - 0x7C0C0400, // 0010 CALL R3 2 - 0xB80E7400, // 0011 GETNGBL R3 K58 - 0x60100018, // 0012 GETGBL R4 G24 - 0x58140074, // 0013 LDCONST R5 K116 - 0x5818000A, // 0014 LDCONST R6 K10 - 0x581C0075, // 0015 LDCONST R7 K117 - 0x58200010, // 0016 LDCONST R8 K16 - 0x7C100800, // 0017 CALL R4 4 - 0x58140021, // 0018 LDCONST R5 K33 - 0x7C0C0400, // 0019 CALL R3 2 - 0x880C011E, // 001A GETMBR R3 R0 K30 - 0x8C0C0762, // 001B GETMET R3 R3 K98 - 0xB8163000, // 001C GETNGBL R5 K24 - 0x8C140B76, // 001D GETMET R5 R5 K118 - 0x5C1C0000, // 001E MOVE R7 R0 - 0xB8223000, // 001F GETNGBL R8 K24 - 0x88201154, // 0020 GETMBR R8 R8 K84 - 0x60240013, // 0021 GETGBL R9 G19 - 0x7C240000, // 0022 CALL R9 0 - 0x7C140800, // 0023 CALL R5 4 - 0x7C0C0400, // 0024 CALL R3 2 - 0xB80E7400, // 0025 GETNGBL R3 K58 - 0x60100018, // 0026 GETGBL R4 G24 - 0x58140074, // 0027 LDCONST R5 K116 - 0xB81A3000, // 0028 GETNGBL R6 K24 - 0x88180D54, // 0029 GETMBR R6 R6 K84 - 0x581C0077, // 002A LDCONST R7 K119 - 0x58200010, // 002B LDCONST R8 K16 - 0x7C100800, // 002C CALL R4 4 - 0x58140021, // 002D LDCONST R5 K33 - 0x7C0C0400, // 002E CALL R3 2 - 0x600C0010, // 002F GETGBL R3 G16 - 0x5C100400, // 0030 MOVE R4 R2 - 0x7C0C0200, // 0031 CALL R3 1 - 0xA8020055, // 0032 EXBLK 0 #0089 - 0x5C100600, // 0033 MOVE R4 R3 - 0x7C100000, // 0034 CALL R4 0 - 0x1C14090A, // 0035 EQ R5 R4 K10 - 0x78160000, // 0036 JMPF R5 #0038 - 0x7001FFFA, // 0037 JMP #0033 - 0xA802003E, // 0038 EXBLK 0 #0078 - 0x60140008, // 0039 GETGBL R5 G8 - 0x5C180800, // 003A MOVE R6 R4 - 0x7C140200, // 003B CALL R5 1 - 0x94140205, // 003C GETIDX R5 R1 R5 - 0x8C180B39, // 003D GETMET R6 R5 K57 - 0x58200012, // 003E LDCONST R8 K18 - 0x7C180400, // 003F CALL R6 2 - 0x4C1C0000, // 0040 LDNIL R7 - 0x1C1C0C07, // 0041 EQ R7 R6 R7 - 0x781E0005, // 0042 JMPF R7 #0049 - 0xB81E7400, // 0043 GETNGBL R7 K58 - 0x58200078, // 0044 LDCONST R8 K120 - 0x58240053, // 0045 LDCONST R9 K83 - 0x7C1C0400, // 0046 CALL R7 2 - 0xA8040001, // 0047 EXBLK 1 1 - 0x7001FFE9, // 0048 JMP #0033 - 0x1C1C0D75, // 0049 EQ R7 R6 K117 - 0x781E0005, // 004A JMPF R7 #0051 - 0xB81E7400, // 004B GETNGBL R7 K58 - 0x58200079, // 004C LDCONST R8 K121 - 0x58240053, // 004D LDCONST R9 K83 - 0x7C1C0400, // 004E CALL R7 2 - 0xA8040001, // 004F EXBLK 1 1 - 0x7001FFE1, // 0050 JMP #0033 - 0x881C017A, // 0051 GETMBR R7 R0 K122 - 0x8C1C0F39, // 0052 GETMET R7 R7 K57 - 0x5C240C00, // 0053 MOVE R9 R6 - 0x7C1C0400, // 0054 CALL R7 2 - 0x4C200000, // 0055 LDNIL R8 - 0x1C200E08, // 0056 EQ R8 R7 R8 - 0x78220009, // 0057 JMPF R8 #0062 - 0xB8227400, // 0058 GETNGBL R8 K58 - 0x60240008, // 0059 GETGBL R9 G8 - 0x5C280C00, // 005A MOVE R10 R6 - 0x7C240200, // 005B CALL R9 1 - 0x0026F609, // 005C ADD R9 K123 R9 - 0x0024137C, // 005D ADD R9 R9 K124 - 0x58280021, // 005E LDCONST R10 K33 - 0x7C200400, // 005F CALL R8 2 - 0xA8040001, // 0060 EXBLK 1 1 - 0x7001FFD0, // 0061 JMP #0033 - 0x5C200E00, // 0062 MOVE R8 R7 - 0x5C240000, // 0063 MOVE R9 R0 - 0x5C280800, // 0064 MOVE R10 R4 - 0x5C2C0A00, // 0065 MOVE R11 R5 - 0x7C200600, // 0066 CALL R8 3 - 0x8824011E, // 0067 GETMBR R9 R0 K30 - 0x8C241362, // 0068 GETMET R9 R9 K98 - 0x5C2C1000, // 0069 MOVE R11 R8 - 0x7C240400, // 006A CALL R9 2 - 0xB8267400, // 006B GETNGBL R9 K58 - 0x60280018, // 006C GETGBL R10 G24 - 0x582C0074, // 006D LDCONST R11 K116 - 0x5C300800, // 006E MOVE R12 R4 - 0x5C340C00, // 006F MOVE R13 R6 - 0x8C38017D, // 0070 GETMET R14 R0 K125 - 0x5C400A00, // 0071 MOVE R16 R5 - 0x7C380400, // 0072 CALL R14 2 - 0x7C280800, // 0073 CALL R10 4 - 0x582C0021, // 0074 LDCONST R11 K33 - 0x7C240400, // 0075 CALL R9 2 - 0xA8040001, // 0076 EXBLK 1 1 - 0x7002000F, // 0077 JMP #0088 - 0xAC140002, // 0078 CATCH R5 0 2 - 0x7002000C, // 0079 JMP #0087 - 0xB81E7400, // 007A GETNGBL R7 K58 - 0x60200008, // 007B GETGBL R8 G8 - 0x5C240A00, // 007C MOVE R9 R5 - 0x7C200200, // 007D CALL R8 1 - 0x0022FC08, // 007E ADD R8 K126 R8 - 0x0020117F, // 007F ADD R8 R8 K127 - 0x60240008, // 0080 GETGBL R9 G8 - 0x5C280C00, // 0081 MOVE R10 R6 - 0x7C240200, // 0082 CALL R9 1 - 0x00201009, // 0083 ADD R8 R8 R9 - 0x58240021, // 0084 LDCONST R9 K33 - 0x7C1C0400, // 0085 CALL R7 2 - 0x70020000, // 0086 JMP #0088 - 0xB0080000, // 0087 RAISE 2 R0 R0 - 0x7001FFA9, // 0088 JMP #0033 - 0x580C0014, // 0089 LDCONST R3 K20 - 0xAC0C0200, // 008A CATCH R3 1 0 - 0xB0080000, // 008B RAISE 2 R0 R0 - 0xB80E2C00, // 008C GETNGBL R3 K22 - 0x8C0C0780, // 008D GETMET R3 R3 K128 - 0x58140081, // 008E LDCONST R5 K129 - 0x58180082, // 008F LDCONST R6 K130 - 0x7C0C0600, // 0090 CALL R3 3 - 0x80000000, // 0091 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: sort_distinct -********************************************************************/ -be_local_closure(class_Matter_Device_sort_distinct, /* name */ - be_nested_proto( - 7, /* nstack */ - 1, /* argc */ - 12, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(sort_distinct), - &be_const_str_solidified, - ( &(const binstruction[53]) { /* code */ - 0x5804000F, // 0000 LDCONST R1 K15 - 0x60080010, // 0001 GETGBL R2 G16 - 0x600C000C, // 0002 GETGBL R3 G12 - 0x5C100000, // 0003 MOVE R4 R0 - 0x7C0C0200, // 0004 CALL R3 1 - 0x040C0738, // 0005 SUB R3 R3 K56 - 0x400E7003, // 0006 CONNECT R3 K56 R3 - 0x7C080200, // 0007 CALL R2 1 - 0xA8020010, // 0008 EXBLK 0 #001A - 0x5C0C0400, // 0009 MOVE R3 R2 - 0x7C0C0000, // 000A CALL R3 0 - 0x94100003, // 000B GETIDX R4 R0 R3 - 0x5C140600, // 000C MOVE R5 R3 - 0x24180B0A, // 000D GT R6 R5 K10 - 0x781A0008, // 000E JMPF R6 #0018 - 0x04180B38, // 000F SUB R6 R5 K56 - 0x94180006, // 0010 GETIDX R6 R0 R6 - 0x24180C04, // 0011 GT R6 R6 R4 - 0x781A0004, // 0012 JMPF R6 #0018 - 0x04180B38, // 0013 SUB R6 R5 K56 - 0x94180006, // 0014 GETIDX R6 R0 R6 - 0x98000A06, // 0015 SETIDX R0 R5 R6 - 0x04140B38, // 0016 SUB R5 R5 K56 - 0x7001FFF4, // 0017 JMP #000D - 0x98000A04, // 0018 SETIDX R0 R5 R4 - 0x7001FFEE, // 0019 JMP #0009 - 0x58080014, // 001A LDCONST R2 K20 - 0xAC080200, // 001B CATCH R2 1 0 - 0xB0080000, // 001C RAISE 2 R0 R0 - 0x58080038, // 001D LDCONST R2 K56 - 0x600C000C, // 001E GETGBL R3 G12 - 0x5C100000, // 001F MOVE R4 R0 - 0x7C0C0200, // 0020 CALL R3 1 - 0x180C0738, // 0021 LE R3 R3 K56 - 0x780E0000, // 0022 JMPF R3 #0024 - 0x80040000, // 0023 RET 1 R0 - 0x940C010A, // 0024 GETIDX R3 R0 K10 - 0x6010000C, // 0025 GETGBL R4 G12 - 0x5C140000, // 0026 MOVE R5 R0 - 0x7C100200, // 0027 CALL R4 1 - 0x14100404, // 0028 LT R4 R2 R4 - 0x78120009, // 0029 JMPF R4 #0034 - 0x94100002, // 002A GETIDX R4 R0 R2 - 0x1C100803, // 002B EQ R4 R4 R3 - 0x78120003, // 002C JMPF R4 #0031 - 0x8C100183, // 002D GETMET R4 R0 K131 - 0x5C180400, // 002E MOVE R6 R2 - 0x7C100400, // 002F CALL R4 2 - 0x70020001, // 0030 JMP #0033 - 0x940C0002, // 0031 GETIDX R3 R0 R2 - 0x00080538, // 0032 ADD R2 R2 K56 - 0x7001FFF0, // 0033 JMP #0025 - 0x80040000, // 0034 RET 1 R0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: get_plugin_class_displayname -********************************************************************/ -be_local_closure(class_Matter_Device_get_plugin_class_displayname, /* name */ - be_nested_proto( - 5, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(get_plugin_class_displayname), - &be_const_str_solidified, - ( &(const binstruction[ 9]) { /* code */ - 0x8808017A, // 0000 GETMBR R2 R0 K122 - 0x8C080539, // 0001 GETMET R2 R2 K57 - 0x5C100200, // 0002 MOVE R4 R1 - 0x7C080400, // 0003 CALL R2 2 - 0x780A0001, // 0004 JMPF R2 #0007 - 0x880C0584, // 0005 GETMBR R3 R2 K132 - 0x70020000, // 0006 JMP #0008 - 0x580C0010, // 0007 LDCONST R3 K16 - 0x80040600, // 0008 RET 1 R3 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: find_plugin_by_endpoint -********************************************************************/ -be_local_closure(class_Matter_Device_find_plugin_by_endpoint, /* name */ - be_nested_proto( - 6, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(find_plugin_by_endpoint), - &be_const_str_solidified, - ( &(const binstruction[17]) { /* code */ - 0x5808000A, // 0000 LDCONST R2 K10 - 0x600C000C, // 0001 GETGBL R3 G12 - 0x8810011E, // 0002 GETMBR R4 R0 K30 - 0x7C0C0200, // 0003 CALL R3 1 - 0x140C0403, // 0004 LT R3 R2 R3 - 0x780E0008, // 0005 JMPF R3 #000F - 0x880C011E, // 0006 GETMBR R3 R0 K30 - 0x940C0602, // 0007 GETIDX R3 R3 R2 - 0x8C100761, // 0008 GETMET R4 R3 K97 - 0x7C100200, // 0009 CALL R4 1 - 0x1C100801, // 000A EQ R4 R4 R1 - 0x78120000, // 000B JMPF R4 #000D - 0x80040600, // 000C RET 1 R3 - 0x00080538, // 000D ADD R2 R2 K56 - 0x7001FFF1, // 000E JMP #0001 - 0x4C0C0000, // 000F LDNIL R3 - 0x80040600, // 0010 RET 1 R3 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: clean_remotes -********************************************************************/ -be_local_closure(class_Matter_Device_clean_remotes, /* name */ - be_nested_proto( - 10, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(clean_remotes), - &be_const_str_solidified, - ( &(const binstruction[80]) { /* code */ - 0xA4070A00, // 0000 IMPORT R1 K133 - 0x8808016B, // 0001 GETMBR R2 R0 K107 - 0x780A004B, // 0002 JMPF R2 #004F - 0x60080013, // 0003 GETGBL R2 G19 - 0x7C080000, // 0004 CALL R2 0 - 0x600C0010, // 0005 GETGBL R3 G16 - 0x8810016B, // 0006 GETMBR R4 R0 K107 - 0x7C0C0200, // 0007 CALL R3 1 - 0xA8020003, // 0008 EXBLK 0 #000D - 0x5C100600, // 0009 MOVE R4 R3 - 0x7C100000, // 000A CALL R4 0 - 0x9808090A, // 000B SETIDX R2 R4 K10 - 0x7001FFFB, // 000C JMP #0009 - 0x580C0014, // 000D LDCONST R3 K20 - 0xAC0C0200, // 000E CATCH R3 1 0 - 0xB0080000, // 000F RAISE 2 R0 R0 - 0x600C0010, // 0010 GETGBL R3 G16 - 0x8810011E, // 0011 GETMBR R4 R0 K30 - 0x7C0C0200, // 0012 CALL R3 1 - 0xA802000F, // 0013 EXBLK 0 #0024 - 0x5C100600, // 0014 MOVE R4 R3 - 0x7C100000, // 0015 CALL R4 0 - 0x8C140386, // 0016 GETMET R5 R1 K134 - 0x5C1C0800, // 0017 MOVE R7 R4 - 0x58200087, // 0018 LDCONST R8 K135 - 0x7C140600, // 0019 CALL R5 3 - 0x4C180000, // 001A LDNIL R6 - 0x20180A06, // 001B NE R6 R5 R6 - 0x781A0005, // 001C JMPF R6 #0023 - 0x8C180539, // 001D GETMET R6 R2 K57 - 0x5C200A00, // 001E MOVE R8 R5 - 0x5824000A, // 001F LDCONST R9 K10 - 0x7C180600, // 0020 CALL R6 3 - 0x00180D38, // 0021 ADD R6 R6 K56 - 0x98080A06, // 0022 SETIDX R2 R5 R6 - 0x7001FFEF, // 0023 JMP #0014 - 0x580C0014, // 0024 LDCONST R3 K20 - 0xAC0C0200, // 0025 CATCH R3 1 0 - 0xB0080000, // 0026 RAISE 2 R0 R0 - 0x600C0012, // 0027 GETGBL R3 G18 - 0x7C0C0000, // 0028 CALL R3 0 - 0x60100010, // 0029 GETGBL R4 G16 - 0x8C140566, // 002A GETMET R5 R2 K102 - 0x7C140200, // 002B CALL R5 1 - 0x7C100200, // 002C CALL R4 1 - 0xA8020008, // 002D EXBLK 0 #0037 - 0x5C140800, // 002E MOVE R5 R4 - 0x7C140000, // 002F CALL R5 0 - 0x94180405, // 0030 GETIDX R6 R2 R5 - 0x1C180D0A, // 0031 EQ R6 R6 K10 - 0x781A0002, // 0032 JMPF R6 #0036 - 0x8C180762, // 0033 GETMET R6 R3 K98 - 0x5C200A00, // 0034 MOVE R8 R5 - 0x7C180400, // 0035 CALL R6 2 - 0x7001FFF6, // 0036 JMP #002E - 0x58100014, // 0037 LDCONST R4 K20 - 0xAC100200, // 0038 CATCH R4 1 0 - 0xB0080000, // 0039 RAISE 2 R0 R0 - 0x60100010, // 003A GETGBL R4 G16 - 0x5C140600, // 003B MOVE R5 R3 - 0x7C100200, // 003C CALL R4 1 - 0xA802000D, // 003D EXBLK 0 #004C - 0x5C140800, // 003E MOVE R5 R4 - 0x7C140000, // 003F CALL R5 0 - 0xB81A7400, // 0040 GETNGBL R6 K58 - 0x881C0B89, // 0041 GETMBR R7 R5 K137 - 0x001F1007, // 0042 ADD R7 K136 R7 - 0x58200053, // 0043 LDCONST R8 K83 - 0x7C180400, // 0044 CALL R6 2 - 0x8C180B8A, // 0045 GETMET R6 R5 K138 - 0x7C180200, // 0046 CALL R6 1 - 0x8818016B, // 0047 GETMBR R6 R0 K107 - 0x8C180D83, // 0048 GETMET R6 R6 K131 - 0x88200B89, // 0049 GETMBR R8 R5 K137 - 0x7C180400, // 004A CALL R6 2 - 0x7001FFF1, // 004B JMP #003E - 0x58100014, // 004C LDCONST R4 K20 - 0xAC100200, // 004D CATCH R4 1 0 - 0xB0080000, // 004E RAISE 2 R0 R0 - 0x80000000, // 004F RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: check_config_ep -********************************************************************/ -be_local_closure(class_Matter_Device_check_config_ep, /* name */ - be_nested_proto( - 10, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(check_config_ep), - &be_const_str_solidified, - ( &(const binstruction[77]) { /* code */ - 0x50040000, // 0000 LDBOOL R1 0 0 - 0x60080012, // 0001 GETGBL R2 G18 - 0x7C080000, // 0002 CALL R2 0 - 0x600C0010, // 0003 GETGBL R3 G16 - 0x88100156, // 0004 GETMBR R4 R0 K86 - 0x8C100966, // 0005 GETMET R4 R4 K102 - 0x7C100200, // 0006 CALL R4 1 - 0x7C0C0200, // 0007 CALL R3 1 - 0xA8020007, // 0008 EXBLK 0 #0011 - 0x5C100600, // 0009 MOVE R4 R3 - 0x7C100000, // 000A CALL R4 0 - 0x8C140562, // 000B GETMET R5 R2 K98 - 0x601C0009, // 000C GETGBL R7 G9 - 0x5C200800, // 000D MOVE R8 R4 - 0x7C1C0200, // 000E CALL R7 1 - 0x7C140400, // 000F CALL R5 2 - 0x7001FFF7, // 0010 JMP #0009 - 0x580C0014, // 0011 LDCONST R3 K20 - 0xAC0C0200, // 0012 CATCH R3 1 0 - 0xB0080000, // 0013 RAISE 2 R0 R0 - 0x600C0010, // 0014 GETGBL R3 G16 - 0x5C100400, // 0015 MOVE R4 R2 - 0x7C0C0200, // 0016 CALL R3 1 - 0xA8020030, // 0017 EXBLK 0 #0049 - 0x5C100600, // 0018 MOVE R4 R3 - 0x7C100000, // 0019 CALL R4 0 - 0x1C14090A, // 001A EQ R5 R4 K10 - 0x7816000B, // 001B JMPF R5 #0028 - 0xB8167400, // 001C GETNGBL R5 K58 - 0x5818008B, // 001D LDCONST R6 K139 - 0x581C0021, // 001E LDCONST R7 K33 - 0x7C140400, // 001F CALL R5 2 - 0x88140156, // 0020 GETMBR R5 R0 K86 - 0x8C140B83, // 0021 GETMET R5 R5 K131 - 0x601C0008, // 0022 GETGBL R7 G8 - 0x5C200800, // 0023 MOVE R8 R4 - 0x7C1C0200, // 0024 CALL R7 1 - 0x7C140400, // 0025 CALL R5 2 - 0x50040200, // 0026 LDBOOL R1 1 0 - 0x7002001F, // 0027 JMP #0048 - 0xB8163000, // 0028 GETNGBL R5 K24 - 0x88140B54, // 0029 GETMBR R5 R5 K84 - 0x1C140805, // 002A EQ R5 R4 R5 - 0x7816001B, // 002B JMPF R5 #0048 - 0x50040200, // 002C LDBOOL R1 1 0 - 0xB8167400, // 002D GETNGBL R5 K58 - 0x60180018, // 002E GETGBL R6 G24 - 0x581C008C, // 002F LDCONST R7 K140 - 0x5C200800, // 0030 MOVE R8 R4 - 0x88240120, // 0031 GETMBR R9 R0 K32 - 0x7C180600, // 0032 CALL R6 3 - 0x581C0021, // 0033 LDCONST R7 K33 - 0x7C140400, // 0034 CALL R5 2 - 0x60140008, // 0035 GETGBL R5 G8 - 0x88180120, // 0036 GETMBR R6 R0 K32 - 0x7C140200, // 0037 CALL R5 1 - 0x88180156, // 0038 GETMBR R6 R0 K86 - 0x601C0008, // 0039 GETGBL R7 G8 - 0x5C200800, // 003A MOVE R8 R4 - 0x7C1C0200, // 003B CALL R7 1 - 0x88200156, // 003C GETMBR R8 R0 K86 - 0x941C1007, // 003D GETIDX R7 R8 R7 - 0x98180A07, // 003E SETIDX R6 R5 R7 - 0x88140156, // 003F GETMBR R5 R0 K86 - 0x8C140B83, // 0040 GETMET R5 R5 K131 - 0x601C0008, // 0041 GETGBL R7 G8 - 0x5C200800, // 0042 MOVE R8 R4 - 0x7C1C0200, // 0043 CALL R7 1 - 0x7C140400, // 0044 CALL R5 2 - 0x88140120, // 0045 GETMBR R5 R0 K32 - 0x00140B38, // 0046 ADD R5 R5 K56 - 0x90024005, // 0047 SETMBR R0 K32 R5 - 0x7001FFCE, // 0048 JMP #0018 - 0x580C0014, // 0049 LDCONST R3 K20 - 0xAC0C0200, // 004A CATCH R3 1 0 - 0xB0080000, // 004B RAISE 2 R0 R0 - 0x80040200, // 004C RET 1 R1 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: every_second -********************************************************************/ -be_local_closure(class_Matter_Device_every_second, /* name */ - be_nested_proto( - 3, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(every_second), - &be_const_str_solidified, - ( &(const binstruction[13]) { /* code */ - 0x88040108, // 0000 GETMBR R1 R0 K8 - 0x8C04038D, // 0001 GETMET R1 R1 K141 - 0x7C040200, // 0002 CALL R1 1 - 0x88040127, // 0003 GETMBR R1 R0 K39 - 0x8C04038D, // 0004 GETMET R1 R1 K141 - 0x7C040200, // 0005 CALL R1 1 - 0x88040129, // 0006 GETMBR R1 R0 K41 - 0x8C04038D, // 0007 GETMET R1 R1 K141 - 0x7C040200, // 0008 CALL R1 1 - 0x88040106, // 0009 GETMBR R1 R0 K6 - 0x8C04038D, // 000A GETMET R1 R1 K141 - 0x7C040200, // 000B CALL R1 1 - 0x80000000, // 000C RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: attribute_updated -********************************************************************/ -be_local_closure(class_Matter_Device_attribute_updated, /* name */ - be_nested_proto( - 10, /* nstack */ - 5, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(attribute_updated), - &be_const_str_solidified, - ( &(const binstruction[18]) { /* code */ - 0x4C140000, // 0000 LDNIL R5 - 0x1C140805, // 0001 EQ R5 R4 R5 - 0x78160000, // 0002 JMPF R5 #0004 - 0x50100000, // 0003 LDBOOL R4 0 0 - 0xB8163000, // 0004 GETNGBL R5 K24 - 0x8C140B8E, // 0005 GETMET R5 R5 K142 - 0x7C140200, // 0006 CALL R5 1 - 0x90169001, // 0007 SETMBR R5 K72 R1 - 0x90169202, // 0008 SETMBR R5 K73 R2 - 0x90169403, // 0009 SETMBR R5 K74 R3 - 0x88180127, // 000A GETMBR R6 R0 K39 - 0x88180D42, // 000B GETMBR R6 R6 K66 - 0x88180D43, // 000C GETMBR R6 R6 K67 - 0x8C180D8F, // 000D GETMET R6 R6 K143 - 0x5C200A00, // 000E MOVE R8 R5 - 0x5C240800, // 000F MOVE R9 R4 - 0x7C180600, // 0010 CALL R6 3 - 0x80000000, // 0011 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: k2l_num -********************************************************************/ -be_local_closure(class_Matter_Device_k2l_num, /* name */ - be_nested_proto( - 9, /* nstack */ - 1, /* argc */ - 12, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(k2l_num), - &be_const_str_solidified, - ( &(const binstruction[52]) { /* code */ - 0x5804000F, // 0000 LDCONST R1 K15 - 0x60080012, // 0001 GETGBL R2 G18 - 0x7C080000, // 0002 CALL R2 0 - 0x4C0C0000, // 0003 LDNIL R3 - 0x1C0C0003, // 0004 EQ R3 R0 R3 - 0x780E0000, // 0005 JMPF R3 #0007 - 0x80040400, // 0006 RET 1 R2 - 0x600C0010, // 0007 GETGBL R3 G16 - 0x8C100166, // 0008 GETMET R4 R0 K102 - 0x7C100200, // 0009 CALL R4 1 - 0x7C0C0200, // 000A CALL R3 1 - 0xA8020007, // 000B EXBLK 0 #0014 - 0x5C100600, // 000C MOVE R4 R3 - 0x7C100000, // 000D CALL R4 0 - 0x8C140562, // 000E GETMET R5 R2 K98 - 0x601C0009, // 000F GETGBL R7 G9 - 0x5C200800, // 0010 MOVE R8 R4 - 0x7C1C0200, // 0011 CALL R7 1 - 0x7C140400, // 0012 CALL R5 2 - 0x7001FFF7, // 0013 JMP #000C - 0x580C0014, // 0014 LDCONST R3 K20 - 0xAC0C0200, // 0015 CATCH R3 1 0 - 0xB0080000, // 0016 RAISE 2 R0 R0 - 0x600C0010, // 0017 GETGBL R3 G16 - 0x6010000C, // 0018 GETGBL R4 G12 - 0x5C140400, // 0019 MOVE R5 R2 - 0x7C100200, // 001A CALL R4 1 - 0x04100938, // 001B SUB R4 R4 K56 - 0x40127004, // 001C CONNECT R4 K56 R4 - 0x7C0C0200, // 001D CALL R3 1 - 0xA8020010, // 001E EXBLK 0 #0030 - 0x5C100600, // 001F MOVE R4 R3 - 0x7C100000, // 0020 CALL R4 0 - 0x94140404, // 0021 GETIDX R5 R2 R4 - 0x5C180800, // 0022 MOVE R6 R4 - 0x241C0D0A, // 0023 GT R7 R6 K10 - 0x781E0008, // 0024 JMPF R7 #002E - 0x041C0D38, // 0025 SUB R7 R6 K56 - 0x941C0407, // 0026 GETIDX R7 R2 R7 - 0x241C0E05, // 0027 GT R7 R7 R5 - 0x781E0004, // 0028 JMPF R7 #002E - 0x041C0D38, // 0029 SUB R7 R6 K56 - 0x941C0407, // 002A GETIDX R7 R2 R7 - 0x98080C07, // 002B SETIDX R2 R6 R7 - 0x04180D38, // 002C SUB R6 R6 K56 - 0x7001FFF4, // 002D JMP #0023 - 0x98080C05, // 002E SETIDX R2 R6 R5 - 0x7001FFEE, // 002F JMP #001F - 0x580C0014, // 0030 LDCONST R3 K20 - 0xAC0C0200, // 0031 CATCH R3 1 0 - 0xB0080000, // 0032 RAISE 2 R0 R0 - 0x80040400, // 0033 RET 1 R2 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: button_multi_pressed -********************************************************************/ -be_local_closure(class_Matter_Device_button_multi_pressed, /* name */ - be_nested_proto( - 11, /* nstack */ - 3, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(button_multi_pressed), - &be_const_str_solidified, - ( &(const binstruction[13]) { /* code */ - 0x540E0007, // 0000 LDINT R3 8 - 0x3C0C0403, // 0001 SHR R3 R2 R3 - 0x541200FE, // 0002 LDINT R4 255 - 0x2C0C0604, // 0003 AND R3 R3 R4 - 0x541200FE, // 0004 LDINT R4 255 - 0x2C100404, // 0005 AND R4 R2 R4 - 0x8C14016A, // 0006 GETMET R5 R0 K106 - 0x001C0938, // 0007 ADD R7 R4 K56 - 0x58200021, // 0008 LDCONST R8 K33 - 0x5824000A, // 0009 LDCONST R9 K10 - 0x5C280600, // 000A MOVE R10 R3 - 0x7C140A00, // 000B CALL R5 5 - 0x80000000, // 000C RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: every_250ms -********************************************************************/ -be_local_closure(class_Matter_Device_every_250ms, /* name */ - be_nested_proto( - 4, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(every_250ms), - &be_const_str_solidified, - ( &(const binstruction[15]) { /* code */ - 0x8C040190, // 0000 GETMET R1 R0 K144 - 0x7C040200, // 0001 CALL R1 1 - 0x5804000A, // 0002 LDCONST R1 K10 - 0x6008000C, // 0003 GETGBL R2 G12 - 0x880C011E, // 0004 GETMBR R3 R0 K30 - 0x7C080200, // 0005 CALL R2 1 - 0x14080202, // 0006 LT R2 R1 R2 - 0x780A0005, // 0007 JMPF R2 #000E - 0x8808011E, // 0008 GETMBR R2 R0 K30 - 0x94080401, // 0009 GETIDX R2 R2 R1 - 0x8C080591, // 000A GETMET R2 R2 K145 - 0x7C080200, // 000B CALL R2 1 - 0x00040338, // 000C ADD R1 R1 K56 - 0x7001FFF4, // 000D JMP #0003 - 0x80000000, // 000E RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: process_attribute_expansion -********************************************************************/ -be_local_closure(class_Matter_Device_process_attribute_expansion, /* name */ - be_nested_proto( - 12, /* nstack */ - 3, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(process_attribute_expansion), - &be_const_str_solidified, - ( &(const binstruction[28]) { /* code */ - 0x880C0348, // 0000 GETMBR R3 R1 K72 - 0x88100349, // 0001 GETMBR R4 R1 K73 - 0x8814034A, // 0002 GETMBR R5 R1 K74 - 0xB81A3000, // 0003 GETNGBL R6 K24 - 0x8C180D92, // 0004 GETMET R6 R6 K146 - 0x5C200000, // 0005 MOVE R8 R0 - 0x7C180400, // 0006 CALL R6 2 - 0x8C1C0D2F, // 0007 GETMET R7 R6 K47 - 0x5C240600, // 0008 MOVE R9 R3 - 0x5C280800, // 0009 MOVE R10 R4 - 0x5C2C0A00, // 000A MOVE R11 R5 - 0x7C1C0800, // 000B CALL R7 4 - 0x8C1C0D93, // 000C GETMET R7 R6 K147 - 0x7C1C0200, // 000D CALL R7 1 - 0x4C200000, // 000E LDNIL R8 - 0x8C240D94, // 000F GETMET R9 R6 K148 - 0x7C240200, // 0010 CALL R9 1 - 0x5C201200, // 0011 MOVE R8 R9 - 0x4C280000, // 0012 LDNIL R10 - 0x2024120A, // 0013 NE R9 R9 R10 - 0x78260005, // 0014 JMPF R9 #001B - 0x5C240400, // 0015 MOVE R9 R2 - 0x8C280D95, // 0016 GETMET R10 R6 K149 - 0x7C280200, // 0017 CALL R10 1 - 0x5C2C1000, // 0018 MOVE R11 R8 - 0x7C240400, // 0019 CALL R9 2 - 0x7001FFF3, // 001A JMP #000F - 0x80000000, // 001B RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: autoconf_device_map -********************************************************************/ -be_local_closure(class_Matter_Device_autoconf_device_map, /* name */ - be_nested_proto( - 19, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(autoconf_device_map), - &be_const_str_solidified, - ( &(const binstruction[262]) { /* code */ - 0xA406AA00, // 0000 IMPORT R1 K85 - 0x60080013, // 0001 GETGBL R2 G19 - 0x7C080000, // 0002 CALL R2 0 - 0xB80E3000, // 0003 GETNGBL R3 K24 - 0x880C0796, // 0004 GETMBR R3 R3 K150 - 0x5810000A, // 0005 LDCONST R4 K10 - 0xA4172E00, // 0006 IMPORT R5 K151 - 0x8C180B86, // 0007 GETMET R6 R5 K134 - 0x5820000A, // 0008 LDCONST R8 K10 - 0x7C180400, // 0009 CALL R6 2 - 0x4C1C0000, // 000A LDNIL R7 - 0x201C0C07, // 000B NE R7 R6 R7 - 0x781E0066, // 000C JMPF R7 #0074 - 0x601C000C, // 000D GETGBL R7 G12 - 0x8C200D39, // 000E GETMET R8 R6 K57 - 0x58280098, // 000F LDCONST R10 K152 - 0x582C0010, // 0010 LDCONST R11 K16 - 0x7C200600, // 0011 CALL R8 3 - 0x7C1C0200, // 0012 CALL R7 1 - 0x58100038, // 0013 LDCONST R4 K56 - 0x24200F0A, // 0014 GT R8 R7 K10 - 0x7822005D, // 0015 JMPF R8 #0074 - 0x1C200F38, // 0016 EQ R8 R7 K56 - 0x7822001E, // 0017 JMPF R8 #0037 - 0x60200008, // 0018 GETGBL R8 G8 - 0x5C240600, // 0019 MOVE R9 R3 - 0x7C200200, // 001A CALL R8 1 - 0x60240013, // 001B GETGBL R9 G19 - 0x7C240000, // 001C CALL R9 0 - 0x98262599, // 001D SETIDX R9 K18 K153 - 0x98081009, // 001E SETIDX R2 R8 R9 - 0x000C0738, // 001F ADD R3 R3 K56 - 0x58200038, // 0020 LDCONST R8 K56 - 0x4C240000, // 0021 LDNIL R9 - 0x8C280B86, // 0022 GETMET R10 R5 K134 - 0x5C301000, // 0023 MOVE R12 R8 - 0x7C280400, // 0024 CALL R10 2 - 0x5C241400, // 0025 MOVE R9 R10 - 0x4C2C0000, // 0026 LDNIL R11 - 0x2028140B, // 0027 NE R10 R10 R11 - 0x782A000C, // 0028 JMPF R10 #0036 - 0x60280008, // 0029 GETGBL R10 G8 - 0x5C2C0600, // 002A MOVE R11 R3 - 0x7C280200, // 002B CALL R10 1 - 0x602C0013, // 002C GETGBL R11 G19 - 0x7C2C0000, // 002D CALL R11 0 - 0x982E2599, // 002E SETIDX R11 K18 K153 - 0x00301138, // 002F ADD R12 R8 K56 - 0x982F2E0C, // 0030 SETIDX R11 K151 R12 - 0x9808140B, // 0031 SETIDX R2 R10 R11 - 0x000C0738, // 0032 ADD R3 R3 K56 - 0x00100938, // 0033 ADD R4 R4 K56 - 0x00201138, // 0034 ADD R8 R8 K56 - 0x7001FFEB, // 0035 JMP #0022 - 0x7002003C, // 0036 JMP #0074 - 0x1C200F21, // 0037 EQ R8 R7 K33 - 0x78220008, // 0038 JMPF R8 #0042 - 0x60200008, // 0039 GETGBL R8 G8 - 0x5C240600, // 003A MOVE R9 R3 - 0x7C200200, // 003B CALL R8 1 - 0x60240013, // 003C GETGBL R9 G19 - 0x7C240000, // 003D CALL R9 0 - 0x9826259A, // 003E SETIDX R9 K18 K154 - 0x98081009, // 003F SETIDX R2 R8 R9 - 0x000C0738, // 0040 ADD R3 R3 K56 - 0x70020031, // 0041 JMP #0074 - 0x1C200F53, // 0042 EQ R8 R7 K83 - 0x7822002B, // 0043 JMPF R8 #0070 - 0x60200008, // 0044 GETGBL R8 G8 - 0x5C240600, // 0045 MOVE R9 R3 - 0x7C200200, // 0046 CALL R8 1 - 0x60240013, // 0047 GETGBL R9 G19 - 0x7C240000, // 0048 CALL R9 0 - 0x9826259B, // 0049 SETIDX R9 K18 K155 - 0x98081009, // 004A SETIDX R2 R8 R9 - 0x000C0738, // 004B ADD R3 R3 K56 - 0x8C200B86, // 004C GETMET R8 R5 K134 - 0x58280038, // 004D LDCONST R10 K56 - 0x7C200400, // 004E CALL R8 2 - 0x4C240000, // 004F LDNIL R9 - 0x20241009, // 0050 NE R9 R8 R9 - 0x7826001C, // 0051 JMPF R9 #006F - 0x6024000C, // 0052 GETGBL R9 G12 - 0x8C281139, // 0053 GETMET R10 R8 K57 - 0x58300098, // 0054 LDCONST R12 K152 - 0x58340010, // 0055 LDCONST R13 K16 - 0x7C280600, // 0056 CALL R10 3 - 0x7C240200, // 0057 CALL R9 1 - 0x1C281338, // 0058 EQ R10 R9 K56 - 0x782A0009, // 0059 JMPF R10 #0064 - 0x60280008, // 005A GETGBL R10 G8 - 0x5C2C0600, // 005B MOVE R11 R3 - 0x7C280200, // 005C CALL R10 1 - 0x602C0013, // 005D GETGBL R11 G19 - 0x7C2C0000, // 005E CALL R11 0 - 0x982E2599, // 005F SETIDX R11 K18 K153 - 0x9808140B, // 0060 SETIDX R2 R10 R11 - 0x000C0738, // 0061 ADD R3 R3 K56 - 0x00100938, // 0062 ADD R4 R4 K56 - 0x7002000A, // 0063 JMP #006F - 0x1C281321, // 0064 EQ R10 R9 K33 - 0x782A0008, // 0065 JMPF R10 #006F - 0x60280008, // 0066 GETGBL R10 G8 - 0x5C2C0600, // 0067 MOVE R11 R3 - 0x7C280200, // 0068 CALL R10 1 - 0x602C0013, // 0069 GETGBL R11 G19 - 0x7C2C0000, // 006A CALL R11 0 - 0x982E259A, // 006B SETIDX R11 K18 K154 - 0x9808140B, // 006C SETIDX R2 R10 R11 - 0x000C0738, // 006D ADD R3 R3 K56 - 0x00100938, // 006E ADD R4 R4 K56 - 0x70020003, // 006F JMP #0074 - 0x54220003, // 0070 LDINT R8 4 - 0x1C200E08, // 0071 EQ R8 R7 R8 - 0x78220000, // 0072 JMPF R8 #0074 - 0x7001FFFF, // 0073 JMP #0074 - 0xB81E2C00, // 0074 GETNGBL R7 K22 - 0x8C1C0F9C, // 0075 GETMET R7 R7 K156 - 0x5824009D, // 0076 LDCONST R9 K157 - 0x50280200, // 0077 LDBOOL R10 1 0 - 0x7C1C0600, // 0078 CALL R7 3 - 0x60200012, // 0079 GETGBL R8 G18 - 0x7C200000, // 007A CALL R8 0 - 0xB8267400, // 007B GETNGBL R9 K58 - 0x60280008, // 007C GETGBL R10 G8 - 0x5C2C0E00, // 007D MOVE R11 R7 - 0x7C280200, // 007E CALL R10 1 - 0x002B3C0A, // 007F ADD R10 K158 R10 - 0x582C0053, // 0080 LDCONST R11 K83 - 0x7C240400, // 0081 CALL R9 2 - 0x4C240000, // 0082 LDNIL R9 - 0x20240E09, // 0083 NE R9 R7 R9 - 0x7826004D, // 0084 JMPF R9 #00D3 - 0x8C240F6C, // 0085 GETMET R9 R7 K108 - 0x582C009F, // 0086 LDCONST R11 K159 - 0x7C240400, // 0087 CALL R9 2 - 0x78260049, // 0088 JMPF R9 #00D3 - 0x941C0F9F, // 0089 GETIDX R7 R7 K159 - 0x5824000A, // 008A LDCONST R9 K10 - 0x50280200, // 008B LDBOOL R10 1 0 - 0x782A0045, // 008C JMPF R10 #00D3 - 0x60280008, // 008D GETGBL R10 G8 - 0x5C2C1200, // 008E MOVE R11 R9 - 0x7C280200, // 008F CALL R10 1 - 0x002B400A, // 0090 ADD R10 K160 R10 - 0x8C2C0F6C, // 0091 GETMET R11 R7 K108 - 0x5C341400, // 0092 MOVE R13 R10 - 0x7C2C0400, // 0093 CALL R11 2 - 0x742E0000, // 0094 JMPT R11 #0096 - 0x7002003C, // 0095 JMP #00D3 - 0x942C0E0A, // 0096 GETIDX R11 R7 R10 - 0xB8327400, // 0097 GETNGBL R12 K58 - 0x60340018, // 0098 GETGBL R13 G24 - 0x583800A1, // 0099 LDCONST R14 K161 - 0x5C3C1400, // 009A MOVE R15 R10 - 0x60400008, // 009B GETGBL R16 G8 - 0x5C441600, // 009C MOVE R17 R11 - 0x7C400200, // 009D CALL R16 1 - 0x7C340600, // 009E CALL R13 3 - 0x58380053, // 009F LDCONST R14 K83 - 0x7C300400, // 00A0 CALL R12 2 - 0x8C301739, // 00A1 GETMET R12 R11 K57 - 0x583800A2, // 00A2 LDCONST R14 K162 - 0x543DFFFE, // 00A3 LDINT R15 -1 - 0x7C300600, // 00A4 CALL R12 3 - 0x8C341739, // 00A5 GETMET R13 R11 K57 - 0x583C00A3, // 00A6 LDCONST R15 K163 - 0x5441FFFE, // 00A7 LDINT R16 -1 - 0x7C340600, // 00A8 CALL R13 3 - 0x2438190A, // 00A9 GT R14 R12 K10 - 0x783A0002, // 00AA JMPF R14 #00AE - 0x8C381162, // 00AB GETMET R14 R8 K98 - 0x04401938, // 00AC SUB R16 R12 K56 - 0x7C380400, // 00AD CALL R14 2 - 0x24381B0A, // 00AE GT R14 R13 K10 - 0x783A0002, // 00AF JMPF R14 #00B3 - 0x8C381162, // 00B0 GETMET R14 R8 K98 - 0x04401B38, // 00B1 SUB R16 R13 K56 - 0x7C380400, // 00B2 CALL R14 2 - 0xB83A7400, // 00B3 GETNGBL R14 K58 - 0x603C0018, // 00B4 GETGBL R15 G24 - 0x584000A4, // 00B5 LDCONST R16 K164 - 0x5C441800, // 00B6 MOVE R17 R12 - 0x5C481A00, // 00B7 MOVE R18 R13 - 0x7C3C0600, // 00B8 CALL R15 3 - 0x58400053, // 00B9 LDCONST R16 K83 - 0x7C380400, // 00BA CALL R14 2 - 0x8C381739, // 00BB GETMET R14 R11 K57 - 0x584000A5, // 00BC LDCONST R16 K165 - 0x7C380400, // 00BD CALL R14 2 - 0x783A0002, // 00BE JMPF R14 #00C2 - 0x943C1D21, // 00BF GETIDX R15 R14 K33 - 0x243C1F0A, // 00C0 GT R15 R15 K10 - 0x743E0000, // 00C1 JMPT R15 #00C3 - 0x503C0001, // 00C2 LDBOOL R15 0 1 - 0x503C0200, // 00C3 LDBOOL R15 1 0 - 0x60400008, // 00C4 GETGBL R16 G8 - 0x5C440600, // 00C5 MOVE R17 R3 - 0x7C400200, // 00C6 CALL R16 1 - 0x60440013, // 00C7 GETGBL R17 G19 - 0x7C440000, // 00C8 CALL R17 0 - 0x783E0001, // 00C9 JMPF R15 #00CC - 0x584800A6, // 00CA LDCONST R18 K166 - 0x70020000, // 00CB JMP #00CD - 0x584800A7, // 00CC LDCONST R18 K167 - 0x98462412, // 00CD SETIDX R17 K18 R18 - 0x98474E09, // 00CE SETIDX R17 K167 R9 - 0x98082011, // 00CF SETIDX R2 R16 R17 - 0x000C0738, // 00D0 ADD R3 R3 K56 - 0x00241338, // 00D1 ADD R9 R9 K56 - 0x7001FFB7, // 00D2 JMP #008B - 0x6024000C, // 00D3 GETGBL R9 G12 - 0xB82A2C00, // 00D4 GETNGBL R10 K22 - 0x8C2815A8, // 00D5 GETMET R10 R10 K168 - 0x7C280200, // 00D6 CALL R10 1 - 0x7C240200, // 00D7 CALL R9 1 - 0x5828000A, // 00D8 LDCONST R10 K10 - 0x04241204, // 00D9 SUB R9 R9 R4 - 0x142C1409, // 00DA LT R11 R10 R9 - 0x782E0011, // 00DB JMPF R11 #00EE - 0x8C2C1139, // 00DC GETMET R11 R8 K57 - 0x5C341400, // 00DD MOVE R13 R10 - 0x7C2C0400, // 00DE CALL R11 2 - 0x4C300000, // 00DF LDNIL R12 - 0x1C2C160C, // 00E0 EQ R11 R11 R12 - 0x782E0009, // 00E1 JMPF R11 #00EC - 0x602C0008, // 00E2 GETGBL R11 G8 - 0x5C300600, // 00E3 MOVE R12 R3 - 0x7C2C0200, // 00E4 CALL R11 1 - 0x60300013, // 00E5 GETGBL R12 G19 - 0x7C300000, // 00E6 CALL R12 0 - 0x983225A9, // 00E7 SETIDX R12 K18 K169 - 0x00341538, // 00E8 ADD R13 R10 K56 - 0x9833520D, // 00E9 SETIDX R12 K169 R13 - 0x9808160C, // 00EA SETIDX R2 R11 R12 - 0x000C0738, // 00EB ADD R3 R3 K56 - 0x00281538, // 00EC ADD R10 R10 K56 - 0x7001FFEB, // 00ED JMP #00DA - 0x8C2C035E, // 00EE GETMET R11 R1 K94 - 0xB8362C00, // 00EF GETNGBL R13 K22 - 0x8C341B5B, // 00F0 GETMET R13 R13 K91 - 0x7C340200, // 00F1 CALL R13 1 - 0x7C2C0400, // 00F2 CALL R11 2 - 0x8C3001AA, // 00F3 GETMET R12 R0 K170 - 0x5C381600, // 00F4 MOVE R14 R11 - 0x7C300400, // 00F5 CALL R12 2 - 0x60340010, // 00F6 GETGBL R13 G16 - 0x5C381800, // 00F7 MOVE R14 R12 - 0x7C340200, // 00F8 CALL R13 1 - 0xA8020007, // 00F9 EXBLK 0 #0102 - 0x5C381A00, // 00FA MOVE R14 R13 - 0x7C380000, // 00FB CALL R14 0 - 0x603C0008, // 00FC GETGBL R15 G8 - 0x5C400600, // 00FD MOVE R16 R3 - 0x7C3C0200, // 00FE CALL R15 1 - 0x98081E0E, // 00FF SETIDX R2 R15 R14 - 0x000C0738, // 0100 ADD R3 R3 K56 - 0x7001FFF7, // 0101 JMP #00FA - 0x58340014, // 0102 LDCONST R13 K20 - 0xAC340200, // 0103 CATCH R13 1 0 - 0xB0080000, // 0104 RAISE 2 R0 R0 - 0x80040400, // 0105 RET 1 R2 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: bridge_add_endpoint -********************************************************************/ -be_local_closure(class_Matter_Device_bridge_add_endpoint, /* name */ - be_nested_proto( - 16, /* nstack */ - 3, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(bridge_add_endpoint), - &be_const_str_solidified, - ( &(const binstruction[68]) { /* code */ - 0x880C017A, // 0000 GETMBR R3 R0 K122 - 0x8C0C0739, // 0001 GETMET R3 R3 K57 - 0x5C140200, // 0002 MOVE R5 R1 - 0x7C0C0400, // 0003 CALL R3 2 - 0x4C100000, // 0004 LDNIL R4 - 0x1C100604, // 0005 EQ R4 R3 R4 - 0x78120008, // 0006 JMPF R4 #0010 - 0xB8127400, // 0007 GETNGBL R4 K58 - 0x60140008, // 0008 GETGBL R5 G8 - 0x5C180200, // 0009 MOVE R6 R1 - 0x7C140200, // 000A CALL R5 1 - 0x0016F605, // 000B ADD R5 K123 R5 - 0x00140B7C, // 000C ADD R5 R5 K124 - 0x58180053, // 000D LDCONST R6 K83 - 0x7C100400, // 000E CALL R4 2 - 0x80000800, // 000F RET 0 - 0x88100120, // 0010 GETMBR R4 R0 K32 - 0x60140008, // 0011 GETGBL R5 G8 - 0x5C180800, // 0012 MOVE R6 R4 - 0x7C140200, // 0013 CALL R5 1 - 0x5C180600, // 0014 MOVE R6 R3 - 0x5C1C0000, // 0015 MOVE R7 R0 - 0x5C200800, // 0016 MOVE R8 R4 - 0x5C240400, // 0017 MOVE R9 R2 - 0x7C180600, // 0018 CALL R6 3 - 0x881C011E, // 0019 GETMBR R7 R0 K30 - 0x8C1C0F62, // 001A GETMET R7 R7 K98 - 0x5C240C00, // 001B MOVE R9 R6 - 0x7C1C0400, // 001C CALL R7 2 - 0x601C0013, // 001D GETGBL R7 G19 - 0x7C1C0000, // 001E CALL R7 0 - 0x981E2401, // 001F SETIDX R7 K18 R1 - 0x60200010, // 0020 GETGBL R8 G16 - 0x8C240566, // 0021 GETMET R9 R2 K102 - 0x7C240200, // 0022 CALL R9 1 - 0x7C200200, // 0023 CALL R8 1 - 0xA8020004, // 0024 EXBLK 0 #002A - 0x5C241000, // 0025 MOVE R9 R8 - 0x7C240000, // 0026 CALL R9 0 - 0x94280409, // 0027 GETIDX R10 R2 R9 - 0x981C120A, // 0028 SETIDX R7 R9 R10 - 0x7001FFFA, // 0029 JMP #0025 - 0x58200014, // 002A LDCONST R8 K20 - 0xAC200200, // 002B CATCH R8 1 0 - 0xB0080000, // 002C RAISE 2 R0 R0 - 0xB8227400, // 002D GETNGBL R8 K58 - 0x60240018, // 002E GETGBL R9 G24 - 0x582800AB, // 002F LDCONST R10 K171 - 0x5C2C0800, // 0030 MOVE R11 R4 - 0x5C300200, // 0031 MOVE R12 R1 - 0x8C34017D, // 0032 GETMET R13 R0 K125 - 0x5C3C0400, // 0033 MOVE R15 R2 - 0x7C340400, // 0034 CALL R13 2 - 0x7C240800, // 0035 CALL R9 4 - 0x58280021, // 0036 LDCONST R10 K33 - 0x7C200400, // 0037 CALL R8 2 - 0x88200156, // 0038 GETMBR R8 R0 K86 - 0x98200A07, // 0039 SETIDX R8 R5 R7 - 0x50200200, // 003A LDBOOL R8 1 0 - 0x90021608, // 003B SETMBR R0 K11 R8 - 0x88200120, // 003C GETMBR R8 R0 K32 - 0x00201138, // 003D ADD R8 R8 K56 - 0x90024008, // 003E SETMBR R0 K32 R8 - 0x8C20010C, // 003F GETMET R8 R0 K12 - 0x7C200200, // 0040 CALL R8 1 - 0x8C2001AC, // 0041 GETMET R8 R0 K172 - 0x7C200200, // 0042 CALL R8 1 - 0x80040800, // 0043 RET 1 R4 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: MtrInfo -********************************************************************/ -be_local_closure(class_Matter_Device_MtrInfo, /* name */ - be_nested_proto( - 10, /* nstack */ - 5, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(MtrInfo), - &be_const_str_solidified, - ( &(const binstruction[40]) { /* code */ - 0x1C140710, // 0000 EQ R5 R3 K16 - 0x7815FFFF, // 0001 JMPF R5 #0002 - 0x1C140710, // 0002 EQ R5 R3 K16 - 0x7816000D, // 0003 JMPF R5 #0012 - 0x60140010, // 0004 GETGBL R5 G16 - 0x8818011E, // 0005 GETMBR R6 R0 K30 - 0x7C140200, // 0006 CALL R5 1 - 0xA8020005, // 0007 EXBLK 0 #000E - 0x5C180A00, // 0008 MOVE R6 R5 - 0x7C180000, // 0009 CALL R6 0 - 0x8C1C01AD, // 000A GETMET R7 R0 K173 - 0x88240D48, // 000B GETMBR R9 R6 K72 - 0x7C1C0400, // 000C CALL R7 2 - 0x7001FFF9, // 000D JMP #0008 - 0x58140014, // 000E LDCONST R5 K20 - 0xAC140200, // 000F CATCH R5 1 0 - 0xB0080000, // 0010 RAISE 2 R0 R0 - 0x70020011, // 0011 JMP #0024 - 0x60140004, // 0012 GETGBL R5 G4 - 0x5C180800, // 0013 MOVE R6 R4 - 0x7C140200, // 0014 CALL R5 1 - 0x1C140BAE, // 0015 EQ R5 R5 K174 - 0x78160003, // 0016 JMPF R5 #001B - 0x8C1401AD, // 0017 GETMET R5 R0 K173 - 0x5C1C0800, // 0018 MOVE R7 R4 - 0x7C140400, // 0019 CALL R5 2 - 0x70020008, // 001A JMP #0024 - 0x8C1401AF, // 001B GETMET R5 R0 K175 - 0x5C1C0600, // 001C MOVE R7 R3 - 0x7C140400, // 001D CALL R5 2 - 0x4C180000, // 001E LDNIL R6 - 0x20180A06, // 001F NE R6 R5 R6 - 0x781A0002, // 0020 JMPF R6 #0024 - 0x8C1801AD, // 0021 GETMET R6 R0 K173 - 0x88200B48, // 0022 GETMBR R8 R5 K72 - 0x7C180400, // 0023 CALL R6 2 - 0xB8162C00, // 0024 GETNGBL R5 K22 - 0x8C140BB0, // 0025 GETMET R5 R5 K176 - 0x7C140200, // 0026 CALL R5 1 - 0x80000000, // 0027 RET 0 - }) - ) -); -/*******************************************************************/ - - /******************************************************************** ** Solidified function: load_param ********************************************************************/ @@ -2657,138 +2185,138 @@ be_local_closure(class_Matter_Device_load_param, /* name */ be_str_weak(load_param), &be_const_str_solidified, ( &(const binstruction[134]) { /* code */ - 0xA4062A00, // 0000 IMPORT R1 K21 + 0xA406B000, // 0000 IMPORT R1 K88 0x50080000, // 0001 LDBOOL R2 0 0 0xA8020054, // 0002 EXBLK 0 #0058 0x600C0011, // 0003 GETGBL R3 G17 - 0x881001B1, // 0004 GETMBR R4 R0 K177 + 0x8810018F, // 0004 GETMBR R4 R0 K143 0x7C0C0200, // 0005 CALL R3 1 - 0x8C1007B2, // 0006 GETMET R4 R3 K178 + 0x8C100790, // 0006 GETMET R4 R3 K144 0x7C100200, // 0007 CALL R4 1 - 0x8C14078A, // 0008 GETMET R5 R3 K138 + 0x8C14077B, // 0008 GETMET R5 R3 K123 0x7C140200, // 0009 CALL R5 1 - 0xA416AA00, // 000A IMPORT R5 K85 - 0x8C180B5E, // 000B GETMET R6 R5 K94 + 0xA4166400, // 000A IMPORT R5 K50 + 0x8C180B3E, // 000B GETMET R6 R5 K62 0x5C200800, // 000C MOVE R8 R4 0x7C180400, // 000D CALL R6 2 - 0x8C1C0D39, // 000E GETMET R7 R6 K57 - 0x582400B4, // 000F LDCONST R9 K180 - 0x882801B3, // 0010 GETMBR R10 R0 K179 + 0x8C1C0D16, // 000E GETMET R7 R6 K22 + 0x58240092, // 000F LDCONST R9 K146 + 0x88280191, // 0010 GETMBR R10 R0 K145 0x7C1C0600, // 0011 CALL R7 3 - 0x90036607, // 0012 SETMBR R0 K179 R7 - 0x8C1C0D39, // 0013 GETMET R7 R6 K57 - 0x582400B6, // 0014 LDCONST R9 K182 - 0x882801B5, // 0015 GETMBR R10 R0 K181 + 0x90032207, // 0012 SETMBR R0 K145 R7 + 0x8C1C0D16, // 0013 GETMET R7 R6 K22 + 0x58240094, // 0014 LDCONST R9 K148 + 0x88280193, // 0015 GETMBR R10 R0 K147 0x7C1C0600, // 0016 CALL R7 3 - 0x90036A07, // 0017 SETMBR R0 K181 R7 + 0x90032607, // 0017 SETMBR R0 K147 R7 0x601C0017, // 0018 GETGBL R7 G23 - 0x8C200D39, // 0019 GETMET R8 R6 K57 - 0x58280022, // 001A LDCONST R10 K34 + 0x8C200D16, // 0019 GETMET R8 R6 K22 + 0x58280060, // 001A LDCONST R10 K96 0x502C0000, // 001B LDBOOL R11 0 0 0x7C200600, // 001C CALL R8 3 0x7C1C0200, // 001D CALL R7 1 - 0x90024407, // 001E SETMBR R0 K34 R7 + 0x9002C007, // 001E SETMBR R0 K96 R7 0x601C0017, // 001F GETGBL R7 G23 - 0x8C200D39, // 0020 GETMET R8 R6 K57 - 0x58280023, // 0021 LDCONST R10 K35 + 0x8C200D16, // 0020 GETMET R8 R6 K22 + 0x58280061, // 0021 LDCONST R10 K97 0x502C0000, // 0022 LDBOOL R11 0 0 0x7C200600, // 0023 CALL R8 3 0x7C1C0200, // 0024 CALL R7 1 - 0x90024607, // 0025 SETMBR R0 K35 R7 - 0x8C1C0D39, // 0026 GETMET R7 R6 K57 - 0x582400B7, // 0027 LDCONST R9 K183 - 0x88280120, // 0028 GETMBR R10 R0 K32 + 0x9002C207, // 0025 SETMBR R0 K97 R7 + 0x8C1C0D16, // 0026 GETMET R7 R6 K22 + 0x58240095, // 0027 LDCONST R9 K149 + 0x88280147, // 0028 GETMBR R10 R0 K71 0x7C1C0600, // 0029 CALL R7 3 - 0x90024007, // 002A SETMBR R0 K32 R7 - 0x8C1C0D39, // 002B GETMET R7 R6 K57 - 0x582400B8, // 002C LDCONST R9 K184 + 0x90028E07, // 002A SETMBR R0 K71 R7 + 0x8C1C0D16, // 002B GETMET R7 R6 K22 + 0x58240096, // 002C LDCONST R9 K150 0x7C1C0400, // 002D CALL R7 2 - 0x9002AC07, // 002E SETMBR R0 K86 R7 + 0x90026A07, // 002E SETMBR R0 K53 R7 0x601C0017, // 002F GETGBL R7 G23 - 0x8C200D39, // 0030 GETMET R8 R6 K57 - 0x582800B9, // 0031 LDCONST R10 K185 + 0x8C200D16, // 0030 GETMET R8 R6 K22 + 0x58280097, // 0031 LDCONST R10 K151 0x7C200400, // 0032 CALL R8 2 0x7C1C0200, // 0033 CALL R7 1 - 0x90037207, // 0034 SETMBR R0 K185 R7 - 0x881C0156, // 0035 GETMBR R7 R0 K86 + 0x90032E07, // 0034 SETMBR R0 K151 R7 + 0x881C0135, // 0035 GETMBR R7 R0 K53 0x4C200000, // 0036 LDNIL R8 0x201C0E08, // 0037 NE R7 R7 R8 0x781E000D, // 0038 JMPF R7 #0047 - 0xB81E7400, // 0039 GETNGBL R7 K58 + 0xB81E2E00, // 0039 GETNGBL R7 K23 0x60200018, // 003A GETGBL R8 G24 - 0x582400BA, // 003B LDCONST R9 K186 - 0x88280156, // 003C GETMBR R10 R0 K86 + 0x58240098, // 003B LDCONST R9 K152 + 0x88280135, // 003C GETMBR R10 R0 K53 0x7C200400, // 003D CALL R8 2 - 0x58240053, // 003E LDCONST R9 K83 + 0x58240030, // 003E LDCONST R9 K48 0x7C1C0400, // 003F CALL R7 2 - 0x8C1C0158, // 0040 GETMET R7 R0 K88 + 0x8C1C0137, // 0040 GETMET R7 R0 K55 0x7C1C0200, // 0041 CALL R7 1 - 0x8C1C01BB, // 0042 GETMET R7 R0 K187 + 0x8C1C0199, // 0042 GETMET R7 R0 K153 0x7C1C0200, // 0043 CALL R7 1 0x5C080E00, // 0044 MOVE R2 R7 0x501C0200, // 0045 LDBOOL R7 1 0 - 0x90021607, // 0046 SETMBR R0 K11 R7 - 0x8C1C0D39, // 0047 GETMET R7 R6 K57 - 0x582400BC, // 0048 LDCONST R9 K188 + 0x90020E07, // 0046 SETMBR R0 K7 R7 + 0x8C1C0D16, // 0047 GETMET R7 R6 K22 + 0x5824009A, // 0048 LDCONST R9 K154 0x60280013, // 0049 GETGBL R10 G19 0x7C280000, // 004A CALL R10 0 0x7C1C0600, // 004B CALL R7 3 - 0x90023E07, // 004C SETMBR R0 K31 R7 - 0x881C011F, // 004D GETMBR R7 R0 K31 + 0x90022A07, // 004C SETMBR R0 K21 R7 + 0x881C0115, // 004D GETMBR R7 R0 K21 0x781E0006, // 004E JMPF R7 #0056 - 0xB81E7400, // 004F GETNGBL R7 K58 + 0xB81E2E00, // 004F GETNGBL R7 K23 0x60200008, // 0050 GETGBL R8 G8 - 0x8824011F, // 0051 GETMBR R9 R0 K31 + 0x88240115, // 0051 GETMBR R9 R0 K21 0x7C200200, // 0052 CALL R8 1 - 0x00237A08, // 0053 ADD R8 K189 R8 - 0x58240053, // 0054 LDCONST R9 K83 + 0x00233608, // 0053 ADD R8 K155 R8 + 0x58240030, // 0054 LDCONST R9 K48 0x7C1C0400, // 0055 CALL R7 2 0xA8040001, // 0056 EXBLK 1 1 0x70020011, // 0057 JMP #006A 0xAC0C0002, // 0058 CATCH R3 0 2 0x7002000E, // 0059 JMP #0069 - 0x201407BE, // 005A NE R5 R3 K190 + 0x2014079C, // 005A NE R5 R3 K156 0x7816000B, // 005B JMPF R5 #0068 - 0xB8167400, // 005C GETNGBL R5 K58 + 0xB8162E00, // 005C GETNGBL R5 K23 0x60180008, // 005D GETGBL R6 G8 0x5C1C0600, // 005E MOVE R7 R3 0x7C180200, // 005F CALL R6 1 - 0x001B7E06, // 0060 ADD R6 K191 R6 - 0x00180D7F, // 0061 ADD R6 R6 K127 + 0x001B3A06, // 0060 ADD R6 K157 R6 + 0x00180D9E, // 0061 ADD R6 R6 K158 0x601C0008, // 0062 GETGBL R7 G8 0x5C200800, // 0063 MOVE R8 R4 0x7C1C0200, // 0064 CALL R7 1 0x00180C07, // 0065 ADD R6 R6 R7 - 0x581C0021, // 0066 LDCONST R7 K33 + 0x581C001D, // 0066 LDCONST R7 K29 0x7C140400, // 0067 CALL R5 2 0x70020000, // 0068 JMP #006A 0xB0080000, // 0069 RAISE 2 R0 R0 - 0x880C01B3, // 006A GETMBR R3 R0 K179 + 0x880C0191, // 006A GETMBR R3 R0 K145 0x4C100000, // 006B LDNIL R4 0x1C0C0604, // 006C EQ R3 R3 R4 0x780E000A, // 006D JMPF R3 #0079 - 0x8C0C03C0, // 006E GETMET R3 R1 K192 - 0x58140021, // 006F LDCONST R5 K33 + 0x8C0C039F, // 006E GETMET R3 R1 K159 + 0x5814001D, // 006F LDCONST R5 K29 0x7C0C0400, // 0070 CALL R3 2 - 0x8C0C0786, // 0071 GETMET R3 R3 K134 - 0x5814000A, // 0072 LDCONST R5 K10 - 0x58180021, // 0073 LDCONST R6 K33 + 0x8C0C0777, // 0071 GETMET R3 R3 K119 + 0x58140006, // 0072 LDCONST R5 K6 + 0x5818001D, // 0073 LDCONST R6 K29 0x7C0C0600, // 0074 CALL R3 3 0x54120FFE, // 0075 LDINT R4 4095 0x2C0C0604, // 0076 AND R3 R3 R4 - 0x90036603, // 0077 SETMBR R0 K179 R3 + 0x90032203, // 0077 SETMBR R0 K145 R3 0x50080200, // 0078 LDBOOL R2 1 0 - 0x880C01B5, // 0079 GETMBR R3 R0 K181 + 0x880C0193, // 0079 GETMBR R3 R0 K147 0x4C100000, // 007A LDNIL R4 0x1C0C0604, // 007B EQ R3 R3 R4 0x780E0004, // 007C JMPF R3 #0082 - 0x880C0106, // 007D GETMBR R3 R0 K6 - 0x8C0C07C1, // 007E GETMET R3 R3 K193 + 0x880C0109, // 007D GETMBR R3 R0 K9 + 0x8C0C07A0, // 007E GETMET R3 R3 K160 0x7C0C0200, // 007F CALL R3 1 - 0x90036A03, // 0080 SETMBR R0 K181 R3 + 0x90032603, // 0080 SETMBR R0 K147 R3 0x50080200, // 0081 LDBOOL R2 1 0 0x780A0001, // 0082 JMPF R2 #0085 - 0x8C0C010C, // 0083 GETMET R3 R0 K12 + 0x8C0C0108, // 0083 GETMET R3 R0 K8 0x7C0C0200, // 0084 CALL R3 1 0x80000000, // 0085 RET 0 }) @@ -2798,12 +2326,12 @@ be_local_closure(class_Matter_Device_load_param, /* name */ /******************************************************************** -** Solidified function: MtrUpdate +** Solidified function: every_50ms ********************************************************************/ -be_local_closure(class_Matter_Device_MtrUpdate, /* name */ +be_local_closure(class_Matter_Device_every_50ms, /* name */ be_nested_proto( - 18, /* nstack */ - 5, /* argc */ + 3, /* nstack */ + 1, /* argc */ 10, /* varg */ 0, /* has upvals */ NULL, /* no upvals */ @@ -2811,135 +2339,16 @@ be_local_closure(class_Matter_Device_MtrUpdate, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(MtrUpdate), + be_str_weak(every_50ms), &be_const_str_solidified, - ( &(const binstruction[126]) { /* code */ - 0x4C140000, // 0000 LDNIL R5 - 0x1C140805, // 0001 EQ R5 R4 R5 - 0x78160004, // 0002 JMPF R5 #0008 - 0xB8162C00, // 0003 GETNGBL R5 K22 - 0x8C140BC2, // 0004 GETMET R5 R5 K194 - 0x581C00C3, // 0005 LDCONST R7 K195 - 0x7C140400, // 0006 CALL R5 2 - 0x80040A00, // 0007 RET 1 R5 - 0xB8162C00, // 0008 GETNGBL R5 K22 - 0x8C140BC4, // 0009 GETMET R5 R5 K196 - 0x5C1C0800, // 000A MOVE R7 R4 - 0x582000C5, // 000B LDCONST R8 K197 - 0x7C140600, // 000C CALL R5 3 - 0xB81A2C00, // 000D GETNGBL R6 K22 - 0x8C180DC4, // 000E GETMET R6 R6 K196 - 0x5C200800, // 000F MOVE R8 R4 - 0x582400C6, // 0010 LDCONST R9 K198 - 0x7C180600, // 0011 CALL R6 3 - 0x74160000, // 0012 JMPT R5 #0014 - 0x781A0064, // 0013 JMPF R6 #0079 - 0x4C1C0000, // 0014 LDNIL R7 - 0x78160010, // 0015 JMPF R5 #0027 - 0x60200009, // 0016 GETGBL R8 G9 - 0x94240805, // 0017 GETIDX R9 R4 R5 - 0x7C200200, // 0018 CALL R8 1 - 0x1824110A, // 0019 LE R9 R8 K10 - 0x78260004, // 001A JMPF R9 #0020 - 0xB8262C00, // 001B GETNGBL R9 K22 - 0x8C2413C2, // 001C GETMET R9 R9 K194 - 0x582C00C7, // 001D LDCONST R11 K199 - 0x7C240400, // 001E CALL R9 2 - 0x80041200, // 001F RET 1 R9 - 0x8C24014B, // 0020 GETMET R9 R0 K75 - 0x5C2C1000, // 0021 MOVE R11 R8 - 0x7C240400, // 0022 CALL R9 2 - 0x5C1C1200, // 0023 MOVE R7 R9 - 0x8C240983, // 0024 GETMET R9 R4 K131 - 0x5C2C0A00, // 0025 MOVE R11 R5 - 0x7C240400, // 0026 CALL R9 2 - 0x781A0009, // 0027 JMPF R6 #0032 - 0x4C200000, // 0028 LDNIL R8 - 0x1C200E08, // 0029 EQ R8 R7 R8 - 0x78220003, // 002A JMPF R8 #002F - 0x8C2001AF, // 002B GETMET R8 R0 K175 - 0x94280806, // 002C GETIDX R10 R4 R6 - 0x7C200400, // 002D CALL R8 2 - 0x5C1C1000, // 002E MOVE R7 R8 - 0x8C200983, // 002F GETMET R8 R4 K131 - 0x5C280C00, // 0030 MOVE R10 R6 - 0x7C200400, // 0031 CALL R8 2 - 0x4C200000, // 0032 LDNIL R8 - 0x1C200E08, // 0033 EQ R8 R7 R8 - 0x78220004, // 0034 JMPF R8 #003A - 0xB8222C00, // 0035 GETNGBL R8 K22 - 0x8C2011C2, // 0036 GETMET R8 R8 K194 - 0x582800C8, // 0037 LDCONST R10 K200 - 0x7C200400, // 0038 CALL R8 2 - 0x80041000, // 0039 RET 1 R8 - 0x88200FC9, // 003A GETMBR R8 R7 K201 - 0x74220004, // 003B JMPT R8 #0041 - 0xB8222C00, // 003C GETNGBL R8 K22 - 0x8C2011C2, // 003D GETMET R8 R8 K194 - 0x582800CA, // 003E LDCONST R10 K202 - 0x7C200400, // 003F CALL R8 2 - 0x80041000, // 0040 RET 1 R8 - 0x8C200FCB, // 0041 GETMET R8 R7 K203 - 0x7C200200, // 0042 CALL R8 1 - 0x60240013, // 0043 GETGBL R9 G19 - 0x7C240000, // 0044 CALL R9 0 - 0x60280010, // 0045 GETGBL R10 G16 - 0x8C2C0966, // 0046 GETMET R11 R4 K102 - 0x7C2C0200, // 0047 CALL R11 1 - 0x7C280200, // 0048 CALL R10 1 - 0xA8020016, // 0049 EXBLK 0 #0061 - 0x5C2C1400, // 004A MOVE R11 R10 - 0x7C2C0000, // 004B CALL R11 0 - 0xB8322C00, // 004C GETNGBL R12 K22 - 0x8C3019CC, // 004D GETMET R12 R12 K204 - 0x5C381000, // 004E MOVE R14 R8 - 0x5C3C1600, // 004F MOVE R15 R11 - 0x7C300600, // 0050 CALL R12 3 - 0x4C340000, // 0051 LDNIL R13 - 0x1C34180D, // 0052 EQ R13 R12 R13 - 0x78360008, // 0053 JMPF R13 #005D - 0xB8362C00, // 0054 GETNGBL R13 K22 - 0x8C341BC2, // 0055 GETMET R13 R13 K194 - 0x603C0018, // 0056 GETGBL R15 G24 - 0x584000CD, // 0057 LDCONST R16 K205 - 0x5C441600, // 0058 MOVE R17 R11 - 0x7C3C0400, // 0059 CALL R15 2 - 0x7C340400, // 005A CALL R13 2 - 0xA8040001, // 005B EXBLK 1 1 - 0x80001A00, // 005C RET 0 - 0x9434100C, // 005D GETIDX R13 R8 R12 - 0x9438080B, // 005E GETIDX R14 R4 R11 - 0x98241A0E, // 005F SETIDX R9 R13 R14 - 0x7001FFE8, // 0060 JMP #004A - 0x58280014, // 0061 LDCONST R10 K20 - 0xAC280200, // 0062 CATCH R10 1 0 - 0xB0080000, // 0063 RAISE 2 R0 R0 - 0x8C280FCE, // 0064 GETMET R10 R7 K206 - 0x5C301200, // 0065 MOVE R12 R9 - 0x7C280400, // 0066 CALL R10 2 - 0x8C280FCF, // 0067 GETMET R10 R7 K207 - 0x7C280200, // 0068 CALL R10 1 - 0x782A000A, // 0069 JMPF R10 #0075 - 0x602C0018, // 006A GETGBL R11 G24 - 0x583000D0, // 006B LDCONST R12 K208 - 0x5C340200, // 006C MOVE R13 R1 - 0x5C381400, // 006D MOVE R14 R10 - 0x7C2C0600, // 006E CALL R11 3 - 0xB8322C00, // 006F GETNGBL R12 K22 - 0x8C3019D1, // 0070 GETMET R12 R12 K209 - 0x5C381600, // 0071 MOVE R14 R11 - 0x7C300400, // 0072 CALL R12 2 - 0x80041800, // 0073 RET 1 R12 - 0x70020003, // 0074 JMP #0079 - 0xB82E2C00, // 0075 GETNGBL R11 K22 - 0x8C2C17B0, // 0076 GETMET R11 R11 K176 - 0x7C2C0200, // 0077 CALL R11 1 - 0x80041600, // 0078 RET 1 R11 - 0xB81E2C00, // 0079 GETNGBL R7 K22 - 0x8C1C0FC2, // 007A GETMET R7 R7 K194 - 0x582400D2, // 007B LDCONST R9 K210 - 0x7C1C0400, // 007C CALL R7 2 - 0x80000000, // 007D RET 0 + ( &(const binstruction[ 7]) { /* code */ + 0x8804015E, // 0000 GETMBR R1 R0 K94 + 0x00040314, // 0001 ADD R1 R1 K20 + 0x9002BC01, // 0002 SETMBR R0 K94 R1 + 0x88040102, // 0003 GETMBR R1 R0 K2 + 0x8C0403A1, // 0004 GETMET R1 R1 K161 + 0x7C040200, // 0005 CALL R1 1 + 0x80000000, // 0006 RET 0 }) ) ); @@ -3045,19 +2454,19 @@ be_local_closure(class_Matter_Device_register_commands, /* name */ be_str_weak(register_commands), &be_const_str_solidified, ( &(const binstruction[17]) { /* code */ - 0xB8062C00, // 0000 GETNGBL R1 K22 - 0x8C0403D3, // 0001 GETMET R1 R1 K211 - 0x580C00D4, // 0002 LDCONST R3 K212 + 0xB8067400, // 0000 GETNGBL R1 K58 + 0x8C0403A2, // 0001 GETMET R1 R1 K162 + 0x580C00A3, // 0002 LDCONST R3 K163 0x84100000, // 0003 CLOSURE R4 P0 0x7C040600, // 0004 CALL R1 3 - 0xB8062C00, // 0005 GETNGBL R1 K22 - 0x8C0403D3, // 0006 GETMET R1 R1 K211 - 0x580C00D5, // 0007 LDCONST R3 K213 + 0xB8067400, // 0005 GETNGBL R1 K58 + 0x8C0403A2, // 0006 GETMET R1 R1 K162 + 0x580C00A4, // 0007 LDCONST R3 K164 0x84100001, // 0008 CLOSURE R4 P1 0x7C040600, // 0009 CALL R1 3 - 0xB8062C00, // 000A GETNGBL R1 K22 - 0x8C0403D3, // 000B GETMET R1 R1 K211 - 0x580C00D6, // 000C LDCONST R3 K214 + 0xB8067400, // 000A GETNGBL R1 K58 + 0x8C0403A2, // 000B GETMET R1 R1 K162 + 0x580C00A5, // 000C LDCONST R3 K165 0x84100002, // 000D CLOSURE R4 P2 0x7C040600, // 000E CALL R1 3 0xA0000000, // 000F CLOSE R0 @@ -3085,66 +2494,66 @@ be_local_closure(class_Matter_Device_save_param, /* name */ be_str_weak(save_param), &be_const_str_solidified, ( &(const binstruction[83]) { /* code */ - 0xA406AA00, // 0000 IMPORT R1 K85 - 0x8C0801D7, // 0001 GETMET R2 R0 K215 + 0xA4066400, // 0000 IMPORT R1 K50 + 0x8C0801A6, // 0001 GETMET R2 R0 K166 0x7C080200, // 0002 CALL R2 1 0x60080018, // 0003 GETGBL R2 G24 - 0x580C00D8, // 0004 LDCONST R3 K216 - 0x881001B3, // 0005 GETMBR R4 R0 K179 - 0x881401B5, // 0006 GETMBR R5 R0 K181 - 0x88180122, // 0007 GETMBR R6 R0 K34 + 0x580C00A7, // 0004 LDCONST R3 K167 + 0x88100191, // 0005 GETMBR R4 R0 K145 + 0x88140193, // 0006 GETMBR R5 R0 K147 + 0x88180160, // 0007 GETMBR R6 R0 K96 0x781A0001, // 0008 JMPF R6 #000B - 0x581800D9, // 0009 LDCONST R6 K217 + 0x581800A8, // 0009 LDCONST R6 K168 0x70020000, // 000A JMP #000C - 0x581800DA, // 000B LDCONST R6 K218 - 0x881C0123, // 000C GETMBR R7 R0 K35 + 0x581800A9, // 000B LDCONST R6 K169 + 0x881C0161, // 000C GETMBR R7 R0 K97 0x781E0001, // 000D JMPF R7 #0010 - 0x581C00D9, // 000E LDCONST R7 K217 + 0x581C00A8, // 000E LDCONST R7 K168 0x70020000, // 000F JMP #0011 - 0x581C00DA, // 0010 LDCONST R7 K218 - 0x88200120, // 0011 GETMBR R8 R0 K32 + 0x581C00A9, // 0010 LDCONST R7 K169 + 0x88200147, // 0011 GETMBR R8 R0 K71 0x7C080C00, // 0012 CALL R2 6 - 0x880C01B9, // 0013 GETMBR R3 R0 K185 + 0x880C0197, // 0013 GETMBR R3 R0 K151 0x780E0000, // 0014 JMPF R3 #0016 - 0x000805DB, // 0015 ADD R2 R2 K219 - 0x880C010B, // 0016 GETMBR R3 R0 K11 + 0x000805AA, // 0015 ADD R2 R2 K170 + 0x880C0107, // 0016 GETMBR R3 R0 K7 0x780E000E, // 0017 JMPF R3 #0027 - 0x000805DC, // 0018 ADD R2 R2 K220 - 0x8C0C03DD, // 0019 GETMET R3 R1 K221 - 0x88140156, // 001A GETMBR R5 R0 K86 + 0x000805AB, // 0018 ADD R2 R2 K171 + 0x8C0C03AC, // 0019 GETMET R3 R1 K172 + 0x88140135, // 001A GETMBR R5 R0 K53 0x7C0C0400, // 001B CALL R3 2 0x00080403, // 001C ADD R2 R2 R3 0x600C000C, // 001D GETGBL R3 G12 - 0x8810011F, // 001E GETMBR R4 R0 K31 + 0x88100115, // 001E GETMBR R4 R0 K21 0x7C0C0200, // 001F CALL R3 1 - 0x240C070A, // 0020 GT R3 R3 K10 + 0x240C0706, // 0020 GT R3 R3 K6 0x780E0004, // 0021 JMPF R3 #0027 - 0x000805DE, // 0022 ADD R2 R2 K222 - 0x8C0C03DD, // 0023 GETMET R3 R1 K221 - 0x8814011F, // 0024 GETMBR R5 R0 K31 + 0x000805AD, // 0022 ADD R2 R2 K173 + 0x8C0C03AC, // 0023 GETMET R3 R1 K172 + 0x88140115, // 0024 GETMBR R5 R0 K21 0x7C0C0400, // 0025 CALL R3 2 0x00080403, // 0026 ADD R2 R2 R3 - 0x000805DF, // 0027 ADD R2 R2 K223 + 0x000805AE, // 0027 ADD R2 R2 K174 0xA8020017, // 0028 EXBLK 0 #0041 0x600C0011, // 0029 GETGBL R3 G17 - 0x881001B1, // 002A GETMBR R4 R0 K177 - 0x581400E0, // 002B LDCONST R5 K224 + 0x8810018F, // 002A GETMBR R4 R0 K143 + 0x581400AF, // 002B LDCONST R5 K175 0x7C0C0400, // 002C CALL R3 2 - 0x8C1007E1, // 002D GETMET R4 R3 K225 + 0x8C1007B0, // 002D GETMET R4 R3 K176 0x5C180400, // 002E MOVE R6 R2 0x7C100400, // 002F CALL R4 2 - 0x8C10078A, // 0030 GETMET R4 R3 K138 + 0x8C10077B, // 0030 GETMET R4 R3 K123 0x7C100200, // 0031 CALL R4 1 - 0xB8127400, // 0032 GETNGBL R4 K58 + 0xB8122E00, // 0032 GETNGBL R4 K23 0x60140018, // 0033 GETGBL R5 G24 - 0x581800E2, // 0034 LDCONST R6 K226 - 0x881C010B, // 0035 GETMBR R7 R0 K11 + 0x581800B1, // 0034 LDCONST R6 K177 + 0x881C0107, // 0035 GETMBR R7 R0 K7 0x781E0001, // 0036 JMPF R7 #0039 - 0x581C00E3, // 0037 LDCONST R7 K227 + 0x581C00B2, // 0037 LDCONST R7 K178 0x70020000, // 0038 JMP #003A - 0x581C0010, // 0039 LDCONST R7 K16 + 0x581C000D, // 0039 LDCONST R7 K13 0x7C140400, // 003A CALL R5 2 - 0x58180021, // 003B LDCONST R6 K33 + 0x5818001D, // 003B LDCONST R6 K29 0x7C100400, // 003C CALL R4 2 0xA8040001, // 003D EXBLK 1 1 0x80040400, // 003E RET 1 R2 @@ -3152,17 +2561,17 @@ be_local_closure(class_Matter_Device_save_param, /* name */ 0x70020010, // 0040 JMP #0052 0xAC0C0002, // 0041 CATCH R3 0 2 0x7002000D, // 0042 JMP #0051 - 0xB8167400, // 0043 GETNGBL R5 K58 + 0xB8162E00, // 0043 GETNGBL R5 K23 0x60180008, // 0044 GETGBL R6 G8 0x5C1C0600, // 0045 MOVE R7 R3 0x7C180200, // 0046 CALL R6 1 - 0x001BC806, // 0047 ADD R6 K228 R6 - 0x00180D7F, // 0048 ADD R6 R6 K127 + 0x001B6606, // 0047 ADD R6 K179 R6 + 0x00180D9E, // 0048 ADD R6 R6 K158 0x601C0008, // 0049 GETGBL R7 G8 0x5C200800, // 004A MOVE R8 R4 0x7C1C0200, // 004B CALL R7 1 0x00180C07, // 004C ADD R6 R6 R7 - 0x581C0021, // 004D LDCONST R7 K33 + 0x581C001D, // 004D LDCONST R7 K29 0x7C140400, // 004E CALL R5 2 0x80040400, // 004F RET 1 R2 0x70020000, // 0050 JMP #0052 @@ -3191,60 +2600,60 @@ be_local_closure(class_Matter_Device_bridge_remove_endpoint, /* name */ be_str_weak(bridge_remove_endpoint), &be_const_str_solidified, ( &(const binstruction[56]) { /* code */ - 0xA40AAA00, // 0000 IMPORT R2 K85 + 0xA40A6400, // 0000 IMPORT R2 K50 0x600C0008, // 0001 GETGBL R3 G8 0x5C100200, // 0002 MOVE R4 R1 0x7C0C0200, // 0003 CALL R3 1 0x4C100000, // 0004 LDNIL R4 0x4C140000, // 0005 LDNIL R5 - 0x88180156, // 0006 GETMBR R6 R0 K86 - 0x8C180D6C, // 0007 GETMET R6 R6 K108 + 0x88180135, // 0006 GETMBR R6 R0 K53 + 0x8C180D57, // 0007 GETMET R6 R6 K87 0x5C200600, // 0008 MOVE R8 R3 0x7C180400, // 0009 CALL R6 2 0x741A0004, // 000A JMPT R6 #0010 - 0xB81A7400, // 000B GETNGBL R6 K58 - 0x001FCA03, // 000C ADD R7 K229 R3 - 0x58200053, // 000D LDCONST R8 K83 + 0xB81A2E00, // 000B GETNGBL R6 K23 + 0x001F6803, // 000C ADD R7 K180 R3 + 0x58200030, // 000D LDCONST R8 K48 0x7C180400, // 000E CALL R6 2 0x80000C00, // 000F RET 0 - 0xB81A7400, // 0010 GETNGBL R6 K58 + 0xB81A2E00, // 0010 GETNGBL R6 K23 0x601C0018, // 0011 GETGBL R7 G24 - 0x582000E6, // 0012 LDCONST R8 K230 + 0x582000B5, // 0012 LDCONST R8 K181 0x5C240200, // 0013 MOVE R9 R1 0x7C1C0400, // 0014 CALL R7 2 - 0x58200021, // 0015 LDCONST R8 K33 + 0x5820001D, // 0015 LDCONST R8 K29 0x7C180400, // 0016 CALL R6 2 - 0x88180156, // 0017 GETMBR R6 R0 K86 - 0x8C180D83, // 0018 GETMET R6 R6 K131 + 0x88180135, // 0017 GETMBR R6 R0 K53 + 0x8C180D53, // 0018 GETMET R6 R6 K83 0x5C200600, // 0019 MOVE R8 R3 0x7C180400, // 001A CALL R6 2 0x50180200, // 001B LDBOOL R6 1 0 - 0x90021606, // 001C SETMBR R0 K11 R6 - 0x5818000A, // 001D LDCONST R6 K10 + 0x90020E06, // 001C SETMBR R0 K7 R6 + 0x58180006, // 001D LDCONST R6 K6 0x601C000C, // 001E GETGBL R7 G12 - 0x8820011E, // 001F GETMBR R8 R0 K30 + 0x88200112, // 001F GETMBR R8 R0 K18 0x7C1C0200, // 0020 CALL R7 1 0x141C0C07, // 0021 LT R7 R6 R7 0x781E000D, // 0022 JMPF R7 #0031 - 0x881C011E, // 0023 GETMBR R7 R0 K30 + 0x881C0112, // 0023 GETMBR R7 R0 K18 0x941C0E06, // 0024 GETIDX R7 R7 R6 - 0x8C1C0F61, // 0025 GETMET R7 R7 K97 + 0x8C1C0F41, // 0025 GETMET R7 R7 K65 0x7C1C0200, // 0026 CALL R7 1 0x1C1C0207, // 0027 EQ R7 R1 R7 0x781E0005, // 0028 JMPF R7 #002F - 0x881C011E, // 0029 GETMBR R7 R0 K30 - 0x8C1C0F83, // 002A GETMET R7 R7 K131 + 0x881C0112, // 0029 GETMBR R7 R0 K18 + 0x8C1C0F53, // 002A GETMET R7 R7 K83 0x5C240C00, // 002B MOVE R9 R6 0x7C1C0400, // 002C CALL R7 2 0x70020002, // 002D JMP #0031 0x70020000, // 002E JMP #0030 - 0x00180D38, // 002F ADD R6 R6 K56 + 0x00180D14, // 002F ADD R6 R6 K20 0x7001FFEC, // 0030 JMP #001E - 0x8C1C01E7, // 0031 GETMET R7 R0 K231 + 0x8C1C01B6, // 0031 GETMET R7 R0 K182 0x7C1C0200, // 0032 CALL R7 1 - 0x8C1C010C, // 0033 GETMET R7 R0 K12 + 0x8C1C0108, // 0033 GETMET R7 R0 K8 0x7C1C0200, // 0034 CALL R7 1 - 0x8C1C01AC, // 0035 GETMET R7 R0 K172 + 0x8C1C0188, // 0035 GETMET R7 R0 K136 0x7C1C0200, // 0036 CALL R7 1 0x80000000, // 0037 RET 0 }) @@ -3254,12 +2663,12 @@ be_local_closure(class_Matter_Device_bridge_remove_endpoint, /* name */ /******************************************************************** -** Solidified function: msg_received +** Solidified function: button_multi_pressed ********************************************************************/ -be_local_closure(class_Matter_Device_msg_received, /* name */ +be_local_closure(class_Matter_Device_button_multi_pressed, /* name */ be_nested_proto( - 9, /* nstack */ - 4, /* argc */ + 11, /* nstack */ + 3, /* argc */ 10, /* varg */ 0, /* has upvals */ NULL, /* no upvals */ @@ -3267,16 +2676,22 @@ be_local_closure(class_Matter_Device_msg_received, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(msg_received), + be_str_weak(button_multi_pressed), &be_const_str_solidified, - ( &(const binstruction[ 7]) { /* code */ - 0x88100127, // 0000 GETMBR R4 R0 K39 - 0x8C1009E8, // 0001 GETMET R4 R4 K232 - 0x5C180200, // 0002 MOVE R6 R1 - 0x5C1C0400, // 0003 MOVE R7 R2 - 0x5C200600, // 0004 MOVE R8 R3 - 0x7C100800, // 0005 CALL R4 4 - 0x80040800, // 0006 RET 1 R4 + ( &(const binstruction[13]) { /* code */ + 0x540E0007, // 0000 LDINT R3 8 + 0x3C0C0403, // 0001 SHR R3 R2 R3 + 0x541200FE, // 0002 LDINT R4 255 + 0x2C0C0604, // 0003 AND R3 R3 R4 + 0x541200FE, // 0004 LDINT R4 255 + 0x2C100404, // 0005 AND R4 R2 R4 + 0x8C14014B, // 0006 GETMET R5 R0 K75 + 0x001C0914, // 0007 ADD R7 R4 K20 + 0x5820001D, // 0008 LDCONST R8 K29 + 0x58240006, // 0009 LDCONST R9 K6 + 0x5C280600, // 000A MOVE R10 R3 + 0x7C140A00, // 000B CALL R5 5 + 0x80000000, // 000C RET 0 }) ) ); @@ -3300,29 +2715,29 @@ be_local_closure(class_Matter_Device_invoke_request, /* name */ be_str_weak(invoke_request), &be_const_str_solidified, ( &(const binstruction[24]) { /* code */ - 0x5810000A, // 0000 LDCONST R4 K10 - 0x88140748, // 0001 GETMBR R5 R3 K72 + 0x58100006, // 0000 LDCONST R4 K6 + 0x88140724, // 0001 GETMBR R5 R3 K36 0x6018000C, // 0002 GETGBL R6 G12 - 0x881C011E, // 0003 GETMBR R7 R0 K30 + 0x881C0112, // 0003 GETMBR R7 R0 K18 0x7C180200, // 0004 CALL R6 1 0x14180806, // 0005 LT R6 R4 R6 0x781A000C, // 0006 JMPF R6 #0014 - 0x8818011E, // 0007 GETMBR R6 R0 K30 + 0x88180112, // 0007 GETMBR R6 R0 K18 0x94180C04, // 0008 GETIDX R6 R6 R4 - 0x881C0D48, // 0009 GETMBR R7 R6 K72 + 0x881C0D24, // 0009 GETMBR R7 R6 K36 0x1C1C0E05, // 000A EQ R7 R7 R5 0x781E0005, // 000B JMPF R7 #0012 - 0x8C1C0DE9, // 000C GETMET R7 R6 K233 + 0x8C1C0DB7, // 000C GETMET R7 R6 K183 0x5C240200, // 000D MOVE R9 R1 0x5C280400, // 000E MOVE R10 R2 0x5C2C0600, // 000F MOVE R11 R3 0x7C1C0800, // 0010 CALL R7 4 0x80040E00, // 0011 RET 1 R7 - 0x00100938, // 0012 ADD R4 R4 K56 + 0x00100914, // 0012 ADD R4 R4 K20 0x7001FFED, // 0013 JMP #0002 - 0xB81A3000, // 0014 GETNGBL R6 K24 - 0x88180D4D, // 0015 GETMBR R6 R6 K77 - 0x900E9806, // 0016 SETMBR R3 K76 R6 + 0xB81A5200, // 0014 GETNGBL R6 K41 + 0x88180D2A, // 0015 GETMBR R6 R6 K42 + 0x900E5006, // 0016 SETMBR R3 K40 R6 0x80000000, // 0017 RET 0 }) ) @@ -3347,26 +2762,26 @@ be_local_closure(class_Matter_Device_read_sensors_scheduler, /* name */ be_str_weak(read_sensors_scheduler), &be_const_str_solidified, ( &(const binstruction[21]) { /* code */ - 0x88040167, // 0000 GETMBR R1 R0 K103 + 0x88040148, // 0000 GETMBR R1 R0 K72 0x4C080000, // 0001 LDNIL R2 0x1C040202, // 0002 EQ R1 R1 R2 0x78060000, // 0003 JMPF R1 #0005 0x80000200, // 0004 RET 0 - 0x88040168, // 0005 GETMBR R1 R0 K104 - 0x1C04030A, // 0006 EQ R1 R1 K10 + 0x88040149, // 0005 GETMBR R1 R0 K73 + 0x1C040306, // 0006 EQ R1 R1 K6 0x74060004, // 0007 JMPT R1 #000D - 0xB8062C00, // 0008 GETNGBL R1 K22 - 0x8C0403EA, // 0009 GETMET R1 R1 K234 - 0x880C0168, // 000A GETMBR R3 R0 K104 + 0xB8067400, // 0008 GETNGBL R1 K58 + 0x8C0403B8, // 0009 GETMET R1 R1 K184 + 0x880C0149, // 000A GETMBR R3 R0 K73 0x7C040400, // 000B CALL R1 2 0x78060006, // 000C JMPF R1 #0014 - 0x8C0401EB, // 000D GETMET R1 R0 K235 + 0x8C0401B9, // 000D GETMET R1 R0 K185 0x7C040200, // 000E CALL R1 1 - 0xB8062C00, // 000F GETNGBL R1 K22 - 0x8C0403EC, // 0010 GETMET R1 R1 K236 - 0x880C0167, // 0011 GETMBR R3 R0 K103 + 0xB8067400, // 000F GETNGBL R1 K58 + 0x8C0403BA, // 0010 GETMET R1 R1 K186 + 0x880C0148, // 0011 GETMBR R3 R0 K72 0x7C040400, // 0012 CALL R1 2 - 0x9002D001, // 0013 SETMBR R0 K104 R1 + 0x90029201, // 0013 SETMBR R0 K73 R1 0x80000000, // 0014 RET 0 }) ) @@ -3375,11 +2790,76 @@ be_local_closure(class_Matter_Device_read_sensors_scheduler, /* name */ /******************************************************************** -** Solidified function: MtrJoin +** Solidified function: register_http_remote ********************************************************************/ -be_local_closure(class_Matter_Device_MtrJoin, /* name */ +be_local_closure(class_Matter_Device_register_http_remote, /* name */ be_nested_proto( - 8, /* nstack */ + 9, /* nstack */ + 3, /* argc */ + 10, /* varg */ + 0, /* has upvals */ + NULL, /* no upvals */ + 0, /* has sup protos */ + NULL, /* no sub protos */ + 1, /* has constants */ + &be_ktab_class_Matter_Device, /* shared constants */ + be_str_weak(register_http_remote), + &be_const_str_solidified, + ( &(const binstruction[42]) { /* code */ + 0x880C0176, // 0000 GETMBR R3 R0 K118 + 0x4C100000, // 0001 LDNIL R4 + 0x1C0C0604, // 0002 EQ R3 R3 R4 + 0x780E0002, // 0003 JMPF R3 #0007 + 0x600C0013, // 0004 GETGBL R3 G19 + 0x7C0C0000, // 0005 CALL R3 0 + 0x9002EC03, // 0006 SETMBR R0 K118 R3 + 0x4C0C0000, // 0007 LDNIL R3 + 0x88100176, // 0008 GETMBR R4 R0 K118 + 0x8C100957, // 0009 GETMET R4 R4 K87 + 0x5C180200, // 000A MOVE R6 R1 + 0x7C100400, // 000B CALL R4 2 + 0x78120009, // 000C JMPF R4 #0017 + 0x88100176, // 000D GETMBR R4 R0 K118 + 0x940C0801, // 000E GETIDX R3 R4 R1 + 0x8C1407BB, // 000F GETMET R5 R3 K187 + 0x7C140200, // 0010 CALL R5 1 + 0x14140405, // 0011 LT R5 R2 R5 + 0x78160002, // 0012 JMPF R5 #0016 + 0x8C1407BC, // 0013 GETMET R5 R3 K188 + 0x5C1C0400, // 0014 MOVE R7 R2 + 0x7C140400, // 0015 CALL R5 2 + 0x70020011, // 0016 JMP #0029 + 0xB8125200, // 0017 GETNGBL R4 K41 + 0x8C1009BD, // 0018 GETMET R4 R4 K189 + 0x5C180000, // 0019 MOVE R6 R0 + 0x5C1C0200, // 001A MOVE R7 R1 + 0x5C200400, // 001B MOVE R8 R2 + 0x7C100800, // 001C CALL R4 4 + 0x5C0C0800, // 001D MOVE R3 R4 + 0x88100115, // 001E GETMBR R4 R0 K21 + 0x8C100957, // 001F GETMET R4 R4 K87 + 0x5C180200, // 0020 MOVE R6 R1 + 0x7C100400, // 0021 CALL R4 2 + 0x78120003, // 0022 JMPF R4 #0027 + 0x8C1007BE, // 0023 GETMET R4 R3 K190 + 0x88180115, // 0024 GETMBR R6 R0 K21 + 0x94180C01, // 0025 GETIDX R6 R6 R1 + 0x7C100400, // 0026 CALL R4 2 + 0x88100176, // 0027 GETMBR R4 R0 K118 + 0x98100203, // 0028 SETIDX R4 R1 R3 + 0x80040600, // 0029 RET 1 R3 + }) + ) +); +/*******************************************************************/ + + +/******************************************************************** +** Solidified function: MtrUpdate +********************************************************************/ +be_local_closure(class_Matter_Device_MtrUpdate, /* name */ + be_nested_proto( + 18, /* nstack */ 5, /* argc */ 10, /* varg */ 0, /* has upvals */ @@ -3388,165 +2868,135 @@ be_local_closure(class_Matter_Device_MtrJoin, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(MtrJoin), + be_str_weak(MtrUpdate), &be_const_str_solidified, - ( &(const binstruction[14]) { /* code */ - 0x60140009, // 0000 GETGBL R5 G9 - 0x5C180600, // 0001 MOVE R6 R3 - 0x7C140200, // 0002 CALL R5 1 - 0x78160003, // 0003 JMPF R5 #0008 - 0x88180106, // 0004 GETMBR R6 R0 K6 - 0x8C180DED, // 0005 GETMET R6 R6 K237 - 0x7C180200, // 0006 CALL R6 1 - 0x70020001, // 0007 JMP #000A - 0x8C18010D, // 0008 GETMET R6 R0 K13 - 0x7C180200, // 0009 CALL R6 1 - 0xB81A2C00, // 000A GETNGBL R6 K22 - 0x8C180DB0, // 000B GETMET R6 R6 K176 - 0x7C180200, // 000C CALL R6 1 - 0x80000000, // 000D RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: autoconf_sensors_list -********************************************************************/ -be_local_closure(class_Matter_Device_autoconf_sensors_list, /* name */ - be_nested_proto( - 10, /* nstack */ - 2, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(autoconf_sensors_list), - &be_const_str_solidified, - ( &(const binstruction[119]) { /* code */ - 0x60080012, // 0000 GETGBL R2 G18 - 0x7C080000, // 0001 CALL R2 0 - 0x600C0010, // 0002 GETGBL R3 G16 - 0x8C100111, // 0003 GETMET R4 R0 K17 - 0x5C180200, // 0004 MOVE R6 R1 - 0x7C100400, // 0005 CALL R4 2 - 0x7C0C0200, // 0006 CALL R3 1 - 0xA8020013, // 0007 EXBLK 0 #001C - 0x5C100600, // 0008 MOVE R4 R3 - 0x7C100000, // 0009 CALL R4 0 - 0x94140204, // 000A GETIDX R5 R1 R4 - 0x6018000F, // 000B GETGBL R6 G15 - 0x5C1C0A00, // 000C MOVE R7 R5 - 0x60200013, // 000D GETGBL R8 G19 - 0x7C180400, // 000E CALL R6 2 - 0x781A000A, // 000F JMPF R6 #001B - 0x8C180B6C, // 0010 GETMET R6 R5 K108 - 0x582000EE, // 0011 LDCONST R8 K238 - 0x7C180400, // 0012 CALL R6 2 - 0x781A0006, // 0013 JMPF R6 #001B - 0x001809EF, // 0014 ADD R6 R4 K239 - 0x8C1C0562, // 0015 GETMET R7 R2 K98 - 0x60240013, // 0016 GETGBL R9 G19 - 0x7C240000, // 0017 CALL R9 0 - 0x982625F0, // 0018 SETIDX R9 K18 K240 - 0x9827E206, // 0019 SETIDX R9 K241 R6 - 0x7C1C0400, // 001A CALL R7 2 - 0x7001FFEB, // 001B JMP #0008 - 0x580C0014, // 001C LDCONST R3 K20 - 0xAC0C0200, // 001D CATCH R3 1 0 - 0xB0080000, // 001E RAISE 2 R0 R0 - 0x600C0010, // 001F GETGBL R3 G16 - 0x8C100111, // 0020 GETMET R4 R0 K17 - 0x5C180200, // 0021 MOVE R6 R1 - 0x7C100400, // 0022 CALL R4 2 - 0x7C0C0200, // 0023 CALL R3 1 - 0xA8020013, // 0024 EXBLK 0 #0039 - 0x5C100600, // 0025 MOVE R4 R3 - 0x7C100000, // 0026 CALL R4 0 - 0x94140204, // 0027 GETIDX R5 R1 R4 - 0x6018000F, // 0028 GETGBL R6 G15 - 0x5C1C0A00, // 0029 MOVE R7 R5 - 0x60200013, // 002A GETGBL R8 G19 - 0x7C180400, // 002B CALL R6 2 - 0x781A000A, // 002C JMPF R6 #0038 - 0x8C180B6C, // 002D GETMET R6 R5 K108 - 0x582000F2, // 002E LDCONST R8 K242 - 0x7C180400, // 002F CALL R6 2 - 0x781A0006, // 0030 JMPF R6 #0038 - 0x001809F3, // 0031 ADD R6 R4 K243 - 0x8C1C0562, // 0032 GETMET R7 R2 K98 - 0x60240013, // 0033 GETGBL R9 G19 - 0x7C240000, // 0034 CALL R9 0 - 0x982625F4, // 0035 SETIDX R9 K18 K244 - 0x9827E206, // 0036 SETIDX R9 K241 R6 - 0x7C1C0400, // 0037 CALL R7 2 - 0x7001FFEB, // 0038 JMP #0025 - 0x580C0014, // 0039 LDCONST R3 K20 - 0xAC0C0200, // 003A CATCH R3 1 0 - 0xB0080000, // 003B RAISE 2 R0 R0 - 0x600C0010, // 003C GETGBL R3 G16 - 0x8C100111, // 003D GETMET R4 R0 K17 - 0x5C180200, // 003E MOVE R6 R1 - 0x7C100400, // 003F CALL R4 2 - 0x7C0C0200, // 0040 CALL R3 1 - 0xA8020013, // 0041 EXBLK 0 #0056 - 0x5C100600, // 0042 MOVE R4 R3 - 0x7C100000, // 0043 CALL R4 0 - 0x94140204, // 0044 GETIDX R5 R1 R4 - 0x6018000F, // 0045 GETGBL R6 G15 - 0x5C1C0A00, // 0046 MOVE R7 R5 - 0x60200013, // 0047 GETGBL R8 G19 - 0x7C180400, // 0048 CALL R6 2 - 0x781A000A, // 0049 JMPF R6 #0055 - 0x8C180B6C, // 004A GETMET R6 R5 K108 - 0x582000F5, // 004B LDCONST R8 K245 - 0x7C180400, // 004C CALL R6 2 - 0x781A0006, // 004D JMPF R6 #0055 - 0x001809F6, // 004E ADD R6 R4 K246 - 0x8C1C0562, // 004F GETMET R7 R2 K98 - 0x60240013, // 0050 GETGBL R9 G19 - 0x7C240000, // 0051 CALL R9 0 - 0x982625F7, // 0052 SETIDX R9 K18 K247 - 0x9827E206, // 0053 SETIDX R9 K241 R6 - 0x7C1C0400, // 0054 CALL R7 2 - 0x7001FFEB, // 0055 JMP #0042 - 0x580C0014, // 0056 LDCONST R3 K20 - 0xAC0C0200, // 0057 CATCH R3 1 0 - 0xB0080000, // 0058 RAISE 2 R0 R0 - 0x600C0010, // 0059 GETGBL R3 G16 - 0x8C100111, // 005A GETMET R4 R0 K17 - 0x5C180200, // 005B MOVE R6 R1 - 0x7C100400, // 005C CALL R4 2 - 0x7C0C0200, // 005D CALL R3 1 - 0xA8020013, // 005E EXBLK 0 #0073 - 0x5C100600, // 005F MOVE R4 R3 - 0x7C100000, // 0060 CALL R4 0 - 0x94140204, // 0061 GETIDX R5 R1 R4 - 0x6018000F, // 0062 GETGBL R6 G15 - 0x5C1C0A00, // 0063 MOVE R7 R5 - 0x60200013, // 0064 GETGBL R8 G19 - 0x7C180400, // 0065 CALL R6 2 - 0x781A000A, // 0066 JMPF R6 #0072 - 0x8C180B6C, // 0067 GETMET R6 R5 K108 - 0x582000F8, // 0068 LDCONST R8 K248 - 0x7C180400, // 0069 CALL R6 2 - 0x781A0006, // 006A JMPF R6 #0072 - 0x001809F9, // 006B ADD R6 R4 K249 - 0x8C1C0562, // 006C GETMET R7 R2 K98 - 0x60240013, // 006D GETGBL R9 G19 - 0x7C240000, // 006E CALL R9 0 - 0x982625FA, // 006F SETIDX R9 K18 K250 - 0x9827E206, // 0070 SETIDX R9 K241 R6 - 0x7C1C0400, // 0071 CALL R7 2 - 0x7001FFEB, // 0072 JMP #005F - 0x580C0014, // 0073 LDCONST R3 K20 - 0xAC0C0200, // 0074 CATCH R3 1 0 - 0xB0080000, // 0075 RAISE 2 R0 R0 - 0x80040400, // 0076 RET 1 R2 + ( &(const binstruction[126]) { /* code */ + 0x4C140000, // 0000 LDNIL R5 + 0x1C140805, // 0001 EQ R5 R4 R5 + 0x78160004, // 0002 JMPF R5 #0008 + 0xB8167400, // 0003 GETNGBL R5 K58 + 0x8C140BBF, // 0004 GETMET R5 R5 K191 + 0x581C00C0, // 0005 LDCONST R7 K192 + 0x7C140400, // 0006 CALL R5 2 + 0x80040A00, // 0007 RET 1 R5 + 0xB8167400, // 0008 GETNGBL R5 K58 + 0x8C140BC1, // 0009 GETMET R5 R5 K193 + 0x5C1C0800, // 000A MOVE R7 R4 + 0x582000C2, // 000B LDCONST R8 K194 + 0x7C140600, // 000C CALL R5 3 + 0xB81A7400, // 000D GETNGBL R6 K58 + 0x8C180DC1, // 000E GETMET R6 R6 K193 + 0x5C200800, // 000F MOVE R8 R4 + 0x582400C3, // 0010 LDCONST R9 K195 + 0x7C180600, // 0011 CALL R6 3 + 0x74160000, // 0012 JMPT R5 #0014 + 0x781A0064, // 0013 JMPF R6 #0079 + 0x4C1C0000, // 0014 LDNIL R7 + 0x78160010, // 0015 JMPF R5 #0027 + 0x60200009, // 0016 GETGBL R8 G9 + 0x94240805, // 0017 GETIDX R9 R4 R5 + 0x7C200200, // 0018 CALL R8 1 + 0x18241106, // 0019 LE R9 R8 K6 + 0x78260004, // 001A JMPF R9 #0020 + 0xB8267400, // 001B GETNGBL R9 K58 + 0x8C2413BF, // 001C GETMET R9 R9 K191 + 0x582C00C4, // 001D LDCONST R11 K196 + 0x7C240400, // 001E CALL R9 2 + 0x80041200, // 001F RET 1 R9 + 0x8C240127, // 0020 GETMET R9 R0 K39 + 0x5C2C1000, // 0021 MOVE R11 R8 + 0x7C240400, // 0022 CALL R9 2 + 0x5C1C1200, // 0023 MOVE R7 R9 + 0x8C240953, // 0024 GETMET R9 R4 K83 + 0x5C2C0A00, // 0025 MOVE R11 R5 + 0x7C240400, // 0026 CALL R9 2 + 0x781A0009, // 0027 JMPF R6 #0032 + 0x4C200000, // 0028 LDNIL R8 + 0x1C200E08, // 0029 EQ R8 R7 R8 + 0x78220003, // 002A JMPF R8 #002F + 0x8C20018B, // 002B GETMET R8 R0 K139 + 0x94280806, // 002C GETIDX R10 R4 R6 + 0x7C200400, // 002D CALL R8 2 + 0x5C1C1000, // 002E MOVE R7 R8 + 0x8C200953, // 002F GETMET R8 R4 K83 + 0x5C280C00, // 0030 MOVE R10 R6 + 0x7C200400, // 0031 CALL R8 2 + 0x4C200000, // 0032 LDNIL R8 + 0x1C200E08, // 0033 EQ R8 R7 R8 + 0x78220004, // 0034 JMPF R8 #003A + 0xB8227400, // 0035 GETNGBL R8 K58 + 0x8C2011BF, // 0036 GETMET R8 R8 K191 + 0x582800C5, // 0037 LDCONST R10 K197 + 0x7C200400, // 0038 CALL R8 2 + 0x80041000, // 0039 RET 1 R8 + 0x88200FC6, // 003A GETMBR R8 R7 K198 + 0x74220004, // 003B JMPT R8 #0041 + 0xB8227400, // 003C GETNGBL R8 K58 + 0x8C2011BF, // 003D GETMET R8 R8 K191 + 0x582800C7, // 003E LDCONST R10 K199 + 0x7C200400, // 003F CALL R8 2 + 0x80041000, // 0040 RET 1 R8 + 0x8C200FC8, // 0041 GETMET R8 R7 K200 + 0x7C200200, // 0042 CALL R8 1 + 0x60240013, // 0043 GETGBL R9 G19 + 0x7C240000, // 0044 CALL R9 0 + 0x60280010, // 0045 GETGBL R10 G16 + 0x8C2C0946, // 0046 GETMET R11 R4 K70 + 0x7C2C0200, // 0047 CALL R11 1 + 0x7C280200, // 0048 CALL R10 1 + 0xA8020016, // 0049 EXBLK 0 #0061 + 0x5C2C1400, // 004A MOVE R11 R10 + 0x7C2C0000, // 004B CALL R11 0 + 0xB8327400, // 004C GETNGBL R12 K58 + 0x8C3019C9, // 004D GETMET R12 R12 K201 + 0x5C381000, // 004E MOVE R14 R8 + 0x5C3C1600, // 004F MOVE R15 R11 + 0x7C300600, // 0050 CALL R12 3 + 0x4C340000, // 0051 LDNIL R13 + 0x1C34180D, // 0052 EQ R13 R12 R13 + 0x78360008, // 0053 JMPF R13 #005D + 0xB8367400, // 0054 GETNGBL R13 K58 + 0x8C341BBF, // 0055 GETMET R13 R13 K191 + 0x603C0018, // 0056 GETGBL R15 G24 + 0x584000CA, // 0057 LDCONST R16 K202 + 0x5C441600, // 0058 MOVE R17 R11 + 0x7C3C0400, // 0059 CALL R15 2 + 0x7C340400, // 005A CALL R13 2 + 0xA8040001, // 005B EXBLK 1 1 + 0x80001A00, // 005C RET 0 + 0x9434100C, // 005D GETIDX R13 R8 R12 + 0x9438080B, // 005E GETIDX R14 R4 R11 + 0x98241A0E, // 005F SETIDX R9 R13 R14 + 0x7001FFE8, // 0060 JMP #004A + 0x58280011, // 0061 LDCONST R10 K17 + 0xAC280200, // 0062 CATCH R10 1 0 + 0xB0080000, // 0063 RAISE 2 R0 R0 + 0x8C280FCB, // 0064 GETMET R10 R7 K203 + 0x5C301200, // 0065 MOVE R12 R9 + 0x7C280400, // 0066 CALL R10 2 + 0x8C280FCC, // 0067 GETMET R10 R7 K204 + 0x7C280200, // 0068 CALL R10 1 + 0x782A000A, // 0069 JMPF R10 #0075 + 0x602C0018, // 006A GETGBL R11 G24 + 0x583000CD, // 006B LDCONST R12 K205 + 0x5C340200, // 006C MOVE R13 R1 + 0x5C381400, // 006D MOVE R14 R10 + 0x7C2C0600, // 006E CALL R11 3 + 0xB8327400, // 006F GETNGBL R12 K58 + 0x8C3019CE, // 0070 GETMET R12 R12 K206 + 0x5C381600, // 0071 MOVE R14 R11 + 0x7C300400, // 0072 CALL R12 2 + 0x80041800, // 0073 RET 1 R12 + 0x70020003, // 0074 JMP #0079 + 0xB82E7400, // 0075 GETNGBL R11 K58 + 0x8C2C178C, // 0076 GETMET R11 R11 K140 + 0x7C2C0200, // 0077 CALL R11 1 + 0x80041600, // 0078 RET 1 R11 + 0xB81E7400, // 0079 GETNGBL R7 K58 + 0x8C1C0FBF, // 007A GETMET R7 R7 K191 + 0x582400CF, // 007B LDCONST R9 K207 + 0x7C1C0400, // 007C CALL R7 2 + 0x80000000, // 007D RET 0 }) ) ); @@ -3570,24 +3020,24 @@ be_local_closure(class_Matter_Device_MtrInfo_one, /* name */ be_str_weak(MtrInfo_one), &be_const_str_solidified, ( &(const binstruction[20]) { /* code */ - 0x8C08014B, // 0000 GETMET R2 R0 K75 + 0x8C080127, // 0000 GETMET R2 R0 K39 0x5C100200, // 0001 MOVE R4 R1 0x7C080400, // 0002 CALL R2 2 0x4C0C0000, // 0003 LDNIL R3 0x1C0C0403, // 0004 EQ R3 R2 R3 0x780E0000, // 0005 JMPF R3 #0007 0x80000600, // 0006 RET 0 - 0x8C0C05CF, // 0007 GETMET R3 R2 K207 + 0x8C0C05CC, // 0007 GETMET R3 R2 K204 0x7C0C0200, // 0008 CALL R3 1 0x780E0008, // 0009 JMPF R3 #0013 0x60100018, // 000A GETGBL R4 G24 - 0x581400FB, // 000B LDCONST R5 K251 + 0x581400D0, // 000B LDCONST R5 K208 0x5C180600, // 000C MOVE R6 R3 0x7C100400, // 000D CALL R4 2 - 0xB8162C00, // 000E GETNGBL R5 K22 - 0x8C140B80, // 000F GETMET R5 R5 K128 + 0xB8167400, // 000E GETNGBL R5 K58 + 0x8C140BD1, // 000F GETMET R5 R5 K209 0x5C1C0800, // 0010 MOVE R7 R4 - 0x58200010, // 0011 LDCONST R8 K16 + 0x5820000D, // 0011 LDCONST R8 K13 0x7C140600, // 0012 CALL R5 3 0x80000000, // 0013 RET 0 }) @@ -3597,11 +3047,11 @@ be_local_closure(class_Matter_Device_MtrInfo_one, /* name */ /******************************************************************** -** Solidified function: button_handler +** Solidified function: MtrJoin ********************************************************************/ -be_local_closure(class_Matter_Device_button_handler, /* name */ +be_local_closure(class_Matter_Device_MtrJoin, /* name */ be_nested_proto( - 14, /* nstack */ + 8, /* nstack */ 5, /* argc */ 10, /* varg */ 0, /* has upvals */ @@ -3610,64 +3060,24 @@ be_local_closure(class_Matter_Device_button_handler, /* name */ NULL, /* no sub protos */ 1, /* has constants */ &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(button_handler), + be_str_weak(MtrJoin), &be_const_str_solidified, - ( &(const binstruction[25]) { /* code */ - 0x5814000A, // 0000 LDCONST R5 K10 - 0xA41B0A00, // 0001 IMPORT R6 K133 - 0x601C000C, // 0002 GETGBL R7 G12 - 0x8820011E, // 0003 GETMBR R8 R0 K30 - 0x7C1C0200, // 0004 CALL R7 1 - 0x141C0A07, // 0005 LT R7 R5 R7 - 0x781E0010, // 0006 JMPF R7 #0018 - 0x881C011E, // 0007 GETMBR R7 R0 K30 - 0x941C0E05, // 0008 GETIDX R7 R7 R5 - 0x8C200D6C, // 0009 GETMET R8 R6 K108 - 0x5C280E00, // 000A MOVE R10 R7 - 0x582C006A, // 000B LDCONST R11 K106 - 0x7C200600, // 000C CALL R8 3 - 0x78220007, // 000D JMPF R8 #0016 - 0x8820011E, // 000E GETMBR R8 R0 K30 - 0x94201005, // 000F GETIDX R8 R8 R5 - 0x8C20116A, // 0010 GETMET R8 R8 K106 - 0x5C280200, // 0011 MOVE R10 R1 - 0x5C2C0400, // 0012 MOVE R11 R2 - 0x5C300600, // 0013 MOVE R12 R3 - 0x5C340800, // 0014 MOVE R13 R4 - 0x7C200A00, // 0015 CALL R8 5 - 0x00140B38, // 0016 ADD R5 R5 K56 - 0x7001FFE9, // 0017 JMP #0002 - 0x80000000, // 0018 RET 0 - }) - ) -); -/*******************************************************************/ - - -/******************************************************************** -** Solidified function: every_50ms -********************************************************************/ -be_local_closure(class_Matter_Device_every_50ms, /* name */ - be_nested_proto( - 3, /* nstack */ - 1, /* argc */ - 10, /* varg */ - 0, /* has upvals */ - NULL, /* no upvals */ - 0, /* has sup protos */ - NULL, /* no sub protos */ - 1, /* has constants */ - &be_ktab_class_Matter_Device, /* shared constants */ - be_str_weak(every_50ms), - &be_const_str_solidified, - ( &(const binstruction[ 7]) { /* code */ - 0x8804011D, // 0000 GETMBR R1 R0 K29 - 0x00040338, // 0001 ADD R1 R1 K56 - 0x90023A01, // 0002 SETMBR R0 K29 R1 - 0x88040127, // 0003 GETMBR R1 R0 K39 - 0x8C0403FC, // 0004 GETMET R1 R1 K252 - 0x7C040200, // 0005 CALL R1 1 - 0x80000000, // 0006 RET 0 + ( &(const binstruction[15]) { /* code */ + 0x60140009, // 0000 GETGBL R5 G9 + 0x5C180600, // 0001 MOVE R6 R3 + 0x7C140200, // 0002 CALL R5 1 + 0x78160003, // 0003 JMPF R5 #0008 + 0x88180109, // 0004 GETMBR R6 R0 K9 + 0x8C180DD2, // 0005 GETMET R6 R6 K210 + 0x7C180200, // 0006 CALL R6 1 + 0x70020002, // 0007 JMP #000B + 0x88180109, // 0008 GETMBR R6 R0 K9 + 0x8C180D0A, // 0009 GETMET R6 R6 K10 + 0x7C180200, // 000A CALL R6 1 + 0xB81A7400, // 000B GETNGBL R6 K58 + 0x8C180D8C, // 000C GETMET R6 R6 K140 + 0x7C180200, // 000D CALL R6 1 + 0x80000000, // 000E RET 0 }) ) ); @@ -3691,14 +3101,14 @@ be_local_closure(class_Matter_Device_get_plugin_class_arg, /* name */ be_str_weak(get_plugin_class_arg), &be_const_str_solidified, ( &(const binstruction[ 9]) { /* code */ - 0x8808017A, // 0000 GETMBR R2 R0 K122 - 0x8C080539, // 0001 GETMET R2 R2 K57 + 0x88080151, // 0000 GETMBR R2 R0 K81 + 0x8C080516, // 0001 GETMET R2 R2 K22 0x5C100200, // 0002 MOVE R4 R1 0x7C080400, // 0003 CALL R2 2 0x780A0001, // 0004 JMPF R2 #0007 - 0x880C05FD, // 0005 GETMBR R3 R2 K253 + 0x880C05D3, // 0005 GETMBR R3 R2 K211 0x70020000, // 0006 JMP #0008 - 0x580C0010, // 0007 LDCONST R3 K16 + 0x580C000D, // 0007 LDCONST R3 K13 0x80040600, // 0008 RET 1 R3 }) ) @@ -3725,21 +3135,21 @@ be_local_closure(class_Matter_Device_update_remotes_info, /* name */ ( &(const binstruction[33]) { /* code */ 0x60040013, // 0000 GETGBL R1 G19 0x7C040000, // 0001 CALL R1 0 - 0x8808016B, // 0002 GETMBR R2 R0 K107 + 0x88080176, // 0002 GETMBR R2 R0 K118 0x4C0C0000, // 0003 LDNIL R3 0x20080403, // 0004 NE R2 R2 R3 0x780A0018, // 0005 JMPF R2 #001F 0x60080010, // 0006 GETGBL R2 G16 - 0x880C016B, // 0007 GETMBR R3 R0 K107 - 0x8C0C0766, // 0008 GETMET R3 R3 K102 + 0x880C0176, // 0007 GETMBR R3 R0 K118 + 0x8C0C0746, // 0008 GETMET R3 R3 K70 0x7C0C0200, // 0009 CALL R3 1 0x7C080200, // 000A CALL R2 1 0xA802000F, // 000B EXBLK 0 #001C 0x5C0C0400, // 000C MOVE R3 R2 0x7C0C0000, // 000D CALL R3 0 - 0x8810016B, // 000E GETMBR R4 R0 K107 + 0x88100176, // 000E GETMBR R4 R0 K118 0x94100803, // 000F GETIDX R4 R4 R3 - 0x8C1009FE, // 0010 GETMET R4 R4 K254 + 0x8C1009D4, // 0010 GETMET R4 R4 K212 0x7C100200, // 0011 CALL R4 1 0x4C140000, // 0012 LDNIL R5 0x20140805, // 0013 NE R5 R4 R5 @@ -3747,14 +3157,14 @@ be_local_closure(class_Matter_Device_update_remotes_info, /* name */ 0x6014000C, // 0015 GETGBL R5 G12 0x5C180800, // 0016 MOVE R6 R4 0x7C140200, // 0017 CALL R5 1 - 0x24140B0A, // 0018 GT R5 R5 K10 + 0x24140B06, // 0018 GT R5 R5 K6 0x78160000, // 0019 JMPF R5 #001B 0x98040604, // 001A SETIDX R1 R3 R4 0x7001FFEF, // 001B JMP #000C - 0x58080014, // 001C LDCONST R2 K20 + 0x58080011, // 001C LDCONST R2 K17 0xAC080200, // 001D CATCH R2 1 0 0xB0080000, // 001E RAISE 2 R0 R0 - 0x90023E01, // 001F SETMBR R0 K31 R1 + 0x90022A01, // 001F SETMBR R0 K21 R1 0x80040200, // 0020 RET 1 R1 }) ) @@ -3779,7 +3189,7 @@ be_local_closure(class_Matter_Device_k2l, /* name */ be_str_weak(k2l), &be_const_str_solidified, ( &(const binstruction[50]) { /* code */ - 0x5804000F, // 0000 LDCONST R1 K15 + 0x5804000C, // 0000 LDCONST R1 K12 0x60080012, // 0001 GETGBL R2 G18 0x7C080000, // 0002 CALL R2 0 0x4C0C0000, // 0003 LDNIL R3 @@ -3787,45 +3197,45 @@ be_local_closure(class_Matter_Device_k2l, /* name */ 0x780E0000, // 0005 JMPF R3 #0007 0x80040400, // 0006 RET 1 R2 0x600C0010, // 0007 GETGBL R3 G16 - 0x8C100166, // 0008 GETMET R4 R0 K102 + 0x8C100146, // 0008 GETMET R4 R0 K70 0x7C100200, // 0009 CALL R4 1 0x7C0C0200, // 000A CALL R3 1 0xA8020005, // 000B EXBLK 0 #0012 0x5C100600, // 000C MOVE R4 R3 0x7C100000, // 000D CALL R4 0 - 0x8C140562, // 000E GETMET R5 R2 K98 + 0x8C140542, // 000E GETMET R5 R2 K66 0x5C1C0800, // 000F MOVE R7 R4 0x7C140400, // 0010 CALL R5 2 0x7001FFF9, // 0011 JMP #000C - 0x580C0014, // 0012 LDCONST R3 K20 + 0x580C0011, // 0012 LDCONST R3 K17 0xAC0C0200, // 0013 CATCH R3 1 0 0xB0080000, // 0014 RAISE 2 R0 R0 0x600C0010, // 0015 GETGBL R3 G16 0x6010000C, // 0016 GETGBL R4 G12 0x5C140400, // 0017 MOVE R5 R2 0x7C100200, // 0018 CALL R4 1 - 0x04100938, // 0019 SUB R4 R4 K56 - 0x40127004, // 001A CONNECT R4 K56 R4 + 0x04100914, // 0019 SUB R4 R4 K20 + 0x40122804, // 001A CONNECT R4 K20 R4 0x7C0C0200, // 001B CALL R3 1 0xA8020010, // 001C EXBLK 0 #002E 0x5C100600, // 001D MOVE R4 R3 0x7C100000, // 001E CALL R4 0 0x94140404, // 001F GETIDX R5 R2 R4 0x5C180800, // 0020 MOVE R6 R4 - 0x241C0D0A, // 0021 GT R7 R6 K10 + 0x241C0D06, // 0021 GT R7 R6 K6 0x781E0008, // 0022 JMPF R7 #002C - 0x041C0D38, // 0023 SUB R7 R6 K56 + 0x041C0D14, // 0023 SUB R7 R6 K20 0x941C0407, // 0024 GETIDX R7 R2 R7 0x241C0E05, // 0025 GT R7 R7 R5 0x781E0004, // 0026 JMPF R7 #002C - 0x041C0D38, // 0027 SUB R7 R6 K56 + 0x041C0D14, // 0027 SUB R7 R6 K20 0x941C0407, // 0028 GETIDX R7 R2 R7 0x98080C07, // 0029 SETIDX R2 R6 R7 - 0x04180D38, // 002A SUB R6 R6 K56 + 0x04180D14, // 002A SUB R6 R6 K20 0x7001FFF4, // 002B JMP #0021 0x98080C05, // 002C SETIDX R2 R6 R5 0x7001FFEE, // 002D JMP #001D - 0x580C0014, // 002E LDCONST R3 K20 + 0x580C0011, // 002E LDCONST R3 K17 0xAC0C0200, // 002F CATCH R3 1 0 0xB0080000, // 0030 RAISE 2 R0 R0 0x80040400, // 0031 RET 1 R2 @@ -3839,50 +3249,47 @@ be_local_closure(class_Matter_Device_k2l, /* name */ ** Solidified class: Matter_Device ********************************************************************/ be_local_class(Matter_Device, - 22, + 23, NULL, be_nested_map(79, ( (struct bmapnode*) &(const bmapnode[]) { { be_const_key_weak(received_ack, -1), be_const_closure(class_Matter_Device_received_ack_closure) }, - { be_const_key_weak(_start_udp, -1), be_const_closure(class_Matter_Device__start_udp_closure) }, + { be_const_key_weak(add_read_sensors_schedule, -1), be_const_closure(class_Matter_Device_add_read_sensors_schedule_closure) }, { be_const_key_weak(plugins, -1), be_const_var(1) }, - { be_const_key_weak(msg_send, -1), be_const_closure(class_Matter_Device_msg_send_closure) }, - { be_const_key_weak(_instantiate_plugins_from_config, -1), be_const_closure(class_Matter_Device__instantiate_plugins_from_config_closure) }, + { be_const_key_weak(debug, -1), be_const_var(20) }, + { be_const_key_weak(autoconf, -1), be_const_var(9) }, { be_const_key_weak(message_handler, -1), be_const_var(7) }, { be_const_key_weak(event_fabrics_saved, -1), be_const_closure(class_Matter_Device_event_fabrics_saved_closure) }, { be_const_key_weak(save_before_restart, -1), be_const_closure(class_Matter_Device_save_before_restart_closure) }, - { be_const_key_weak(probe_sensor_time, 1), be_const_var(20) }, - { be_const_key_weak(conf_to_log, 50), be_const_static_closure(class_Matter_Device_conf_to_log_closure) }, - { be_const_key_weak(init, -1), be_const_closure(class_Matter_Device_init_closure) }, - { be_const_key_weak(ui, -1), be_const_var(10) }, - { be_const_key_weak(root_passcode, -1), be_const_var(15) }, - { be_const_key_weak(every_50ms, 22), be_const_closure(class_Matter_Device_every_50ms_closure) }, - { be_const_key_weak(profiler, -1), be_const_var(6) }, - { be_const_key_weak(disable_bridge_mode, -1), be_const_var(17) }, + { be_const_key_weak(probe_sensor_time, 63), be_const_var(21) }, + { be_const_key_weak(conf_to_log, 53), be_const_static_closure(class_Matter_Device_conf_to_log_closure) }, + { be_const_key_weak(EP, 72), be_const_int(2) }, + { be_const_key_weak(ui, -1), be_const_var(11) }, + { be_const_key_weak(root_passcode, -1), be_const_var(16) }, + { be_const_key_weak(find_plugin_by_endpoint, -1), be_const_closure(class_Matter_Device_find_plugin_by_endpoint_closure) }, + { be_const_key_weak(UDP_PORT, 40), be_const_int(5540) }, + { be_const_key_weak(disable_bridge_mode, -1), be_const_var(18) }, { be_const_key_weak(remove_fabric, -1), be_const_closure(class_Matter_Device_remove_fabric_closure) }, { be_const_key_weak(resolve_attribute_read_solo, 66), be_const_closure(class_Matter_Device_resolve_attribute_read_solo_closure) }, { be_const_key_weak(signal_endpoints_changed, -1), be_const_closure(class_Matter_Device_signal_endpoints_changed_closure) }, { be_const_key_weak(autoconf_device, 69), be_const_closure(class_Matter_Device_autoconf_device_closure) }, { be_const_key_weak(_trigger_read_sensors, -1), be_const_closure(class_Matter_Device__trigger_read_sensors_closure) }, { be_const_key_weak(get_active_endpoints, -1), be_const_closure(class_Matter_Device_get_active_endpoints_closure) }, - { be_const_key_weak(button_handler, 37), be_const_closure(class_Matter_Device_button_handler_closure) }, - { be_const_key_weak(debug, 3), be_const_var(19) }, - { be_const_key_weak(stop, 43), be_const_closure(class_Matter_Device_stop_closure) }, + { be_const_key_weak(profiler, -1), be_const_var(6) }, + { be_const_key_weak(msg_send, 3), be_const_closure(class_Matter_Device_msg_send_closure) }, + { be_const_key_weak(stop, 31), be_const_closure(class_Matter_Device_stop_closure) }, { be_const_key_weak(adjust_next_ep, -1), be_const_closure(class_Matter_Device_adjust_next_ep_closure) }, - { be_const_key_weak(add_read_sensors_schedule, 49), be_const_closure(class_Matter_Device_add_read_sensors_schedule_closure) }, + { be_const_key_weak(msg_received, 50), be_const_closure(class_Matter_Device_msg_received_closure) }, { be_const_key_weak(button_pressed, -1), be_const_closure(class_Matter_Device_button_pressed_closure) }, - { be_const_key_weak(register_http_remote, 53), be_const_closure(class_Matter_Device_register_http_remote_closure) }, - { be_const_key_weak(root_discriminator, -1), be_const_var(14) }, - { be_const_key_weak(start, 4), be_const_closure(class_Matter_Device_start_closure) }, + { be_const_key_weak(FILENAME, 44), be_nested_str_weak(_matter_device_X2Ejson) }, + { be_const_key_weak(root_discriminator, -1), be_const_var(15) }, + { be_const_key_weak(start, -1), be_const_closure(class_Matter_Device_start_closure) }, + { be_const_key_weak(MtrJoin, 46), be_const_closure(class_Matter_Device_MtrJoin_closure) }, { be_const_key_weak(MtrInfo_one, -1), be_const_closure(class_Matter_Device_MtrInfo_one_closure) }, - { be_const_key_weak(autoconf_sensors_list, 40), be_const_closure(class_Matter_Device_autoconf_sensors_list_closure) }, { be_const_key_weak(get_plugin_class_displayname, -1), be_const_closure(class_Matter_Device_get_plugin_class_displayname_closure) }, { be_const_key_weak(plugins_config, -1), be_const_var(3) }, - { be_const_key_weak(http_remotes, 11), be_const_var(13) }, - { be_const_key_weak(get_plugin_remote_info, 58), be_const_closure(class_Matter_Device_get_plugin_remote_info_closure) }, - { be_const_key_weak(UDP_PORT, -1), be_const_int(5540) }, - { be_const_key_weak(tick, 46), be_const_var(11) }, - { be_const_key_weak(clean_remotes, 72), be_const_closure(class_Matter_Device_clean_remotes_closure) }, + { be_const_key_weak(http_remotes, 11), be_const_var(14) }, + { be_const_key_weak(get_plugin_remote_info, 13), be_const_closure(class_Matter_Device_get_plugin_remote_info_closure) }, { be_const_key_weak(plugins_classes, -1), be_const_simple_instance(be_nested_simple_instance(&be_class_map, { be_const_map( * be_nested_map(53, ( (struct bmapnode*) &(const bmapnode[]) { @@ -3940,40 +3347,43 @@ be_local_class(Matter_Device, { be_const_key_weak(rain, -1), be_const_class(be_class_Matter_Plugin_Sensor_Rain) }, { be_const_key_weak(light0, -1), be_const_class(be_class_Matter_Plugin_Light0) }, })) ) } )) }, - { be_const_key_weak(udp_server, -1), be_const_var(5) }, + { be_const_key_weak(tick, 49), be_const_var(12) }, + { be_const_key_weak(check_config_ep, 41), be_const_closure(class_Matter_Device_check_config_ep_closure) }, + { be_const_key_weak(MtrUpdate, 58), be_const_closure(class_Matter_Device_MtrUpdate_closure) }, + { be_const_key_weak(clean_remotes, -1), be_const_closure(class_Matter_Device_clean_remotes_closure) }, { be_const_key_weak(every_second, -1), be_const_closure(class_Matter_Device_every_second_closure) }, - { be_const_key_weak(MtrJoin, -1), be_const_closure(class_Matter_Device_MtrJoin_closure) }, - { be_const_key_weak(button_multi_pressed, -1), be_const_closure(class_Matter_Device_button_multi_pressed_closure) }, + { be_const_key_weak(udp_server, -1), be_const_var(5) }, + { be_const_key_weak(register_http_remote, -1), be_const_closure(class_Matter_Device_register_http_remote_closure) }, { be_const_key_weak(k2l_num, -1), be_const_static_closure(class_Matter_Device_k2l_num_closure) }, - { be_const_key_weak(probe_sensor_timestamp, -1), be_const_var(21) }, + { be_const_key_weak(reset_param, -1), be_const_closure(class_Matter_Device_reset_param_closure) }, { be_const_key_weak(every_250ms, -1), be_const_closure(class_Matter_Device_every_250ms_closure) }, { be_const_key_weak(process_attribute_expansion, -1), be_const_closure(class_Matter_Device_process_attribute_expansion_closure) }, - { be_const_key_weak(msg_received, 44), be_const_closure(class_Matter_Device_msg_received_closure) }, - { be_const_key_weak(events, -1), be_const_var(12) }, - { be_const_key_weak(VENDOR_ID, 63), be_const_int(65521) }, + { be_const_key_weak(probe_sensor_timestamp, -1), be_const_var(22) }, + { be_const_key_weak(button_multi_pressed, 1), be_const_closure(class_Matter_Device_button_multi_pressed_closure) }, + { be_const_key_weak(VENDOR_ID, 64), be_const_int(65521) }, { be_const_key_weak(MtrInfo, -1), be_const_closure(class_Matter_Device_MtrInfo_closure) }, - { be_const_key_weak(FILENAME, -1), be_nested_str_weak(_matter_device_X2Ejson) }, - { be_const_key_weak(ipv4only, -1), be_const_var(16) }, + { be_const_key_weak(events, -1), be_const_var(13) }, + { be_const_key_weak(ipv4only, -1), be_const_var(17) }, { be_const_key_weak(commissioning, -1), be_const_var(8) }, { be_const_key_weak(load_param, -1), be_const_closure(class_Matter_Device_load_param_closure) }, - { be_const_key_weak(sessions, 55), be_const_var(9) }, - { be_const_key_weak(find_plugin_by_endpoint, -1), be_const_closure(class_Matter_Device_find_plugin_by_endpoint_closure) }, + { be_const_key_weak(sessions, 55), be_const_var(10) }, + { be_const_key_weak(every_50ms, -1), be_const_closure(class_Matter_Device_every_50ms_closure) }, { be_const_key_weak(register_commands, -1), be_const_closure(class_Matter_Device_register_commands_closure) }, - { be_const_key_weak(next_ep, -1), be_const_var(18) }, + { be_const_key_weak(next_ep, -1), be_const_var(19) }, { be_const_key_weak(save_param, -1), be_const_closure(class_Matter_Device_save_param_closure) }, { be_const_key_weak(bridge_remove_endpoint, -1), be_const_closure(class_Matter_Device_bridge_remove_endpoint_closure) }, - { be_const_key_weak(bridge_add_endpoint, 64), be_const_closure(class_Matter_Device_bridge_add_endpoint_closure) }, - { be_const_key_weak(autoconf_device_map, -1), be_const_closure(class_Matter_Device_autoconf_device_map_closure) }, + { be_const_key_weak(_start_udp, -1), be_const_closure(class_Matter_Device__start_udp_closure) }, + { be_const_key_weak(bridge_add_endpoint, -1), be_const_closure(class_Matter_Device_bridge_add_endpoint_closure) }, { be_const_key_weak(read_sensors_scheduler, -1), be_const_closure(class_Matter_Device_read_sensors_scheduler_closure) }, { be_const_key_weak(attribute_updated, -1), be_const_closure(class_Matter_Device_attribute_updated_closure) }, - { be_const_key_weak(find_plugin_by_friendly_name, 41), be_const_closure(class_Matter_Device_find_plugin_by_friendly_name_closure) }, + { be_const_key_weak(find_plugin_by_friendly_name, 43), be_const_closure(class_Matter_Device_find_plugin_by_friendly_name_closure) }, { be_const_key_weak(plugins_config_remotes, -1), be_const_var(4) }, { be_const_key_weak(plugins_persist, -1), be_const_var(2) }, - { be_const_key_weak(sort_distinct, 32), be_const_static_closure(class_Matter_Device_sort_distinct_closure) }, - { be_const_key_weak(started, 31), be_const_var(0) }, - { be_const_key_weak(check_config_ep, -1), be_const_closure(class_Matter_Device_check_config_ep_closure) }, - { be_const_key_weak(invoke_request, 14), be_const_closure(class_Matter_Device_invoke_request_closure) }, - { be_const_key_weak(MtrUpdate, 13), be_const_closure(class_Matter_Device_MtrUpdate_closure) }, + { be_const_key_weak(sort_distinct, 37), be_const_static_closure(class_Matter_Device_sort_distinct_closure) }, + { be_const_key_weak(started, 32), be_const_var(0) }, + { be_const_key_weak(init, -1), be_const_closure(class_Matter_Device_init_closure) }, + { be_const_key_weak(invoke_request, 22), be_const_closure(class_Matter_Device_invoke_request_closure) }, + { be_const_key_weak(button_handler, 14), be_const_closure(class_Matter_Device_button_handler_closure) }, { be_const_key_weak(get_plugin_class_arg, -1), be_const_closure(class_Matter_Device_get_plugin_class_arg_closure) }, { be_const_key_weak(PRODUCT_ID, -1), be_const_int(32768) }, { be_const_key_weak(update_remotes_info, -1), be_const_closure(class_Matter_Device_update_remotes_info_closure) },