Writing OS from scratch

Hi All,

I’ve just purchased a Rock Pi 4B v1.3 with 4GB of ram and the nvm-e extension. I am interested in writing a simple OS completely from scratch in assembly for fun. I’ve done some x86-64 assembly and am starting to learn ARMv8. Does anyone know of useful resources to share?

I was thinking it would be fastest for me to develop on my Linux desktop, use armasm to generate the binary, host a PXE server from my desktop environment and, just reboot the Rock Pi to deploy changes as I work and test things out, does that sound reasonable or would there be an more efficient way to go about it?

Also could I use QEMU to simulate the board and test locally before it arrives? If so what would be the flags that would most accurately represent the features of the board including nvm-e.

Thanks again for taking the time to reply!