aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/msp430/words/sm-rem.asm
blob: 541508092238fa3784997f4be0d4d879282b99fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
;C SM/REM   d1 n1 -- n2 n3   symmetric signed div
;   2DUP XOR >R              sign of quotient
;   OVER >R                  sign of remainder
;   ABS >R DABS R> UM/MOD
;   XT_SWAP R> ?NEGATE
;   XT_SWAP R> ?NEGATE ;
; Ref. dpANS-6 section 3.2.2.1.
    HEADER(SMSLASHREM,6,"sm/rem",DOCOLON)
        DW XT_2DUP,XT_XOR,XT_TO_R,XT_OVER,XT_TO_R
        DW XT_ABS,XT_TO_R,XT_DABS,XT_R_FROM,XT_UMSLASHMOD
        DW XT_SWAP,XT_R_FROM,XT_QNEGATE,XT_SWAP,XT_R_FROM,XT_QNEGATE
        DW XT_EXIT