Mercurial > hg > Members > kono > nitros9-code
diff lib/alib/mult16x8.a @ 2474:7d70b7e1cb21
Moved net and alib files into here
author | boisy |
---|---|
date | Tue, 30 Mar 2010 02:44:42 +0000 |
parents | |
children | aaba193af04f |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lib/alib/mult16x8.a Tue Mar 30 02:44:42 2010 +0000 @@ -0,0 +1,35 @@ +*********************************** + +* 16 x 8 Multiply (24 bit result) + +* OTHER MODULES NEEDED: none + +* ENTRY: A = multiplier +* X = multiplicand + +* EXIT: A = product byte 1 +* X = product bytes 2 & 3 + + nam 16x8 bit Multiply + ttl Assembler Library Module + + + psect MULT168,0,0,0,0,0 + +MULT168: + PSHS A,X save numbers + LEAS -3,S room for product + LDB 5,S get lsb of multiplicand + MUL + STD 1,S save partial product + LDD 3,S get mupltiplier & msb of multp. + MUL + ADDB 1,S add lsb to msb + ADCA #0 add carry + STD 0,S save sum of partial products + LDX 1,S get 2 lsb's + LEAS 6,S clean stack + RTS + + endsect +