UA1ZBE Custom Firmware v1.0

Features:
- VFO mode with direct frequency input
- POCSAG decoder (512/1200 baud) with BCH(31,21) correction
- Full-screen Spectrum analyzer
- FM Radio receiver
- RSSI signal indicator overlay
- Custom boot splash (UA1ZBE / POCSAG pager / build date)

Architecture:
- app/mode.c — mode dispatcher (VFO/POCSAG/Spectrum/FM)
- app/boot_splash.c — 2-second boot splash
- app/pocsag/ — POCSAG decoder + BCH correction
- app/display_rssi.c — RSSI indicator
- main.c — entry point with custom init
- syscalls.c — bare-metal _sbrk stub

Build: arm-none-eabi-gcc -Os -flto -Wall -Werror -Wextra
Size: 57.9KB Flash / 3.6KB RAM

Controls:
- 0-9: Direct frequency input (VFO)
- SK2: POCSAG mode
- SK1: Spectrum analyzer
- 0: FM Radio
- EXIT: Return to VFO
- F/*: Toggle 512/1200 baud (in POCSAG)
This commit is contained in:
2026-04-12 00:44:05 +03:00
parent 5c1229659b
commit a1206d6fd4
3435 changed files with 593221 additions and 2 deletions

View File

@@ -0,0 +1,39 @@
This file describes the changes of the CMSIS-RTOS API interface for internal use
================================================================================
changes V1.0 -> V1.01
=====================
Preparation for C++ class interface
===================================
---> const attribute moved to macros (to support C++ interface).
const attribute removed from typedef's (to allow C++ class interface).
osThreadDef_t, osTimerDef_t, osMutexDef_t, osSemaphoreDef_t, osPoolDef_t, osMessageQDef_t, osMailQDef_t.
const added to the osXxxxDef macros:
osThreadDef, osTimerDef, osMutexDef, osSemaphoreDef, osPoolDef, osMessageQDef, osMailQDef
Allow to remove Timer/Mutex/Semaphore objects
=============================================
Added: osTimerDelete, osMutexDelete, osSemaphoreDelete
Added function that initializes (but does not start) the osKernel
=================================================================
Added: osKernelInitialize
osKernelStart changed to osKernelStart (void)
====================================================================
Version 1.02
Control functions for short timeouts in microsecond resolution:
Added: osKernelSysTick, osKernelSysTickFrequency, osKernelSysTick_uSec
Removed: osSignalGet
Still open for discussion
=========================
Adding Low Power extensions
We have added Low Power extensions to RTX a while ago.
http://www.keil.com/support/man/docs/rlarm/rlarm_ar_low_power.htm
We should look into this solution (os_suspend/os_resume) and add this functionality to CMSIS RTOS by extending the API. Probably we can use the same two functions (renamed to fit CMSIS RTOS) but we need to check if this fits (for example os_resume parameter is in system ticks same as in os_time_get)