Implement full SSD1306 OLED display support: - Splash screen on boot (1.5s) with project name, version, board - Dashboard showing radio state, config, counters, RSSI/SNR - RSSI history sparkline (64-sample ring buffer, 2px-wide bars) - DisplayOn/DisplayOff host commands routed via dedicated channel - Pure render functions against generic DrawTarget (no hardware coupling) - Display on/off control bypasses radio task entirely Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
37 lines
845 B
Plaintext
37 lines
845 B
Plaintext
|
|
/* before memory.x to allow override */
|
|
ENTRY(ESP32Reset)
|
|
|
|
/* after memory.x to allow override */
|
|
PROVIDE(__pre_init = DefaultPreInit);
|
|
PROVIDE(__zero_bss = default_mem_hook);
|
|
PROVIDE(__init_data = default_mem_hook);
|
|
PROVIDE(__post_init = default_post_init);
|
|
|
|
PROVIDE(__level_1_interrupt = handle_interrupts);
|
|
PROVIDE(__level_2_interrupt = handle_interrupts);
|
|
PROVIDE(__level_3_interrupt = handle_interrupts);
|
|
|
|
INCLUDE exception.x
|
|
|
|
/* ESP32 fixups */
|
|
INCLUDE "fixups/rtc_fast_rwdata_dummy.x"
|
|
/* END ESP32 fixups */
|
|
|
|
/* Shared sections - ordering matters */
|
|
INCLUDE "rwtext.x"
|
|
INCLUDE "text.x"
|
|
INCLUDE "rwdata.x"
|
|
INCLUDE "rodata.x"
|
|
INCLUDE "rtc_fast.x"
|
|
INCLUDE "rtc_slow.x"
|
|
INCLUDE "stack.x"
|
|
INCLUDE "dram2.x"
|
|
/* End of Shared sections */
|
|
|
|
EXTERN(DefaultHandler);
|
|
|
|
EXTERN(WIFI_EVENT); /* Force inclusion of WiFi libraries */
|
|
|
|
INCLUDE "device.x"
|