; +-------------------+ ; | | ; | 020-Macros | ; | | ; +-------------------+ ; ; Macros for implementing 68020 instructions on assemblers which don't directly ; support the '020. ; ; ; In all of these macros, registers are indicated by their number only. For ; example, to implement the instruction which would normally be expressed as: ; ; MULU.L D0,D2:D1 ; ; invoke the muls3264 macro as follows: ; ; muls3264 0,2,1 ; ; ; 32x32 -> 64 multiply. ; ; Each of these takes a "reg1", "regH", and "regL". The contents of reg1 are ; multiplied by the contents of regL, and the result is put in the quadword ; regH:regL. ; macro muls3264 reg1,regH,regL = dc.w $4C00+{reg1} dc.w $0C00+($1000*{regL})+{regH} | macro mulu3264 reg1,regH,regL = dc.w $4C00+{reg1} dc.w $0400+($1000*{regL})+{regH} | ; end of 020-Macros