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

everdrive: Fix 16 byte reading, Add 16 byte writing #14

Merged
merged 1 commit into from
May 6, 2023

Conversation

flagrama
Copy link

@flagrama flagrama commented May 6, 2023

The important things

(uint32_t)&REGS_PTR[REG_USB_DAT] + (512 - len) is needed when reading or writing to PI with a smaller buffer, because it is techncially the same buffer, just the data is stored closer to the end.

Important to note that the buffer retains the data through multiple uses, so you may occasionally need to clear the buffer if the size of what you're putting on it ends up awkward.

I believe the NOP actions put the FPGA in a state where it will keep a port connected even though there is no activity. It was required to get the write of "OoTR" to not timeout while writing to the buffer in PI.

@fenhl fenhl merged this pull request into fenhl:everdrive May 6, 2023
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.

2 participants