Diff for /np2/i286a/i286aalu.inc between versions 1.1 and 1.3

version 1.1, 2003/12/15 20:58:12 version 1.3, 2003/12/16 21:59:07
Line 306  $label  sub  r1, $s, #1 Line 306  $label  sub  r1, $s, #1
                         orr             r8, r8, r2                          orr             r8, r8, r2
         MEND          MEND
   
   
           MACRO
   $label  MUL8    $d, $s
                           mul             r1, $d, $s
                           movs    r12, r1 lsr #8
                           biceq   r8, r8, #O_FLAG
                           biceq   r8, r8, #C_FLAG
                           orrne   r8, r8, #O_FLAG
                           orrne   r8, r8, #C_FLAG
           MEND
   
           MACRO
   $label  MUL16   $d, $s
                           mul             r1, $d, $s
                           movs    r12, r1 lsr #16
                           biceq   r8, r8, #O_FLAG
                           biceq   r8, r8, #C_FLAG
                           orrne   r8, r8, #O_FLAG
                           orrne   r8, r8, #C_FLAG
           MEND
   
           MACRO
   $label  IMUL8   $d, $s
                           mov             r1, $d lsl #24
                           mov             r12, $s lsl #24
                           mov             r1, r1 asr #24
                           mov             r12, r12 asr #24
                           mul             r1, r12, r1
                           add             r12, r1, #&80
                           movs    r12, r12 lsr #8
                           biceq   r8, r8, #O_FLAG
                           biceq   r8, r8, #C_FLAG
                           orrne   r8, r8, #O_FLAG
                           orrne   r8, r8, #C_FLAG
           MEND
   
           MACRO
   $label  IMUL16  $d, $s
                           mov             r1, $d lsl #16
                           mov             r12, $s lsl #16
                           mov             r1, r1 asr #16
                           mov             r12, r12 asr #16
                           mul             r1, r12, r1
                           add             r12, r1, #&8000
                           movs    r12, r12 lsr #16
                           biceq   r8, r8, #O_FLAG
                           biceq   r8, r8, #C_FLAG
                           orrne   r8, r8, #O_FLAG
                           orrne   r8, r8, #C_FLAG
           MEND
   
           MACRO
   $label  REGPUSH $r, $clk
   $label          CPUWORK $clk
                           ldrh    r0, [r9, #CPU_SP]
                           ldrh    r1, [r9, $r]
                           ldr             r2, [r9, #CPU_SS_BASE]
                           sub             r0, r0, #2
                           mov             r3, r0 lsl #16
                           strh    r0, [r9, #CPU_SP]
                           add             r0, r2, r3 lsr #16
                           mov             lr, r11
                           b               i286_memorywrite_w
           MEND
   
           MACRO
   $label  POP             $clk
   $label          CPUWORK $clk
                           ldrh    r1, [r9, #CPU_SP]
                           ldr             r0, [r9, #CPU_SS_BASE]
                           add             r0, r1, r0
                           add             r1, r1, #2
                           strh    r1, [r9, #CPU_SP]
                           bl              i286_memoryread_w
           MEND
   
           MACRO
   $label  REGPOP  $r, $clk
   $label          POP             $clk
                           strh    r0, [r9, $r]
                           mov             pc, r11
           MEND
   
         END          END
   

Removed from v.1.1  
changed lines
  Added in v.1.3


RetroPC.NET-CVS <cvs@retropc.net>