Skip to content
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

Draft
wants to merge 12 commits into
base: next
Choose a base branch
from
Draft

Conversation

zxkmm
Copy link
Contributor

@zxkmm zxkmm commented Jan 19, 2025

There are one thing to discuss:
jammer app is a bit weird designed, that they claimed a ram region like this:

struct SharedMemory {
// ...

    union {
        ToneData tones_data;
        JammerChannel jammer_channels[24];
        uint8_t data[512];
    } bb_data{{{{0, 0}}, 0, {0}}};

// ...
}

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:

   union {
        ToneData tones_data;
        JammerChannel jammer_channels[24];
        HopperChannel hopper_channels[xxxxxxx];
        uint8_t data[xxxxxxx];
    } bb_data{{{{0, 0}}, 0, {0}}};

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:

New source files for Hopper:

File path updates:

Shared memory and navigation updates:

@gullradriel
Copy link
Member

Hey @zxkmm , still a draft ?
:-)

@zxkmm
Copy link
Contributor Author

zxkmm commented Jan 26, 2025

Ya sorry gull, the new path declaration extends the inner space and I need to move an app to external before this merged XD

@gullradriel
Copy link
Member

Yeah, we're short on firmware space.
I may make a externalize PR this afternoon.

@gullradriel
Copy link
Member

I fixed the conflicts.

@zxkmm
Copy link
Contributor Author

zxkmm commented Jan 28, 2025

Thank you!

@zxkmm zxkmm marked this pull request as ready for review January 30, 2025 08:49
@zxkmm zxkmm marked this pull request as draft January 31, 2025 11:22
@htotoo
Copy link
Member

htotoo commented Feb 7, 2025

Since the hopper is external app, you may not need to define it's path in the global scope.

@zxkmm
Copy link
Contributor Author

zxkmm commented Feb 7, 2025

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

@gullradriel
Copy link
Member

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.

@zxkmm
Copy link
Contributor Author

zxkmm commented Feb 7, 2025

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.
So basically the path thing would behavior like a var that declared in correct file.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants