Hey, I remember getting something like that:
Post #429629http://imgur.com/ceVJHfR
No idea why, but it "disappears" when I deleted everything and redownloaded BizHawk. It comes back every now and then however, and I have no clue why.
Another problem is happening to me right now in 1.11.6.
I open Bizhawk, load a gb game and go to GB>GPU viewer, it throws an exception. GPU Viewer worked yesterday, now it doesn't anymore even after restarting the emu.
Well I did carry over my ini from 1.11.5 to 1.11.6 but that was ages ago. I last used GPU viewer successfully when we talked about Gremlin 2 on irc.
Deleting the ini fixed it.
Ok I looked into compiling Bizhawk so now I can test the latest build for bugs.
outdated About info
When opening Help > About, it brings up that one joke screen with flashy animations. In the top left corner is a "BizBox" button (for some reason) which brings up a real About window. But that window tells it's 1.11.4 from December 20 2015.
Lua console bug
The bug I described here still exists.
Capture OSD inconcistencies
OSD does not behave consistently between saving avi and saving a screenshot. I mentioned this to zeromus already.
Capture OSD off
Capture OSD on
Saving AVI/GIF
Game screen only
Game screen
+ game padding
+ client padding
+ all text rendered by lua (except gui.text) or the client
Saving Screenshot
Game screen
+ game padding
Game screen
+ game padding
+ client padding
+ all text rendered by lua (including gui.text) or the client
I'm saying that I think the way avi/screenshots are saved should be the same between "OSD on" and "OSD off". Also, I don't see why gui.text is treated differently.
GB GPU viewer exception
I stumbled across the exception I explained here on my interim build. I hadn't copypasted any ini file, but I did change some hotkeys/settings. When I find out what causes it I will post again.
The GB GPU viewer did work right after I first started the interim build. After I ran the above tests, I opened it again and then it gave me the error.
I've explained to you why gui.text is different a billion times. It just is different, and will always be. It creates a label through the same system that the FPS and other stuff uses. If you don't like that, there's other functions for drawing text. If you dont like those other functions for drawing text, then write a bug about why they're deficient.
If it's the same as FPS/Framecount/Input display, then why are those displayed in the "Saving AVI, OSD on" case but gui.text isn't?
And you haven't explained why gui.text differs between "Saving AVI, OSD on" and "Saving Screenshot, OSD on". And if you have, I can't remember.
Here is the About I'm getting
It seems it's only the 1.11.4 and December part that's out of date.
If you compiled the latest git code, it isn't from december 2015. its from april 2016 and contains a bug because there's 100000000000000 places dates and versions are written and it's impossible to keep them all up to date.
gui.text is different between screenshot and av dump because gui.text gets cleared once a frame, at some point, and screenshots and av dumping each occur at different points, and if those points are in an unfortunate order, there's a mismatch.
Don't make the mistake of trying to _understand_ this. It's all overly complicated and _broken_. There's no sense to it right now.
I think the GB GPU viewer crash is related to your using a non-english operating system, which is always a mistake unless you just enjoy having buggy software (now I see why it happened for a russian guy too). I committed a fix for it, but I couldn't test it, since I don't enjoy having my OS show me WELKOMMEN DAS WINDOWS and then crash whenever I run anything.
Why don't you save version info to one place instead of 100000000000000 places?
GB GPU viewer crash still happens on latest build, when saving avi, then reopening and opening gpu viewer. It happens because my directory has äöü characters in it. It doesn't happen when I save the avi elsewhere.
because it's hard.
sorry, youll have to be more specific. I can't make it happen. which directory has the äöü in it? saving the avi where? It's hard to believe the gpu viewer cares what your directories are called. Avi codecs on the other hand might choke on äöü. After we smoke this out, you should stop using directories with spaces or äöü unless you really like hitting one crashing bug after another.
When I save avi to
C:\Users\Name that contains ö and space\Desktop
then reopen emu, and open gpu viewer, it gives the error.
Then I close emu, delete the ini, reopen emu and save avi to
D:\
Reopen emu, gpu viewer works.
The ö and space in the username wasn't my doing. I'm aware it causes problems and it has caused problems for me in other software, but I'm currently not willing to fix it. So if you say you're not going to bother fixing it, then so be it, I guess.
ok, I had restarted my computer this morning. I tried my steps on the same build I compiled (the one where you committed something about region/culture setting). Now the crash doesn't occur for avi saving, but for screenshot saving it does. I don't know why it changed.
This is what I assume is the stacktrace. I took the liberty to translate german text to english, and censor out my username:
************** Exception text **************
System.Exception: 0, 255, 0 is not a valid value for Int32. ---> System.FormatException: the input character sequence had the wrong 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 System.ComponentModel.Int32Converter.FromString(String value, NumberFormatInfo formatInfo)
at System.ComponentModel.BaseNumberConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
--- end of internal exception stacktrace ---
at System.ComponentModel.BaseNumberConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
at System.Drawing.ColorConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
at BizHawk.Client.EmuHawk.ToolManager.InstallCustomConfig(IToolForm tool, Dictionary`2 data) in c:\Users\name that contains ö and space\Desktop\BizhawkMaster\trunk\BizHawk.Client.EmuHawk\tools\ToolManager.cs:Zeile 329.
at BizHawk.Client.EmuHawk.ToolManager.Load[T](String toolPath, Boolean focus) in c:\Users\name that contains ö and space\Desktop\BizhawkMaster\trunk\BizHawk.Client.EmuHawk\tools\ToolManager.cs:Zeile 161.
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)
Also, when this message occurs and I open gb viewer a second time, it shows the gpu viewer window and an error message on top of it with this:
System.NullReferenceException: the target reference was not set to an object instance.
at BizHawk.Client.EmuHawk.GBGPUView.ScanlineCallback(Int32 lcdc) in c:\Users\name that contains ö and space\Desktop\BizhawkMaster\trunk\BizHawk.Client.EmuHawk\tools\GB\GBGPUView.cs:line 366.
at BizHawk.Emulation.Cores.Nintendo.Gameboy.Gameboy.FrameAdvance(Boolean render, Boolean rendersound) in c:\Users\name that contains ö and space\Desktop\BizhawkMaster\trunk\BizHawk.Emulation.Cores\Consoles\Nintendo\Gameboy\Gambatte.cs:line 366.
at BizHawk.Client.EmuHawk.MainForm.StepRunLoop_Core(Boolean force) in c:\Users\name that contains ö and space\Desktop\BizhawkMaster\trunk\BizHawk.Client.EmuHawk\MainForm.cs:line 2839.
at BizHawk.Client.EmuHawk.MainForm.ProgramRunLoop() in c:\Users\name that contains ö and space\Desktop\BizhawkMaster\trunk\BizHawk.Client.EmuHawk\MainForm.cs:line 525.
at BizHawk.Client.EmuHawk.Program.SubMain(String[] args) in c:\Users\name that contains ö and spacel\Desktop\BizhawkMaster\trunk\BizHawk.Client.EmuHawk\Program.cs:line 295.
Joined: 4/17/2010
Posts: 11475
Location: Lake Chargoggagoggmanchauggagoggchaubunagungamaugg
"loaded Assemblys" aren't needed.
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.
That first stacktrace doesn't have anything to do with a screenshot. The only part of this which makes sense is theres a certain similarity between screenshots and avi-writing. I dont think the situation is changed at all, I think its a complete random freak chance the bug has changed from screenshot associated to avi associated. In fact, I doubt it has to do with either at all and it's just a coincidence that it seems to be associated with avis or screenshots.
The second stacktrace only happens if the GB core is completely malfunctioning.
I found one other place where I needed to use an invariant culture, which might _work around_ your first problem. But considering the involvement of avi/screenshot is still a mystery, and the second problem... there's something else weird going on, I'm withholding it for now. Debugging further will require new information or teamviewering to your PC
Joined: 4/17/2010
Posts: 11475
Location: Lake Chargoggagoggmanchauggagoggchaubunagungamaugg
MUGG wrote:
Looks like gui.text always has black stroked text regardless what the background color is or whether or not the background color is transparent.
Fixed. No bg parameter anymore for this function.
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.
Just a request, but can these 2 boxes:
Please allow higher values than 0xFF/255? It works nicely for small values, but for 4 byte numbers it's far too small.