Diff for /np2/i286a/i286a_rp.s between versions 1.1 and 1.2

version 1.1, 2003/12/18 23:07:49 version 1.2, 2003/12/19 00:25:49
Line 4 Line 4
   
         IMPORT          _szpcflag8          IMPORT          _szpcflag8
   
         IMPORT          i286_memoryread          IMPORT          i286a_memoryread
         IMPORT          i286_memoryread_w          IMPORT          i286a_memoryread_w
         IMPORT          i286_memorywrite          IMPORT          i286a_memorywrite
         IMPORT          i286_memorywrite_w          IMPORT          i286a_memorywrite_w
   
         IMPORT          iocore_inp8          IMPORT          iocore_inp8
         IMPORT          iocore_inp16          IMPORT          iocore_inp16
Line 52  repinsblp  ldrh r0, [r9, #CPU_DX] Line 52  repinsblp  ldrh r0, [r9, #CPU_DX]
                                 mov             r1, r0                                  mov             r1, r0
                                 CPUWORK #4                                  CPUWORK #4
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memorywrite                                  bl              i286a_memorywrite
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
                                 bne             repinsblp                                  bne             repinsblp
Line 78  repinswlp  ldrh r0, [r9, #CPU_DX] Line 78  repinswlp  ldrh r0, [r9, #CPU_DX]
                                 mov             r1, r0                                  mov             r1, r0
                                 CPUWORK #4                                  CPUWORK #4
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memorywrite_w                                  bl              i286a_memorywrite_w
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
                                 bne             repinswlp                                  bne             repinswlp
Line 101  i286a_rep_outsb ldrh r4, [r9, #CPU_CX] Line 101  i286a_rep_outsb ldrh r4, [r9, #CPU_CX]
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repoutsblp              CPUWORK #4  repoutsblp              CPUWORK #4
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 mov             r1, r0                                  mov             r1, r0
                                 ldrh    r0, [r9, #CPU_DX]                                  ldrh    r0, [r9, #CPU_DX]
                                 add             r5, r5, r6                                  add             r5, r5, r6
Line 130  i286a_rep_outsw ldrh r4, [r9, #CPU_CX] Line 130  i286a_rep_outsw ldrh r4, [r9, #CPU_CX]
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repoutswlp              CPUWORK #4  repoutswlp              CPUWORK #4
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 mov             r1, r0                                  mov             r1, r0
                                 ldrh    r0, [r9, #CPU_DX]                                  ldrh    r0, [r9, #CPU_DX]
                                 add             r5, r5, r6                                  add             r5, r5, r6
Line 159  i286a_rep_movsb ldrh r4, [r9, #CPU_CX] Line 159  i286a_rep_movsb ldrh r4, [r9, #CPU_CX]
                                 tst             r8, #D_FLAG                                  tst             r8, #D_FLAG
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repmovsblp              add             r0, r2, r11 lsr #16  repmovsblp              add             r0, r2, r11 lsr #16
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 ldr             r2, [r9, #CPU_ES_BASE]                                  ldr             r2, [r9, #CPU_ES_BASE]
                                 mov             r1, r0                                  mov             r1, r0
                                 add             r11, r11, r6                                  add             r11, r11, r6
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memorywrite                                  bl              i286a_memorywrite
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 CPUWKS  #4                                  CPUWKS  #4
                                 blt             repmovsbbreak                                  blt             repmovsbbreak
Line 200  i286a_rep_movsw ldrh r4, [r9, #CPU_CX] Line 200  i286a_rep_movsw ldrh r4, [r9, #CPU_CX]
                                 tst             r8, #D_FLAG                                  tst             r8, #D_FLAG
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repmovswlp              add             r0, r2, r11 lsr #16  repmovswlp              add             r0, r2, r11 lsr #16
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 ldr             r2, [r9, #CPU_ES_BASE]                                  ldr             r2, [r9, #CPU_ES_BASE]
                                 mov             r1, r0                                  mov             r1, r0
                                 add             r11, r11, r6                                  add             r11, r11, r6
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memorywrite_w                                  bl              i286a_memorywrite_w
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 CPUWKS  #4                                  CPUWKS  #4
                                 blt             repmovswbreak                                  blt             repmovswbreak
Line 243  i286a_rep_lodsb ldrh r4, [r9, #CPU_CX] Line 243  i286a_rep_lodsb ldrh r4, [r9, #CPU_CX]
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 replodsblp              add             r0, r11, r5 lsr #16  replodsblp              add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 CPUWORK #4                                  CPUWORK #4
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
                                 bne             replodsblp                                  bne             replodsblp
Line 266  i286a_rep_lodsw ldrh r4, [r9, #CPU_CX] Line 266  i286a_rep_lodsw ldrh r4, [r9, #CPU_CX]
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 replodswlp              add             r0, r11, r5 lsr #16  replodswlp              add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 CPUWORK #4                                  CPUWORK #4
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
                                 bne             replodswlp                                  bne             replodswlp
Line 290  i286a_rep_stosb ldrh r4, [r9, #CPU_CX] Line 290  i286a_rep_stosb ldrh r4, [r9, #CPU_CX]
 repstosblp              ldrb    r1, [r9, #CPU_AL]  repstosblp              ldrb    r1, [r9, #CPU_AL]
                                 add             r0, r11, r5 lsr #16                                  add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memorywrite                                  bl              i286a_memorywrite
                                 CPUWKS  #3                                  CPUWKS  #3
                                 ble             repstosbbreak                                  ble             repstosbbreak
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
Line 319  i286a_rep_stosw ldrh r4, [r9, #CPU_CX] Line 319  i286a_rep_stosw ldrh r4, [r9, #CPU_CX]
 repstoswlp              ldrh    r1, [r9, #CPU_AX]  repstoswlp              ldrh    r1, [r9, #CPU_AX]
                                 add             r0, r11, r5 lsr #16                                  add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memorywrite_w                                  bl              i286a_memorywrite_w
                                 CPUWKS  #3                                  CPUWKS  #3
                                 blt             repstoswbreak                                  blt             repstoswbreak
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
Line 349  i286a_repe_cmpsb Line 349  i286a_repe_cmpsb
                                 tst             r8, #D_FLAG                                  tst             r8, #D_FLAG
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repecmpsblp             add             r0, r2, r11 lsr #16  repecmpsblp             add             r0, r2, r11 lsr #16
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 ldr             r2, [r9, #CPU_ES_BASE]                                  ldr             r2, [r9, #CPU_ES_BASE]
                                 mov             r10, r0 lsl #24                                  mov             r10, r0 lsl #24
                                 add             r11, r11, r6                                  add             r11, r11, r6
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 CPUWORK #9                                  CPUWORK #9
                                 ldr             r2, [r9, #CPU_DS_FIX]                                  ldr             r2, [r9, #CPU_DS_FIX]
Line 395  i286a_repe_cmpsw Line 395  i286a_repe_cmpsw
                                 tst             r8, #D_FLAG                                  tst             r8, #D_FLAG
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repecmpswlp             add             r0, r2, r11 lsr #16  repecmpswlp             add             r0, r2, r11 lsr #16
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 ldr             r2, [r9, #CPU_ES_BASE]                                  ldr             r2, [r9, #CPU_ES_BASE]
                                 mov             r10, r0 lsl #16                                  mov             r10, r0 lsl #16
                                 add             r11, r11, r6                                  add             r11, r11, r6
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 CPUWORK #9                                  CPUWORK #9
                                 ldr             r2, [r9, #CPU_DS_FIX]                                  ldr             r2, [r9, #CPU_DS_FIX]
Line 446  i286a_repne_cmpsb Line 446  i286a_repne_cmpsb
                                 tst             r8, #D_FLAG                                  tst             r8, #D_FLAG
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repnecmpsblp    add             r0, r2, r11 lsr #16  repnecmpsblp    add             r0, r2, r11 lsr #16
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 ldr             r2, [r9, #CPU_ES_BASE]                                  ldr             r2, [r9, #CPU_ES_BASE]
                                 mov             r10, r0 lsl #24                                  mov             r10, r0 lsl #24
                                 add             r11, r11, r6                                  add             r11, r11, r6
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 CPUWORK #9                                  CPUWORK #9
                                 ldr             r2, [r9, #CPU_DS_FIX]                                  ldr             r2, [r9, #CPU_DS_FIX]
Line 492  i286a_repne_cmpsw Line 492  i286a_repne_cmpsw
                                 tst             r8, #D_FLAG                                  tst             r8, #D_FLAG
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repnecmpswlp    add             r0, r2, r11 lsr #16  repnecmpswlp    add             r0, r2, r11 lsr #16
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 ldr             r2, [r9, #CPU_ES_BASE]                                  ldr             r2, [r9, #CPU_ES_BASE]
                                 mov             r10, r0 lsl #16                                  mov             r10, r0 lsl #16
                                 add             r11, r11, r6                                  add             r11, r11, r6
                                 add             r0, r2, r5 lsr #16                                  add             r0, r2, r5 lsr #16
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 CPUWORK #9                                  CPUWORK #9
                                 ldr             r2, [r9, #CPU_DS_FIX]                                  ldr             r2, [r9, #CPU_DS_FIX]
Line 543  i286a_repe_scasb Line 543  i286a_repe_scasb
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repescasblp             add             r0, r11, r5 lsr #16  repescasblp             add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 ldrb    r3, [r9, #CPU_AL]                                  ldrb    r3, [r9, #CPU_AL]
                                 CPUWORK #8                                  CPUWORK #8
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
Line 568  i286a_repe_scasw Line 568  i286a_repe_scasw
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repescaswlp             add             r0, r11, r5 lsr #16  repescaswlp             add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 ldrh    r3, [r9, #CPU_AX]                                  ldrh    r3, [r9, #CPU_AX]
                                 CPUWORK #8                                  CPUWORK #8
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
Line 594  i286a_repne_scasb Line 594  i286a_repne_scasb
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repnescasblp    add             r0, r11, r5 lsr #16  repnescasblp    add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memoryread                                  bl              i286a_memoryread
                                 ldrb    r3, [r9, #CPU_AL]                                  ldrb    r3, [r9, #CPU_AL]
                                 CPUWORK #8                                  CPUWORK #8
                                 subs    r4, r4, #1                                  subs    r4, r4, #1
Line 619  i286a_repne_scasw Line 619  i286a_repne_scasw
                                 rsbne   r6, r6, #0                                  rsbne   r6, r6, #0
 repnescaswlp    add             r0, r11, r5 lsr #16  repnescaswlp    add             r0, r11, r5 lsr #16
                                 add             r5, r5, r6                                  add             r5, r5, r6
                                 bl              i286_memoryread_w                                  bl              i286a_memoryread_w
                                 ldrh    r3, [r9, #CPU_AX]                                  ldrh    r3, [r9, #CPU_AX]
                                 CPUWORK #8                                  CPUWORK #8
                                 subs    r4, r4, #1                                  subs    r4, r4, #1

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


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