ABS/XY: [ R1, R2 -> R0 ] [/ R3, R4 /]

        DEC     R3, R1, R2, DT_SIGNED                                /* R3 = (- R2), R1, +-     */
        CR      R0, R3, 0, CR_GE, DT_SIGNED                          /* R0 = [>= 0], R3, +-     */

IF:     BZ R0 ->.ELSE                                                /* if (![= 0], R0) {       */
                SELECT R0, R3                                        /*     R0 = R3             */
        FWD ->.END                                                   /* } else {                */
ELSE:           LD R4, -1                                            /*     R4 = -1             */
                MUL R0, R3, R4, DT_SIGNED                            /*     R0 = (* R4), R3, +- */
END:    ;                                                            /* }                       */

RET
