Skip to content

Implementation of rust tetris_core on the reMarkable using libremarkable

License

Notifications You must be signed in to change notification settings

LinusCDE/retris

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

retris

rm1 rm2 opkg launchers Mentioned in Awesome reMarkable

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.

Controlling

  • Move Left and Right: Hardware and Software buttons or swipe left and right
  • Move down: Swipe down
  • Rotate: Middle hardware button or tap anywhere

Installation

Prebuilt binary/program

  • 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

Compiling

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).

reMarkable 2 support

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.

Environment variables

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.

About

Implementation of rust tetris_core on the reMarkable using libremarkable

Topics

Resources

License

Stars

Watchers

Forks

Languages