Posts for Alyosha


Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
An update was made today to Gambatte that fixes a VRAM access bug that prevented a run of WarioLand II from syncing on console. Thanks go to TIKevin83 and the gambatte devs for putting everything together and making a test ROM. jlun2 had posted the issue in the game thread less then a month ago, so seeing this wrapped up quickly and advancing console verification is pretty cool I think.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I refectored GBHawk audio, so games should sound much better now. There's a bit more popping then in Gambatte in certain cases (like pokemon yellow) but in those cases it is shutting off Wave channel, so not sure why it wouldn't pop. Games and demos that use DC bias and direct volume modulation should in particular sound much better.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Looks like I forgot to add that for SubGBHawk, fixed in master.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Wow another very unexpected improvement. Nice work Archanfel.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Jaguar? Nope that would be a huge investment of time with no real payoff. I realistically only have time to focus on one or two additional systems at most, so I'm not looking to dump time into obscure systems. Waterbox is probably the best answer to a lot of those.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I've cleaned up a lot of HDMA edge cases and fixed up speed switch timing, almost ready to start checking double speed mode and looking at the pokemon TCG runs. I had looked at TCG1 earlier but failed due to speed switch timing issues (also TCG1 constantly turns the screen off which makes syncing pretty tedious.) Still a lot of work to be done, but I'm hoping some more robust double speed mode accuracy isn't too far off.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Amazing work! Battletoads is super challenging to TAS and you made it look easy! Definite yes vote. Also personally I prefer just letting down time be down time, you don't always have to be doing stuff (and anything you change will certainly ruin RNG and you will have to redo many sections afterwards.) You're definitely a super talented optimizer, I hope try your hand at other challenging games too.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Cool run! Impressive level of pokemon knowledge on display as always. Yes vote. Can you actually reset a gameboy player? I'm not sure what the audio issues are (it sounds fine to me.) I'll have listen to it side by side with an older version or gambatte, I've never really gotten an ear for audio issues. Whatever it is I'll fix it alongside Hammerin' Harry, which should be soon. Not really related to this run, but I'm really surprised by how often corrupting save ram leads to useful results.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Fixed collision detection on catch the ball, maybe fixes other stuff. For catch the ball game 3, it just loads up the game restart sequence, so to me it looks like there is no game 3. Unless someone loads this up on an actual console and gets something for game 3, I'm thinking there is nothing to fix here.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
http://tasvideos.org/userfiles/info/63275868784479312 Finally, here is a WIP that completes the game. This is still quite a long way from being done, but at least now I have a complete file to work with that has all the loading times accounted for so I don't need to spend so much time just re-syncing things. It was quite a lot of work getting to this point, so I'll probably only work on this slowly from here on. this type of long project really isn't for me. At least there's no RNG to deal with. EDIT: here is a 5 second faster WIP that cleans up a few obvious errors. http://tasvideos.org/userfiles/info/63349808160853828
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I had mentioned this in the GBHawk thread, but basically the way STOP is emulated in Gambatte got changed somewhere along the way. It now cannot be un-stopped without an interrupt. However, various test roms require being able to un-stop without an interrupt, just a button press, so this seems to be a regression. See: https://github.com/AntonioND/gbc-hw-tests ,dma_halt_stop_speedchange.gbc I believe the game end glitch can be executed as implemented, but to work on real hardware would need subframe inputs to un-press the buttons before the STOP hits. The original run works in GBHawk in exactly the same way as it originally did on Gambatte (which I believe is also not technically correct, as the buttons are held before STOP, but I need a proper test): http://tasvideos.org/userfiles/info/58687251796716780
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I was wondering, has any dis-assembly work been done on this game to get some strong evidence of where things are optimal or not? It still looks like it's mostly empircal guess work finding strategies and it would interesting to know if there are any really un-intuitive strategies that could still save more time.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Personally I see these as two different versions, the player pretty clearly has to do some different things in order to win optimally. Seems like there is a lot of room for differences of opinion here. Why not have feos judge one and Memory judge the other one?
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Wow that's a big improvement, nice work! Once again voting yes, this is an interesting category.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Cool even more punch out improvements, definite yes vote.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I made optimizations / accuracy improvements / cleanup to GBHawk's serial port code today. It is noticeably faster now, especially in 4 player mode. Normal GBHawk is faster too by about 5-10 fps. If anyone notices any issues with the linking now let me know. I tested a lot of different cases and everything still seems to work though. Also the VRAM access glitch above is still under investigation, definitely some new behaviour there but details aren't nailed down yet.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Cool to see an improvement to punch out. I wonder though if this is really the only improvement possible, seems like some things are only known empirically, are there any other possibilities out there? Yes vote regardless. Also why isn't McHazard coauthor?
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
That's cool, I thought that didn't work for punch out, I must be mis-remembering. Maybe it's worth a console test too, would be cool to see a console verified punch out run. EDIT: oh cool it's uncancelled, giving this a yes vote, I like the glitch and the different strategies.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Personally I'd like to see this as a published category (but I'd also like to see it not done on FCEUX.)
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
http://tasvideos.org/userfiles/info/63149161706437437 Here's another WIP with all of world 3 and part of world 4 done. This is more like a rough draft, as I'm just trying to get through the game to have a complete WIP, but all of the major timesaves are included I think.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Some interesting developments have been happening in gameboy console verification. I looked into this for jlun2 in Wario Land II:
jlun2 wrote:
While routing for 100%, I asked TiKevin83 to check for if the OoB in this game was emulated right by given them input files for any% improvement. An input file that did not soft reset the game synced back, but the one that did use a soft reset to alter OoB layout did not.
This was an interesting desync because it involved the cpu accessing VRAM (0x8B2C) when it was still in use by the ppu for rendering. Normally this would be expected to return 0xFF, but the way the desync happened this could not be the case. In fact, the underlying value was already 0xFF, so whether or not the cpu could access this address, it should still be returning 0xFF. But the console verification attempt revealed that this could not be the case, what needed to be returned was a value for a coin. The only clue about what might be happening is that this access was blocked on the very last pixel of rendering, right before access was restored to the CPU. This is just speculation, but I think what happened is that access is restored to the CPU, but it's too late for the address latch, so what gets returned is just the last latch on the bus that the PPU read. The PPU is always reading from memory, even when it has all the tile data it needs already. Sure enough, if I implement this behaviour I get a coin and desync exactly as in the console verification attempt. Also, execution between Gambatte and GBHawk is identical cycle for cycle up until this exact moment. Some test ROMs will be needed to determine if this is truly what's happening, but I don't see any other way for a value other then 0xFF to be returned without this behaviour. I have it implemented in the current version of GBHawk and hopefully a console verification of Wario Land II can work with this. ___________ Also in the realm of Wario Land, there was some speculation on whether or not the game end glitch run was actually possible on console for wario land 1. The thought was that the STOP would not be able to escaped from because interrupts for joypad were not enabled. However some test roms from https://github.com/AntonioND/gbc-hw-tests require STOP to be returned from with joypad press even if interrupts are turned off. So the mechanism itself should work. However, the STOP happens on the same frame buttons are already being pressed. It seems that in this case STOP is not exited. So maybe this will need subframe timing in order to release the buttons before the stop.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I loaded up the 2 player TAS to check things out. For the cutscene skip, you have 1 frame to hit the start button 28 frames after you clear the screen displaying the level name. You can't hold start before that time and no other buttons have an impact, no wonder that went unnoticed for so long! I'll edit this post if any of the others are easily reproduced. EDIT: For the glitch in level 2, did you press any buttons to respawn? If you didn't press any buttons then this can be explained with a random bit flip at address 0040 going from 0x0E to 0x0F. If I do this while no turtle is spawned it automatically respawns a turtle and ends the stage exactly as in the video.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Impressive, but this is the donkey kong country thread and that is for DKC2. Or is it applicable to DKC 1 as well?
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
nice finds! Was this done on console or emulator?
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Zombies ate my Neighbors is done thanks to the work of Allbeert, it's been over a year since I last removed a run from the list, so a little new progress is nice!