Posts for Alyosha

Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
i improved open bus emulation enough to fix my current tests. After that they pass on emulator the same as on console. So this leaves me with no leads as to why Incredibles doesn't work,. After initial loading takes place there is a lot of down time where the cpu is halted so there shouldn't be any timing sensitive errors, Only vblank and timer 1 IRQs occur, with audio DMA and not much else happening. So, I don't know, test rom injection was my only real strategy for isolating errors, back to the drawing board, I'll need more examples I guess.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
I've been pretty busy lately and haven't been able to focus on emulation, but now I am back on the accuracy grind. Figuring out Incredibles is the first thing I have to do. I made some test ROMs in the same style as Flintstones, and so far I am about half way through the game load process with no errors found. Then I made another test towards the end of the loading process that had a very large error compared to console. It turns out though that this test inadvertently uses accesses to un-mapped memory, so it wasn't really testing game loading, or at least it was mixing game loading and other edge cases of open bus accesses. It should still work in emulator as in console of course, so the first thing I have to do now is overhaul my open bus emulation to make sure I have all the edge cases correct. Looking over the available documentation it seems I definitely missed at least some details.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
BigBoyAdvance wrote:
Found this new clip that would save 35+ seconds compared to Qwerty6000's TAS published on this website. All you gotta do is jump in the correct spot and hold Up to climb through the wall. Sometimes you get stuck inside the wall lol. Link to video I'm not gonna TAS this game, so I'm leaving this here in case someone in the future wants to improve the current TAS.
Nice find! I was coincidentally thinking of looking into TASing this game in the future, now I'm even more motivated.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
Good progress in console verification recently. Sonic Advance Knuckles, Flintstones, and two runs of Connect 4 all verified. Additionally Perfection (which comes from the same cart as connect 4) was able to be verified directly from the BizHawk movie. So that's 5/5, good stuff. I tried resyncing an older Sonic Advance run made on vba but wasn't able to get correct RNG, so the remaining 3 Sonic Advance runs will need more effort to get working. I'm going to do my best to get to 20 verified runs by the end of the year.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
despoa wrote:
Would it be better if I set it to "Unknown"? Or do you want the rerecord count to be 1000?
Yeah unknown sounds fine.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
despoa wrote:
I'm gonna assume the rerecord count is still unknown since the original file was missing one.
I don't have my original files so I don't have a firm number. My guess would be around 1000.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
https://tasvideos.org/UserFiles/Info/638365412632797498 Ok please replace the movie file with this one with improved level 1 and other small improvements. Still console verified.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
Please set this to delayed. I didn't realize there was a world record run, and the level 1 in that run is faster than mine.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
Wow I'm surprised such a big improvement was possible for this game, nice work figuring out the RNG.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
A resync was posted by GoddessMaria a few posts above. Loading times are longer because Flash is very slow (when emulated correctly.) It takes ~460000 cycle, about 2 frames, to clear a 4k sector, and then 325 cycles to write a single byte.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
https://tasvideos.org/UserFiles/Info/638362605045693618 I managed to find a manip that gives the same number of frames as Tompa's run, 8 frames faster than my original resync (and hence 8 frames faster than the accepted run.) EDIT: Console verification video: Link to video
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
I think the 2.0.2 movie should be used for publication here, since the 2.0.1 version does not save the game properly due to emulation error.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
nymx wrote:
Was the version that you modified to be "Console Verified", derived from Tompa's inputs?
Yeah, it's just a resync.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
https://tasvideos.org/UserFiles/Info/638361257271922150 Here's the current best i can get with 9 checkers. Assuming no one gets faster manip I guess I'll submit this one after I try a little more.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
I haven't checked my movie for optimality, I just wanted to demonstrate that console sync is possible. Probably someone should at l;east try to improve before it is used for submission. That being said, I think a movie that is demonstrated to be console accurate should be preferred over one that is demonstrated not to be, it's supposed to be a TAS representing GBA not emulator. I also don't care about authorship, do whatever makes the most sense, I'm only interested in accuracy.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
ruadath wrote:
do you have the gbmv of the resynced movie? there was some "low hanging fruit" improvements to sonic advance that I did not have time to get working because of lag/sync issues -- maybe we can try again on the more accurate emulator and get lucky
https://tasvideos.org/UserFiles/Info/638359331014930395 Here you go, good luck!
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
I was able to resync the baseline Sonic Advance run and console verify it: Link to video I had to change some inputs on the ice level boss fight due to different icicles, so it's not the exact same as the original, but still its good to see consistency between both this and the knuckles version. The previous version of this TAS was verified in its original form, so there is a possibility the original run would work on some other cart, just not my particular one due to different Flash timings. I'll try the other 3 runs of this game when i get a chance.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
https://tasvideos.org/UserFiles/Info/638358560032196485 Here is a better strategy that wins with only 9 checkers. Basically, the computer will not let you win in 1 move if you have 3 in a row and an opportunity for 4 in a row the next move, but it will give you a chance to win on your next move if the opportunity doesn't already exist. It's possible this can also be done with only 8 checkers with a red start, I haven't checked yet, this is the first case I could get working. EDIT: Actually that's not possible since then red would get the connect 4 first, so 9 should checkers should be the minimum.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
https://tasvideos.org/UserFiles/Info/638358229433828542 Here is a version resynced on GBAHawk 2.0.2 that work on console, it is only 8 frames slower, not sure if better is possible.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
This TAS (Tompa's most recent one) does not sync on console. Red blocks after the third black checker. Desyncs the same way on GBAHawk. So far I haven't been able to reproduce a winning condition without a much slower play from red.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
GoddessMaria was able to get good RNG and finish the game, this run finally works on console! Link to video It's really cool to see this working on console now, maybe other Flash RAM games have a shot as well.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
Dimon12321 wrote:
I wish I could have a similar console testing tool. How useful would it be for the emulator development to have reverse-engineered TASes (when the input is built blindly and is iteratively loaded and played back on console to see if TAS works alright)?
Not useful for GBA. You have to work through desyncs in order, one at a time. If there is going to be a desync anyway, then you might as well use the emulator to create the TAS which is orders of magnitude faster and easier. There may be a point where the approach you suggest is the only viable one (and it was already done for the Mario Maker switch demo, so is certainly doable.) I would imagine that consoles up to and including DS and N64, or consoles of similar complexity, can be emulated with cycle accuracy eventually. For those cases it makes sense to develop TASes on emulator. Past that though, who can say, the complexity of modern consoles quickly skyrockets. And, even if an emulator can get games running, the gap between running games and making console verifiable TASes can be very large. If some one can get a decent workflow for modern-ish cartridge based consoles, like PSP or 3DS, to make TASes on hardware without emulator, it might be the best approach.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
I've released GBAHawk v2.0.2 with improvements to Flash RAM, halt, and audio emulation. Improvements to Flash RAM timing are particularly notable as I was able to get stable sync on Sonic Advance (my copy of it anyway, could vary cart to cart.) This could potentially lead to verification of all 5 runs of that game. Not sure how well this will carry over to other games with Flash RAM, but either way it's much better than what it was. Improvements to halt emulation finally allow me to pass the halt_cnt tests, and my own halt tests that I made specifically to test the behaviour. Now the only known test failure I have is the 128k boundary test using decreasing DMA. This change did effect sync on Shrek 2 though, this seems to be another case of the line between lag and non-lag being only a small number of cycles, similar to Flintstones, so some small error is happening somewhere. no idea where. I have one new lead though. The game Incredibles, rise of the Underminer desyncs at the very first start press on console. This is a good candidate for the test ROM injection strategy I used to track down the issue with Flintstones. This will be the next thing I check once I have a big block of time to focus and put things together.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
--video removed: superseded-- I'm able to get stable sync up to the last boss now. For the fourth boss so far I only just hit him as soon as possible, no entertainment value added, just to test for sync. I needed to spend 4 frames waiting on start presses in earlier levels to get this to work this far, which isn't too bad. Unfortunately, robot knuckles was not cooperating and I need to waste 4 additional in level frames on delay to get good RNG. The only problem now is that I cannot get the last boss to do the hand attack. I delayed many frames, but so far it just doesn't happen. Maybe I need to change movement somehow I don't know. Assuming that can be figured out, sync seems to be really stable. I opened up my Sonic Advance cart and got the data sheet for the exact Flash RAM used, which really helped nail down timings and emulation accuracy.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3560)
Joined: 11/30/2014
Posts: 2744
Location: US
--video removed: superseded-- Making some progress here. Now I get sync past the second boss and a correct save file. Getting bad RNG on the third boss though, not sure why yet, still working on it.