Improve unicode more.
This commit is contained in:
@ -287,7 +287,7 @@ r|
|
|||||||
r|
|
r|
|
||||||
(function(sp) {
|
(function(sp) {
|
||||||
if (globalObj.readline && !context.inbuffer.length) {
|
if (globalObj.readline && !context.inbuffer.length) {
|
||||||
var line = readline();
|
var line = unescape(encodeURIComponent(readline()));
|
||||||
for (var i = 0; i < line.length; ++i) {
|
for (var i = 0; i < line.length; ++i) {
|
||||||
context.inbuffer.push(line.charCodeAt(i));
|
context.inbuffer.push(line.charCodeAt(i));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -55,33 +55,19 @@ function Call(sp) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function Load(addr, content) {
|
function Load(addr, content) {
|
||||||
if (globalObj.write) {
|
var data = unescape(encodeURIComponent(content));
|
||||||
for (var i = 0; i < content.length; ++i) {
|
for (var i = 0; i < data.length; ++i) {
|
||||||
u8[addr++] = content.charCodeAt(i);
|
u8[addr++] = data.charCodeAt(i);
|
||||||
}
|
|
||||||
} else {
|
|
||||||
var data = new TextEncoder().encode(content);
|
|
||||||
for (var i = 0; i < data.length; ++i) {
|
|
||||||
u8[addr++] = data[i];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return addr;
|
return addr;
|
||||||
}
|
}
|
||||||
|
|
||||||
function GetString(a, n) {
|
function GetString(a, n) {
|
||||||
if (globalObj.write) {
|
var data = '';
|
||||||
var ret = '';
|
for (var i = 0; i < n; ++i) {
|
||||||
for (var i = 0; i < n; ++i) {
|
data += String.fromCharCode(u8[a + i]);
|
||||||
ret += String.fromCharCode(u8[a + i]);
|
|
||||||
}
|
|
||||||
return ret;
|
|
||||||
} else {
|
|
||||||
var data = new Uint8Array(n);
|
|
||||||
for (var i = 0; i < n; ++i) {
|
|
||||||
data[i] = u8[a + i];
|
|
||||||
}
|
|
||||||
return new TextDecoder('utf-8').decode(data);
|
|
||||||
}
|
}
|
||||||
|
return decodeURIComponent(escape(data));
|
||||||
}
|
}
|
||||||
|
|
||||||
function CELL_ALIGNED(n) { return (n + 3) & ~3; }
|
function CELL_ALIGNED(n) { return (n + 3) & ~3; }
|
||||||
|
|||||||
Reference in New Issue
Block a user