| 1375 | // clobbered with zeros but that's okay |
| 1376 | class KernelMemory { |
| 1377 | constructor(main_sd, worker_sd, pipes, pipe_addr) { |
| 1378 | this.main_sd = main_sd; |
| 1379 | this.worker_sd = worker_sd; |
| 1380 | this.rpipe = pipes[0]; |
| 1381 | this.wpipe = pipes[1]; |
| 1382 | this.pipe_addr = pipe_addr; // &pipe.pipe_buf |
| 1383 | this.pipe_addr2 = pipe_addr.add(0x10); // &pipe.pipe_buf.buffer |
| 1384 | this.rw_buf = new Buffer(0x14); |
| 1385 | this.addr_buf = new Buffer(0x14); |
| 1386 | this.data_buf = new Buffer(0x14); |
| 1387 | this.data_buf.write32(0xc, 0x40000000); |
| 1388 | } |
| 1389 | |
| 1390 | _verify_len(len) { |
| 1391 | if (!(Number.isInteger(len) && (0 <= len <= 0xffffffff))) { |