Windows 10 problem with BBCSDL

Here you can talk about anything related to BBC BASIC, not covered in another category
Leo
Posts: 16
Joined: Tue 03 Apr 2018, 16:45

Windows 10 problem with BBCSDL

Post by Leo »

I have just had a major Windows 10 update and now BBCSDL is unusable because the IDE program windows are obscured by horizontal green and white stripes.

I note that there's a new program on my system (which I didn't want) called the Intel Graphics Command Centre which I thought might have something to do with this but the problem remained after I uninstalled it (I wonder what it does).

Has anyone else seen this green striping? I couldn't find anything online.

As far as I can tell only BBCSDL is affected by this - BB4W and all other programs I have seem to be behaving normally.
RichardRussell

Re: Windows 10 problem with BBCSDL

Post by RichardRussell »

Leo wrote: Tue 01 Sep 2020, 15:50 As far as I can tell only BBCSDL is affected by this - BB4W and all other programs I have seem to be behaving normally.
That will be because BBCSDL uses OpenGL. You may need to update your OpenGL drivers to ensure they are compatible with your graphics 'card'. There's nothing I can do about it because it isn't anything to do with BBCSDL or SDL2, but at a level below both.

Out of interest you say that BB4W is OK, but does the supplied BB4W OpenGL demo (EXAMPLES\GRAPHICS\OPENGL.BBC) work properly?
Leo
Posts: 16
Joined: Tue 03 Apr 2018, 16:45

Re: Windows 10 problem with BBCSDL

Post by Leo »

Yes, the OPENGL demo in BB4W works perfectly.

I certainly don't think there's anything wrong with BBCSDL because it used to work perfectly too on this machine.
The problem started after the last Win 10 update so something in my system has changed. I just don't know what.
RichardRussell

Re: Windows 10 problem with BBCSDL

Post by RichardRussell »

Leo wrote: Wed 02 Sep 2020, 09:53 The problem started after the last Win 10 update so something in my system has changed. I just don't know what.
You could look at the detailed list of updates ('Settings... Update & Security... View update history') and try to pin down which might have caused it. If you think you can identify it, you could try uninstalling it to see if it helps.

Failing that you could visit the web site of the manufacturer of your graphics card/chipset to see if there is a driver update available. You are highly unlikely to be the only one suffering this problem, especially as it is likely to be affecting video games which rely on OpenGL.

As a last resort you may need to go back to the manufacturer of your PC, if they still provide any support. Tell them that OpenGL seems to have been broken by a recent Windows update.
Leo
Posts: 16
Joined: Tue 03 Apr 2018, 16:45

Re: Windows 10 problem with BBCSDL

Post by Leo »

I finally spent some time looking into my problem with BBCSDL and Richard (as usual) ;-) was dead right about the problem being related to OpenGL.

The story:
My Windows 10 laptop gets updated almost every day (I'm running release 2004).

A recent update installed OpenGL32.dll version 10.0.19044.488 - BBCSDL doesn't run with this one.

I replaced the dll with the previous one installed which is version 10.0.18362.387 - this one doesn't work either so I reverted to the latest installed one again.

Then I downloaded version 6.3.9600.17415 ( date 5/12/2016) from some random internet site, put it into the BBCSDL program directory and it works. So I now have a quite old version of OpenGL32.dll which seems to work Ok with BBCSDL and the latest MS installed one which seems to work with other things (including BB4W).

Maybe I can find a slightly more modern working OpenGL but I have something that works for now.
I worry a bit because Process Explorer shows that BBCSDL loads both the local copy of the dll AND the one from SYSWOW64. When I close BBCSDL, both DLL's get unloaded - I admit I don't understand this.

Doubtless more to come in due course.
RichardRussell

Re: Windows 10 problem with BBCSDL

Post by RichardRussell »

Leo wrote: Wed 09 Sep 2020, 18:02 I replaced the dll with the previous one installed which is version 10.0.18362.387 - this one doesn't work either
It's not the version of OpenGL as such: I'm using 10.0.18362.387 and it's working fine. The problem will almost certainly be with your graphics hardware or its drivers: OpenGL will be assuming that it meets a certain specification, but apparently it doesn't and some feature that later versions of OpenGL rely on isn't working properly.
Leo
Posts: 16
Joined: Tue 03 Apr 2018, 16:45

Re: Windows 10 problem with BBCSDL

Post by Leo »

I hope the graphics hardware is Ok - the machine was new last December and I updated the Intel drivers before I started messing about with dll's.
I'll have another look at Intel's website (maybe not today) and see if I can glean any further info.

Thanks for the info that you are using one of the dll's that I have a problem with.
But I don't really understand how this all worked a month ago but doesn't now.
I have an Intel UHD Graphics 620 card with driver 27.20.100.8280 dated 19/05/2020.

Thanks Richard for your help.
RichardRussell

Re: Windows 10 problem with BBCSDL

Post by RichardRussell »

Leo wrote: Thu 10 Sep 2020, 09:20 the machine was new last December
Surely it's still under some kind of guarantee/warranty then, if only as prescribed by the Sale Of Goods Act (in the UK)? I'd go back to the manufacturer/vendor (they are probably jointly responsible) and get them to fix or replace it!
But I don't really understand how this all worked a month ago but doesn't now.
Sadly you can't rule out hardware failure. The tendency these days is to blame software for almost everything, and that's probably justified most of the time, but having spent 33 years as a professional electronics engineer I know only too well that hardware does occasionally fail, as it always has.

On Linux I would suggest running 'glxgears' and 'glmark2' as the two main OpenGL test/benchmarking programs, but I'm not sure that they are available for Windows.
Leo
Posts: 16
Joined: Tue 03 Apr 2018, 16:45

Re: Windows 10 problem with BBCSDL

Post by Leo »

I had another look at Intel's driver site and found a more recent driver (27.20.100.8587 dated 05/08/2020), updated my machine and BBCSDL works again using the latest OpenGL dll. I have discarded the old opengl dll I downloaded.

I assume the mismatched driver / dll combination arrived via Windows Update in late August because everything worked Ok until then. I'm relieved it's not broken hardware. The fact that the BB4W opengl demo has run in all the configurations I've had piques my engineer's curiousity. The 'unique' thing about BBCSDL on my system is that it's the only user of SDL. Could that be a factor in why the problem showed up here and nowhere else?

I couldn't find glxgears or glmark2 for Windows but I managed to build some OpenGL programs in "another language" which managed to get the fans screaming on my laptop with 100% GPU utilisation (but no framerate info).

Richard, I really appreciate your help on this, your experience and insights led me to the answer.
Thank you very much.
RichardRussell

Re: Windows 10 problem with BBCSDL

Post by RichardRussell »

Leo wrote: Fri 11 Sep 2020, 09:56The 'unique' thing about BBCSDL on my system is that it's the only user of SDL. Could that be a factor in why the problem showed up here and nowhere else?
Personally I doubt that SDL is the significant factor (as a 2D graphics API is isn't likely to be stressing the graphics hardware) but rather OpenGL itself. Direct3D is the 'native' 3D rendering backend for Windows, so the great majority of games and other 3D applications are likely to be using Direct3D rather than OpenGL and will have therefore been unaffected.

Wikipedia has a list of applications using OpenGL; do you use any of those? I wouldn't be at all surprised if some of them misbehaved too. I don't know whether it's still the case, but Google Earth used to give you the choice of using OpenGL or Direct3D in Windows.