Finished conio, most of string library, changed
output and bytecode to textarea
This commit is contained in:
@@ -80,33 +80,36 @@ exports.NATIVE_FILE_READLINE = 68
|
|||||||
exports.NATIVE_IMAGE_CLONE = 69
|
exports.NATIVE_IMAGE_CLONE = 69
|
||||||
exports.NATIVE_IMAGE_CREATE = 70
|
exports.NATIVE_IMAGE_CREATE = 70
|
||||||
exports.NATIVE_IMAGE_DATA = 71
|
exports.NATIVE_IMAGE_DATA = 71
|
||||||
exports.NATIVE_IMAGE_DESTROY = 72
|
exports.NATIVE_IMAGE_HEIGHT = 72
|
||||||
exports.NATIVE_IMAGE_HEIGHT = 73
|
exports.NATIVE_IMAGE_LOAD = 73
|
||||||
exports.NATIVE_IMAGE_LOAD = 74
|
exports.NATIVE_IMAGE_SAVE = 74
|
||||||
exports.NATIVE_IMAGE_SAVE = 75
|
exports.NATIVE_IMAGE_SUBIMAGE = 75
|
||||||
exports.NATIVE_IMAGE_SUBIMAGE = 76
|
exports.NATIVE_IMAGE_WIDTH = 76
|
||||||
exports.NATIVE_IMAGE_WIDTH = 77
|
|
||||||
|
|
||||||
/* parse */
|
/* parse */
|
||||||
exports.NATIVE_PARSE_BOOL = 78
|
exports.NATIVE_INT_TOKENS = 77
|
||||||
exports.NATIVE_PARSE_INT = 79
|
exports.NATIVE_NUM_TOKENS = 78
|
||||||
|
exports.NATIVE_PARSE_BOOL = 79
|
||||||
|
exports.NATIVE_PARSE_INT = 80
|
||||||
|
exports.NATIVE_PARSE_INTS = 81
|
||||||
|
exports.NATIVE_PARSE_TOKENS = 82
|
||||||
|
|
||||||
/* string */
|
/* string */
|
||||||
exports.NATIVE_CHAR_CHR = 80
|
exports.NATIVE_CHAR_CHR = 83
|
||||||
exports.NATIVE_CHAR_ORD = 81
|
exports.NATIVE_CHAR_ORD = 84
|
||||||
exports.NATIVE_STRING_CHARAT = 82
|
exports.NATIVE_STRING_CHARAT = 85
|
||||||
exports.NATIVE_STRING_COMPARE = 83
|
exports.NATIVE_STRING_COMPARE = 86
|
||||||
exports.NATIVE_STRING_EQUAL = 84
|
exports.NATIVE_STRING_EQUAL = 87
|
||||||
exports.NATIVE_STRING_FROM_CHARARRAY = 85
|
exports.NATIVE_STRING_FROM_CHARARRAY = 88
|
||||||
exports.NATIVE_STRING_FROMBOOL = 86
|
exports.NATIVE_STRING_FROMBOOL = 89
|
||||||
exports.NATIVE_STRING_FROMCHAR = 87
|
exports.NATIVE_STRING_FROMCHAR = 90
|
||||||
exports.NATIVE_STRING_FROMINT = 88
|
exports.NATIVE_STRING_FROMINT = 91
|
||||||
exports.NATIVE_STRING_JOIN = 89
|
exports.NATIVE_STRING_JOIN = 92
|
||||||
exports.NATIVE_STRING_LENGTH = 90
|
exports.NATIVE_STRING_LENGTH = 93
|
||||||
exports.NATIVE_STRING_SUB = 91
|
exports.NATIVE_STRING_SUB = 94
|
||||||
exports.NATIVE_STRING_TERMINATED = 92
|
exports.NATIVE_STRING_TERMINATED = 95
|
||||||
exports.NATIVE_STRING_TO_CHARARRAY = 93
|
exports.NATIVE_STRING_TO_CHARARRAY = 96
|
||||||
exports.NATIVE_STRING_TOLOWER = 94
|
exports.NATIVE_STRING_TOLOWER = 97
|
||||||
|
|
||||||
callbacks = {};
|
callbacks = {};
|
||||||
callbacks[exports.NATIVE_STRING_LENGTH] =
|
callbacks[exports.NATIVE_STRING_LENGTH] =
|
||||||
@@ -150,4 +153,14 @@ callbacks[exports.NATIVE_CHAR_ORD] =
|
|||||||
return args[0];
|
return args[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
callbacks[exports.NATIVE_STRING_COMPARE] = function(args) {
|
||||||
|
if (args[0] < args[1]) return -1;
|
||||||
|
if (args[0] > args[1]) return 1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
callbacks[exports.NATIVE_STRING_EQUAL] = function(args) {
|
||||||
|
return args[0] === args[1];
|
||||||
|
}
|
||||||
|
|
||||||
exports.default_callbacks = callbacks;
|
exports.default_callbacks = callbacks;
|
||||||
|
|||||||
@@ -525,6 +525,12 @@ function execute(file, callbacks, v) {
|
|||||||
return run_vm(state);
|
return run_vm(state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function push(v) {
|
||||||
|
console.log("Pretend I pushed " + v);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
exports.execute = execute;
|
exports.execute = execute;
|
||||||
exports.initialize_vm = initialize_vm;
|
exports.initialize_vm = initialize_vm;
|
||||||
exports.run_vm = run_vm;
|
exports.run_vm = run_vm;
|
||||||
|
exports.push = push;
|
||||||
|
|||||||
@@ -38,11 +38,11 @@ callbacks[c0ffi.NATIVE_PRINTBOOL] = function(args) {
|
|||||||
callbacks[c0ffi.NATIVE_PRINTCHAR] = function(args) {
|
callbacks[c0ffi.NATIVE_PRINTCHAR] = function(args) {
|
||||||
print(String.fromCharCode(args[0]));
|
print(String.fromCharCode(args[0]));
|
||||||
}
|
}
|
||||||
|
callbacks[c0ffi.NATIVE_READLINE] = function(args) {
|
||||||
|
return prompt("","");
|
||||||
|
}
|
||||||
callbacks[c0ffi.NATIVE_PRINTINT] = function(args) {
|
callbacks[c0ffi.NATIVE_PRINTINT] = function(args) {
|
||||||
print(args[0]);
|
print(args[0]);
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(callbacks);
|
console.log(callbacks);
|
||||||
|
|||||||
@@ -240,33 +240,36 @@ exports.NATIVE_FILE_READLINE = 68
|
|||||||
exports.NATIVE_IMAGE_CLONE = 69
|
exports.NATIVE_IMAGE_CLONE = 69
|
||||||
exports.NATIVE_IMAGE_CREATE = 70
|
exports.NATIVE_IMAGE_CREATE = 70
|
||||||
exports.NATIVE_IMAGE_DATA = 71
|
exports.NATIVE_IMAGE_DATA = 71
|
||||||
exports.NATIVE_IMAGE_DESTROY = 72
|
exports.NATIVE_IMAGE_HEIGHT = 72
|
||||||
exports.NATIVE_IMAGE_HEIGHT = 73
|
exports.NATIVE_IMAGE_LOAD = 73
|
||||||
exports.NATIVE_IMAGE_LOAD = 74
|
exports.NATIVE_IMAGE_SAVE = 74
|
||||||
exports.NATIVE_IMAGE_SAVE = 75
|
exports.NATIVE_IMAGE_SUBIMAGE = 75
|
||||||
exports.NATIVE_IMAGE_SUBIMAGE = 76
|
exports.NATIVE_IMAGE_WIDTH = 76
|
||||||
exports.NATIVE_IMAGE_WIDTH = 77
|
|
||||||
|
|
||||||
/* parse */
|
/* parse */
|
||||||
exports.NATIVE_PARSE_BOOL = 78
|
exports.NATIVE_INT_TOKENS = 77
|
||||||
exports.NATIVE_PARSE_INT = 79
|
exports.NATIVE_NUM_TOKENS = 78
|
||||||
|
exports.NATIVE_PARSE_BOOL = 79
|
||||||
|
exports.NATIVE_PARSE_INT = 80
|
||||||
|
exports.NATIVE_PARSE_INTS = 81
|
||||||
|
exports.NATIVE_PARSE_TOKENS = 82
|
||||||
|
|
||||||
/* string */
|
/* string */
|
||||||
exports.NATIVE_CHAR_CHR = 80
|
exports.NATIVE_CHAR_CHR = 83
|
||||||
exports.NATIVE_CHAR_ORD = 81
|
exports.NATIVE_CHAR_ORD = 84
|
||||||
exports.NATIVE_STRING_CHARAT = 82
|
exports.NATIVE_STRING_CHARAT = 85
|
||||||
exports.NATIVE_STRING_COMPARE = 83
|
exports.NATIVE_STRING_COMPARE = 86
|
||||||
exports.NATIVE_STRING_EQUAL = 84
|
exports.NATIVE_STRING_EQUAL = 87
|
||||||
exports.NATIVE_STRING_FROM_CHARARRAY = 85
|
exports.NATIVE_STRING_FROM_CHARARRAY = 88
|
||||||
exports.NATIVE_STRING_FROMBOOL = 86
|
exports.NATIVE_STRING_FROMBOOL = 89
|
||||||
exports.NATIVE_STRING_FROMCHAR = 87
|
exports.NATIVE_STRING_FROMCHAR = 90
|
||||||
exports.NATIVE_STRING_FROMINT = 88
|
exports.NATIVE_STRING_FROMINT = 91
|
||||||
exports.NATIVE_STRING_JOIN = 89
|
exports.NATIVE_STRING_JOIN = 92
|
||||||
exports.NATIVE_STRING_LENGTH = 90
|
exports.NATIVE_STRING_LENGTH = 93
|
||||||
exports.NATIVE_STRING_SUB = 91
|
exports.NATIVE_STRING_SUB = 94
|
||||||
exports.NATIVE_STRING_TERMINATED = 92
|
exports.NATIVE_STRING_TERMINATED = 95
|
||||||
exports.NATIVE_STRING_TO_CHARARRAY = 93
|
exports.NATIVE_STRING_TO_CHARARRAY = 96
|
||||||
exports.NATIVE_STRING_TOLOWER = 94
|
exports.NATIVE_STRING_TOLOWER = 97
|
||||||
|
|
||||||
callbacks = {};
|
callbacks = {};
|
||||||
callbacks[exports.NATIVE_STRING_LENGTH] =
|
callbacks[exports.NATIVE_STRING_LENGTH] =
|
||||||
@@ -310,6 +313,12 @@ callbacks[exports.NATIVE_CHAR_ORD] =
|
|||||||
return args[0];
|
return args[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
callbacks[exports.NATIVE_STRING_COMPARE] = function(args) {
|
||||||
|
if (args[0] < args[1]) return -1;
|
||||||
|
if (args[0] > args[1]) return 1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
exports.default_callbacks = callbacks;
|
exports.default_callbacks = callbacks;
|
||||||
|
|
||||||
},{}],4:[function(require,module,exports){
|
},{}],4:[function(require,module,exports){
|
||||||
@@ -840,9 +849,15 @@ function execute(file, callbacks, v) {
|
|||||||
return run_vm(state);
|
return run_vm(state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function push(v) {
|
||||||
|
console.log("Pretend I pushed " + v);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
exports.execute = execute;
|
exports.execute = execute;
|
||||||
exports.initialize_vm = initialize_vm;
|
exports.initialize_vm = initialize_vm;
|
||||||
exports.run_vm = run_vm;
|
exports.run_vm = run_vm;
|
||||||
|
exports.push = push;
|
||||||
|
|
||||||
},{"./opcodes":6}],5:[function(require,module,exports){
|
},{"./opcodes":6}],5:[function(require,module,exports){
|
||||||
parser = require("./bytecode-parser");
|
parser = require("./bytecode-parser");
|
||||||
@@ -885,12 +900,11 @@ callbacks[c0ffi.NATIVE_PRINTBOOL] = function(args) {
|
|||||||
callbacks[c0ffi.NATIVE_PRINTCHAR] = function(args) {
|
callbacks[c0ffi.NATIVE_PRINTCHAR] = function(args) {
|
||||||
print(String.fromCharCode(args[0]));
|
print(String.fromCharCode(args[0]));
|
||||||
}
|
}
|
||||||
|
callbacks[c0ffi.NATIVE_READLINE] = function(args) {
|
||||||
|
return prompt("","");
|
||||||
|
}
|
||||||
callbacks[c0ffi.NATIVE_PRINTINT] = function(args) {
|
callbacks[c0ffi.NATIVE_PRINTINT] = function(args) {
|
||||||
print(args[0]);
|
print(args[0]);
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(callbacks);
|
console.log(callbacks);
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ block body
|
|||||||
.col-md-6
|
.col-md-6
|
||||||
p.lbl.
|
p.lbl.
|
||||||
Bytecode
|
Bytecode
|
||||||
textarea#bytecode.panel.panel-default.code.sh_c.
|
textarea.code.formControl.sh_c(rows="12" id="bytecode")
|
||||||
|
|
||||||
.row
|
.row
|
||||||
.col-md-12
|
.col-md-12
|
||||||
|
|||||||
Reference in New Issue
Block a user