Use macros to avoid massive code cuplication. I ought to read up on properly using assemblers...