Add support for rm2fb
This commit is contained in:
20
src/main.rs
20
src/main.rs
@ -7,25 +7,29 @@ use lz_fear::CompressionSettings;
|
||||
|
||||
use std::default::Default;
|
||||
use std::fs::File;
|
||||
use std::path::Path;
|
||||
use std::io::{BufRead, BufReader, Read, Seek, SeekFrom};
|
||||
use std::process::Command;
|
||||
|
||||
fn main() -> Result<()> {
|
||||
let version = remarkable_version()?;
|
||||
let height = 1872;
|
||||
let streamer = if version == "reMarkable 1.0\n" {
|
||||
let width = 1408;
|
||||
let height = 1872;
|
||||
let bytes_per_pixel = 2;
|
||||
ReStreamer::init("/dev/fb0", 0, width, height, bytes_per_pixel)?
|
||||
} else if version == "reMarkable 2.0\n" {
|
||||
let width = 1404;
|
||||
let height = 1872;
|
||||
let bytes_per_pixel = 1;
|
||||
|
||||
let pid = xochitl_pid()?;
|
||||
let offset = rm2_fb_offset(pid)?;
|
||||
let mem = format!("/proc/{}/mem", pid);
|
||||
ReStreamer::init(&mem, offset, width, height, bytes_per_pixel)?
|
||||
if Path::new("/dev/shm/swtfb.01").exists() {
|
||||
let bytes_per_pixel = 2;
|
||||
ReStreamer::init("/dev/shm/swtfb.01", 0, width, height, bytes_per_pixel)?
|
||||
} else {
|
||||
let bytes_per_pixel = 1;
|
||||
let pid = xochitl_pid()?;
|
||||
let offset = rm2_fb_offset(pid)?;
|
||||
let mem = format!("/proc/{}/mem", pid);
|
||||
ReStreamer::init(&mem, offset, width, height, bytes_per_pixel)?
|
||||
}
|
||||
} else {
|
||||
Err(anyhow!(
|
||||
"Unknown reMarkable version: {}\nPlease open a feature request to support your device.",
|
||||
|
Reference in New Issue
Block a user