summaryrefslogtreecommitdiffstats
path: root/source/utils.js
diff options
context:
space:
mode:
Diffstat (limited to 'source/utils.js')
-rw-r--r--source/utils.js29
1 files changed, 26 insertions, 3 deletions
diff --git a/source/utils.js b/source/utils.js
index 5afc5e3..842e328 100644
--- a/source/utils.js
+++ b/source/utils.js
@@ -17,9 +17,32 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
JSNES.Utils = {
- arraycopy: function(src, srcPos, dest, destPos, length) {
- for (var i=0; i<length; ++i) {
- dest[destPos+i] = src[srcPos+i];
+ copyArrayElements: function(src, srcPos, dest, destPos, length) {
+ for (var i = 0; i < length; ++i) {
+ dest[destPos + i] = src[srcPos + i];
}
+ },
+
+ copyArray: function(src) {
+ var dest = new Array(src.length);
+ for (var i = 0; i < src.length; i++) {
+ dest[i] = src[i];
+ }
+ return dest;
+ },
+
+ fromJSON: function(obj, state) {
+ for (var i = 0; i < obj.JSON_PROPERTIES.length; i++) {
+ obj[obj.JSON_PROPERTIES[i]] = state[obj.JSON_PROPERTIES[i]];
+ }
+ },
+
+ toJSON: function(obj) {
+ var state = {};
+ for (var i = 0; i < obj.JSON_PROPERTIES.length; i++) {
+ state[obj.JSON_PROPERTIES[i]] = obj[obj.JSON_PROPERTIES[i]];
+ }
+ return state;
}
};
+