Sorry, posted too early - the above doesn't actually work as the generated files are wrong and cannot be simulated

On my desktop, simulating a PBP program then viewing Program Memory gives

Line:Address:Opcode:Label
1:0000:EF02:GOTO INIT

on my laptop, you get

GOTO 0 instead, so it instead becomes an endless loop. The INIT location is still shown elsewhere in the code, but the instructions are not updated to match!