Diff for /np2/i286a/i286a_mn.s between versions 1.21 and 1.23

version 1.21, 2004/01/07 06:53:47 version 1.23, 2004/01/29 00:27:29
Line 9 Line 9
         IMPORT          iflags          IMPORT          iflags
         IMPORT          i286a_localint          IMPORT          i286a_localint
         IMPORT          i286a_trapint          IMPORT          i286a_trapint
         EXPORT          i286a_trapintr          IMPORT          i286a_selector
         IMPORT          i286a_ea          IMPORT          i286a_ea
         IMPORT          i286a_lea          IMPORT          i286a_lea
         IMPORT          i286a_a          IMPORT          i286a_a
Line 781  leareg   mov  r6, #6 Line 781  leareg   mov  r6, #6
                                 sub             r8, r8, #(2 << 16)                                  sub             r8, r8, #(2 << 16)
                                 b               i286a_localint                                  b               i286a_localint
   
 mov_seg_ea              GETPCF8  mov_seg_ea              ldrh    r6, [r9, #CPU_MSW]
                                   GETPCF8
                                 adr             r2, msegea_tbl                                  adr             r2, msegea_tbl
                                 and             r1, r0, #(3 << 3)                                  and             r1, r0, #(3 << 3)
                                   tst             r6, #MSW_PE
                                   orrne   r1, r1, #(4 << 3)
                                 mov             r6, r8                                  mov             r6, r8
                                 ldr             r2, [r2, r1 lsr #1]                                  ldr             r2, [r2, r1 lsr #1]
                                 cmp             r0, #&c0                                  cmp             r0, #&c0
Line 801  msegea_tbl  dcd  msegea_es Line 804  msegea_tbl  dcd  msegea_es
                                 dcd             msegea_cs                                  dcd             msegea_cs
                                 dcd             msegea_ss                                  dcd             msegea_ss
                                 dcd             msegea_ds                                  dcd             msegea_ds
                                   dcd             msegea_es_p
                                   dcd             msegea_cs
                                   dcd             msegea_ss_p
                                   dcd             msegea_ds_p
 msegea_es               mov             r1, r0 lsl #4  msegea_es               mov             r1, r0 lsl #4
                                 strh    r0, [r9, #CPU_ES]                                  strh    r0, [r9, #CPU_ES]
                                 str             r1, [r9, #CPU_ES_BASE]                                  str             r1, [r9, #CPU_ES_BASE]
Line 815  msegea_ss  mov  r1, r0 lsl #4 Line 822  msegea_ss  mov  r1, r0 lsl #4
                                 str             r1, [r9, #CPU_SS_BASE]                                  str             r1, [r9, #CPU_SS_BASE]
                                 str             r1, [r9, #CPU_SS_FIX]                                  str             r1, [r9, #CPU_SS_FIX]
                                 NEXT_OPCODE                                  NEXT_OPCODE
   
   msegea_es_p             strh    r0, [r9, #CPU_ES]
                                   bl              i286a_selector
                                   str             r0, [r9, #CPU_ES_BASE]
                                   mov             pc, r11
   msegea_ds_p             strh    r0, [r9, #CPU_DS]
                                   bl              i286a_selector
                                   str             r0, [r9, #CPU_DS_BASE]
                                   str             r0, [r9, #CPU_DS_FIX]
                                   mov             pc, r11
   msegea_ss_p             strh    r0, [r9, #CPU_SS]
                                   bl              i286a_selector
                                   str             r0, [r9, #CPU_SS_BASE]
                                   str             r0, [r9, #CPU_SS_FIX]
                                   NEXT_OPCODE
   
 msegea_cs               sub             r8, r6, #(2 << 16)  msegea_cs               sub             r8, r6, #(2 << 16)
                                 mov             r6, #6                                  mov             r6, #6
                                 b               i286a_localint                                  b               i286a_localint
   
   
 pop_ea                  POP             #5  pop_ea                  POP             #5
                                 mov             r6, r0                                  mov             r6, r0
                                 GETPCF8                                  GETPCF8
Line 1361  into   CPUWORK #4 Line 1385  into   CPUWORK #4
                                 mov             r6, #4                                  mov             r6, #4
                                 b               i286a_localint                                  b               i286a_localint
   
 iret                    bl              extirq_pop  iret                    ldrh    r1, [r9, #CPU_SP]
                                 ldrh    r1, [r9, #CPU_SP]  
                                 ldr             r5, [r9, #CPU_SS_BASE]                                  ldr             r5, [r9, #CPU_SS_BASE]
                                 CPUWORK #31                                  CPUWORK #31
                                 add             r4, r1, #2                                  add             r4, r1, #2
Line 1662  sti_set   orr  r8, r8, #I_FLAG Line 1685  sti_set   orr  r8, r8, #I_FLAG
                                 strneb  r1, [r9, #CPU_TRAP]                                  strneb  r1, [r9, #CPU_TRAP]
                                 bne             sti_withirq                                  bne             sti_withirq
                 endif                  endif
                                 PICEXISTINTR    sti_noirq                                  PICEXISTINTR
                                 bne             sti_withirq                                  bne             sti_withirq
 sti_noirq               NEXT_OPCODE  sti_noirq               NEXT_OPCODE
 sti_pic                 dcd             pic  sti_pic                 dcd             pic
Line 1754  i286awithtrap adr  r4, optbl1 Line 1777  i286awithtrap adr  r4, optbl1
                                 bl              dmap_i286                                  bl              dmap_i286
                                 and             r0, r8, #(I_FLAG + T_FLAG)                                  and             r0, r8, #(I_FLAG + T_FLAG)
                                 cmp             r0, #(I_FLAG + T_FLAG)                                  cmp             r0, #(I_FLAG + T_FLAG)
                                 beq             i286a_trapint                                  bleq    i286a_trapint
 i286a_trapintr  CPUSV                                  CPUSV
                                 ldmia   sp!, {r4 - r11, pc}                                  ldmia   sp!, {r4 - r11, pc}
   
 optbl1                  dcd             add_ea_r8                       ; 00  optbl1                  dcd             add_ea_r8                       ; 00

Removed from v.1.21  
changed lines
  Added in v.1.23


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