const key = (name: string, label: string) => ``; const tab = (id: string, label: string, selected = false) => ``; export function renderShell(root: HTMLElement) { root.innerHTML = `

Load your Crystal ROM

English US/Europe · Revision 1.1

Opened locally. Never uploaded.

YOUR WORLD0 tiles walked
${key("up", "▲")}${key("left", "◀")}${key("right", "▶")}${key("down", "▼")}
${key("b", "B")}${key("a", "A")}
${key("select", "SELECT")}${key("start", "START")}

Ready when you are. Choose your ROM to get started.

Session backups stay in this browser.

Playing Crystal in your browser

Choose your own English US/Europe revision 1.1 ROM, then press Play. Graphics, maps, sprites and dialogue are read locally from your ROM.

On a touch screen, use the on-screen pad and buttons. Settings changes the keys and the text size.

Sessions save every 10 seconds and when paused. Switching tabs or apps pauses play. The Map tab lists the areas open in this port; the others appear at the edges but cannot be entered yet.

Display and controls

Text size

Keyboard controls

Choose Change, then press the key to use. Tab, Escape and Space keep their usual roles.

ButtonKeyChange

`; }