BizHawk Emulator Development


Experienced Forum User
Joined: 5/4/2016
Posts: 67
Alyosha wrote:
arkazal wrote:
Been a little while since a new release... I'm hopeful for an N64 core update :) Are there any N64 emulators still in development, anyway? It seems like N64 gets the least amount of love v__v
mupen64plus has actually seen a lot of activity lately. Microcode emulation for some of the later N64 games was greatly improved not too long ago. This doesn't fix mupen's underlying accuracy flaws, but playability is certainly still improving. Also CEN64 still sees commits, but activity on it has waned. Most every core in Bizhawk needs updating, both in house and external. I'm not sure there is any particular time frame to do it, and it's not tied to a release schedule. Just keep an eye out I guess.
I also saw this pop up recently. Brand new N64 emulator written in C#. I have my doubts if it's going to go anywhere but it'd be interesting to see if it did https://github.com/Ryu64Emulator/Ryu64 On the note of updating Mupen, when I looked into porting the update before, a huge amount of the patches listed in that big document just downright didn't apply due to refactoring and rewrites.
DrD2k9
He/Him
Editor, Experienced Forum User, Published Author (2021)
Joined: 8/21/2016
Posts: 894
Location: US
Exotic platforms TASer of 2020First edition TAS of 2020Gameboy TAS of 2020Exotic platforms TASer of 2019Computer TASer of 2017
Curiosity and potential feature request: What would be required to implement sub-frame inputs in BizHawk? My (possibly unrealistic) thought process on this would be to have an option for the piano roll of TAStudio to have lines labeled by input opportunities instead of frames, and thus have a new line whenever a change of input would be recognized by the game. Using the NES as a specific example: Have TAStudio piano roll update with a new line every time the latch pin on the controller port is pulsed. This would essentially provide opportunity to change input every time the NES 'looks' for different input, not just changing input once per frame. I'm guessing this would take modification of TAStudios programming if not the system cores themselves. If this sub-frame input were available in an accepted emulator, we could potentially see more runs like the 3-second SMB3 run that was demonstrated at GDQ. EDIT: Not sure why this posted twice...I'll delete the repeated post. EDIT 2: Another option for piano roll would be to combine my idea with the current Piano roll. Have the roll still broken down by frame, but have additional indented lines (perhaps a different color like yellow?) for each latch pulse within a frame.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author (3927)
Joined: 11/30/2014
Posts: 2388
Location: US
NES TASer of 2015
Subframe input on the piano roll isn’t happening. Subframe input using LUA is potentially not too hard on in house cores. But the resulting input stream would be a non-standard file, and would probably take a convincing test case to be acceptable. I’d be willing to work with someone who was interested in seeing this happen on NESHawk. Honestly though it’s probably only useful for pathological cases like SMB3. For other cases like SMS where you can inject NMIs anywhere you want , the results for games using the pause glitch would be pretty interesting (seeing 10 second intro screens go by in only a frame.) But the core isn’t ready for it, since it does scanline and not cycle level execution . So yeah, if someone was willing to do the scripting work I’d be up for modifying cores to make it possible .
Experienced Forum User, Published Author, Senior Judge, Senior Publisher (1423)
Joined: 4/17/2010
Posts: 10321
Location: RU
NES TAS of 2011
Subframe movies is not just polling input more frequently. It involves making sure sound, video, and input updates don't screw up each other. Some cores already require variable framerates to line up NMI with input and audio. This would require redesigning half of the emulator. Even a monster like MAME that attaches NMI and video updates to a timer, assumes CFR. So don't hold your breath.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting. If TASing is meta-play, TASVideos Movie Rules are meta-meta-play!
DrD2k9
He/Him
Editor, Experienced Forum User, Published Author (2021)
Joined: 8/21/2016
Posts: 894
Location: US
Exotic platforms TASer of 2020First edition TAS of 2020Gameboy TAS of 2020Exotic platforms TASer of 2019Computer TASer of 2017
I figured it would require quite a bit of work, but I figured I'd ask anyway.
Experienced Forum User
Joined: 5/4/2016
Posts: 67
Just an fyi, Windows Defender is being a pain at the moment and picking the prereq installer up as malware. If it were some random AV it'd be eh but it's Defender so someone might actually want to deal with it.
Experienced Forum User, Published Author, Senior Judge, Senior Publisher (1423)
Joined: 4/17/2010
Posts: 10321
Location: RU
NES TAS of 2011
Version 2.3.1 has been released! Downloads: https://github.com/TASVideos/BizHawk/releases/tag/2.3.1 Tons of fixes and updates to cores and tools (took us only half a year). See the release notes for details http://tasvideos.org/BizHawk/ReleaseHistory.html#Bizhawk231
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting. If TASing is meta-play, TASVideos Movie Rules are meta-meta-play!
Experienced Forum User
Joined: 6/16/2011
Posts: 48
Unless I'm doing something wrong, attempting to set a custom resolution in GLideN64 just sets it back to 2880x2160 when you reload the settings. Can anyone confirm this?
Experienced Forum User, Published Author, Senior Judge, Senior Publisher (1423)
Joined: 4/17/2010
Posts: 10321
Location: RU
NES TAS of 2011
You're right. What res are you setting btw?
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting. If TASing is meta-play, TASVideos Movie Rules are meta-meta-play!
Alyosha
He/Him
Editor, Experienced Forum User, Published Author (3927)
Joined: 11/30/2014
Posts: 2388
Location: US
NES TASer of 2015
SubNESHawk is now available as a core option in BizHawk. It is a subframe input capable NES core. It offers poll based input as well as ppu-cycle level reset timing. This enables some long sought after TASes to be made such as SMB3 DMC glitch to credits. To use SubNESHawk, first select NEShawk as your NES core (Config->Cores->NES->NESHawk), then check the 'SubNESHawk' option in Config->Cores. If you want to TAS NES games as normal, you can still use ordinary NESHawk just by not having the SubNESHawk box checked. NOTE: This core is not meant for casual play. Consider it TAS only. NOTE2: Movies from this are not yet fully supported on TASVideos, and the core is still marked as experimental. If you have any questions comments or suggestions feel free to post or pm me.
PikachuMan
He/Him
Experienced Forum User, Limited User, Published Author (14)
Joined: 9/12/2009
Posts: 1510
Location: Wichita
I would like to see a new update to the 32-bit version of BizHawk along with a new update to the 64-bit version of BizHawk.
A Gameboy saveram splitter/combiner tool will be very useful for the 1st gen and 2nd gen Pokémon games.
Experienced Forum User, Published Author (1412)
Joined: 10/12/2011
Posts: 5898
Location: The land down under.
PSX TASer of 2016
PikachuMan wrote:
I would like to see a new update to the 32-bit version of BizHawk along with a new update to the 64-bit version of BizHawk.
The latest update came out a month ago. You need to learn patience. (and 32bit is fine for its date) And there's a lot of work and milestones being covered at the moment. It's an emulator first and foremost which means it needs to also do these: Updating the PlayStatoin Core (Octoshock) Updating the Sega Saturn Core (Saturnus) Updating the WonderSwan Core (Cygne) Even though it's not listed. Update the Game Boy Advance Core (mGBA) as well as fix the mGBA core. Hows about that Game Gear Linking that's being worked on. Any of the N64 Issues How about a feature? Multidisk Support for MegaCD/SegaCD How's about another Operating system? Linux Compatibility which is almost complete.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. These colours are pretty neato, and also these.
PikachuMan
He/Him
Experienced Forum User, Limited User, Published Author (14)
Joined: 9/12/2009
Posts: 1510
Location: Wichita
Game Genie code support for SNES and Sega Genesis needs to be implemented. I'll have to use SNES9x and Gens for the time being 'cause they have auto-hold. I'll have to map it to Shift or Control. Plus they have Game Genie code support. These emulators are still being used for TASing Super Mario World and Sonic the Hedgehog. Nothing more. (The continuances for SNES9x and Gens have their respective pages when available)
A Gameboy saveram splitter/combiner tool will be very useful for the 1st gen and 2nd gen Pokémon games.
fsvgm777
She/Her
Experienced Forum User, Published Author, Senior Publisher (261)
Joined: 5/28/2009
Posts: 1074
Location: Luxembourg
PikachuMan wrote:
These emulators are still being used for TASing Super Mario World and Sonic the Hedgehog. Nothing more. (The continuances for SNES9x and Gens have their respective pages when available)
This is outright false information right there. The SMW TASers (at least those I know of) have long moved on to either BizHawk or lsnes. Gens is used for Sonic, because the Sonic TAS tools are currently only available on Gens. Furthermore, there's no continuance page for Gens, because it's currently accepted, but not preferred. Finally, the continuance page for Snes9X only applies to 1.43, not 1.51 and newer.
Twitter account - Steam Community page Oh, I'm just a concerned observer. Memory, GoddessMaria and Samsara are my sisters~♥
Editor, Experienced Forum User
Joined: 3/31/2010
Posts: 1466
Location: Not playing Puyo Tetris
PikachuMan wrote:
Game Genie code support for SNES and Sega Genesis needs to be implemented. I'll have to use SNES9x and Gens for the time being 'cause they have auto-hold. I'll have to map it to Shift or Control. Plus they have Game Genie code support. These emulators are still being used for TASing Super Mario World and Sonic the Hedgehog. Nothing more. (The continuances for SNES9x and Gens have their respective pages when available)
These codes were supported in older BizHawk versions but due to changes in how RAM editing was handled (Cheats do this) and especially access to particular Memory Domains (such as the Cart Bus) Game Genie support is no longer supported.
When TAS does Quake 1, SDA will declare war. The Prince doth arrive he doth please.
adelikat
He/Him
Emulator Coder, Published Author, Site Admin (4250)
Joined: 11/3/2004
Posts: 4655
Location: Tennessee
TASer of 2010NES TASer of 2010DS TASer of 2010Arcade TAS of 2010NES TASer of 2008NES TAS of 2008Funny TAS of 2008TASer of 2007NES TASer of 2007Funny TAS of 2007
PikachuMan wrote:
I'll have to use SNES9x and Gens for the time being 'cause they have auto-hold.
BizHawk has auto-hold
Pimpin' ain't easy My Homepage My TAS projects
DrD2k9
He/Him
Editor, Experienced Forum User, Published Author (2021)
Joined: 8/21/2016
Posts: 894
Location: US
Exotic platforms TASer of 2020First edition TAS of 2020Gameboy TAS of 2020Exotic platforms TASer of 2019Computer TASer of 2017
Feature/Core request: Commodore VIC-20 support.
Experienced Forum User
Joined: 7/17/2012
Posts: 469
Location: Switzerland
DrD2k9 wrote:
Feature/Core request: Commodore VIC-20 support.
I can only support your request, and the support of the mouse on Virtu and the support of other models as it is already the case on AppleWin or others. And for other cores/machines Altirra Atari 400/800, 1200XL, 600/800XL, 130XE, XEGS, 5200 or WinArcadia (Emerson Arcadia 2001 and some other) and WinUAE or MESS Redump. And many more... And I also hope to be able to benefit soon from the core developed by Asnivor for CPCHawk
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Alyosha
He/Him
Editor, Experienced Forum User, Published Author (3927)
Joined: 11/30/2014
Posts: 2388
Location: US
NES TASer of 2015
Unless another Asnivor pops up, I don't think you'll find much developer interest in older systems. However, if you are interested in such systems, I can help with core building within BizHawk. The VIC-20 for example is a pretty standard and simple design, and uses the 6502 CPU which we already have. If you aren't interested in the inner workings of BizHawk's infrastructure, I could even put together a blank core that is already hooked up, so you would basically just be responsible for putting together audio, video, and system layout stuff (which is admittedly the bulk of the work, but is really simple in terms of actual coding.) It's a great way to learn about console design and even basic coding. Porting existing emulator's is out of my capability though, so I can't help there.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author (3927)
Joined: 11/30/2014
Posts: 2388
Location: US
NES TASer of 2015
I've started working on a vectrex core. A lot of components already exist as parts of other cores so development shouldn't be that hard. the toughest part is the MC6809 cpu which is pretty involved for an 8 bit cpu but shouldn't be too much of a hurdle. Probably not a core with much utility but i wanted to try something a bit different.
adelikat
He/Him
Emulator Coder, Published Author, Site Admin (4250)
Joined: 11/3/2004
Posts: 4655
Location: Tennessee
TASer of 2010NES TASer of 2010DS TASer of 2010Arcade TAS of 2010NES TASer of 2008NES TAS of 2008Funny TAS of 2008TASer of 2007NES TASer of 2007Funny TAS of 2007
You rock! Super hyped
Pimpin' ain't easy My Homepage My TAS projects
Alyosha
He/Him
Editor, Experienced Forum User, Published Author (3927)
Joined: 11/30/2014
Posts: 2388
Location: US
NES TASer of 2015
I haven't had all tat much time to work on things lately, but I thought I'd mention what Vectrex progress has been made. the MC6809 is up and running and I can currently run through much of the vectrex BIOS code. It doesn't display anything or have any input yet, but I'll be incrementally working on that. Also I haven't forgotten about Game Gear linking, just haven't gotten around to finishing it up yet.
EZGames69
He/They
Experienced Forum User, Published Author, Publisher (4046)
Joined: 5/29/2017
Posts: 2416
Location: Marquette MI
TASer of 2020SNES TASer of 2020Sega TASer of 2020TASer of 2019Sega TASer of 2019Exotic platforms TAS of 2018
When do you think we can start testing out tasing on it? I’d like to get an early start on a tas for this core. (Will definitely make adjustments to the movie with each update, until 2.4 is released)
[14:15] <feos> WinDOES what DOSn't 12:33:44 PM <Mothrayas> "I got an oof with my game!" Mothrayas Today at 12:22: <Colin> thank you for supporting noble causes such as my feet MemoryTAS Today at 11:55 AM: you wouldn't know beauty if it slapped you in the face with a giant fish [Today at 4:51 PM] Mothrayas: although if you like your own tweets that's the online equivalent of sniffing your own farts and probably tells a lot about you as a person MemoryTAS Today at 7:01 PM: But I exert big staff energy honestly lol Samsara Today at 1:20 PM: wouldn't ACE in a real life TAS just stand for Actually Cease Existing
Alyosha
He/Him
Editor, Experienced Forum User, Published Author (3927)
Joined: 11/30/2014
Posts: 2388
Location: US
NES TASer of 2015
Hard to say, I won’t have much time in the next two weeks so only a little progress might get made during that time . I’d say there is a good chance of it being more or less done by June though
EZGames69
He/They
Experienced Forum User, Published Author, Publisher (4046)
Joined: 5/29/2017
Posts: 2416
Location: Marquette MI
TASer of 2020SNES TASer of 2020Sega TASer of 2020TASer of 2019Sega TASer of 2019Exotic platforms TAS of 2018
Alright! Shoot me a PM when you would like me to test the game out.
[14:15] <feos> WinDOES what DOSn't 12:33:44 PM <Mothrayas> "I got an oof with my game!" Mothrayas Today at 12:22: <Colin> thank you for supporting noble causes such as my feet MemoryTAS Today at 11:55 AM: you wouldn't know beauty if it slapped you in the face with a giant fish [Today at 4:51 PM] Mothrayas: although if you like your own tweets that's the online equivalent of sniffing your own farts and probably tells a lot about you as a person MemoryTAS Today at 7:01 PM: But I exert big staff energy honestly lol Samsara Today at 1:20 PM: wouldn't ACE in a real life TAS just stand for Actually Cease Existing