add build instructions

This commit is contained in:
Crispy 2024-04-12 19:42:15 +02:00
parent 1c2cd2ff40
commit dc26664372
2 changed files with 11 additions and 2 deletions

View file

@ -7,3 +7,12 @@ Tweak framerate or MAX_ERROR in `main.rs` until the total size fits the 16k flas
By default it's tuned for bad apple. By default it's tuned for bad apple.
## building ch32_decoder
If you are not on Linux, good luck.
You will need [ch32v003fun](https://github.com/cnlohr/ch32v003fun/) in next to the folder for this repository.
The `gdbinit` file contains the device path for uploading via a Pi Pico with [PicoRVD](https://github.com/aappleby/PicoRVD). This is triggered with `make flash`.
If you have an official WCH programmer you can probably run `make cv_flash` to use minchlink from ch32v003fun, but I can't test this.

View file

@ -63,7 +63,7 @@ fn main() {
); );
let mut export_string = String::from("// Generated by the `encoder` rust app\n"); let mut export_string = String::from("// Generated by the `encoder` rust app\n");
export_string += "typedef enum {\n"; export_string += "typedef enum Encoding {\n";
for (encoding, count) in stats { for (encoding, count) in stats {
if count > 0 { if count > 0 {
export_string += &format!("\tEncoding_{encoding:?} = {},\n", encoding as u8); export_string += &format!("\tEncoding_{encoding:?} = {},\n", encoding as u8);
@ -81,7 +81,7 @@ fn main() {
export_string += &format!("{byte},"); export_string += &format!("{byte},");
} }
export_string += "\n};\n"; export_string += "\n};\n";
let mut file = File::create("../data.h").unwrap(); let mut file = File::create("../ch32_decoder/data.h").unwrap();
file.write_all(export_string.as_bytes()).unwrap(); file.write_all(export_string.as_bytes()).unwrap();
} }