Rewrite PKSM Bridge protocol to support dynamic file size. #1327
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit introduces the PKSM Bridge Protocol (v1), which is a simple protocol on top of the TCP connection to allow for future changes through versioning and transmitting dynamic file sizes.
NOTE: This commit adds new strings. I just put them all in english for now. I'll need assistance from the community to translate them all into the respective languages.
This logic will also need to be brought to Checkpoint, which will be proposed separately.
The
pksmbridge_api
andpksmbridge_tcp
files are generic and could benefit from being pulled into their own dependency repo. Otherwise similar logic needs to be implemented across any clients that want to send/receive files using the same protocol.TESTED: Tested using this build of PKSM and a build of Checkpoint (for Switch) using the same protocol files. Sent across Pokemon Sword, modified the boxes and sent it back. Then I confirmed that the pokemon were updated at both ends of the round-trip.