Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[tma2] [Ongoing] Continue implementing modules for tma2. #1405

Merged
merged 25 commits into from Sep 12, 2021
Merged

[tma2] [Ongoing] Continue implementing modules for tma2. #1405

merged 25 commits into from Sep 12, 2021

Conversation

SciresM
Copy link
Collaborator

@SciresM SciresM commented Mar 18, 2021

This PR is not done, but tma2 is being merged into master periodically to prevent undesirable divergence of the development and master branches. The previous tma2 PR grew to be ~40000 lines of code, which is far too many to have pending integration.

The following are some checklists for tma2.

Note that not everything will make it into this PR in particular.

List of stuff to do for cs sysmodule, likely multiple PRs for the separate servers/components:

  • Reverse engineer cs sysmodule well enough to begin implementing it.
  • Implement cs sysmodule main logic
  • Implement Video/Audio server (its own PR?)
  • Implement HID remote input from host (its own PR?)
  • Implement generally useful commands that Nintendo provides inside cs.
  • Starlink integration for all the above services

List of stuff to do for Starlink:

  • Get Starlink to a point where I can test the above
  • Fully implement htclow library logic in Starlink
  • Implement USB device for Starlink.
  • Implement Sockets/TCP device for Starlink. // Mostly done
  • Fully implement htcfs logic for Starlink.
  • Fully implement htcs logic for Starlink.
  • Fully implement htcmisc logic for Starlink. // ~0% done

List of stuff to do for dmnt.gen2 sysmodule, likely a separate PR:

  • Reverse engineer dmnt.gen2 sysmodule well enough to begin implementing it.
  • Implement gdbstub
  • Implement lldbstub extensions (should we bother?)
  • Consider implementing Nintendo's native dmnt interface? Is there any advantage?

List of stuff to do for convenience:

  • Add Starlink convenience shim for Target IO to expose it as e.g. an FTP server.

Completed in previous PRs:

List of stuff to do for TioServer sysmodule:

  • Reverse engineer sysmodule well enough to begin implementing it.
  • Implement the binary protocol for Target IO.
  • Add Starlink support for interacting with the target.

List of stuff to do for htc sysmodule (mostly done):

  • Implement htc sysmodule main logic
  • Implement htclow library logic
  • Implement htcs library logic
  • Implement htcfs library logic
  • Implement htcmisc library logic
  • Implement htclow USB device.
  • Implement htclow Sockets/TCP device.

@SciresM
Copy link
Collaborator Author

SciresM commented Sep 12, 2021

Merging this in because I want those kernel fixes in master, and because it's been too long without integrating this stuff.

TMA2 is still in ongoing development/not done yet.

@SciresM
Copy link
Collaborator Author

SciresM commented Sep 12, 2021

A new pull request will be opened once there are more tma2 commits to compare against.

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

Successfully merging this pull request may close these issues.

None yet

1 participant