mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-12-24 15:28:10 +00:00
emulator: Show DEBUG_LINK indicator
This commit is contained in:
parent
644907e160
commit
17340c2396
@ -58,6 +58,9 @@ void oledInit(void) {
|
||||
}
|
||||
|
||||
void oledRefresh(void) {
|
||||
/* Draw triangle in upper right corner */
|
||||
oledInvertDebugLink();
|
||||
|
||||
const uint8_t *buffer = oledGetBuffer();
|
||||
|
||||
static uint32_t data[OLED_HEIGHT][OLED_WIDTH];
|
||||
@ -75,6 +78,9 @@ void oledRefresh(void) {
|
||||
SDL_UpdateTexture(texture, NULL, data, OLED_WIDTH * sizeof(uint32_t));
|
||||
SDL_RenderCopy(renderer, texture, NULL, NULL);
|
||||
SDL_RenderPresent(renderer);
|
||||
|
||||
/* Return it back */
|
||||
oledInvertDebugLink();
|
||||
}
|
||||
|
||||
void emulatorPoll(void) {
|
||||
|
27
oled.c
27
oled.c
@ -180,6 +180,17 @@ void oledClear()
|
||||
memset(_oledbuffer, 0, sizeof(_oledbuffer));
|
||||
}
|
||||
|
||||
void oledInvertDebugLink()
|
||||
{
|
||||
if (is_debug_link) {
|
||||
oledInvertPixel(OLED_WIDTH - 5, 0); oledInvertPixel(OLED_WIDTH - 4, 0); oledInvertPixel(OLED_WIDTH - 3, 0); oledInvertPixel(OLED_WIDTH - 2, 0); oledInvertPixel(OLED_WIDTH - 1, 0);
|
||||
oledInvertPixel(OLED_WIDTH - 4, 1); oledInvertPixel(OLED_WIDTH - 3, 1); oledInvertPixel(OLED_WIDTH - 2, 1); oledInvertPixel(OLED_WIDTH - 1, 1);
|
||||
oledInvertPixel(OLED_WIDTH - 3, 2); oledInvertPixel(OLED_WIDTH - 2, 2); oledInvertPixel(OLED_WIDTH - 1, 2);
|
||||
oledInvertPixel(OLED_WIDTH - 2, 3); oledInvertPixel(OLED_WIDTH - 1, 3);
|
||||
oledInvertPixel(OLED_WIDTH - 1, 4);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Refresh the display. This copies the buffer to the display to show the
|
||||
* contents. This must be called after every operation to the buffer to
|
||||
@ -192,13 +203,7 @@ void oledRefresh()
|
||||
static const uint8_t s[3] = {OLED_SETLOWCOLUMN | 0x00, OLED_SETHIGHCOLUMN | 0x00, OLED_SETSTARTLINE | 0x00};
|
||||
|
||||
// draw triangle in upper right corner
|
||||
if (is_debug_link) {
|
||||
oledInvertPixel(OLED_WIDTH - 5, 0); oledInvertPixel(OLED_WIDTH - 4, 0); oledInvertPixel(OLED_WIDTH - 3, 0); oledInvertPixel(OLED_WIDTH - 2, 0); oledInvertPixel(OLED_WIDTH - 1, 0);
|
||||
oledInvertPixel(OLED_WIDTH - 4, 1); oledInvertPixel(OLED_WIDTH - 3, 1); oledInvertPixel(OLED_WIDTH - 2, 1); oledInvertPixel(OLED_WIDTH - 1, 1);
|
||||
oledInvertPixel(OLED_WIDTH - 3, 2); oledInvertPixel(OLED_WIDTH - 2, 2); oledInvertPixel(OLED_WIDTH - 1, 2);
|
||||
oledInvertPixel(OLED_WIDTH - 2, 3); oledInvertPixel(OLED_WIDTH - 1, 3);
|
||||
oledInvertPixel(OLED_WIDTH - 1, 4);
|
||||
}
|
||||
oledInvertDebugLink();
|
||||
|
||||
gpio_clear(OLED_CS_PORT, OLED_CS_PIN); // SPI select
|
||||
SPISend(SPI_BASE, s, 3);
|
||||
@ -211,13 +216,7 @@ void oledRefresh()
|
||||
gpio_clear(OLED_DC_PORT, OLED_DC_PIN); // set to CMD
|
||||
|
||||
// return it back
|
||||
if (is_debug_link) {
|
||||
oledInvertPixel(OLED_WIDTH - 5, 0); oledInvertPixel(OLED_WIDTH - 4, 0); oledInvertPixel(OLED_WIDTH - 3, 0); oledInvertPixel(OLED_WIDTH - 2, 0); oledInvertPixel(OLED_WIDTH - 1, 0);
|
||||
oledInvertPixel(OLED_WIDTH - 4, 1); oledInvertPixel(OLED_WIDTH - 3, 1); oledInvertPixel(OLED_WIDTH - 2, 1); oledInvertPixel(OLED_WIDTH - 1, 1);
|
||||
oledInvertPixel(OLED_WIDTH - 3, 2); oledInvertPixel(OLED_WIDTH - 2, 2); oledInvertPixel(OLED_WIDTH - 1, 2);
|
||||
oledInvertPixel(OLED_WIDTH - 2, 3); oledInvertPixel(OLED_WIDTH - 1, 3);
|
||||
oledInvertPixel(OLED_WIDTH - 1, 4);
|
||||
}
|
||||
oledInvertDebugLink();
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user