Loading a machine code API onto an 8-bit virtual machine to enable new functionality
First Claim
1. A method involving a chain of a plurality of virtual machine devices that are chained together in serial fashion, and wherein each of the virtual machine devices comprises a microcontroller that executes a script interpreter, the method comprising:
- (a) relaying a first direct script instruction through virtual machine devices from one virtual machine device to the next down the chain of virtual machine devices such that the first direct script instruction is supplied to a selected one of the virtual machine devices;
(b) interpreting the first direct script instruction on the selected one of the virtual machine devices thereby putting the selected virtual machine device into a direct mode;
(c) relaying an amount of code from one virtual machine device to the next down the chain of virtual machine devices such that the code is received onto the selected virtual machine device;
(d) loading the amount of code into the selected virtual machine device while the selected virtual machine device is operating in the direct mode;
(e) relaying a second direct script instruction through virtual machine devices from one virtual machine device to the next down the chain of virtual machine devices such that the second direct script instruction is supplied to the selected one of the virtual machine devices; and
(f) interpreting the second direct script instruction on the selected one of the virtual machine devices thereby causing the selected virtual machine device to exit the direct mode.
4 Assignments
0 Petitions
Accused Products
Abstract
A compact, register-based, eight-bit virtual machine is realized on a resource-constrained device such as, for example, an IR remote control device. The IR remote control device includes a script interpreter, as well as loader API functionality and API functionality to support communication over a bidirectional link. The functionality of the remote control device is customized by loading either a machine code API routine and/or a script API routine onto the remote control device via the bidirectional link. A script is loaded via the bidirectional link and is stored in program memory. Once loaded, the script is interpreted by the virtual machine, thereby calling API functionalities provided, and thereby causing the remote control device to have a desired customized function. Providing the virtual machine on all the members of a family of remote control devices allows the same script to run on any remote control device of the family.
44 Citations
22 Claims
-
1. A method involving a chain of a plurality of virtual machine devices that are chained together in serial fashion, and wherein each of the virtual machine devices comprises a microcontroller that executes a script interpreter, the method comprising:
-
(a) relaying a first direct script instruction through virtual machine devices from one virtual machine device to the next down the chain of virtual machine devices such that the first direct script instruction is supplied to a selected one of the virtual machine devices; (b) interpreting the first direct script instruction on the selected one of the virtual machine devices thereby putting the selected virtual machine device into a direct mode; (c) relaying an amount of code from one virtual machine device to the next down the chain of virtual machine devices such that the code is received onto the selected virtual machine device; (d) loading the amount of code into the selected virtual machine device while the selected virtual machine device is operating in the direct mode; (e) relaying a second direct script instruction through virtual machine devices from one virtual machine device to the next down the chain of virtual machine devices such that the second direct script instruction is supplied to the selected one of the virtual machine devices; and (f) interpreting the second direct script instruction on the selected one of the virtual machine devices thereby causing the selected virtual machine device to exit the direct mode. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
- 12. A system comprising a chain of virtual machine devices that are chained together in serial fashion by a bus, wherein each virtual machine device of the chain comprises a microcontroller that executes a script interpreter and wherein no virtual machine device of the chain executes any operating system, wherein the script interpreter of a selected virtual machine device is adapted (a) to halt any interpreting of any script in response to a receiving of a first direct script instruction onto the selected virtual machine device and in response to an interpreting of the first direct script instruction by the selected virtual machine device and then (b) to load an amount of code received from the bus into the selected virtual machine device and then (c) in response to a receiving and an interpreting of a second direct script instruction to reset the selected virtual machine device such that the selected virtual machine device does not lead any code, wherein the first direct script instruction, the amount of code, and the second direct script instruction are relayed through multiple upstream virtual machine devices through the chain down to the selected virtual machine device.
-
20. A system comprising:
-
a bus; and a chain of a plurality of Virtual Machine (VM) means, wherein the VM means are chained together in serial fashion by the bus, wherein each VM means is for;
1) halting any interpreting of any script in response to a receiving of a first direct script instruction onto said each VM means and an interpreting of the first direct script instruction by said each VM mean thereby putting said each VM means into a direct mode;
2) loading an amount of code received from the bus into said each VM means while said each VM means is operating in the direct mode; and
3) resetting said each VM means in response to a receiving of a second direct script instruction onto said each VM means and an interpreting of the second direct script instruction by said each VM means thereby taking said each VM means out of the direct mode, wherein first direct instructions, amounts of code, and second direct instructions destined for a particular downstream VM means of the chain are supplied to the particular downstream VM means by relaying the direct instructions and code through any upstream VM means of the chain down through the chain to the particular downstream VM means. - View Dependent Claims (21, 22)
-
Specification