Post subject: Re: Absolute Zero vs Invisible Emulation
nymx
He/Him
Editor, Judge, Expert player (2234)
Joined: 11/14/2014
Posts: 932
Location: South Pole, True Land Down Under
feos wrote:
The only example is the camhack script for Sonic Advance. InvisibleEmulation does the same thing as frameskip, it's just not wired up for all cores. And it's not meant to speed you up, it's meant to disable screen updates for a bit, like camhack requires.
Then in that case, would it be of interest to add a lua command to activate the 3 different levels of display used in the GUI? Something like: client.EmulationDisplay(0) = Full client.EmulationDisplay(1) = Minimal client.EmulationDisplay(2) = Absolute Zero I gave it a look in the bizhawk solution and I need to dedicate some time to figuring out the architecture of this app. If I figure out how to add that lua function, can someone upload it into GIT? Otherwise, is any developer interested in adding this feature?
I recently discovered that if you haven't reached a level of frustration with TASing any game, then you haven't done your due diligence. ---- SOYZA: Are you playing a game? NYMX: I'm not playing a game, I'm TASing. SOYZA: Oh...so its not a game...Its for real? ---- Anybody got a Quantum computer I can borrow for 20 minutes? Nevermind...eien's 64 core machine will do. :) ---- BOTing will be the end of all games. --NYMX
nymx
He/Him
Editor, Judge, Expert player (2234)
Joined: 11/14/2014
Posts: 932
Location: South Pole, True Land Down Under
I have put in a request for this enhancement. Hope that this is also helpful to others, if it is considered for development.
I recently discovered that if you haven't reached a level of frustration with TASing any game, then you haven't done your due diligence. ---- SOYZA: Are you playing a game? NYMX: I'm not playing a game, I'm TASing. SOYZA: Oh...so its not a game...Its for real? ---- Anybody got a Quantum computer I can borrow for 20 minutes? Nevermind...eien's 64 core machine will do. :) ---- BOTing will be the end of all games. --NYMX
Joined: 10/30/2020
Posts: 1
I don't know if it is the correct location but there is this error message when opening the Rockman X2 ROM in BizHawk 2.5.2. Apparently the game is still working (I didn't do a long test) and it only happens when I use the BSNES core. https://imgur.com/a/Q9HKbui
Editor, Emulator Coder, Site Developer
Joined: 5/11/2011
Posts: 1108
Location: Murka
Bandaia wrote:
I don't know if it is the correct location but there is this error message when opening the Rockman X2 ROM in BizHawk 2.5.2. Apparently the game is still working (I didn't do a long test) and it only happens when I use the BSNES core. https://imgur.com/a/Q9HKbui
Did you read the message? You need the bios/firmware file. Not a bug.
MarbleousDave
He/Him
Player (13)
Joined: 9/12/2009
Posts: 1559
Sometimes going to the play movie menu displays an error. It likely happens when a DS game is loaded first. ************** Exception Text ************** System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: VirtualAlloc() returned NULL at BizHawk.BizInvoke.MemoryBlockWindowsPal..ctor(UInt64 size) at BizHawk.BizInvoke.MemoryBlock..ctor(UInt64 size) at BizHawk.Client.Common.ZwinderBuffer..ctor(IRewindSettings settings) at BizHawk.Client.Common.ZwinderStateManager.UpdateBuffer(ZwinderBuffer buffer, RewindConfig newConfig, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager.UpdateSettings(ZwinderStateManagerSettings settings, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager..ctor(ZwinderStateManagerSettings settings, Func`2 reserveCallback) at BizHawk.Client.Common.TasMovie..ctor(IMovieSession session, String path) at BizHawk.Client.Common.MovieSession.Get(String path) at BizHawk.Client.EmuHawk.PlayMovie.PreLoadMovieFile(HawkFile hf, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.AddMovieToList(String filename, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.<>c__DisplayClass20_0.<ScanFiles>b__0(Int32 i) at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1() at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask) at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>) --- End of inner exception stack trace --- at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken) at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally) at System.Threading.Tasks.Parallel.For(Int32 fromInclusive, Int32 toExclusive, Action`1 body) at BizHawk.Client.EmuHawk.PlayMovie.ScanFiles() at BizHawk.Client.EmuHawk.PlayMovie.PlayMovie_Load(Object sender, EventArgs e) at System.Windows.Forms.Form.OnLoad(EventArgs e) at System.Windows.Forms.Form.OnCreateControl() at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible) at System.Windows.Forms.Control.CreateControl() at System.Windows.Forms.Control.WmShowWindow(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Form.WmShowWindow(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) ---> (Inner Exception #0) System.InvalidOperationException: VirtualAlloc() returned NULL at BizHawk.BizInvoke.MemoryBlockWindowsPal..ctor(UInt64 size) at BizHawk.BizInvoke.MemoryBlock..ctor(UInt64 size) at BizHawk.Client.Common.ZwinderBuffer..ctor(IRewindSettings settings) at BizHawk.Client.Common.ZwinderStateManager.UpdateBuffer(ZwinderBuffer buffer, RewindConfig newConfig, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager.UpdateSettings(ZwinderStateManagerSettings settings, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager..ctor(ZwinderStateManagerSettings settings, Func`2 reserveCallback) at BizHawk.Client.Common.TasMovie..ctor(IMovieSession session, String path) at BizHawk.Client.Common.MovieSession.Get(String path) at BizHawk.Client.EmuHawk.PlayMovie.PreLoadMovieFile(HawkFile hf, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.AddMovieToList(String filename, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.<>c__DisplayClass20_0.<ScanFiles>b__0(Int32 i) at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1() at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask) at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<--- ---> (Inner Exception #1) System.InvalidOperationException: VirtualAlloc() returned NULL at BizHawk.BizInvoke.MemoryBlockWindowsPal..ctor(UInt64 size) at BizHawk.BizInvoke.MemoryBlock..ctor(UInt64 size) at BizHawk.Client.Common.ZwinderBuffer..ctor(IRewindSettings settings) at BizHawk.Client.Common.ZwinderStateManager.UpdateBuffer(ZwinderBuffer buffer, RewindConfig newConfig, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager.UpdateSettings(ZwinderStateManagerSettings settings, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager..ctor(ZwinderStateManagerSettings settings, Func`2 reserveCallback) at BizHawk.Client.Common.TasMovie..ctor(IMovieSession session, String path) at BizHawk.Client.Common.MovieSession.Get(String path) at BizHawk.Client.EmuHawk.PlayMovie.PreLoadMovieFile(HawkFile hf, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.AddMovieToList(String filename, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.<>c__DisplayClass20_0.<ScanFiles>b__0(Int32 i) at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1() at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask) at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<--- ---> (Inner Exception #2) System.InvalidOperationException: VirtualAlloc() returned NULL at BizHawk.BizInvoke.MemoryBlockWindowsPal..ctor(UInt64 size) at BizHawk.BizInvoke.MemoryBlock..ctor(UInt64 size) at BizHawk.Client.Common.ZwinderBuffer..ctor(IRewindSettings settings) at BizHawk.Client.Common.ZwinderStateManager.UpdateBuffer(ZwinderBuffer buffer, RewindConfig newConfig, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager.UpdateSettings(ZwinderStateManagerSettings settings, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager..ctor(ZwinderStateManagerSettings settings, Func`2 reserveCallback) at BizHawk.Client.Common.TasMovie..ctor(IMovieSession session, String path) at BizHawk.Client.Common.MovieSession.Get(String path) at BizHawk.Client.EmuHawk.PlayMovie.PreLoadMovieFile(HawkFile hf, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.AddMovieToList(String filename, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.<>c__DisplayClass20_0.<ScanFiles>b__0(Int32 i) at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1() at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask) at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<--- ---> (Inner Exception #3) System.InvalidOperationException: VirtualAlloc() returned NULL at BizHawk.BizInvoke.MemoryBlockWindowsPal..ctor(UInt64 size) at BizHawk.BizInvoke.MemoryBlock..ctor(UInt64 size) at BizHawk.Client.Common.ZwinderBuffer..ctor(IRewindSettings settings) at BizHawk.Client.Common.ZwinderStateManager.UpdateBuffer(ZwinderBuffer buffer, RewindConfig newConfig, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager.UpdateSettings(ZwinderStateManagerSettings settings, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager..ctor(ZwinderStateManagerSettings settings, Func`2 reserveCallback) at BizHawk.Client.Common.TasMovie..ctor(IMovieSession session, String path) at BizHawk.Client.Common.MovieSession.Get(String path) at BizHawk.Client.EmuHawk.PlayMovie.PreLoadMovieFile(HawkFile hf, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.AddMovieToList(String filename, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.<>c__DisplayClass20_0.<ScanFiles>b__0(Int32 i) at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1() at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask) at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<--- ---> (Inner Exception #4) System.InvalidOperationException: VirtualAlloc() returned NULL at BizHawk.BizInvoke.MemoryBlockWindowsPal..ctor(UInt64 size) at BizHawk.BizInvoke.MemoryBlock..ctor(UInt64 size) at BizHawk.Client.Common.ZwinderBuffer..ctor(IRewindSettings settings) at BizHawk.Client.Common.ZwinderStateManager.UpdateBuffer(ZwinderBuffer buffer, RewindConfig newConfig, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager.UpdateSettings(ZwinderStateManagerSettings settings, Boolean keepOldStates) at BizHawk.Client.Common.ZwinderStateManager..ctor(ZwinderStateManagerSettings settings, Func`2 reserveCallback) at BizHawk.Client.Common.TasMovie..ctor(IMovieSession session, String path) at BizHawk.Client.Common.MovieSession.Get(String path) at BizHawk.Client.EmuHawk.PlayMovie.PreLoadMovieFile(HawkFile hf, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.AddMovieToList(String filename, Boolean force) at BizHawk.Client.EmuHawk.PlayMovie.<>c__DisplayClass20_0.<ScanFiles>b__0(Int32 i) at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1() at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask) at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<---
Skilled player (1652)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
Close ROM no longer releases the assets to Windows. For example, when I recompile my CD, it used to just require a "Close ROM" to allow me to overwrite it. Now, it won't even allow overwrite without completely shutting BizHawk down.
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Evan0512
He/Him
Joined: 10/18/2017
Posts: 171
Location: San Francisco
This happened when I play Ecco the Dolphin in my computer. Without pressing anything, there is a bug detected. The game stopped, it doesn't respond, and the app crashes because it stopped working. My computer has 2 core 2.7 GHz CPU and 4GB memory, as I was having concerns recording movies on NES and Genesis games. Also, it happened almost every time while recording Genesis games. It was running on version 2.5.2 and it wasn’t fixed.
Planned runs: Marble Madness (Arcade, Genesis J, GG/SMS) Proposed: Ecco the Dolphin (Genesis, GG/SMS, CD: regular, camera freeze) Ecco: The Tides of Time (Genesis, GG/SMS, CD; normal mode) Mario Kart DS (all cups, all missions) In progress: Grand Poo World 3 (all exits hard mode)
Post subject: Odyssey2 System Bus only shows ROM.
Joined: 5/4/2012
Posts: 10
The System Bus memory domain in the Hex Editor and RAM Search for the Odyssey2 emulator appears to only show the ROM memory domain. Is this a mistake? Shouldn't the system bus include the RAM?
Post subject: Re: Odyssey2 System Bus only shows ROM.
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3821)
Joined: 11/30/2014
Posts: 2829
Location: US
TheAlmightyGuru wrote:
The System Bus memory domain in the Hex Editor and RAM Search for the Odyssey2 emulator appears to only show the ROM memory domain. Is this a mistake? Shouldn't the system bus include the RAM?
No, system bus is what is visible to the 8048 from the PC register, which in this case is just whatever ROM banks are currently mapped in and the BIOS. RAM, ppu, etc are accessed with port R/W functions. I guess I could make a separate 'port bus' domain but it would be kind of messy, and even that would miss CPU RAM which is internal to the cpu. So, I think in this case it's better just to use the individual domains.
Post subject: Re: Odyssey2 System Bus only shows ROM.
Joined: 5/4/2012
Posts: 10
Alyosha wrote:
No, system bus is what is visible to the 8048 from the PC register, which in this case is just whatever ROM banks are currently mapped in and the BIOS. RAM, ppu, etc are accessed with port R/W functions. I guess I could make a separate 'port bus' domain but it would be kind of messy, and even that would miss CPU RAM which is internal to the cpu. So, I think in this case it's better just to use the individual domains.
Very interesting! I didn't know that about the Odyssey2. Thanks for the answer!
MarbleousDave
He/Him
Player (13)
Joined: 9/12/2009
Posts: 1559
I tried to load a text table, got this error: ************** Exception Text ************** System.FormatException: Input string was not in a correct format. at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) at BizHawk.Client.EmuHawk.HexEditor.LoadTable(String path) at BizHawk.Client.EmuHawk.HexEditor.LoadTableFileMenuItem_Click(Object sender, EventArgs e) at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e) at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e) at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e) at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e) at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea) at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ToolStrip.WndProc(Message& m) at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Post subject: Bizhawk closes suddenly when I record a movie.
xRavenXP
He/Him
Joined: 4/15/2012
Posts: 116
Location: Brazil
I would like to report a serious problem that I've been facing with Bizhawk, especially version 2.5.2: when I play a SNES game (or other platforms) recording a movie and suddenly I leave the window stopped (whether minimized or not), the emulator closes automatically without any warning and I lose the progress of the movie I'm recording. I almost always have to give "Stop Movie" to not lose the progress of the movie I'm recording. This is extremely uncomfortable. I did not see this problem with other versions of the emulator, not even when I recorded huge PS1 games and have been facing this automatic shutdown problem lately. For this reason I have preferred to record SNES games using Snes9x 1.60 (except PAL games, which come out without sound in this version of Snes9x and for these European games I need to use Bizhawk). What has caused these sudden closings of Bizhawk while I shoot a movie?
I love games and love to record videos (longplays). Visit my Youtube channel https://www.youtube.com/user/xRavenXP
Active player (458)
Joined: 1/28/2008
Posts: 143
Location: Germany
i got the same problem as xRavenXP - the emulator randomly closes without any warning "bizhawk.exe has stopped working"
2-do: Smurfs Nightmare, The (EU) GBC 10% fin : Mega Man: Dr. Wily's Revenge improvement: submitted Mega Man II Improvement: submitted Mega Man IV Improvement: submitted Mega Man V Improvement: submitted future plan: -n-
MarbleousDave
He/Him
Player (13)
Joined: 9/12/2009
Posts: 1559
Single instance mode crashes emulator System.InvalidOperationException: window title can only be changed by calling UpdateWindowTitle (which calls WindowTitle getter) at BizHawk.Client.EmuHawk.FormBase.set_Text(String value) at BizHawk.Client.EmuHawk.Program.SingleInstanceController.OnCreateMainForm() at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun() at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel() at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine) at BizHawk.Client.EmuHawk.Program.SubMain(String[] args)
MarbleousDave
He/Him
Player (13)
Joined: 9/12/2009
Posts: 1559
Multi disk bundler is broken in 2.6. Can bundle in 2.6 but is unusable even in older versions. Can bundle in 2.5.2 and is usable even in 2.6 if that makes sense. It's broken in 2.6 so it needs to be fixed. Version 2.6.0a maybe?
xRavenXP
He/Him
Joined: 4/15/2012
Posts: 116
Location: Brazil
Tremane wrote:
i got the same problem as xRavenXP - the emulator randomly closes without any warning "bizhawk.exe has stopped working"
In my case, this problem was happening with Bizhawk 2.5.2 in BSNES Core. And when the emulator closed, it didn't warn me that there was any error or anything like that and that made me lose the progress of any movie I was recording. I don't know if this was a specific problem with version 2.5.2. The luck is that the version 2.6.0 did not give any problem of the emulator closing alone, what gave me more security to record SNES games in it. I will do more tests, but I believe that this problem I had will not occur with version 2.6 and others that are released.
I love games and love to record videos (longplays). Visit my Youtube channel https://www.youtube.com/user/xRavenXP
MarbleousDave
He/Him
Player (13)
Joined: 9/12/2009
Posts: 1559
The plus/equals key isn't working. It's assigned to increase speed. When I press it, nothing happens. It and the pause key need to be fixed.
Samsara
She/They
Senior Judge, Site Admin, Expert player (2238)
Joined: 11/13/2006
Posts: 2822
Location: Northern California
Already reported and fixed in dev. In the meantime, just reassign the hotkeys that aren't working.
TASvideos Admin and acting Senior Judge 💙 Currently unable to dedicate a lot of time to the site, taking care of family. Now infrequently posting on Bluesky
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
Joined: 6/16/2011
Posts: 48
Trying to load a Sega CD ROM in 2.6.0 gives me an exception: A core accepted the ROM, but threw an exception while loading it: System.ArgumentException: Illegal characters in path. I'll leave the rest of the trace out for brevity, but this didn't used to happen--am I being dumb, or is something broken?
Editor, Emulator Coder, Site Developer
Joined: 5/11/2011
Posts: 1108
Location: Murka
RedGreenSonic wrote:
Trying to load a Sega CD ROM in 2.6.0 gives me an exception: A core accepted the ROM, but threw an exception while loading it: System.ArgumentException: Illegal characters in path. I'll leave the rest of the trace out for brevity, but this didn't used to happen--am I being dumb, or is something broken?
Sounds like a real regression.
TiKevin83
He/Him
Ambassador, Moderator, Site Developer, Player (155)
Joined: 3/17/2018
Posts: 358
Location: Holland, MI
https://github.com/TASVideos/BizHawk/issues/2587 Almost certainly the same issue - already fixed
Joined: 6/16/2011
Posts: 48
Yeah, just tested on latest dev build and it works fine. Thanks for the heads-up.
Active player (458)
Joined: 1/28/2008
Posts: 143
Location: Germany
wanted to TAS some good old "rockman world 3.gb" but the emulator crashes while loading with the following error: https://imgur.com/a/mCWJFjf emulator used: BizHawk 2.6 on windows 10
2-do: Smurfs Nightmare, The (EU) GBC 10% fin : Mega Man: Dr. Wily's Revenge improvement: submitted Mega Man II Improvement: submitted Mega Man IV Improvement: submitted Mega Man V Improvement: submitted future plan: -n-
Emulator Coder, Judge, Experienced player (729)
Joined: 2/26/2020
Posts: 779
Location: California
Tremane wrote:
wanted to TAS some good old "rockman world 3.gb" but the emulator crashes while loading with the following error: https://imgur.com/a/mCWJFjf emulator used: BizHawk 2.6 on windows 10
https://github.com/TASVideos/BizHawk/issues/2587
This bug will not be present in the next release. Until then, a workaround is to put the rom in a .zip archive and load that. --yoshi
Active player (458)
Joined: 1/28/2008
Posts: 143
Location: Germany
oh man, i looked to casually then, very sorry! thanks casual! <3
2-do: Smurfs Nightmare, The (EU) GBC 10% fin : Mega Man: Dr. Wily's Revenge improvement: submitted Mega Man II Improvement: submitted Mega Man IV Improvement: submitted Mega Man V Improvement: submitted future plan: -n-