Latest Forum Posts

Experienced Forum User, Moderator
Joined: 8/3/2004
Posts: 11814
This topic is for the purpose of discussing #7305: aliilho2's NES Super Mario Bros. "any%" in 05:34.95
Editor, Experienced Forum User
Joined: 2/2/2021
Posts: 83
Location: Midwest
Alright, after (effectively) disabling the latch filter on my device, I was able to verify this using your poll-based dump. ---- I wanted to know what the difference was. First of all, the polling sequence done by the game is fairly typical. No non-standard polling, or weird clocks, etc. Each frame consists of: Latch, clock*8 player 1, clock*8 player 2, Latch again, clock*8 player 1, clock*8 player 2. Though the time when the polls appear within a frame changed wildly. So I compared your poll-based dump, and my frame-based dump, by incrementing through each set of inputs on a frame by frame basis. Thus your dump should theoretically have two identical sets per frame, which should match the frame-based dump. Based on the analysis here, I found the first difference. I traced this moment back to roughly movie frame #2719. Which is the point where the player performs the first glitch of the run. Using onmemoryread/onmemorywrite in a lua script for memory address 0x4016, I found that on most frames, just as seen on hardware, 2 latches occur as described earlier. But on frames #2715 and #2716 of the emulator, only 1 latch occurs on each. I located where this was happening on hardware, and it turns out that VSYNC occurs after the 1st latch's polling sequence, causing a short delay (~0.5ms) until the 2nd latch occurs, and is why only 1 latch appears on these frames on emu. Trying to change the latch filter to account for this, didn't work, and seemed to consistently change which frames get this collision.. ---- If we think about frames as being wholly separate from each other, then theoretically the frame-based dump should have still worked. The reason it didn't in practice, is because the latch-filter is much too large for this odd case (which happens multiple times throughout the run), and a single value may not be sufficient. To me, this throws into question why some of us even bother using a latch filter at all. Perhaps in the past, it was necessary because emulators weren't accurate enough? Also makes me wonder if using a poll-based dump would allow me to verify TASes that have failed for me in the past.
TAS Verifications | Twitter | Github | Discord: Bigbass#9631
Experienced Forum User
Joined: 10/1/2008
Posts: 2397
Location: The dark corners of the TASVideos server
om, nom, nom... blech, salty!
Experienced Forum User, Published Author
Joined: 2/23/2016
Posts: 917
Sega TASer of 2017TASer of 2017NES TAS of 2017
I don't understand about those different video corruptions at all, but seems you can get a different video corruption depending of timing. When I warped to level 16 for the first time, the video corruption was different from both screenshots: The warp glitch TAS was made using BizHawk 2.4 version, BSNES core. -------------------- Speaking of this game, I have another news: I'll work on a update of the published any% run too, since there are some mistakes I didn't fix at the time due to some problems and probably I can improve this game even more with TAStudio tool.
My homepage --Currently not much motived for TASing as before...-- But I'm still working.
Experienced Forum User, Published Author
Joined: 12/27/2008
Posts: 828
Location: Brazil
Lucky TAS of 2011Gameboy TAS of 2011
For fun: If S is an empty set, show that inf S = +infinity, and sup S = -infinity Is there a non-empty subset S of the reals such that inf S > sup S?
Experienced Forum User, Published Author
Joined: 8/4/2018
Posts: 78
Location: China
NES TASer of 2020NES TASer of 2019
So, the final frame count is 34567 :D
Experienced Forum User, Judge, Moderator, Published Author
Joined: 9/12/2016
Posts: 1461
Location: Southern Italy
Gameboy TASer of 2017
Which BizHawk version did you use? Which SNES core did you set? If it's an emulation inaccuracy, we can ask the emulator developers to update the BizHawk cores. However, there is also a chance that this glitch is causing the game to read uninitialized RAM data, and use it for drawing the background graphics. Please try the same glitch again on console, and see if you get exactly the same glitched graphics or not. A glitch that reads from uninitialized RAM would be impossible to emulate accurately, as that would make emulation non-deterministic.
my personal page - my YouTube channel - my GitHub - my Discord: ThunderAxe31#1512 <Masterjun> if you look at the "NES" in a weird angle, it actually clearly says "GBA"
Experienced Forum User, Moderator
Joined: 8/3/2004
Posts: 11814
Experienced Forum User
Joined: 12/26/2018
Posts: 236
Challenger, any thoughts on why the Biz-Hawk emulator creates different video corruption, compared to console? Here are some examples, my console speedruns on the left, your emulator TAS's on the right: It's an interesting comparison, because I've actually found other warp glitch patterns on console that recreate these kinds of visuals we see here for the emulator examples. However, it seems that the emulator really loves those solid colorful horizontal lines, and almost always goes to that. (You may recall these colorful lines very early on, when you made a video of Warp to Level 6 Checkpoint.) It's not emulator-exclusive though, because I have found over the years a couple of very obscure warp glitch patterns that recreate these colorful horizontal lines on console. But it does appear that in almost all cases, console and emulator come up with different visuals for any particular warp glitch. I'm also curious to know if any of the memory watching tools have given you a better idea of what's happening, and maybe using that data to author new glitch patterns?
Admin Assistant, Experienced Forum User, Published Author
Joined: 8/14/2009
Posts: 4022
Location: The Netherlands
Exotic platforms TASer of 2018Exotic platforms TAS of 2018Exotic platforms TASer of 2017Exotic platforms TAS of 2017Exotic platforms TAS of 2017Exotic platforms TASer of 2016Exotic platforms TAS of 2016Gameboy TASer of 2013
Congrats to PracticalTAS, Mario 64 Master, ajp_anton & tauKhan for winning the TAS of 2021 award! (formerly known as Mothrayas) <dwangoAC> This is a TAS (...). Not suitable for all audiences. May cause undesirable side-effects. May contain emulator abuse. Emulator may be abusive. This product contains glitches known to the state of California to cause egg defects. <Masterjun> I'm just a guy arranging bits in a sequence which could potentially amuse other people looking at these bits <adelikat> In Oregon Trail, I sacrificed my own family to save time. In Star trek, I killed helpless comrades in escape pods to save time. Here, I kill my allies to save time. I think I need help.