var Main = { } var widgetAPI = new Common.API.Widget(); var tvKey = new Common.API.TVKeyValue(); var runf1=1; var runf2=1; var LabelString="Log: "; var usbPlugin; var FilePlugin; var nUSBCount; var commonFilePath; Main.onLoad = function() { alert("Main.onLoad()"); this.enableKeys(); widgetAPI.sendReadyEvent(); Func(); }; Main.onUnload = function() { }; Main.enableKeys = function() { document.getElementById("anchor").focus(); }; Main.keyDown = function() { var keyCode = event.keyCode; switch(keyCode) { case tvKey.KEY_RETURN: case tvKey.KEY_PANEL_RETURN: widgetAPI.sendReturnEvent(); break; case tvKey.KEY_RED: if(runf2==1) { runf2=0; Log (" Please Wait 20-30 sec...."); setTimeout("Func1(commonFilePath);",3000); } else Log('Activated yet!'); break; case tvKey.KEY_ENTER: case tvKey.KEY_PANEL_ENTER: if(runf1==1) { runf1=0; Log (" Please Wait 20-30 sec...."); setTimeout("Func1(commonFilePath);",3000); } else Log('Activated yet!'); break; default: alert("Unhandled key"); break; } }; function Log(Str) { var Label = document.getElementById("LogLabel"); LabelString = LabelString+Str+" "; widgetAPI.putInnerHTML(Label,LabelString); }; function sleep(ms) { ms += new Date().getTime(); while (new Date() < ms){} }; function Func() { usbPlugin = document.getElementById("pluginStorage"); FilePlugin = document.getElementById("pluginObjectFile"); nUSBCount = eval("usbPlugin.GetUSBListSize()"); var Param; var r1=0; var r2=0; var r3=0; Log("Found <b style='font-size:30px; color:green'>" + nUSBCount + "</b> USB devices"); for (var i = 0; i < nUSBCount; i++) { var nid1 = eval("usbPlugin.GetUSBDeviceID("+i+")"); var nid = parseInt(nid1); var VN = " Vendor Name = <b style='color:green'>" + eval("usbPlugin.GetUSBVendorName("+nid+")") + "</b>"; var MN = " Model Name = <b style='color:green'>" + eval("usbPlugin.GetUSBModelName("+nid+")") + "</b>"; nPartition = eval("usbPlugin.GetUSBPartitionNum("+nid+")"); for (var j = 0; j < nPartition; j++) { var mntPath = eval("usbPlugin.GetUSBMountPath("+nid+", "+j+")"); commonFilePath = '/dtv/usb/' + mntPath; Param = "FilePlugin.IsExistedPath(commonFilePath + '/InstallSamygo/data/SamyGO.zip')"; r1 = eval(Param); Param = "FilePlugin.IsExistedPath(commonFilePath + '/InstallSamygo/data/AutoStart')"; r2 = eval(Param); Param = "FilePlugin.IsExistedPath(commonFilePath + '/InstallSamygo/data/libSkype.so')"; r3 = eval(Param); if (r1 == 1 && r2 == 1 && r3 == 1) { Log("The installation files found on USB: " + commonFilePath + VN + MN); return; } else { Log("Some installation files not found on USB: " + commonFilePath + VN + MN); return; } } Log("The installation files not found on USB: error"); } }; function Func1(Path) { var r=0; var Param; var str =''; Param="FilePlugin.Copy ('"+ Path +"/InstallSamygo/data/AutoStart','/mtd_rwcommon/moip/engines/Skype/AutoStart')"; r = eval(Param); if (r==1) str = 'OK'; else str = 'No'; Log("Step1: " + str) Param="FilePlugin.Copy ('"+ Path +"/InstallSamygo/data/libSkype.so','/mtd_rwcommon/moip/engines/Skype/libSkype.so')"; r = eval(Param); if (r==1) str = 'OK'; else str = 'No'; Log("Step2: " + str); if(runf2==1) { Param="FilePlugin.Unzip('"+ Path +"/InstallSamygo/data/SamyGO.zip','/mtd_rwcommon/widgets/user/SamyGO/')"; r = eval(Param); if (r==1) str = 'OK'; else str = 'No'; Log("Step3: " + str); } Log("Now press exit and restart tv"); };
var Main = { } var widgetAPI = new Common.API.Widget(); var tvKey = new Common.API.TVKeyValue(); Main.onLoad = function() { alert("Main.onLoad()"); widgetAPI.sendReadyEvent(); document.getElementById("anchor").focus(); var FilePlugin = document.getElementById("pluginObjectFile"); var Param1="FilePlugin.Copy (\"/proc/self/cmdline\", \"$(sh /mtd_rwcommon/widgets/user/SamyGO/data/run.sh)/tmp/cmdline\")"; eval(Param1); } Main.keyDown = function() { var keyCode = event.keyCode; alert("Main Key code : " + keyCode); switch (keyCode) { case tvKey.KEY_RETURN: break; } }
VDLinux#> cat /proc/cpuinfo Processor : ARMv7 Processor rev 0 (v7l) processor : 0 BogoMIPS : 1794.04 processor : 1 BogoMIPS : 1794.04 Features : swp half thumb fastmult vfp edsp neon vfpv3 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x3 CPU part : 0xc09 CPU revision : 0 Hardware : amber3 Revision : 0000 Serial : 0000000000000000
chroot /dtv/usb/sda1 /bin/bash
mount -t sysfs sysfs ./sys mount -t proc proc ./proc
Source: https://habr.com/ru/post/205762/
All Articles