Implementation of rust tetris_core on the reMarkable using libremarkable
The patterns are some totally random functions. If someone wants to do something better (not just functions) or just loves math, go ahead.
- Move Left and Right: Hardware and Software buttons or swipe left and right
- Move down: Swipe down
- Rotate: Middle hardware button or tap anywhere
- Go the the releases page
- Get the newest released "retris" file and copy it onto your remarkable, using e.g. FileZilla, WinSCP or scp.
- SSH into your remarkable and mark the file as executable with
chmod +x retris
- Stop xochitl (the interface) with
systemctl stop xochitl
- Start the game with
./retris
- After you're done, restart xochitl with
systemctl start xochitl
In general building should work on most toolchains. You generally wanna target armv7-unknown-linux-gnueabihf for any remarkable. But as with all things in life, stuff never works great on every setup.
That's why I recommend to nowadays build with the rust image from toltec-dev/toolchain. It is the most modern and the closest to the actual reMarkable system as you're gonna get as of now.
To make it easier to use, I found that you can use the rust image (ghcr.io/toltec-dev/rust:v3.2
, all versions).
This is done using the Cross.toml
file. So you should just need to run cross build --target=armv7-unknown-linux-gnueabihf --release
and it will use the above image (or possibly newer if this readme gets out-of-date).
This app cant actually drive the rM 2 framebuffer. It needs rm2fb for that.
If you execute retris from ssh, be sure to have followed rm2fb steps to enable the support. When launching through a launcher (from toltec) it should just work but have more ghosting on the rM2.
The environment variable LIBREMARKABLE_FB_DISFAVOR_INTERNAL_RM2FB
can be set to 1
to make this application not try to use its internal framebuffer client for RM2FB.