Commit Graph

234 Commits

Author SHA1 Message Date
Willy-JL
d9f55d110d Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-05-21 04:56:03 +01:00
hedger
9e42e00ead Icons: compression fixes & larger dimension support (#3564)
* toolbox, gui: fixes for compressed icon handling
* ufbt: fixes for generated vscode project
* scripts: increased max dimensions for image converter
* icon type changes
* linter fixes; api sync
* gui: docs fix
* toolbox: fixed potential decoder buffer overflow
* minor cleanup
* fbt: sdk: suppressed deprecation warnings in API table
* toolbox: compress: added unit tests
   vscode: now installs resources for unit_tests
   unit_tests: now loads subghz region data
* toolbox: compress: review fixes, pt 1
* compress: now passes decoder buffer size as constructor argument; auto-resize decoder buffer; crash on failed icon decompression
* PVS fixes
* pvs fixes, pt2
* doxygen fixes
* investigating unit test failures
* investigating unit test failures
* investigating unit test failures
* investigating unit test failures
* investigating unit test failures
* UnitTests: move all tests into plugins, brakes testing
* UnitTests: add plugin API and update plugin entrypoints
* UniTests: Test runner that works with plugins
* fbt: extra filtering for extapps to include in build
* UnitTests: filter tests by name
* loader: restored API table for unit_test build config
* Add various missing symbols to API table
* UnitTest: fail on plugin load error
* UnitTests: cleanup plugin api and reporting
* unit_tests: composite resolver
* UnitTests: remove unused declaration
* unit_tests, nfc: moved mock nfc implementation to libnfc
* unit_tests: api: removed redundant #define
* toolbox: compress: removed size_hint for icons; triggering furi_check on oversized icons
* gui: icon, icon_animation: removed size hit APIs
* Format Sources. Cleanup code.
* loader: refuse to start .fal as app
* toolbox: compress: fixed memory corruption in operations with small destination buffer; added unit tests for that case
* unit_tests: proper test skipping; better selective test interface
* unit_tests: moved 'loading' logging to proper location

Co-authored-by: あく <alleteam@gmail.com>
2024-05-20 18:23:47 +01:00
Willy-JL
98903b8f10 Fix USB/BT Remote Mouse Clicker merge 2024-05-18 08:15:07 +01:00
Willy-JL
4659c68eef Merge branch 'zlo/tlsf-and-a-temple-of-memcorrupt' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-05-16 21:49:35 +01:00
Willy-JL
54d2763177 Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-05-16 21:47:58 +01:00
Sergei Gavrilov
e90dc38e4d TLSF memory allocator. Less free flash, moar free ram. (#3572)
* add tlsf as submodule
* libs: tlsf
* Furi: tlsf as allocator
* Furi: heap walker
* shmal fixshesh
* f18: tlsf
* PVS: ignore tlsf
* I like to moving
* merge upcoming changes
* memmgr: alloc aligned, realloc
* Furi: distinct name for auxiliary memory pool
* Furi: put idle and timer thread to mem2
* Furi: fix smal things in allocator
* Furi: remove aligned_free. Use free instead.
* aligned_malloc -> aligned_alloc
* aligned_alloc, parameters order
* aligned_alloc: check that alignment is correct
* unit test: malloc
* unit tests: realloc and test with memory fragmentation
* unit tests: aligned_alloc
* update api
* updater: properly read large update file

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-05-16 19:52:26 +01:00
WillyJL
63403bbae2 JS: Add submenu module (#3601)
* JS: Add submenu module
* Using view_holder instead of view_dispatcher

Co-authored-by: nminaylov <nm29719@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-05-16 18:55:08 +01:00
あく
7c63bf7574 Revert "TLSF memory allocator. Less free flash, moar free ram. (#3572)" (#3651)
* Revert "TLSF memory allocator. Less free flash, moar free ram. (#3572)"

This reverts commit 1d17206e23.

* Fix PVS warnings

* github: logging for ticket number checks to stdout

* memgr: removed offending todo

---------

Co-authored-by: hedger <hedger@nanode.su>
2024-05-16 18:43:27 +04:00
Willy-JL
68a1d63360 SubGHz: New check_tx API, ext modules follow settings 2024-05-16 11:57:42 +01:00
Willy-JL
c2b7b9c60f Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-05-16 04:54:24 +01:00
Willy-JL
9b418c9a07 SubGHz: Show reason for TX blocked --nobuild 2024-05-16 04:51:23 +01:00
Sergei Gavrilov
1d17206e23 TLSF memory allocator. Less free flash, moar free ram. (#3572)
* add tlsf as submodule
* libs: tlsf
* Furi: tlsf as allocator
* Furi: heap walker
* shmal fixshesh
* f18: tlsf
* PVS: ignore tlsf
* I like to moving
* merge upcoming changes
* memmgr: alloc aligned, realloc
* Furi: distinct name for auxiliary memory pool
* Furi: put idle and timer thread to mem2
* Furi: fix smal things in allocator
* Furi: remove aligned_free. Use free instead.
* aligned_malloc -> aligned_alloc
* aligned_alloc, parameters order
* aligned_alloc: check that alignment is correct
* unit test: malloc
* unit tests: realloc and test with memory fragmentation
* unit tests: aligned_alloc
* update api
* updater: properly read large update file

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-05-15 16:47:21 +01:00
Willy-JL
bdeb0351f7 Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev --nobuild 2024-05-15 03:31:31 +01:00
Astra
e3f95a326b [FL-3797] Settings menu refactoring (#3632)
* Settings menu refactoring
* Update F18 api
* Wording changes
* Update certification icon
* Desktop: optimize settings save routine, fix navigation lag
* Gui: add submenu position getter. Desktop: proper menu index preservation.
* Gui: proper index getter for submenu. Desktop: cleaner settings navigation.

Co-authored-by: あく <alleteam@gmail.com>
2024-05-14 19:58:09 +01:00
Willy-JL
0a63ecc58d Update to new DolphinWait_59x54 icon 2024-05-11 00:22:44 +01:00
Willy-JL
f04975f50d Merge branch 'dev' of https://github.com/DarkFlippers/unleashed-firmware into mntm-dev --nobuild 2024-05-04 03:41:44 +01:00
MX
6bfa383cea Revert "Merge remote-tracking branch 'OFW/astra/3746-mfp-detect' into dev"
This reverts commit 9b377e6f80, reversing
changes made to 1736a8a7c2.
2024-05-03 14:50:58 +03:00
Willy-JL
a1b62fd9f3 Gui: Update elements API 2024-05-03 10:55:14 +01:00
Willy-JL
4457fa058f Tar: Add gzip unpack support and read progress callback
Heavily based on code from DrZlo13 in OFW PR 3158
2024-05-02 06:49:36 +01:00
Willy-JL
9d2b4d1dfa Merge branch 'dev' of https://github.com/DarkFlippers/unleashed-firmware into mntm-dev 2024-05-01 23:35:55 +01:00
MX
9b377e6f80 Merge remote-tracking branch 'OFW/astra/3746-mfp-detect' into dev 2024-05-01 16:49:53 +03:00
Zachary Weiss
0e8806c6c6 Archive: Favorite .mag files (#110)
* Impl mag file favoriting, add icon

* Revert API ver

* No weird formatting

---------

Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
2024-04-30 03:35:19 +01:00
Willy-JL
b2b88ce365 Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev --nobuild 2024-04-29 21:26:11 +01:00
Astra
7414e6d4df [FL-3817] iButton: fix crash when deleting some keys (#3617)
* iButton: fix crash when deleting some keys
* Fix cyfral crashes
* Better data formatting
* Remove void returns
2024-04-29 19:56:15 +09:00
MX
e7ef923729 Merge remote-tracking branch 'OFW/astra/3817-ibutton-crash' into dev 2024-04-27 15:09:25 +03:00
Astra
42c69b076a iButton: fix crash when deleting some keys 2024-04-26 19:07:51 +09:00
Astra
85fc0a2dd3 Merge branch 'dev' into astra/3746-mfp-detect 2024-04-23 10:39:34 +09:00
Astra
83ff6fb8bf Mifare Plus detection done 2024-04-22 21:09:06 +09:00
MX
4422a03ae9 Merge remote-tracking branch 'OFW/dev' into dev 2024-04-18 17:22:36 +03:00
Willy-JL
2a98739fe3 Update symbols 2024-04-18 03:09:15 +01:00
Willy-JL
cd5c76cb0d Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-04-18 03:05:41 +01:00
Astra
4883383b20 [FL-3679] iButton new UI (#3471)
* iButton new UI
* UI final touches
* Satisfy PVS

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-04-18 08:05:37 +09:00
Willy-JL
a660fa40f9 Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-04-17 19:44:03 +01:00
あく
70f93a48f5 [FL-2969] FuriHal: add ADC API (#3583)
* Examples: remove unused context
* FuriHal: add simple ADC API
* Examples: add ADC example app
* FuriHal: add extended configuration options for ADC API
* FuriHal: add ADC clock configuration, fix calibration routine for single ended mode, new optimized parameters, documentation.
* FuriHal: add FuriHalAdcChannelTEMPSENSOR sampling time note
* FuriHal: update FuriHalAdcChannelVBAT description.
* FuriHal: use insomnia while ADC is acquired.
* Examples: cleanup example_adc a little bit
2024-04-18 00:17:40 +09:00
Astra
7189026335 Initial MFPlus draft 2024-04-17 11:00:51 +09:00
Willy-JL
a3b6a2a04f Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-04-17 00:12:26 +01:00
MX
b079b46681 Merge remote-tracking branch 'OFW/dev' into dev 2024-04-16 22:46:32 +03:00
gornekich
1a40fae003 [FL-3750] Mf Desfire multiple file rights support (#3576)
* mf desfire: remove unused type
* mf desfire: continue reading after failed get free mem cmd
* mf desfire: fix processing read master key settings command
* mf desfire: don't read applications if they are auth protected
* mf desfire: handle multiple rights
* mf desfire: fix PVS warnings
* mf desfire: fix print format
* mf desfire: fix logs
* mf classic: add send frame functions to poller
* unit tests: add test from mfc crypto frame exchange
* mf classic: add documentation
* mf classic: fix incorrect name
* target: fix api version
2024-04-16 14:55:24 +09:00
Willy-JL
c02be75868 Merge branch 'zlo/allocator-playground' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-04-11 03:15:09 +01:00
SG
7626a319de update api 2024-04-10 21:49:09 +03:00
MX
b3151c563f Merge remote-tracking branch 'OFW/dev' into dev 2024-04-10 15:18:09 +03:00
RebornedBrain
fb9728d570 [FL-3772] Felica poller (#3570)
* New types for felica poller
* New functions for felica data transmissions
* Felica memory map extended with new fields
* Init/deinit of mbedtls context added for felica encryption
* Functions for session key and mac calculations added
* Raw felica_poller implementation added
* Removed MAC type parameter from check_mac function
* Replaced all data fields needed for auth with context structure
* Clean up felica_poller.c
* Now RC block is filled with random numbers
* New parameter for counting well-read blocks
* Some cleanups
* Felica file save and load logic added
* Now we use card key from context for session key calculation
* Copying card key to card block from auth context when both authentications succeeded, otherwise decrement blocks count by 1
* New felica poller event added
* Moved some data structions to public namespace
* FelicaAuthenticationContext struct moved to felica.h
* Field type and name changed for better ones
* Helper functions for felica_auth added to the app
* New scene for felica card key input added
* Logic for felica key input added
* Auth context request processing added
* Added block index definitions and replaced all index numbers with them
* More macro defines
* Replace nesting with do while block
* New function for write operations mac calculation added
* Replace nesting with do while block
* Make functions static for now because they are used internally
* Wrote some comments
* Raw felica render implementation
* New felica scenes
* Adjusted felica dump rendering according design requirements
* New felica scene added
* Helper for switching scene during unlock added
* Added warning scene and transfer to it
* Moved unlock scene logic to separate files
* Magic number changed
* New felica render logic
* Felica scenes adjusted according to design requirements
* Felica poller cleanups
* Some asserts added and some fixed
* Replcaed asserts to checks in public api
* Fixed pvs warnings in felica_poller
* New event for felica_poller added for incomplete read actions
* Handling of new poller event added
* Update SConscript with felica files
* Update api_symbols.csv with felica functions
* Sync API versions

Co-authored-by: あく <alleteam@gmail.com>
2024-04-10 18:51:36 +09:00
Willy-JL
d81e72d0a6 Merge branch 'zlo/allocator-playground' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-04-09 22:15:50 +01:00
Willy-JL
ff8210ba27 Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev 2024-04-09 21:58:48 +01:00
MX
95da39ba88 Merge remote-tracking branch 'OFW/dev' into dev 2024-04-09 20:33:52 +03:00
SG
0d3a717762 aligned_malloc -> aligned_alloc 2024-04-09 17:08:12 +03:00
WillyJL
e3ca293eee Desktop/Loader: Unload animations before loading FAPs (#3573)
* Desktop: Unload animations before FAP is loaded
* Loader: Add API to start detached (returns instantly, queues event)
* Desktop: Fix early animation unload deadlocks
* Loader: remove redundant event
* Bump api symbols

Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: SG <who.just.the.doctor@gmail.com>
2024-04-09 22:42:03 +09:00
SG
5bca6d2e84 Furi: remove aligned_free. Use free instead. 2024-04-09 15:23:46 +03:00
SG
3a4bff82f4 Furi: distinct name for auxiliary memory pool 2024-04-09 05:12:15 +03:00
MX
c9909467f9 Merge remote-tracking branch 'OFW/dev' into dev 2024-04-09 03:24:16 +03:00