Всем спасибо! совместными усилиями мы это сделали!
Добавлено через 11 минут
Весь прикол похоже в том, что ВМ80 в командах вычитания сначало внутренне получает дополнительный код вычитаемого, а потом вместо вычитания делает сложение. Наверное к ВМ1 это тоже относится. Кстати косяк с флагом MF в ВМ1 действительно был, но он сидел в команде POP PSW.