const searchParams = new URLSearchParams(window.location.search); Module.preRun = () => { }; const arguments = []; for (let i = 1; true; i++) { const arg_i = searchParams.get(`arg_${i}`); if (arg_i == null) { break; } arguments.push(arg_i); } Module.arguments = arguments; if (searchParams.get("loghtml") === "1") { const divTerm = document.createElement("div"); divTerm.id = "terminal"; document.body.append(divTerm); function printToStdOut(msg, id) { const divMsg = document.createElement("div", {class: "stdout"}); divMsg.id = id; divMsg.append(document.createTextNode(msg)); divTerm.append(divMsg); return divMsg; } Module.print = (msg) => { console.log(msg); printToStdOut(msg, "stdout"); } Module.printErr = (msg) => { console.error(msg); const e = printToStdOut(msg, "stderr"); e.style = "color:red"; } const divQuit = document.createElement("div"); divQuit.id = "process-quit"; document.body.append(divQuit); Module.quit = (msg) => { divQuit.innerText = msg; console.log(`QUIT: ${msg}`) } Module.onabort = (msg) => { printToStdOut(`ABORT: ${msg}`, "stderr"); console.log(`ABORT: ${msg}`); } }