Crossplay
Skip to content
so the mark follows currentColor, and so the<br>theme toggle moves it too. Same shape as assets/favicon.svg. -->
Crossplay
The shelf<br>fig 1 · one vocabulary
What a still screen is good at
Reading was never the whole of it.
E-ink holds a page at no power for as long as you need it. So does a chess<br>position, a flashcard, a logic grid, an article you saved to finish. The<br>screen puts up a situation, you think, you decide. A panel that cannot<br>animate is the right one for that, and so far it has been spent on books.
Game · plays nearby<br>Chess
A full engine on the device, or a board between two of them. Pick up exactly where the position was left.
Game · daily<br>Connections
The daily word grid, set in a serif of its own, with an archive of past boards for when today's is done.
Game · 64 puzzles<br>D&Diagrams
A nonogram whose clues are a dungeon. 64 of them, plus a tutorial that is a lesson rather than a level.
Game · generated<br>Murdle
A logic grid you can always finish from the clues alone. Every case is built through the solver, so you never have to guess.
Game · plays nearby<br>Jaipur
The two-player trading game, against an opponent that only ever sees what you see, or against someone sitting opposite you.
Game · plays nearby<br>Battleship
Lay out a fleet, then hunt someone else's. The game PLAY NEARBY was built for, and the reason the layer exists.
Game · one device, a table<br>Insider
A party game for up to eight people and a single device that goes round the table. No second device needed, and no phones.
Game · landscape<br>Solitaire
Klondike, turned sideways because that is the shape of a tableau. Your last sixteen deals are drawn from your own record.
App · spaced repetition<br>Study
Your own Anki decks with the FSRS scheduler, offline. The review history lives on the card, not in a cloud.
App · reads the web<br>Hacker News
The front page in a reading serif, with articles pulled down and kept on the card so a saved one is still there with the radio off.
App · the whole archive<br>xkcd
The archive packed onto the SD card and drawn one to one, with new strips fetched as they land. A comic is line art, which is exactly what this panel is best at.
Swipe for the rest
Inherited from CrossPoint<br>And it is still a reader.
Untouched. Crossplay adds a shelf beside the library and never gets in<br>its way, and every CrossPoint release lands here within the week.
Play nearby<br>fig 2 · no setup
Two devices, one table
It just says play nearby.
Put two of them next to each other and they find one another. There is no<br>pairing screen, no room code, no account, no router and no internet. The<br>entire surface of it is one row on a menu.
The measure for this was the DS: you sat down next to someone and it<br>worked, and nothing about the experience ever mentioned a network. If a<br>person ever has to know how it connects, that is a bug.
1 · Someone taps play nearby
2 · Your board, mid-game
3 · Their board, from their side
Everyone is a face and three words.
A device names itself with three words, and the face beside it is drawn<br>from that name: hair, eyes, mouth, fourteen options apiece. Nothing is<br>stored and nothing is sent. The other device rebuilds your face from the<br>name its radio already carried, so it can never arrive stale, and the<br>person opposite you is Bald rather than a MAC address.
Chess, Jaipur and Battleship use it today. It is a layer rather than a<br>feature, so the next game gets it for free.
Name
Hair<br>Eyes<br>Mouth
Roll a new one<br>Every face. Tap a word to change one.
Get it<br>fig 3 · your device, your rules
Open firmware
Nothing here asks permission.
There is no store between you and the device, no review, no account and<br>no subscription. It is a binary you flash and source you can read.
No one has run this on a physical device. It is built<br>against a simulator and a browser build of the same sources, and I do not<br>have an X4 Pro. The tests pass and both firmware targets compile, which is<br>not the same as known to boot. If you flash it, you are the first.
Check your device. Crossplay targets the Xteink X4 Pro only. For every other supported device, CrossPoint upstream is the right answer and is excellent.
Keep your books. Flashing replaces the firmware, not the SD card. Your library, your reading positions and your fonts are files on that card and are left alone.
Download crossplay--x4pro.bin from the releases page. You do not need to have installed CrossPoint first.
Flash it over USB. CrossPoint's web flasher in Chrome or Edge, choosing Custom .bin . It needs WebSerial, which Firefox and Safari do not have. From a terminal instead: esptool.py --chip esp32s3 --baud 921600 write_flash 0x0 crossplay--x4pro.bin.
You can go back. Flashing stock CrossPoint over the top returns the device exactly to where it was.
Releases<br>Read the source
Games and Apps, beside the library