examples/mic1/mconvert.perl produces less than perfect microcode from the authors pascal microcode. in particular PUSH, POPI, and RTRN all increment/decrement the sp in the same cycle as assigning it to mar, which requires the sp to be on the b bus. however the sp := sp + 1 reassigns 1 to the b bus (and sp on the a bus). causes problems in reading wrong address.