When they had to shift to x86 there was more to it than MS being jerks. At the time, hardware companies would write the device drivers for Windows, but nothing else. If you were an alternative OS you had to provide your own. And since the commodity x86 world was such a clusterfuck of barely compatible hardware, Be had to spend a ton of effort just keeping up with that noise.
Linux had a similar problem but had the advantage of open source. Random people would cobble together support for things and stick it online.