Then try going into your BIOS and find the IOMMU Mode - IOMMU is supported on LINUX based systems to convert 32bit I/O to 64bit MMIO. Set it to Enabled.
Since changing this option every boot has been successful.
I was a little confused by this post at first too, just like Mindovermaster, but I understood your meaning after reading it carefully a few times. I didn't know that changing that setting helped, or, to be honest, that it even exists on some machines. Thanks for the tip!
Technically, that's not quite right, but you have the right idea.
the reason they need to use nomodeset is because the graphics driver is not there and needs to be installed manually
You need to pass the nomodeset
switch to the Linux kernel because the graphics driver (usually the framebuffer) tries to use a resolution your video card (or, at least, your monitor) can't handle. Since you don't have the hardware to support that resolution, the screen goes black. That switch hints to the graphics driver that it should keep the current resolution (which is normally 640x480 or 800x600, depending on what your bootloader set) instead of trying to automatically determine the native resolution for your monitor. Installing the proper video driver (or, more often, the DFSG non-free firmware for your video card) resolves the issue because the video driver can properly probe your video card and monitor for supported resolutions and make a sane resolution choice.