Open RetroEdit opened 1 year ago
Thanks for this. I am not sure how to address this yet besides hoping that general accuracy improvements will fix this eventually. But this definitely helps with keeping track of improvements or regressions in emulation accuracy!
I ran this on my GBPlayer and 2-4 end should be 5F45 rather than 5F54
I ran this on my GBPlayer and 2-4 end should be 5F45 rather than 5F54
Fixed now; that typo fix makes the math for 2-4 and 3-1 deltas make much more sense.
@alyosha-tas Additionally, I have some newer patches: my older patch has saving, which complicates testing because flash cartridges won't have proper EEPROM timing. I made some patches that remove it. I also made a patch that disables prefetch.
This .zip
archive contains 3 patches: Shrek_2_TASHack_nosave.zip
25B0,1D1D
in 5-4.
1-1 end: 099D,0924, 1-2 end: 13C1,1324, 1-3 end: 1E27,1D64, 1-4 end: 2B2C,29FA, 2-1 end: 37F9,365C, 2-2 end: 44FD,4333, 2-3 end: 5524,5315, 2-4 end: 5F05,5CAA, 3-1 end: 773C,746E, 3-2 end: 8AC2,8610, 3-3 end: 99E2,9476, 3-4 end: A42F,9EA0, 3-5 end: B337,AD84, 4-1 end: C606,BFC6, 4-2 end: D4E9,CE6F, 4-3 end: DEB9,D819, 4-4 end: EA85,E3BD, 4-5 end: F5DF,EEEF, 5-2 end: 09FD,028A, 5-3 end: 1CD4,14EA, 5-4 end: 25B0,1D1D
53D0,1D1D
in 5-4.I'm not entirely happy with my versioning here, but hopefully that at least gives them distinct labels.
I tried 0.5.4 on hardware, and I get 1-3 end is 1E27 instead of 1E25. I also get 1E27 on emulator. I didn't check all the values but I get the ending value of (25B0, 1D1D) on emulator.
I rechecked by video footage, and the 1E25
instead of 1E27
was apparently a typo. I rechecked every other value, and that should be the only typo (fixed now).
I also rechecked my 0.6.0 video, and the ending value of 53D0,1D1D
should be correct as well.
Using a TAS of Shrek 2 played back on emulator vs. real console for comparison, I found mGBA is currently ~17.9 seconds faster than real-console, while NanoBoyAdvance e170695f9b3283de9145fba40a419e3d06c976e7 is net ~79 VBLANK frames faster than real-console (NBA 1.7.1 is ~81 frames faster than real console because it's an additional 2 frames faster in one level).
For testing, I modified the game to display frame count + "input" count in the top-right; here's a patch: Shrek_2_GBA_TASHack_0.4.1.bps.zip. It works by overwriting the game's input subroutine to play back hardcoded inputs. To use it, it requires starting with no save file and I hope to rework it to be more detailed, easier to use, and overall better in the next few months.
You can see how long a level took by seeing when the frame count freezes at the end of a level and comparing it to real-console. Here's what my results were:
Basically, on my AGS-101, it will display
2611,1D1D
by the end of 5-4, while on NBA it will display25C2,1D1D
29 July 2023: fixed a typo in 1-2 and 1-3 in the level diff/cumulative diff results. I also added SkyEmu results.