From 65a26a9110ac54e80ee94cb49f3df4d28420c722 Mon Sep 17 00:00:00 2001 From: Vinzenz Schroeter Date: Sun, 16 Feb 2025 18:27:50 +0100 Subject: [PATCH] remove redundant infos --- CONTRIBUTING.md | 31 ------------------------------- README.md | 4 ++-- about_display.md | 41 ----------------------------------------- 3 files changed, 2 insertions(+), 74 deletions(-) delete mode 100644 CONTRIBUTING.md delete mode 100644 about_display.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 36f8920..0000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,31 +0,0 @@ -# Contributing - -Contributions are accepted in any form (issues, documentation, feature requests, code, review, ...). - -All creatures welcome. - -If you have access, please contribute on the [CCCB Forgejo](https://git.berlin.ccc.de/servicepoint/servicepoint). -Contributions on GitHub will be copied over and merged there. - -## Pull requests - -Feel free to create a PR, even if your change is not done yet. - -Mark your PR as a draft as long as you do not want it to be merged. - -The main branch is supposed to be a working version, including language bindings, -which means sometimes your PR may be merged into a temporary development branch. - -Unit tests and documentation are required for the core library. - -## Language bindings - -Pull requests for your preferred language will be accepted. -If there is no code generator, it should call the C ABI methods provided by `servicepoint_binding_c`. -It should be able to send most of the basic commands in a way the simulator accepts, receiving is -not required for the merge. - -It is okay for the feature set of a language binding to lag behind the one of the rust crate. -This also means you do not have to expose a feature to all the language bindings when adding something to the core. - -If your change may break other language bindings, please note that in your PR description so someone can check them. diff --git a/README.md b/README.md index 6d7b527..e085b1b 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,12 @@ [![crates.io](https://img.shields.io/crates/v/servicepoint_binding_c.svg)](https://crates.io/crates/servicepoint) [![Crates.io Total Downloads](https://img.shields.io/crates/d/servicepoint_binding_c)](https://crates.io/crates/servicepoint) [![docs.rs](https://img.shields.io/docsrs/servicepoint_binding_c)](https://docs.rs/servicepoint/latest/servicepoint/) -[![GPLv3 licensed](https://img.shields.io/crates/l/servicepoint_binding_c)](../LICENSE) +[![GPLv3 licensed](https://img.shields.io/crates/l/servicepoint_binding_c)](./LICENSE) In [CCCB](https://berlin.ccc.de/), there is a big pixel matrix hanging on the wall. It is called "Service Point Display" or "Airport Display". -This crate contains C bindings for the `servicepoint` library, enabling users to parse, encode and send packets to this display via UDP. +This crate contains C bindings for the [servicepoint](https://git.berlin.ccc.de/servicepoint/servicepoint) library, enabling users to parse, encode and send packets to this display via UDP. ## Examples diff --git a/about_display.md b/about_display.md deleted file mode 100644 index 4fe7911..0000000 --- a/about_display.md +++ /dev/null @@ -1,41 +0,0 @@ -# About the display - -- Resolution: 352x160=56,320 pixels -- Pixels are grouped into 44x20=880 tiles (8x8=64 pixels each) -- Smallest addressable unit: row of pixels inside of a tile (8 pixels = 1 byte) -- The brightness can only be set per tile -- Screen content can be changed using a simple UDP protocol -- Between each row of tiles, there is a gap of around 4 pixels size. This gap changes the aspect ratio of the display. - -### Binary format - -A UDP package sent to the display has a header size of 10 bytes. -Each header value has a size of two bytes (unsigned 16 bit integer). -Depending on the command, there can be a payload following the header. - -To change screen contents, these commands are the most relevant: - -1. Clear screen - - command: `0x0002` - - (rest does not matter) -2. Send CP437 data: render specified text into rectangular region - - command: `0x0003` - - top left tile x - - top left tile y - - width in tiles - - height in tiles - - payload: (width in tiles * height in tiles) bytes - - 1 byte = 1 character - - each character is rendered into one tile (mono-spaced) - - characters are encoded using code page 437 -3. Send bitmap window: set pixel states for a rectangular region - - command: `0x0013` - - top left tile x - - top left _pixel_ y - - width in tiles - - height in _pixels_ - - payload: (width in tiles * height in pixels) bytes - - network byte order - - 1 bit = 1 pixel - -There are other commands implemented as well, e.g. for changing the brightness.