-
-
Notifications
You must be signed in to change notification settings - Fork 629
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Add new app "hopper" app. #2482
base: next
Are you sure you want to change the base?
Conversation
Hey @zxkmm , still a draft ? |
Ya sorry gull, the new path declaration extends the inner space and I need to move an app to external before this merged XD |
Yeah, we're short on firmware space. |
I fixed the conflicts. |
Thank you! |
Since the hopper is external app, you may not need to define it's path in the global scope. |
Besides personally I think the design of this “all the path define in one file” doesn’t make sense and doesn’t provides any improvements, I’m following other external app’s styles |
More easy to refactor when all statics are in one place than parse all the files form custom defined strings. |
Ok, I will then remove the path declaration of external apps in next PR. But personally I think compiler would treats the same: That each file that included the file path, would actually add the one var that actually been used, into obj file, and drop others. Thus if we included those var that external app uses, they won't occupy more. |
There are one thing to discuss:
jammer app is a bit weird designed, that they claimed a ram region like this:
Which sort of looks like a thing that communication between m0 and m4. I don't know how it use the ram but it looks like it will always in ram. and if we wanna keep both app, the only way would be i claim another region something like this:
AI summary
This pull request introduces a new external application called "Hopper" to the firmware. The changes include updates to multiple files to integrate this new application, including adding the necessary source files, memory allocation, and UI components.
Integration of Hopper application:
firmware/application/external/external.cmake
: Addedhopper
source files toEXTCPPSRC
andhopper
toEXTAPPLIST
. [1] [2]firmware/application/external/external.ld
: Allocated memory for thehopper
application and added sections for it. [1] [2]New source files for Hopper:
firmware/application/external/hopper/main.cpp
: Added the main implementation file for thehopper
application, including initialization and application information.firmware/application/external/hopper/ui_hopper.cpp
: Added the UI implementation for thehopper
application, including frequency management and transmission control.firmware/application/external/hopper/ui_hopper.hpp
: Added the header file for thehopper
UI, defining theHopperView
class and its methods.File path updates:
firmware/application/file_path.cpp
: Addedhopper_dir
path for storing Hopper-related files.firmware/application/file_path.hpp
: Declared thehopper_dir
path.Shared memory and navigation updates:
firmware/common/portapack_shared_memory.hpp
: AddedHopperChannel
struct and updated shared memory to includehopper_channels
. [1] [2]firmware/application/ui_navigation.cpp
: Commented out thesubghzd
entry in the app list.