Deunan wrote:That's another beef I have with PC video cards. Bitplane modes. If they had to fit the VRAM into a smaller window below 1MB, why not use simple banked approach.
For various 2d effects, bitplanes are actually far easier to work with. The Commodore Amiga also uses a bitplane-based approach, albeit more advanced than EGA.
But bitplanes allow you to cleverly arrange your palette so that setting a single bit can act as a transparency effect for example.
You can also selectively update only the bitplanes that you need, instead of always having to perform a read-modify-write on entire bytes to just update the bits you're interested in.
Deunan wrote:The VGA hardware is so complicated for no good reason, one can come up with much more reasonable ways to overcome slow RAM to DAC transfers: wider words, interleaving, FIFO on the ISA side rather than direct memory access with waitstates, etc.
VGA marks the turning point: once you go up to 8 bitplanes, you basically have a 1:1 mapping of byte-to-pixel. So at this point, updating entire pixels becomes relatively simple, while at the same time 8 inidivdual bitplanes now become significant overhead.
Deunan wrote:Compared to what? NVidia?
I think even Intel has more stable drivers than AMD at least.
I have a PC at work with a Radeon R7 360, and the video card crashes a few times per week. And it crashes badly. As in: I actually need to pull the display port cable loose, then power-cycle the PC, and then plug it back in once the PC is booting, else the video simply won't come on anymore.
When I get back to the desktop, there's always a message saying that Radeon Wattman restored the default settings because it detected that the GPU became unresponsive (and I never changed any settings to begin with... my card is not overclocked or tweaked in any way).
I've updated the drivers many times, always running the latest, but so far, they never produced a driver that fixes the issue.
Prior to that I had a laptop that kept crashing on the Windows 10 1709 update. After trying many times and unplugging/uninstalling all non-essential stuff, I eventually got it to work after I ran Driver Cleaner to completely remove all AMD driver junk (just a regular uninstall wasn't enough, apparently, and these were the latest, up-to-date drivers, which were supposed to be compatible with the 1709 update).
Even so, that laptop always had problems... It had a combined AMD and Intel graphics setup, and it rarely worked when I plugged in a VGA or HDMI cable for a beamer. Never had that problem with combined NV and Intel laptops.
Another annoying thing was that the AMD control panel always crashed when you connected to your machine via Remote Desktop. Never happened on NV or Intel drivers either.
I also had a crazy snafu some years ago when I downgraded a machine from a HD5770 to an X1900XTX card.
Apparently the uninstaller left some OpenGL libraries on disk. And the shared code in the drivers for the X1900 apparently just blindly loaded these libraries when they found them on the system (as opposed to checking what hardware you run on, and what libraries you need for that specific hardware). These libraries were specific to newer cards, and they crashed with a nullpointer exception on my X1900TXT (so no sanity checks either, just blindly using a pointer that was never initialized because a previous call had failed on my hardware). This meant that OpenGL simply didn't work.
I eventually managed to get it to work after I had stepped through their driver code to see where it failed, and it dawned on me that this particular DLL shouldn't even be there in the first place. After deleting the file, OpenGL came back to life. Which made me wonder how you would ever get both these cards working in the same system. The DLL would have to be there for the HD5770, but would break OpenGL for the X1900XTX.
Just shows how retarded their driver department is.
Deunan wrote:AMD sucks at OpenGL but then OGL should've died years ago at version 3.0.
AMD also sucks at DirectX 11. They simply didn't even bother to implement the multithreading model at all. Their driver just buffers all commands and executes everything on the main thread. Then they blamed Microsoft because the API was allegedly broken. Nevermind that both NV and Intel managed to get it working just fine.
DirectX 12 and Vulkan are easier because all the complexity is shoved into the application now. Just means there's less for the driver team to screw up. Not that the drivers are actually better.
If anything, the larger gap between DX11 and DX12 on AMD merely shows how much performance they left on the table, that NV managed to extract from their DX11 driver.