> Still really odd that i couldn't just take any ROM and install it on my current phone
This is because ARM uses device trees to know what hardware's on the device, versus x86 which discovers it at boot. Every rom has to be specifically built for that exact device model.