obrusvit
12aff322aa
feat(eckhart): expand touch area of ActionBar
2025-04-08 12:33:56 +02:00
obrusvit
7a10216947
feat(eckhart): implement hold to confirm anim
...
- HoldToConfirmAnim is driven by the ActionBar in case the right_button
is configured with `long_press`
- HoldToConfirmAnim optionally draws an Header overaly with custom text
- disabling animations is respected
- easing function is not yet finalized
- a few minor fixes along the way
2025-04-08 12:33:56 +02:00
obrusvit
8d32d819f2
feat(eckhart): implement ScreenBorder overlay
...
- a static "custom shape" for eckhart layout which displays screen
overlay around the borders
2025-04-08 12:33:56 +02:00
Lukas Bielesch
822f4d250d
feat(eckhart): Update vertical menu components
2025-04-08 12:33:56 +02:00
Lukas Bielesch
98498bef9f
feat(eckhart): Add new Back Header message type
2025-04-08 12:33:56 +02:00
Lukas Bielesch
9491496ef5
feat(eckhart): Add MenuItem button content type
2025-04-08 12:33:56 +02:00
Lukas Bielesch
9de3109336
feat(eckhart): Add battery icons
2025-04-08 12:33:56 +02:00
Lukas Bielesch
c4ee0668ce
feat(eckhart): Add vertical menu button styles
2025-04-08 12:33:56 +02:00
obrusvit
2cb19582e9
feat(eckhart): full-screen vertical menu component
2025-04-08 12:33:56 +02:00
obrusvit
767dbc9058
feat(eckhart): implement a few show_xyz functions
2025-04-08 12:33:56 +02:00
obrusvit
818f95b046
feat(eckhart): implement confirm_value
2025-04-08 12:33:56 +02:00
obrusvit
59203e8e4b
feat(eckhart): implement confirm_action
2025-04-08 12:33:56 +02:00
obrusvit
c6fa187fc6
feat(core): add color op to FormattedText
...
[no changelog]
2025-04-08 12:33:56 +02:00
obrusvit
ebd112582a
feat(eckhart): full-screen textual component
...
- TextScreen is a full-screen component for (paginated) texts
- it's supposed to wrap FormattedText or Paragraphs
2025-04-08 12:33:56 +02:00
obrusvit
4b68983c3d
feat(eckhart): action bar component
2025-04-08 12:33:56 +02:00
obrusvit
836a1a1f30
feat(eckhart): hint component
2025-04-08 12:33:56 +02:00
obrusvit
7dc52abb22
feat(eckhart): header component
2025-04-08 12:33:56 +02:00
obrusvit
0f032a3031
feat(eckhart): provisional homescreen
2025-04-08 12:33:56 +02:00
obrusvit
c1bf3c2f38
feat(eckhart): text styles
2025-04-08 12:33:55 +02:00
obrusvit
70ef5effe1
feat(eckhart): add fonts
2025-04-08 12:33:55 +02:00
obrusvit
2089b4f206
feat(eckhart): icon set
2025-04-08 12:33:55 +02:00
obrusvit
cc60c81682
feat(eckhart): color palette
2025-04-08 12:33:55 +02:00
obrusvit
c442b30962
feat(eckhart): initial commit
...
- build
- directory structure
- bootloader UI and assets copied from delizia
- FirmwareUI trait functions are empty
- Python layout functions are copied from delizia except some of more
complicated ones which raise NotImplemented for now
2025-04-08 12:33:55 +02:00
Roman Zeyde
8df465d7e8
build(core): replace all_modules.py
by qstrdefsport.h
...
[no changelog]
2025-04-07 20:19:31 +03:00
Roman Zeyde
879cc69c63
perf(core): intern non-alphanumeric characters
...
It was found by running `micropython.mem_info()` with the following patch:
```diff
diff --git a/py/gc.c b/py/gc.c
index 604334c95..bff62b754 100644
--- a/py/gc.c
+++ b/py/gc.c
@@ -840,6 +840,7 @@ void gc_dump_info(void) {
(uint)info.total, (uint)info.used, (uint)info.free);
mp_printf(&mp_plat_print, " No. of 1-blocks: %u, 2-blocks: %u, max blk sz: %u, max free sz: %u\n",
(uint)info.num_1block, (uint)info.num_2block, (uint)info.max_block, (uint)info.max_free);
+ qstr_dump_data();
}
void gc_dump_alloc_table(void) {
```
New QSTR definitions:
```
$ tail -n4 ./core/build/unix/genhdr/qstrdefs.generated.h
QDEF(MP_QSTR__paren_close_, 46476, 1, ")")
QDEF(MP_QSTR__paren_open_, 46477, 1, "(")
QDEF(MP_QSTR__lt_, 46489, 1, "<")
QDEF(MP_QSTR__semicolon_, 46494, 1, ";")
```
[no changelog]
2025-04-07 20:19:31 +03:00
cepetr
b50e201ea5
fix(core): improve simulation of lost TOUCH_START events
...
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
a6bfe399ff
fix(core): ensure touch_get_event does not return zero after TOUCH_START
...
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
dd2af348dc
fix(core): ensure touch_get_state does not return 0
...
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
f46bfb4bfe
feat(core): fix out-of-range touch coordinates on T3W1
...
[no changelog]
2025-04-07 17:49:04 +02:00
tychovrahe
f1120d53c2
fix(core/prodtest): provide BLE driver with pairing code when accepting pairing
...
[no changelog]
2025-04-07 15:05:57 +02:00
tychovrahe
0355ea6dd3
feat(core): send pairing code to NRF when accepting pairing
...
[no changelog]
2025-04-07 15:05:57 +02:00
kopecdav
56bad5bd3a
feat(core): Update stwlc38 patching cut selection + new stwlc38 FW patch and configs [no changelog]
2025-04-07 13:42:10 +02:00
tychovrahe
3db788d80a
fix(core): fix NFC deinitialization
...
[no changelog]
2025-04-07 13:41:16 +02:00
tychovrahe
d506abd9db
fix(core/bootloader_ci): fix firmware upload
...
[no changelog]
2025-04-04 16:20:01 +02:00
cepetr
ced0a1462e
feat(core): emulate hw jpeg decoder using libjpeg
...
[no changelog]
2025-04-04 12:59:44 +02:00
cepetr
307ac2517d
feat(core): introduce JpegOverlay shape
...
[no changelog]
2025-04-04 12:59:44 +02:00
cepetr
db057ff6ae
feat(core): allow JPEG image to be decoded as Mono8 bitmap
...
[no changelog]
2025-04-04 12:59:44 +02:00
cepetr
622fa05e48
feat(core): improve blending of mono8 bitmaps
...
[no changelog]
2025-04-04 12:59:44 +02:00
matejcik
d900eb4c54
build(core): update build to newer libtropic
...
* update unix port filename
* update USE_TREZOR_CRYPTO flag to LT_USE_TREZOR_CRYPTO
2025-04-04 10:26:22 +02:00
tychovrahe
7e2847c357
fix(core): allow running firmware on locked bootloader device based on allow_run_with_secret flag
2025-04-03 18:59:52 +02:00
Martin Milata
199c02adb2
build(core): only include apps.management.ble when needed
...
[no changelog]
2025-04-03 16:17:12 +02:00
tychovrahe
1fc6feda80
fix(core): make ble_event upy api function optional
...
[no changelog]
2025-04-03 16:17:12 +02:00
tychovrahe
4adf6d087d
feat(core): add BLE unpair command & message
...
[no changelog]
2025-04-03 16:17:12 +02:00
tychovrahe
51ff4f5946
feat(core): add unpair command to BLE
...
[no changelog]
2025-04-03 16:17:12 +02:00
tychovrahe
8ea957b8e1
feat(core/prodtest): add hibernation on power button long-press
...
[no changelog]
2025-04-03 16:06:20 +02:00
tychovrahe
f579d31684
refactor(core/prodtest): make cli non-blocking, event-loop compatible
...
[no changelog]
2025-04-03 16:06:20 +02:00
Roman Zeyde
08bcedcaa5
fix(core): correct __main__
dict size retrieval in firmware
...
Otherwise, it fails to boot.
[no changelog]
2025-04-03 14:45:13 +03:00
Roman Zeyde
a91d18ba2c
perf(core): intern module presizing identifiers
...
[no changelog]
2025-04-03 12:58:43 +03:00
Roman Zeyde
9769109229
perf(core): add __init__.py
to apps.management
module
...
Otherwise, its name is not interned by `all_modules.py.mako`.
[no changelog]
2025-04-03 12:58:43 +03:00
Martin Milata
469f093b8a
feat(core): include pairing code in BLE_ALLOW_PAIRING command
...
[no changelog]
2025-04-02 17:08:34 +02:00
Martin Milata
88706d12f8
feat(core): ble: expose allow/reject pairing in micropython
...
[no changelog]
2025-04-02 17:08:34 +02:00
Roman Zeyde
14907ecd88
feat(tools): add an optional output argument to analyze-memory-dump.py
...
[no changelog]
2025-04-02 17:39:35 +03:00
Roman Zeyde
e6f96974de
feat(core): check for sys.modules
and main
globals reallocations
...
Rewrite the static comparison in `utils.unimport_end()` in C.
[no changelog]
2025-04-02 16:01:51 +03:00
Roman Zeyde
ec87d2d21d
fix(core): presize __main__
module to avoid heap fragmentation
...
[no changelog]
2025-04-02 16:01:51 +03:00
tychovrahe
101d584aa4
fix(core): fix BLE polling
...
[no changelog]
2025-04-01 21:53:30 +02:00
cepetr
7248bf2a48
fix(core): fix issue with frame buffer access on D001
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
cfea362cfc
fix(core): skip polling in storage callback (workaround)
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
7dcdb54262
feat(core): introduce new polling in coreapp event loop
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
7994a0b93b
feat(core): introduce kernel event loop
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
2dff869883
feat(core): add event polling to ble driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
edf3f19ef5
feat(core): add event polling to usb hid driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
97bb16776d
feat(core): add event polling to usb vcp driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
f61da5777a
feat(core): add event polling to usb webusb driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
cd97b8c55b
feat(core): add event polling to usb driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
4815118a6d
feat(core): add event polling to touch driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
8d7a25e5eb
feat(core): add event polling to button driver
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
b9d15cb343
feat(core): introduce system-level event polling
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
6b045dd43d
feat(core): introduce systask id & task count limit
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
24048d7094
fix(core): remove unused function declaration
...
[no changelog]
2025-04-01 10:00:26 +02:00
cepetr
271f029be7
fix(core): fix emulator build on macOS
...
[no changelog]
2025-04-01 10:00:26 +02:00
Roman Zeyde
ad73e41080
feat(core): support USB/BLE sessions
...
All interfaces are sharing a single 8kB buffer.
It is reallocated once per session and is acquired by the first active session.
Other concurrent sessions will respond with an "Another session in progress" error.
[no changelog]
2025-03-31 13:20:53 +03:00
Roman Zeyde
567de7e643
feat(core): increase MicroPython bytecode optimizations
...
[no changelog]
2025-03-28 19:46:24 +03:00
Roman Zeyde
cc416720f0
build(core): explicitly map PYOPT
to MicroPython bytecode optimization level
...
[no changelog]
2025-03-28 19:46:24 +03:00
tychovrahe
9d46ad259c
fix(core/prodtest): remove final wait from report commands
...
[no changelog]
2025-03-27 18:25:46 +01:00
tychovrahe
aa682bcc6e
fix(core): generate coin support for discovery kits
...
[no changelog]
2025-03-27 15:46:46 +01:00
tychovrahe
b7b8e77ccb
feat(core): enable tropic in firmware/kernel on hw
...
[no changelog]
2025-03-27 11:59:10 +01:00
Roman Zeyde
aecaf306f3
fix(core): don't handle nostr-related messages in BTC-only firmware
...
[no changelog]
2025-03-27 12:30:02 +02:00
Roman Zeyde
63a17ea0f9
chore(core): exclude all_modules.py
bytecode from frozen_mpy.c
...
See `all_modules.py.mako` for more details.
[no changelog]
2025-03-27 10:22:44 +02:00
Roman Zeyde
ac0fc30ee9
perf(core): intern single-digit strings
...
[no changelog]
2025-03-26 21:16:06 +02:00
Roman Zeyde
bafad6e453
chore(core): remove unused function from modtrezorutils-meminfo.h
...
[no changelog]
2025-03-26 21:16:06 +02:00
Roman Zeyde
48b2f07ad3
fix(core): correct dump_qstr_pool()
...
[no changelog]
2025-03-26 21:16:06 +02:00
tychovrahe
4fce1f55ee
fix(core): fix bootloader build for models with HW keys but without optiga
...
[no changelog]
2025-03-26 14:59:19 +01:00
Roman Zeyde
3a24945de9
fix(core): allow firmware upgrade even if language change failed
2025-03-26 13:12:38 +02:00
Ioan Bizău
b1cd4cb469
chore(core/build): don't build with Tropic by default
...
[no changelog]
Co-authored-by: Martin Milata <martin@martinmilata.cz>
2025-03-26 10:32:31 +01:00
obrusvit
419737db7c
chore(core): remove obsolete font names from blobs
...
[no changelog]
2025-03-25 18:26:15 +01:00
Roman Zeyde
8b4936926c
fix(core): preallocate storage.debug.reset_internal_entropy
...
It should allow GC to cleanup `int_entropy`, which can be
allocated in random heap position, causing fragmentation.
[no changelog]
2025-03-25 12:05:52 +02:00
Roman Zeyde
f942d13748
fix(core): alloc GC to free _previous_remaining
in trezor.pin
...
[no changelog]
2025-03-25 12:05:52 +02:00
Roman Zeyde
19f576123c
feat(core): enable GC map dump on debug firmware
...
[no changelog]
2025-03-25 12:05:52 +02:00
tychovrahe
3bccf2d8f7
fix(core): fix emulator usb polling
...
[no changelog]
2025-03-24 14:31:14 +01:00
tychovrahe
4d48fbf845
fix(core): fix emulator usb deinitialization
...
[no changelog]
2025-03-24 14:31:14 +01:00
tychovrahe
8e0e3a1787
refactor(core): complete bootloader refactoring
2025-03-24 14:31:14 +01:00
obrusvit
9a14654ff7
perf(core): improve render in Delizia button
...
- allcase_text_height unnecessarily loads GlyphData in this frequent
call, text_height just reads a constant
[no changelog]
2025-03-24 12:11:56 +01:00
obrusvit
079873ced7
feat(core): use newer version of Delizia fonts
2025-03-24 12:11:56 +01:00
cepetr
5b9caf1ac6
fix(core): enable shsi clock after resuming from suspend mode
...
[no changelog]
2025-03-24 10:38:53 +01:00
tychovrahe
283561c073
fix(core: fix homescreen ble checker task
...
[no changelog]
2025-03-23 17:04:05 +01:00
Roman Zeyde
1e3b02771b
fix(core): don't use 'static
lifetime for BLEEvent
...
[no changelog]
2025-03-21 17:13:27 +02:00
matejcik
acc584ce25
fix(core/rust): fix quotes in bindgen macros for T2B1
2025-03-21 12:16:23 +01:00
Roman Zeyde
52f5593f28
feat(core): add BLE checker task to Homescreen
...
[no changelog]
2025-03-20 15:22:32 +02:00
Roman Zeyde
4c2c6f13e7
fix(core): add BLE feature flag to MicroPython build sed scripts
...
[no changelog]
2025-03-20 15:22:32 +02:00
Roman Zeyde
9926df6ab5
fix(core): add LayoutObj.ble_event
mock
...
[no changelog]
2025-03-20 15:22:32 +02:00
Roman Zeyde
fabb5e8c6c
perf(core): don't allocate if BLE event data is empty
...
BLE event data is not empty only on pairing:
```
core/embed/io/ble/stm32/ble.c
176: ble_event_t event = {.type = BLE_CONNECTED};
182: ble_event_t event = {.type = BLE_DISCONNECTED};
227: ble_event_t event = {.type = BLE_PAIRING_REQUEST, .data_len = 6};
244: ble_event_t event = {.type = BLE_PAIRING_CANCELLED, .data_len = 0};
```
[no changelog]
2025-03-20 15:22:32 +02:00
tychovrahe
cf00130409
feat(core): add support T3W1 rev C board
...
[no changelog]
2025-03-20 11:07:49 +01:00
tychovrahe
6fb65bcfd9
refactor(core): refactor button events
...
[no changelog]
2025-03-20 11:07:34 +01:00
tychovrahe
36a047cd30
feat(core): stm32u5 i2c driver - support up to 5 i2c busses
...
[no changelog]
2025-03-20 10:33:44 +01:00
tychovrahe
8e4ed1181e
feat(core): increase the number of available systimers
...
[no changelog]
2025-03-20 10:33:44 +01:00
Roman Zeyde
f4328acfd6
fix(core): don't invoke dump_meminfo_json
on emulator
...
[no changelog]
2025-03-20 11:05:01 +02:00
Roman Zeyde
566b69fb24
perf(core): simplify Button struct to save RAM
...
[no changelog]
2025-03-20 09:29:56 +02:00
Roman Zeyde
611d74c1b3
fix(core): correct confirmation fonts in Bolt
2025-03-18 13:23:39 +02:00
Roman Zeyde
2f97b61870
fix(core): correct confirmation title on Caesar
2025-03-18 12:32:36 +02:00
Roman Zeyde
5fd168c363
feat(core): dump GC arena on OOM
...
Enabled for debug firmware and non-frozen emulator.
JSON dump can be extracted from debug log and analyzed using:
$ awk '/^\[$/,/^\]$/' <debug.log >dump.json
$ core/tools/analyze-memory-dump.py dump.json
[no changelog]
2025-03-17 20:17:42 +02:00
Roman Zeyde
2333a6a262
feat(core): log GC info in case of OOM
...
Enabled on debug firmware and non-frozen emulator.
[no changelog]
2025-03-17 20:17:42 +02:00
cepetr
0fb1693ea8
feat(code): introduce dbg_printf for kernel debugging
...
[no changelog]
2025-03-14 14:17:27 +01:00
Roman Zeyde
90d7713592
build(core): fix RUST_PRINT_TYPES_SIZES
passing to SConscript.firmware
...
Use a list to collect RUSTFLAGS, to prevent overwriting them.
Also:
- fix a typo in `SConscript.unix` (it was using `firmware` build directory)
- use keyword arguments for better readability
- reformat Rust library build command string
[no changelog]
2025-03-13 18:18:48 +02:00
Ioan Bizău
c9c543443d
feat(core/tests): add smoke test for libtropic
...
[no changelog]
2025-03-13 15:08:48 +01:00
Ioan Bizău
3efa0480c6
feat(core): add libtropic to the unix build
...
[no changelog]
2025-03-13 15:08:48 +01:00
Roman Zeyde
c95158751a
build(core): allow increasing VCP write timeout
...
It should allow us exporting larger amounts of debug data.
[no changelog]
2025-03-13 16:07:09 +02:00
Roman Zeyde
21ad24fc31
style(core): add spaces around LOG_STACK_USAGE in SConscript.firmware
...
[no changelog]
2025-03-13 16:07:09 +02:00
Roman Zeyde
41096b5ffd
fix(core): use smaller button for upgrade cancellation
2025-03-13 12:07:07 +01:00
Roman Zeyde
6bf11ab29f
chore(core): use smaller vectors for ShowInfoParams
...
[no changelog]
2025-03-12 08:12:54 +02:00
cepetr
b5053d9f6e
fix(core): add kernel access to assets by default ( #4759 )
...
[no changelog]
2025-03-11 07:58:57 +01:00
obrusvit
29d69db300
Merge branch 'release/25.03' into obrusvit/merge-release-25.03
2025-03-10 11:17:26 +01:00
Roman Zeyde
2400fcb95d
fix(core): scope Cardano confirmation to allow GC
...
Otherwise, we may run out of heap due to recursion.
[no changelog]
2025-03-09 21:48:30 +02:00
tychovrahe
103568e2e5
feat(core/prodtest): show device ID in prodtest QR code
2025-03-08 12:26:41 +01:00
tychovrahe
661a30e390
feat(core/prodtest): support writing device ID into OTP memory
2025-03-08 12:26:41 +01:00
tychovrahe
ee9f42a8b2
fix(core/prodtest): add early return in case of otp batch reading error
...
[no changelog]
2025-03-08 12:26:41 +01:00
tychovrahe
6db5eaf850
fix(core/prodtest): fix otp device variant lock check
...
[no changelog]
2025-03-08 12:26:41 +01:00
kopecdav
f2054ff409
feat(core/prodtest): Introduce unit test extension into prodtest [no changelog]
2025-03-07 17:24:24 +01:00
obrusvit
acdf549fc4
chore(core): bump version to 2.8.10
...
[no changelog]
2025-03-07 11:44:29 +01:00
obrusvit
813620a4c5
chore(core): include signed translations for 2.8.9
2025-03-06 16:10:20 +01:00
Roman Zeyde
f67a506e9c
fix(core): use correct fonts for staking confirmation on Delizia
...
[no changelog]
2025-03-05 12:23:03 +02:00
Roman Zeyde
0d522be842
fix(core): use TEXT_MONO_GREY_LIGHT
for chunkified data on Delizia
...
[no changelog]
2025-03-05 10:35:41 +02:00
tychovrahe
46ec7298af
chore(core): drop support for T3W1 rev A0 board
...
[no changelog]
2025-03-05 09:19:27 +01:00
tychovrahe
9c451bd6ea
fix(core): fix BLE issue command return value
...
[no changelog]
2025-03-05 09:19:16 +01:00
cepetr
486bbca959
feat(core): double glyphs on t3w1 terminal
...
[no changelog]
2025-03-05 08:33:15 +01:00
Roman Zeyde
6f3e5a6cd7
feat(core): estimate workflow stack usage
...
By zeroing the stack memory before the workflow runs,
we can estimate how much of it has been used (by reading
the stack memory and looking for the first non-zero value).
[no changelog]
2025-03-04 14:18:15 +02:00
Andrew Kozlik
b2701596cc
chore: Add emulator warnings.
...
[no changelog]
2025-03-04 12:49:30 +01:00
Roman Zeyde
e08b15ecaf
feat(core): use Account info
instead of Send from
in Delizia staking UI
...
[no changelog]
2025-03-04 13:35:08 +02:00
Roman Zeyde
7be53c4172
fix(core): update Czech translations for Ethereum
...
* "Přednostní poplatek" -> "Poplatek za prioritu"
* "Zrušit stakování" -> "Zrušit stakování"
[no changelog]
2025-03-04 12:45:21 +02:00
tychovrahe
4394992b81
chore(core): unify comment style in startup_init.c
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
4de403bbe1
feat(core): enable LSE on T3W1
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
d1c1503fa4
feat(core/prodtest): add tamper testing function
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
d535e725c0
fix(core): fix tamper setting
...
[no changelog]
2025-03-04 11:23:55 +01:00
cepetr
bf119fbee4
feat(core): improve display/dma2d syscall verifiers
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
8574289493
chore(core): remove unused display function
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
45417bf3bd
feat(core): reduce overhead of syscall invocation
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
19ba854c69
feat(code): introduce dma2d syscalls
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
39245206f4
fix(core): fix coreapp applet memory definition
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
2961f6caf9
refactor(core): improve frame buffer interface
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
8b525de3c9
fix(core): fix jpeg decoder syscalls verifiers
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
80ce57c5c4
fix(rust): fix drawing of 1px bar shape
...
[no changelog]
2025-03-04 08:07:56 +01:00