Ported to other m68000 systems
This commit is contained in:
@@ -31,14 +31,14 @@ inl__3W: move.l a2,a0 ; sub.l #6,a0 ; bra 4b
|
||||
inl_w_1: move.l #-1,d0 ; move.b (a3)+,d0
|
||||
2: asl.l wmu,d0
|
||||
1: move.l a2,a0 ; add.l d0,a0 ; bra 4b
|
||||
inl_pw: adroff ; move.w (a1),d0
|
||||
inl_pw: adroff ; move.w (a5),d0
|
||||
6: asl.l wmu,d0 ; add.l #0+l0,d0
|
||||
bra 1b
|
||||
inl_qpw: move.l (sp)+,d0 ; bra 6b
|
||||
inl_nw: adroff ; move.w (a1),d0
|
||||
inl_nw: adroff ; move.w (a5),d0
|
||||
ext.l d0 ; bra 2b
|
||||
inl_qnw: move.l (sp)+,d0 ; bra 2b
|
||||
ine_lw: adroff ; move.w (a1),d0 ; bra 5f
|
||||
ine_lw: adroff ; move.w (a5),d0 ; bra 5f
|
||||
ine_qw: move.l (sp)+,d0 ; bra 5f
|
||||
ine_w0: clr.w d0 ; move.b (a3)+,d0
|
||||
5: asl.l wmu,d0 ; move.l d0,a0
|
||||
@@ -66,16 +66,16 @@ dec_z: move.l sp,a0
|
||||
del_w_1: move.l #-1,d0 ; move.b (a3)+,d0
|
||||
1: asl.l wmu,d0
|
||||
2: move.l a2,a0 ; add.l d0,a0 ; bra 4b
|
||||
del_pw: adroff ; move.w (a1),d0
|
||||
del_pw: adroff ; move.w (a5),d0
|
||||
5: asl.l wmu,d0 ; add.l #0+l0,d0 ; bra 2b
|
||||
del_qpw: move.l (sp)+,d0 ; bra 5b
|
||||
del_nw: adroff ; move.w (a1),d0
|
||||
del_nw: adroff ; move.w (a5),d0
|
||||
ext.l d0 ; bra 1f
|
||||
del_qnw: move.l (sp)+,d0 ; bra 1f
|
||||
dee_w0: clr.w d0 ; move.b (a3)+,d0
|
||||
0: asl.l wmu,d0 ; move.l d0,a0
|
||||
add.l a6,a0 ; bra 4b
|
||||
dee_lw: adroff ; move.w (a1),d0 ; bra 0b
|
||||
dee_lw: adroff ; move.w (a5),d0 ; bra 0b
|
||||
dee_qw: move.l (sp)+,d0 ; bra 0b
|
||||
|
||||
#if test
|
||||
@@ -97,15 +97,15 @@ zrl_w_1: move.l #-1,d0 ; move.b (a3)+,d0
|
||||
#endif
|
||||
cl (a0)
|
||||
jmp (a4)
|
||||
zrl_nw: adroff ; move.w (a1),d0
|
||||
zrl_nw: adroff ; move.w (a5),d0
|
||||
ext.l d0 ; bra 1b
|
||||
zrl_qnw: move.l (sp)+,d0 ; bra 1b
|
||||
zrl_pw: adroff ; move.w (a1),d0
|
||||
zrl_pw: adroff ; move.w (a5),d0
|
||||
2: asl.l wmu,d0 ; add.l a2,d0
|
||||
move.l d0,a0 ; cl l0(a0)
|
||||
jmp (a4)
|
||||
zrl_qpw: move.l (sp)+,d0 ; bra 2b
|
||||
zre_lw: adroff ; move.w (a1),d0 ; bra 7f
|
||||
zre_lw: adroff ; move.w (a5),d0 ; bra 7f
|
||||
zre_qw: move.l (sp)+,d0 ; bra 7f
|
||||
zre_w0: clr.w d0 ; move.b (a3)+,d0
|
||||
7: asl.l wmu,d0 ; add.l a6,d0
|
||||
@@ -117,7 +117,7 @@ zre_w0: clr.w d0 ; move.b (a3)+,d0
|
||||
#endif
|
||||
cl (a0)
|
||||
jmp (a4)
|
||||
zrf_l: adroff ; move.w (a1),d0 ; bra 8f
|
||||
zrf_l: adroff ; move.w (a5),d0 ; bra 8f
|
||||
zrf_z: mov (sp)+,d0
|
||||
8: move.l d7,d1
|
||||
3: asr.w #1,d0 ; dbcs d1,3b
|
||||
@@ -125,7 +125,7 @@ zrf_z: mov (sp)+,d0
|
||||
0: cl -(sp) ; dbra d0,0b
|
||||
jmp (a4)
|
||||
zer_s0: clr.w d0 ; move.b (a3)+,d0 ; bra 8b
|
||||
zer_l: adroff ; move.w (a1),d0 ; bra 8b
|
||||
zer_l: adroff ; move.w (a5),d0 ; bra 8b
|
||||
zer_z: mov (sp),d0 ; bra 8b
|
||||
! The test on illegal argument takes some time , specially in 4byte case.
|
||||
|
||||
@@ -136,7 +136,7 @@ zer_z: mov (sp),d0 ; bra 8b
|
||||
and_1W: mov (sp)+,d1
|
||||
an d1,(sp)
|
||||
jmp (a4)
|
||||
and_l: adroff ; move.w (a1),d0 ; bra 1f
|
||||
and_l: adroff ; move.w (a5),d0 ; bra 1f
|
||||
and_z: mov (sp)+,d0
|
||||
1: ble e_oddz ; move.l d0,a0
|
||||
move.l d7,d2
|
||||
@@ -150,7 +150,7 @@ and_z: mov (sp)+,d0
|
||||
ior_1W: mov (sp)+,d1; inor d1,(sp)
|
||||
jmp (a4)
|
||||
ior_s0: clr.w d0 ; move.b (a3)+,d0; bra 4f
|
||||
ior_l: adroff ; move.w (a1),d0 ; bra 4f
|
||||
ior_l: adroff ; move.w (a5),d0 ; bra 4f
|
||||
ior_z: mov (sp)+,d0
|
||||
4: ble e_oddz ; move.l d0,a0
|
||||
move.l d7,d2
|
||||
@@ -163,7 +163,7 @@ ior_z: mov (sp)+,d0
|
||||
|
||||
!----------------------------------------------------------------------------
|
||||
|
||||
xor_l: adroff ; move.w (a1),d0 ; bra 6f
|
||||
xor_l: adroff ; move.w (a5),d0 ; bra 6f
|
||||
xor_z: mov (sp)+,d0
|
||||
6: ble e_oddz ; move.l d0,a0
|
||||
move.l d7,d2
|
||||
@@ -175,7 +175,7 @@ xor_z: mov (sp)+,d0
|
||||
|
||||
!----------------------------------------------------------------------------
|
||||
|
||||
com_l: adroff ; move.w (a1),d0 ; bra 0f
|
||||
com_l: adroff ; move.w (a5),d0 ; bra 0f
|
||||
com_z: mov (sp)+,d0
|
||||
0: ble e_oddz ; move.l d7,d2
|
||||
1: asr.l #1,d0 ; dbcs d2,1b ; bcs e_oddz
|
||||
@@ -185,7 +185,7 @@ com_z: mov (sp)+,d0
|
||||
|
||||
!---------------------------------------------------------------------------
|
||||
|
||||
rol_l: adroff ; move.w (a1),d0 ; bra 3f
|
||||
rol_l: adroff ; move.w (a5),d0 ; bra 3f
|
||||
rol_z: mov (sp)+,d0
|
||||
3: ble e_oddz ; move.l d7,d2
|
||||
4: asr.l #1,d0 ; dbcs d2,4b
|
||||
@@ -199,7 +199,7 @@ rol_z: mov (sp)+,d0
|
||||
jmp (a4)
|
||||
2: nega d1 ; bra 0f
|
||||
2: nega d1 ; bra 0b
|
||||
ror_l: adroff ; move.w (a1),d0 ; bra 6f
|
||||
ror_l: adroff ; move.w (a5),d0 ; bra 6f
|
||||
ror_z: mov (sp)+,d0
|
||||
6: ble e_oddz ; move.l d7,d2
|
||||
7: asr.l #1,d0 ; dbcs d2,7b
|
||||
@@ -232,7 +232,7 @@ set_s0: clr.w d0 ; move.b (a3)+,d0
|
||||
#endif
|
||||
bchg #0,d2 ; add.l d2,a0
|
||||
bset d1,(a0) ; jmp (a4) !d1 mod 8 bit set
|
||||
set_l: adroff ; move.w (a1),d0 ; bra 0b
|
||||
set_l: adroff ; move.w (a5),d0 ; bra 0b
|
||||
set_z: mov (sp)+,d0; bra 0b
|
||||
|
||||
!----------------------------------------------------------------------------
|
||||
@@ -262,7 +262,7 @@ inn_s0: clr.w d0 ; move.b (a3)+,d0
|
||||
btst d1,(a0) ; beq 7f
|
||||
mov #1,-(sp); jmp (a4)
|
||||
7: cl -(sp) ; jmp (a4)
|
||||
inn_l: adroff ; move.w (a1),d0 ; bra 0b
|
||||
inn_l: adroff ; move.w (a5),d0 ; bra 0b
|
||||
inn_z: mov (sp)+,d0; bra 0b
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user