Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the Kyria keyboard to the repository #7222

Merged
merged 45 commits into from
Nov 3, 2019
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
f2565a1
Added raw api for sending data directly to the buffer
XScorpion2 Aug 31, 2019
de74480
Added default keymap variant
thomasbaart Sep 26, 2019
5dfc517
Merge branch 'features/oled_raw_api' of https://github.com/XScorpion2…
thomasbaart Sep 26, 2019
928453a
Applied proposed OLED display fix
Sep 26, 2019
15e9110
Keymap progress
Sep 27, 2019
3ae2ada
Keymap progress
Sep 27, 2019
ef92b6a
Fixed inconsistent tabs
Sep 27, 2019
256d27e
Fixed oled_write_raw apis
XScorpion2 Sep 28, 2019
e597598
Merge branch 'features/oled_raw_api' of https://github.com/XScorpion2…
Sep 28, 2019
643ad33
Updated keymap
Sep 28, 2019
96247e7
Personal keymap
Sep 28, 2019
296605f
Added functionality to own keymap
Oct 5, 2019
53e98cc
Fixed spacing and build error
Oct 5, 2019
4a03eae
Keymap changes
Oct 11, 2019
f6a85fe
Revert "Updated split encoders so indexes are based on left hand enco…
Oct 16, 2019
c02fe20
Merge branch 'master' of https://github.com/qmk/qmk_firmware into kyria
Oct 16, 2019
f1e1192
Updated keymaps and configs
Oct 31, 2019
ca46b07
Revert "Revert "Updated split encoders so indexes are based on left h…
Oct 31, 2019
b3f8f5a
Update keyboards/kyria/config.h
Oct 31, 2019
f6d92e3
Update keyboards/kyria/config.h
Oct 31, 2019
9371c21
Update keyboards/kyria/config.h
Oct 31, 2019
e1167b2
Update keyboards/kyria/rev1/config.h
Oct 31, 2019
a83f8df
Update keyboards/kyria/rules.mk
Oct 31, 2019
4d909b0
Update keyboards/kyria/rules.mk
Oct 31, 2019
8b488e6
Update keyboards/kyria/rev1/rev1.h
Oct 31, 2019
23699a0
Update keyboards/kyria/rev1/config.h
Oct 31, 2019
c1d6f45
Update keyboards/kyria/readme.md
Oct 31, 2019
7323c50
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Oct 31, 2019
c5e8dab
Update keyboards/kyria/rev1/config.h
Oct 31, 2019
264dc1e
Update keyboards/kyria/readme.md
Oct 31, 2019
af75ef9
Update keyboards/kyria/keymaps/default/keymap.c
Oct 31, 2019
1c8d2af
Update keyboards/kyria/keymaps/default/keymap.c
Oct 31, 2019
d069cf2
Update keyboards/kyria/keymaps/default/keymap.c
Oct 31, 2019
e216aa1
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Oct 31, 2019
0c8f421
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Oct 31, 2019
bacaef8
Update keyboards/kyria/rules.mk
Oct 31, 2019
f016c98
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Nov 1, 2019
1e3044f
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Nov 1, 2019
1a4603e
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Nov 1, 2019
add454d
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Nov 1, 2019
06ed9f5
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Nov 1, 2019
b9e2308
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Nov 1, 2019
1583885
Update keyboards/kyria/keymaps/thomasbaart/keymap.c
Nov 1, 2019
2cd944f
Processed keymap feedback
Nov 1, 2019
f104ff6
Reverted OLED raw API functionality
Nov 1, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
Added raw api for sending data directly to the buffer
  • Loading branch information
XScorpion2 committed Sep 3, 2019
commit f2565a1faecea57b86058991c550122177bb603f
25 changes: 25 additions & 0 deletions drivers/oled/oled_driver.c
Original file line number Diff line number Diff line change
Expand Up @@ -431,6 +431,18 @@ void oled_write_ln(const char *data, bool invert) {
oled_advance_page(true);
}

void oled_write_raw(const char *data, uint16_t size) {
uint16_t remaining = OLED_MATRIX_SIZE - (oled_cursor - &oled_buffer[0]);
size = size > remaining ? remaining : size;
for (uint16_t i = 0; i < size; i++) {
if (*oled_cursor == *data) continue;
*oled_cursor = *data;
oled_dirty |= (1 << ((oled_cursor - &oled_buffer[0]) / OLED_BLOCK_SIZE));
oled_cursor++;
data++;
}
}

#if defined(__AVR__)
void oled_write_P(const char *data, bool invert) {
uint8_t c = pgm_read_byte(data);
Expand All @@ -444,6 +456,19 @@ void oled_write_ln_P(const char *data, bool invert) {
oled_write_P(data, invert);
oled_advance_page(true);
}

void oled_write_raw_P(const char *data, uint16_t size) {
uint16_t remaining = OLED_MATRIX_SIZE - (oled_cursor - &oled_buffer[0]);
size = size > remaining ? remaining : size;
for (uint16_t i = 0; i < size; i++) {
uint8_t c = pgm_read_byte(data);
if (*oled_cursor == c) continue;
*oled_cursor = c;
oled_dirty |= (1 << ((oled_cursor - &oled_buffer[0]) / OLED_BLOCK_SIZE));
oled_cursor++;
data++;
}
}
#endif // defined(__AVR__)

bool oled_on(void) {
Expand Down
4 changes: 4 additions & 0 deletions drivers/oled/oled_driver.h
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,8 @@ void oled_write(const char *data, bool invert);
// Advances the cursor to the next page, wiring ' ' to the remainder of the current page
void oled_write_ln(const char *data, bool invert);

void oled_write_raw(const char *data, uint16_t size);

#if defined(__AVR__)
// Writes a PROGMEM string to the buffer at current cursor position
// Advances the cursor while writing, inverts the pixels if true
Expand All @@ -211,6 +213,8 @@ void oled_write_P(const char *data, bool invert);
// Advances the cursor to the next page, wiring ' ' to the remainder of the current page
// Remapped to call 'void oled_write_ln(const char *data, bool invert);' on ARM
void oled_write_ln_P(const char *data, bool invert);

void oled_write_raw_P(const char *data, uint16_t size);
#else
// Writes a string to the buffer at current cursor position
// Advances the cursor while writing, inverts the pixels if true
Expand Down