--- uae/src/table68k 2018/04/24 16:54:38 1.1.1.4 +++ uae/src/table68k 2018/04/24 16:59:58 1.1.1.6 @@ -9,6 +9,7 @@ % J: immediate 0..15 % k: immediate 0..7 % K: immediate 0..63 +% p: immediate 0..3 (CINV and CPUSH: cache field) % s: source mode % S: source reg % d: dest mode @@ -24,6 +25,7 @@ % % Arp: --> -(Ar) % ArP: --> (Ar)+ +% L: (xxx.L) % % Fields on a line: % 16 chars bitpattern : @@ -96,7 +98,7 @@ 0011 DDDd ddss sSSS:00:-----:-----:12: MOVEA.W s,d[Areg] 0011 DDDd ddss sSSS:00:-NZ00:-----:12: MOVE.W s,d[!Areg] -0100 0000 zzdd dDDD:00:XxZxC:-----:30: NEGX.z d[!Areg] +0100 0000 zzdd dDDD:00:XxZxC:X-Z--:30: NEGX.z d[!Areg] 0100 0000 11dd dDDD:01:?????:?????:10: MVSR2.W d[!Areg] 0100 0010 zzdd dDDD:00:-0100:-----:20: CLR.z d[!Areg] 0100 0010 11dd dDDD:10:?????:?????:10: MVSR2.B d[!Areg] @@ -142,12 +144,14 @@ 0100 1110 11ss sSSS:00://///://///:80: JMP.L s[!Dreg,Areg,Aipi,Apdi,Immd] 0100 rrr1 11ss sSSS:00:-----:-----:02: LEA.L s[!Dreg,Areg,Aipi,Apdi,Immd],Ar -0101 jjj0 zzdd dDDD:00:-----:-----:13: ADDA.z #j,d[Areg] +0101 jjj0 01dd dDDD:00:-----:-----:13: ADDA.W #j,d[Areg] +0101 jjj0 10dd dDDD:00:-----:-----:13: ADDA.L #j,d[Areg] 0101 jjj0 zzdd dDDD:00:XNZVC:-----:13: ADD.z #j,d[!Areg] -0101 jjj1 zzdd dDDD:00:-----:-----:13: SUBA.z #j,d[Areg] +0101 jjj1 01dd dDDD:00:-----:-----:13: SUBA.W #j,d[Areg] +0101 jjj1 10dd dDDD:00:-----:-----:13: SUBA.L #j,d[Areg] 0101 jjj1 zzdd dDDD:00:XNZVC:-----:13: SUB.z #j,d[!Areg] -0101 cccc 1100 1rrr:00:-----:+++++:31: DBcc.W Dr,#1 -0101 cccc 11dd dDDD:00:-----:+++++:20: Scc.B d[!Areg] +0101 cccc 1100 1rrr:00:-----:-++++:31: DBcc.W Dr,#1 +0101 cccc 11dd dDDD:00:-----:-++++:20: Scc.B d[!Areg] 0101 cccc 1111 1010:20:?????:?????:10: TRAPcc #1 0101 cccc 1111 1011:20:?????:?????:10: TRAPcc #2 0101 cccc 1111 1100:20:?????:?????:00: TRAPcc @@ -158,9 +162,9 @@ 0110 0001 0000 0000:00://///://///:40: BSR.W #1 0110 0001 IIII IIII:00://///://///:40: BSR.B #i 0110 0001 1111 1111:00://///://///:40: BSR.L #2 -0110 CCCC 0000 0000:00:-----:+++++:40: Bcc.W #1 -0110 CCCC IIII IIII:00:-----:+++++:40: Bcc.B #i -0110 CCCC 1111 1111:00:-----:+++++:40: Bcc.L #2 +0110 CCCC 0000 0000:00:-----:-++++:40: Bcc.W #1 +0110 CCCC IIII IIII:00:-----:-++++:40: Bcc.B #i +0110 CCCC 1111 1111:00:-----:-++++:40: Bcc.L #2 0111 rrr0 iiii iiii:00:-NZ00:-----:12: MOVE.L #i,Dr @@ -239,4 +243,18 @@ 1111 0011 00ss sSSS:32:?????:?????:20: FSAVE s[!Dreg,Areg,Aipi,Immd,PC8r,PC16] 1111 0011 01ss sSSS:32:?????:?????:10: FRESTORE s[!Dreg,Areg,Apdi,Immd] -1111 0000 00ss sSSS:40:?????:?????:11: MMUOP #1,s +1111 0101 iiii iSSS:40:?????:?????:11: MMUOP #i,s + +% 68040 instructions +1111 0100 pp00 1rrr:42:-----:-----:02: CINVL #p,Ar +1111 0100 pp01 0rrr:42:-----:-----:02: CINVP #p,Ar +1111 0100 pp01 1rrr:42:-----:-----:00: CINVA #p +1111 0100 pp10 1rrr:42:-----:-----:02: CPUSHL #p,Ar +1111 0100 pp11 0rrr:42:-----:-----:02: CPUSHP #p,Ar +1111 0100 pp11 1rrr:42:-----:-----:00: CPUSHA #p +% destination register number is encoded in the following word +1111 0110 0010 0rrr:40:-----:-----:12: MOVE16 ArP,AxP +1111 0110 00ss sSSS:40:-----:-----:12: MOVE16 s[Dreg-Aipi],L +1111 0110 00dd dDDD:40:-----:-----:12: MOVE16 L,d[Areg-Aipi] +1111 0110 00ss sSSS:40:-----:-----:12: MOVE16 s[Aind],L +1111 0110 00dd dDDD:40:-----:-----:12: MOVE16 L,d[Aipi-Aind]