Posts for Alyosha


Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
PJ wrote:
I tried baiting one of the two soldiers to fire a bullet and then race the bullet to the other side of the barrier, but I have not been able to make it in time. I cannot confirm if that would work or not. Any ideas would be greatly appreciated! This is a pretty huge discovery, and would be even bigger if it worked on the 2nd barrier.
http://tasvideos.org/userfiles/info/43648137360728408 Your guess is correct! By taking bullet damage on the same frame as passing through the barrier, you are able to skip it. In this movie I poked the second guard onto the barrier just in case I needed him for somehting, but it's probably just as well to kill him. EDIT: Here is a much cleaner and simpler demonstration of the skip: http://tasvideos.org/userfiles/info/43648327823251606 The unduck and hook throw are precise, but should be doable real time I think.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Woah crazy find! I might look into this one, would be cool to have an updated TAS with it. So, I took nelifox's run and I did NOTHING except edit out the part where he blows up the generator to turn off the first barreir. Then I replayed the run as is, and ended up on the other side of the barrier! 0_0 I haven't looked at a trace log or anything yet to sort out what happened, but if it's this easy maybe I'll try the second barrier too. http://tasvideos.org/userfiles/info/43646321347282670 EDIT: the bazooka shot and pressing down to release the hook are irrelevent. All you have to do is swing at that point and you'll make it through. Seems like it's just a metter of lag from the two enemies and possibly the elevator.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Great work feos! I hope it doesn't expose too many determinism problems as you mentioned earlier, but this is certainly a first big step forward!
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
With some help from gekkio I fixed naughtyemu. I also got caught up on a couple newer tests just recently released. Progress is reasonably steady but emulator performance is starting to take a hit. I might take some time and go over the code again and look for obvious speed improvements. This hasn't really benefitted me at all in the past, but maybe I'll find something this time, I'm really hoping to stay at 4x speed at least.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Cool, glad you are getting some decent speed again. :)
By the way, I found a pretty serious bug on 2.2.1 (also happens on the latest developer build). Alyosha, please load Dragon Quest I and Dragon Quest II (Famicom versions, not Dragon Warrior) and you'll have a surprise.
Fixed. Thanks for the report. That was quite an obvious one, how did I miss that. OTL
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
ThunderAxe31 wrote:
What about input support for Kirby Tilt 'n' Tumble?
That will be something that is added with color gameboy support. EDIT: Thanks to Shonumi on NesDev for pointing me in the right direction, garbled screens on Kirby and Wrestling are now fixed. EDIT2: I also fixed Teen Jeopardy and Prehistoric Man music. Remaining: -Pinball Fantasies -Beast Fighter Tests: -naughtyemu -dycptest2 - hblank_ly_scx_timing-GS - intr_2_mode0_timing_sprites With these improvements I'm now pretty confidently ahead of Gambatte in accuracy, although not in capability. I have asked on NesDev regarding Beast Fighter. The game works fine in both GB and CGB on actual hardware, but no one quite knows why the status bar isn't showing up in emulator. That one will liekly need a test ROM to work out. LIJI32 (Sameboy author) seems to have cracked the case of Pinball Fantasies some time ago, so I'll just have to implement the logic described there (I think, I haven't studied exactly what the proposed behaviour is.)
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Fixed: -Link's Awakening -Super Hunchback -Altered Space Remaining: -PinBall Fantasies -Teen Jeopardy -Kirby's Dreamland / HAL Wrestling (Same bug i believe) -Prehistoric Man intro audio -Beast Fighter Tests: -naughtyemu -dycptest2 - hblank_ly_scx_timing-GS - intr_2_mode0_timing_sprites If anyone is aware of any other bugs please let me know.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
feos wrote:
Unless accuracy becomes what makes them desync, right?
Of course. Overall the gameboy hardware seems less tempermental then NES, so my hope here is that this work can lead to many more console verifications. Which leads me to the first real roadblock in the development process. I've been working on the test rom hblank_ly_scx_timing-GS. This test rom tests the timing of HBlank interrupts in the presence of x-scroll. The test itself is not that challenging, mainly because I built the core already knowing that I would need to pass it, so I planned out the architecture ahead of time. Unfortunately, when it came time to actually run it, it failed. It turns out I needed to add 2 clock ticks delay to the interrupt firing to get it to pass. This seems unnatural, and I'm not aware of any reason why it should be true. Furthermore, the test dycptest2 indicates that some combination of write timing and ppu latching is off by 3 clock ticks. Since timings in the gameboy usually occur in multiples of 4, values of 2 and 3 are difficult to resolve. So, it seems I still have a long way to go here.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Warp wrote:
Btw, is there a way to make BizHawk emulate faster than at 400%? It would make testing faster and easier.
Config -> Speed/Skip -> Unthrottled
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
NOW I can vote yes! Well done to all involved on fixing the issues here and improving the run.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
This is a fascinating challenge. I wonder if any academic type of work has been done on anything like this. It seems relatively easy to speculate on what strategies might be best suited to win quickly (like samurai goroh has) but I can't think of an easy to determine what game is the fastest possible. Good luck at any rate Warp.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Nice work! one long unexplained bug figured out!
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
feos wrote:
Good job, feos, you wrote an angry note about checking player entries every time, and forgot to give a fuck when you were the one to check it.
I guess you weren't impressed at how optimally I picked up that shovel. :(
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
1,3,4: I remember seeing something about how Korean stuff is unique, but I haven't gotten a chance to really study it. That and the BIOS stuff I will sort out at some point. They aren't high priority but I'll keep it on my todo list. 2: Man, this one was tough to track down. Subtly wrong savestate bugs like this are always a headache. It's fixed now though, make sure to clear out your greenzones after getting the dev build.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I found the problem. I allocated 4 bytes for four int sized values 8D
ruadath wrote:
One request for much later next year when you are looking at GBC. Can you try and get whatever improvements were made in https://github.com/Dabomstew/gambatte-speedrun available so that we can get console syncing Pokemon Gen 1 (maybe even gen 2) runs?
The goal for this emulator is accuracy, so yeah if / when I get around to CGB I'll be trying for enough accuracy so runs will sync on hardware. I'd want to get accurate enough so MrWint's pokemon ACE runs on real hardware honestly.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I have restored the operation of the GPU Viewer for GBHawk, Gambatte, and Sameboy, which seems to have gotten broken somewhere around 2.0. There's some kind of memory leak in it though. I haven't found a 100% consistent way to replicate it but it crashes with a corrupted heap error sometimes after switching between cores, so, that's bad. If I can get that sorted out this will be another helpful tool in diagnosing the remaining graphical glitches. Anyone have any tips on how to track down memory management errors?
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
The audio and frame difference issues are due to gambatte using 'use equal length frames' by default. The Gameboy can have 'frames' (time bewteen VBLanks) that are arbitrarily long since it's not locked to a video standard like normal consoles. When these types of frames happen, typically during loading, BizHawk doesn't know how much longer a frame was then a normal frame, so it just plays the audio like it was 1 normal frame, cutting off notes and speeding things up. Typically for TASing though you want frames that always start / end on VBlank since that leads to consistent input timing. So, it's a trade off. Right now GBHawk only has VBlank based frames for ease of testing, so those issues won't be immediately fixed. It kind of sucks, but BizHawk doesn't have a good way to deal with it that I know of.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Ok, I finally found the Fix for Roger Rabbit. That game uses every available cycle for drawing and didn't leave enough time to restore access to VRAM. Anyway, with that here is the list of issues I am currently aware of. Let me know if I need to add anything: - Link's Awakening title effect - Super Hunchback title effect - Altered Space excess sprites - Beast Fighter, no status bar (it expects window tile location to be at the bottom of the screen even though it wasn't turned on, not sure if it even works on hardware.) Tests failed: - hblank_ly_scx_timing-GS - intr_2_mode0_timing_sprites I think that's it. Making a lot of progress. Now the hard part starts figuring out those last 2 tests. (I also fail the OAM bug test, but since I don't know the corruption pattern I can't really implement it, the tests only do a checksum. Needs hardware testing.)
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
phoenix1291 wrote:
Not really a bug, but is there a way to access the INS / DEL and FUNC keys on SG-1000? Oh, and are there any plans to integrate the joystick support in addition of the keyboard for the C64 and Apple II cores?
Tastyfish has implmented the keyboard. So, this and several other games needing the keyboard can now be played. Tastyfish has also implemented several other features for the SMS/GG core recently including lightgun for anyone who might be interested in trying these out.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Fortranm wrote:
Pokemon Brown, a Pokemon Red hack, doesn't run. Maybe it's because it's 2MB big?
Fixed, thanks for the report. (Although I was certain I remembered accounting for this already. Maybe I only thought about doing it but never did it?) 0_0
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
MUGG wrote:
I tried the latest interim (commit ffbb1f339). - The GB menu lacks the core picker (Unlike the GBA menu) - GBHawk and Gambatte use separate gamepad config (Unlike the two GBA cores that share their config). - Can GBHawk not run GBC games?
- The core picker is in Config->Cores only at the moment - I dont even know where to look for the gamepad config 8D - For now it's GB only. When GB is close to 100% maybe I'll upgrade to GBC. A lot of the trickier stuff still remains to be done. I just implemented MBC3, so Pokemon Red and Blue should now be playable.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Thanks for the continued (and detailed) testing. Yeah many of the remaining bugs are ppu timing glitches. I'll have to look at Samurai showdown though. Actually I was bored of staring at trace logs so I decided to implement the first unlicensed mapper, Sachen MMC2 (as defined by tauwasser): https://web.archive.org/web/20170803195356/https://wiki.tauwasser.eu/view/Sachen_Mappers This makes Beast Fighter work (although the status bar is broken at the moment.) So, I'll be implementing unlicensed stuff as I have the motivation and can find info about the mapper. If anyone has a specific unlicensed game they want implemented (I know there were a few in the first page) it would greatly speed up implementation if you could link to a mapper spec. EDIT: Fixed: Lawnmower Man Samurai Showdown Th Final Fantasy legend EDIT2: Fixed: Audio squeel, zerd no densetsu, X (proto), GOAL!
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Lot's of new fixes just committed. Fixed: Malibu Beach Volleyball, Castle Quest, Double Dragon 3, F1 pole poisition. Working on: Goal!, Roger Rabbit, The Final Fantasy Legend As usual, games are using all kinds of different tricks to do things, so I'm getting a lot of good test cases out of all of this.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
smellyfeetyouhave wrote:
-In Wario Blast featuring Bomberman! I'm unable to move right. I can move right in other games and it works fine in Gambatte -Malibu Beach Vollyball doesn't boot (01h ROM+MBC1) -In the intro sequence to Link's Awakening, when the logo appears there's a flickering around the edges (doesn't exist in Gambatte) https://streamable.com/vjml3
I committed another round of updates that fixes Wario Blast as well as Bomberman and mortal kombat. Malibu Beach Volleyball looks interesting, thanks for pointing that out, might provide a hint for Roger Rabbit as well. Link's awakening is probably a PPU timing bug that will have to wait all the basics are done and I can focus on the minute details.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Fortranm wrote:
Super Connard refuses to run. :P I know GBHawk only supports DMG right not, but is there a way to force GBC games to run under DMG mode with GBHawk instead of automatically switching to Gambatte?
I guess they don't like emulators! The game expects to be unable to read RAM during DMA. I had the rough outlines of this implemented, but now it's implemented completely so the game runs. I'll think about adding that option later once most of the main GB bugs are stomped out.
smellyfeetyouhave wrote:
I'm seeing that one of your commits included a fix for the issue Barbie was having (unless I misread the comment) but it seems to still have the squealing.
I thought I took that out, but listening to it again I do still hear a faint high pitched buzz. I'll look into it.