<!DOCTYPE html>
<html lang="en">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<head>
<title>Maurice</title>
<style>
html,
body {
width: 100%;
height: 100%;
}
canvas {
margin: 8px;
padding: 8px;
width: 960px;
height: 600px;
}
</style>
<meta charset="utf-8"/>
<script type="module">
import init, * as bindings from '/Maurice/maurice.js';
const wasm = await init({ module_or_path: '/Maurice/maurice_bg.wasm' });
window.wasmBindings = bindings;
dispatchEvent(new CustomEvent("TrunkApplicationStarted", {detail: {wasm}}));
</script>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
<link rel="modulepreload" href="/Maurice/maurice.js" crossorigin="anonymous" integrity="sha384-8iQhySqCGvBuRip1fKRxfqDGYGG8IQP8KchbweqU+Zog6pUUnQeWbktLqSL9/Jey"><link rel="preload" href="/Maurice/maurice_bg.wasm" crossorigin="anonymous" integrity="sha384-s0BGJE5956nRlwAzbryczyuC8clEBmAfuxVAfFozQoiUvFUyDOg1wnJY9VllDPlL" as="fetch" type="application/wasm"></head>
<body data-bs-theme="dark">
<nav class="navbar navbar-expand-lg navbar-dark bg-body-tertiary">
<div class="navbar-brand">Maurice</div>
<a class="nav-link" href="https://github.com/kpouer/Maurice" target="_blank">GitHub</a>
</nav>
<div class="container">
Maurice is a Thomson MO5 emulator written in Rust.
</div>
<div class="container">
It is a port of Marcel o Cinq MO5 Emulator (Java version).
Of course, it is opensource, and you can browse them at <a href="https://github.com/kpouer/Maurice" target="_blank">https://github.com/kpouer/Maurice</a>
</div>
<canvas id="the_canvas_id"></canvas>
<script>
delete WebAssembly.instantiateStreaming;
</script>
<div class="container">
You can drop a tape file (MO5 was mostly using tapes, usually named .k7) then type
<ul>
<li>LOAD</li>
<li>RUN</li>
</ul>
et voilĂ
</div>
</body>
</html>