2 var verbose_mode
= false;
5 Module
["printErr"] = Module
["print"] = function(text
) {
8 text_buffer
+= text
+ "\n";
11 importScripts('yosys.js');
13 onmessage = function(e
) {
14 var request
= e
.data
[0];
15 var response
= { "idx": request
.idx
, "args": [] };
17 if (request
.mode
== "run") {
18 response
["errmsg"] = "";
21 Module
.ccall('run', '', ['string'], [request
.cmd
]);
23 response
.errmsg
= Module
.ccall('errmsg', 'string', [], []);
25 response
.args
.push(text_buffer
);
26 response
.args
.push(response
.errmsg
);
30 if (request
.mode
== "read_file") {
32 response
.args
.push(FS
.readFile(request
.filename
, {encoding
: 'utf8'}));
36 if (request
.mode
== "write_file") {
38 FS
.writeFile(request
.filename
, request
.text
, {encoding
: 'utf8'});
42 if (request
.mode
== "read_dir") {
44 response
.args
.push(FS
.readdir(request
.dirname
));
48 if (request
.mode
== "remove_file") {
50 FS
.unlink(request
.filename
);
54 if (request
.mode
== "verbose") {
56 console
.log(text_buffer
);
57 verbose_mode
= request
.value
;
60 postMessage([response
]);
63 postMessage([{ "idx": 0, "args": [] }]);