Added code for new LOI/STI opcodes
This commit is contained in:
parent
e75308763c
commit
8a368a9ed1
|
@ -185,7 +185,7 @@ escape2:
|
||||||
move.b (a3)+,3(sp)
|
move.b (a3)+,3(sp)
|
||||||
add.w d0,d0
|
add.w d0,d0
|
||||||
add.w d0,d0
|
add.w d0,d0
|
||||||
cmp.w #220,d0
|
cmp.w #228,d0
|
||||||
bhi e_illins
|
bhi e_illins
|
||||||
#if prof
|
#if prof
|
||||||
lea timeinf2,a1
|
lea timeinf2,a1
|
||||||
|
@ -217,9 +217,10 @@ bra sde_q ; bra sdf_q ; bra sdl_qpw ; bra sdl_qnw
|
||||||
bra sil_qpw ; bra sil_qnw ; bra ste_qw ; bra stf_q
|
bra sil_qpw ; bra sil_qnw ; bra ste_qw ; bra stf_q
|
||||||
bra stl_qpw ; bra stl_qnw ; bra zeq_q ; bra zge_q
|
bra stl_qpw ; bra stl_qnw ; bra zeq_q ; bra zge_q
|
||||||
bra zgt_q ; bra zle_q ; bra zlt_q ; bra zne_q
|
bra zgt_q ; bra zle_q ; bra zlt_q ; bra zne_q
|
||||||
bra zre_qw ; bra zrl_qpw ; bra zrl_qnw
|
bra zre_qw ; bra zrl_qpw ; bra zrl_qnw ; bra loi_q
|
||||||
|
bra sti_q
|
||||||
|
|
||||||
.assert .-dispae2-220 == 0
|
.assert .-dispae2-228 == 0
|
||||||
|
|
||||||
!------------------------------------------------------------------------------
|
!------------------------------------------------------------------------------
|
||||||
! timeinf tables, first the unescaped opcodes these tables are parallel
|
! timeinf tables, first the unescaped opcodes these tables are parallel
|
||||||
|
@ -364,7 +365,8 @@ timeinf2:
|
||||||
.data4 29 ; .data4 29 ; .data4 29 ; .data4 29
|
.data4 29 ; .data4 29 ; .data4 29 ; .data4 29
|
||||||
.data4 29 ; .data4 29 ; .data4 29 ; .data4 29
|
.data4 29 ; .data4 29 ; .data4 29 ; .data4 29
|
||||||
.data4 29 ; .data4 29 ; .data4 29 ; .data4 29
|
.data4 29 ; .data4 29 ; .data4 29 ; .data4 29
|
||||||
.data4 29 ; .data4 29 ; .data4 29
|
.data4 29 ; .data4 29 ; .data4 29 ; .data4 29
|
||||||
|
.data4 29
|
||||||
#else
|
#else
|
||||||
timeinf:
|
timeinf:
|
||||||
.data4 30 ; .data4 35 ; .data4 35 ; .data4 35
|
.data4 30 ; .data4 35 ; .data4 35 ; .data4 35
|
||||||
|
@ -488,7 +490,8 @@ timeinf2:
|
||||||
.data4 25 ; .data4 25 ; .data4 25 ; .data4 25
|
.data4 25 ; .data4 25 ; .data4 25 ; .data4 25
|
||||||
.data4 25 ; .data4 25 ; .data4 25 ; .data4 25
|
.data4 25 ; .data4 25 ; .data4 25 ; .data4 25
|
||||||
.data4 25 ; .data4 25 ; .data4 25 ; .data4 25
|
.data4 25 ; .data4 25 ; .data4 25 ; .data4 25
|
||||||
.data4 25 ; .data4 25 ; .data4 25
|
.data4 25 ; .data4 25 ; .data4 25 ; .data4 25
|
||||||
|
.data4 25
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
.sect .text
|
.sect .text
|
||||||
|
|
|
@ -427,19 +427,20 @@ lxa_l: adroff
|
||||||
|
|
||||||
!-----------------------------------------------------------------------
|
!-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
loi_q: move.l (sp)+,d1; bra 8f
|
||||||
loi_l: adroff
|
loi_l: adroff
|
||||||
clr.l d1
|
clr.l d1
|
||||||
move.w (a5),d1
|
move.w (a5),d1
|
||||||
bra 8f
|
bra 8f
|
||||||
loi_s0: move.l #0,d1
|
loi_s0: move.l #0,d1
|
||||||
move.b (a3)+,d1
|
move.b (a3)+,d1
|
||||||
8: cmp.w #1,d1
|
8: cmp.l #1,d1
|
||||||
beq loi_1
|
beq loi_1
|
||||||
cmp.w #2,d1
|
cmp.l #2,d1
|
||||||
beq 2f
|
beq 2f
|
||||||
move.w d1,d0
|
move.l d1,d0
|
||||||
move.w d7,d2
|
move.w d7,d2
|
||||||
3: asr.w #1,d0 ; dbcs d2,3b
|
3: asr.l #1,d0 ; dbcs d2,3b
|
||||||
bcs e_oddz
|
bcs e_oddz
|
||||||
bra 5f
|
bra 5f
|
||||||
loi_1W: loi_2W: loi_3W: loi_4W:
|
loi_1W: loi_2W: loi_3W: loi_4W:
|
||||||
|
@ -456,7 +457,7 @@ loi_1W: loi_2W: loi_3W: loi_4W:
|
||||||
7: bra e_badptr
|
7: bra e_badptr
|
||||||
6:
|
6:
|
||||||
#endif
|
#endif
|
||||||
sub.w #1,d0
|
sub.l #1,d0
|
||||||
1: mov -(a0),-(sp)
|
1: mov -(a0),-(sp)
|
||||||
dbra d0,1b
|
dbra d0,1b
|
||||||
jmp (a4)
|
jmp (a4)
|
||||||
|
|
|
@ -226,6 +226,7 @@ sti_1: move.l (sp)+,a0
|
||||||
move.b word-1(sp),(a0)
|
move.b word-1(sp),(a0)
|
||||||
add.l wrd,sp
|
add.l wrd,sp
|
||||||
jmp (a4)
|
jmp (a4)
|
||||||
|
sti_q: move.l (sp)+,d0; bra 0f
|
||||||
sti_l: adroff ; move.w (a5),d0 ; bra 0f
|
sti_l: adroff ; move.w (a5),d0 ; bra 0f
|
||||||
sti_s0: clr.w d0 ; move.b (a3)+,d0
|
sti_s0: clr.w d0 ; move.b (a3)+,d0
|
||||||
0: asr.l #1,d0 ; bne 1f
|
0: asr.l #1,d0 ; bne 1f
|
||||||
|
@ -244,7 +245,7 @@ sti_s0: clr.w d0 ; move.b (a3)+,d0
|
||||||
move.w (sp)+,(a0); jmp (a4)
|
move.w (sp)+,(a0); jmp (a4)
|
||||||
2: bcs e_oddz
|
2: bcs e_oddz
|
||||||
#endif
|
#endif
|
||||||
sub.w #1,d0 ; bra 3f
|
sub.l #1,d0 ; bra 3f
|
||||||
sti_1W: sti_2W: sti_3W: sti_4W:
|
sti_1W: sti_2W: sti_3W: sti_4W:
|
||||||
sub.w #876,d0 ; asr.w #2,d0
|
sub.w #876,d0 ; asr.w #2,d0
|
||||||
3: move.l (sp)+,a0
|
3: move.l (sp)+,a0
|
||||||
|
|
|
@ -241,7 +241,7 @@ countsiz: .space 4
|
||||||
emopf: .asciz "em_opfreq\0"
|
emopf: .asciz "em_opfreq\0"
|
||||||
.align
|
.align
|
||||||
.sect .bss
|
.sect .bss
|
||||||
counttab: .space 1884
|
counttab: .space 1892
|
||||||
.sect .text
|
.sect .text
|
||||||
pea emopf
|
pea emopf
|
||||||
bsr _Xunlink
|
bsr _Xunlink
|
||||||
|
|
Loading…
Reference in a new issue