-
Notifications
You must be signed in to change notification settings - Fork 12
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
Add support for frame advance #24
Comments
Hello, I'm afraid I don't quite understand what you are asking, because advancing frames is already possible, either with |
To better understand your usecase, what would the script be doing before advancing a frame? Is it waiting for a specific event? Would it be busylooping? And would you be running such a script while the game is paused? |
I'm working on a project that will take a video of a Mario Kart Wii time trial and try to produce the same exact run on Dolphin so that we can recover lost ghosts. My basic idea for how to implement this is the following loop:
This is just a rough draft of my program, but I believe that a frame advance function is necessary for this loop. |
My project has changed at this point, but I would still like to be able to control frame advance. |
Never mind, I understand what you mean here. Dolphin already waits for scripting advancing a frame, so frame advance isn't needed. |
When a guest register is an immediate, it may be necessary to move this value into a register. This is handled by gpr.R(), which lacks context on how the register will be used. This leads to cases where the immediate is written to a register, only for it to be overwritten. Take for example this code generated by srwx: 0x5280031b mov w27, #0x18 0x53187edb lsr w27, w22, #24 gpr.BindToRegister() does have this context through the do_load parameter, but didn't handle immediates. By adding this logic, we can intelligently skip the write when do_load is false.
I would like to make a script that sets an input map, advances a frame or two, and then analyzes the graphical output before any further action. Is it possible to add a function that tells Dolphin to frame advance?
The text was updated successfully, but these errors were encountered: