Digital Research
This commit is contained in:
2020-11-06 18:50:37 +01:00
parent 621ed8ccaf
commit 31738079c4
8481 changed files with 1888323 additions and 0 deletions

View File

@@ -0,0 +1,478 @@
$title ('CODEMACRO DEFINITIONS - PART 3')
cmac3:
do;
/*
modified 6/16/81 R. Silberstein
*/
$include (:f1:macro.lit)
$include (:f1:cmacd.lit)
$include (:f1:equals.lit)
$include (:f1:cmac.lit)
dcl
/* MOV dst:Eb,src:Db */
mov1 cmac14struc data(
nil,2,
specE,modb,specD,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,0c6h, /* DB 0C6h */
mmodrm1,0,dst, /* MODRM 0,dst */
mdbf,src, /* DB src */
mendm), /* ENDM */
/* MOV dst:Ew,src:Db */
mov2 cmac14struc data(
.mov1,2,
specE,modw,specD,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,0c7h, /* DB 0C7h */
mmodrm1,0,dst, /* MODRM 0,dst */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* MOV dst:Ew,src:Dw */
mov3 cmac14struc data(
.mov2,2,
specE,modw,specD,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,0c7h, /* DB 0C7h */
mmodrm1,0,dst, /* MODRM 0,dst */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* MOV dst:Rb,src:Db */
mov4 cmac16struc data(
.mov3,2,
specR,modb,specD,modb,
mdbit, /* DBIT 5(10110B),3(dst(0)) */
mnumberbits,5,16h,
mformalbits,3,dst,0,
mendbit,
mdbf,src, /* DB src */
mendm), /* ENDM */
/* MOV dst:Rw,src:Db */
mov5 cmac16struc data(
.mov4,2,
specR,modw,specD,modb,
mdbit, /* DBIT 5(10111B),3(dst(0)) */
mnumberbits,5,17h,
mformalbits,3,dst,0,
mendbit,
mdwf,src, /* DW src */
mendm), /* ENDM */
/* MOV dst:Rw,src:Dw */
mov6 cmac16struc data(
.mov5,2,
specR,modw,specD,modw,
mdbit, /* DBIT 5(10111B),3(dst(0)) */
mnumberbits,5,17h,
mformalbits,3,dst,0,
mendbit,
mdwf,src, /* DW src */
mendm), /* ENDM */
/* MOV dst:Eb,src:Rb */
mov7 cmac12struc data(
.mov6,2,
specE,modb,specR,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,88h, /* DB 88H */
mmodrm2,src,dst, /* MODRM src,dst */
mendm), /* ENDM */
/* MOV dst:Ew,src:Rw */
mov8 cmac12struc data(
.mov7,2,
specE,modw,specR,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,89h, /* DB 89H */
mmodrm2,src,dst, /* MODRM src,dst */
mendm), /* ENDM */
/* MOV dst:Rb,src:Eb */
mov9 cmac12struc data(
.mov8,2,
specR,modb,specE,modb,
msegfix,src, /* SEGFIX src */
mdbn,8ah, /* DB 8AH */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* MOV dst:Rw,src:Ew */
mov10 cmac12struc data(
.mov9,2,
specR,modw,specE,modw,
msegfix,src, /* SEGFIX src */
mdbn,8bh, /* DB 8BH */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* MOV dst:Ew,src:S */
mov11 cmac12struc data(
.mov10,2,
specE,modw,specS,nomod,
msegfix,dst, /* SEGFIX dst */
mdbn,8ch, /* DB 8CH */
mmodrm2,src,dst, /* MODRM src,dst */
mendm), /* ENDM */
/* MOV dst:Sd(ES),src:Ew */
mov12 cmac13struc data(
.mov11,2,
specS,modd+singlerange+registerrange,res,
specE,modw,
msegfix,src, /* SEGFIX src */
mdbn,8eh, /* DB 8EH */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* MOV dst:Sd(SS,DS),src:Ew */
mov13 cmac14struc data(
.mov12,2,
specS,modd+doublerange+registerrange,rss,rds,
specE,modw,
msegfix,src, /* SEGFIX src */
mdbn,8eh, /* DB 8EH */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* MOV dst:Ab,src:Xb */
mov14 cmac11struc data(
.mov13,2,
specA,modb,specX,modb,
msegfix,src, /* SEGFIX src */
mdbn,0a0h, /* DB 0A0H */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* MOV dst:Aw,src:Xw */
mov15 cmac11struc data(
.mov14,2,
specA,modw,specX,modw,
msegfix,src, /* SEGFIX src */
mdbn,0a1h, /* DB 0A1H */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* MOV dst:Xb,src:Ab */
mov16 cmac11struc data(
.mov15,2,
specX,modb,specA,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,0a2h, /* DB 0A2H */
mdwf,dst, /* DW dst */
mendm), /* ENDM */
/* MOV dst:Xw,src:Aw */
mov17 cmac11struc public data(
.mov16,2,
specX,modw,specA,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,0a3h, /* DB 0A3H */
mdwf,dst, /* DW dst */
mendm), /* ENDM */
/* MOVS SI$ptr:Eb,DI$ptr:Eb */
movs1 cmac12struc data(
nil,2,
specE,modb,specE,modb,
mnosegfix,res,si$ptr, /* NOSEGFIX ES,SI$ptr */
msegfix,di$ptr, /* SEGFIX DI$ptr */
mdbn,0a4h, /* DB 0A4H */
mendm), /* ENDM */
/* MOVS SI$ptr:Ew,DI$ptr:Ew */
movs2 cmac12struc public data(
.movs1,2,
specE,modw,specE,modw,
mnosegfix,res,si$ptr, /* NOSEGFIX ES,SI$ptr */
msegfix,di$ptr, /* SEGFIX DI$ptr */
mdbn,0a5h, /* DB 0A5H */
mendm), /* ENDM */
/* MOVSB */
MOVSB1 CMAC3STRUC PUBLIC DATA(
NIL,0,
MDBN,0A4H,
MENDM),
/* MOVSW */
MOVSW1 CMAC3STRUC PUBLIC DATA(
NIL,0,
MDBN,0A5H,
MENDM),
/* MUL mplier:Eb */
mul1 cmac10struc data(
nil,1,
specE,modb,
msegfix,mplier, /* SEGFIX mplier */
mdbn,0f6h, /* DB 0F6H */
mmodrm1,4,mplier, /* MODRM 4,mplier */
mendm), /* ENDM */
/* MUL mplier:Ew */
mul2 cmac10struc public data(
.mul1,1,
specE,modw,
msegfix,mplier, /* SEGFIX mplier */
mdbn,0f7h, /* DB 0F7H */
mmodrm1,4,mplier, /* MODRM 4,mplier */
mendm), /* ENDM */
/* NEG dst:Eb */
neg1 cmac10struc data(
nil,1,
specE,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,0f6h, /* DB 0F6H */
mmodrm1,3,dst, /* MODRM 3,dst */
mendm), /* ENDM */
/* NEG dst:Ew */
neg2 cmac10struc public data(
.neg1,1,
specE,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,0f7h, /* DB 0F7H */
mmodrm1,3,dst, /* MODRM 3,dst */
mendm), /* ENDM */
/* NOP */
nop1 cmac3struc public data(
nil,0,
mdbn,90h, /* DB 90H */
mendm), /* ENDM */
/* NOT dst:Eb */
not1 cmac10struc data(
nil,1,
specE,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,0f6h, /* DB 0F6H */
mmodrm1,2,dst, /* MODRM 2,dst */
mendm), /* ENDM */
/* NOT dst:Ew */
not2 cmac10struc public data(
.not1,1,
specE,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,0f7h, /* DB 0F7H */
mmodrm1,2,dst, /* MODRM 2,dst */
mendm), /* ENDM */
/* OR dst:Eb,src:Db */
or1 cmac14struc data(
nil,2,
specE,modb,specD,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,80h, /* DB 80h */
mmodrm1,1,dst, /* MODRM 1,dst */
mdbf,src, /* DB src */
mendm), /* ENDM */
/* OR dst:Ew,src:Dw */
or2 cmac14struc data(
.or1,2,
specE,modw,specD,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,81h, /* DB 81H */
mmodrm1,1,dst, /* MODRM 1,dst */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* OR dst:Ew,src:Db */
or3 cmac14struc data(
.or2,2,
specE,modw,specD,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,81h, /* DB 81H */
mmodrm1,1,dst, /* MODRM 1,dst */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* OR dst:Ab,src:Db */
or4 cmac9struc data(
.or3,2,
specA,modb,specD,modb,
mdbn,0ch, /* DB 0CH */
mdbf,src, /* DB src */
mendm), /* ENDM */
/* OR dst:Aw,src:Db */
or5 cmac9struc data(
.or4,2,
specA,modw,specD,modb,
mdbn,0dh, /* DB 0DH */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* OR dst:Aw,src:Dw */
or6 cmac9struc data(
.or5,2,
specA,modw,specD,modw,
mdbn,0dh, /* DB 0DH */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* OR dst:Eb,src:Rb */
or7 cmac12struc data(
.or6,2,
specE,modb,specR,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,08h, /* DB 08h */
mmodrm2,src,dst, /* MODRM src,dst */
mendm), /* ENDM */
/* OR dst:Ew,src:Rw */
or8 cmac12struc data(
.or7,2,
specE,modw,specR,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,09h, /* DB 09h */
mmodrm2,src,dst, /* MODRM src,dst */
mendm), /* ENDM */
/* OR dst:Rb,src:Eb */
or9 cmac12struc data(
.or8,2,
specR,modb,specE,modb,
msegfix,src, /* SEGFIX src */
mdbn,0ah, /* DB 0Ah */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* OR dst:Rw,src:Ew */
or10 cmac12struc public data(
.or9,2,
specR,modw,specE,modw,
msegfix,src, /* SEGFIX src */
mdbn,0bh, /* DB 0Bh */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* OUT dst:Db,src:Ab */
out1 cmac9struc data(
nil,2,
specD,modb,specA,modb,
mdbn,0e6h, /* DB 0E6H */
mdbf,dst, /* DB dst */
mendm), /* ENDM */
/* OUT dst:Db,src:Aw */
out2 cmac9struc data(
.out1,2,
specD,modb,specA,modw,
mdbn,0e7h, /* DB 0E7H */
mdbf,dst, /* DB dst */
mendm), /* ENDM */
/* OUT dst:Rw(DX),src:Ab */
out3 cmac8struc data(
.out2,2,
specR,modw+singlerange+registerrange,rdx,
specA,modb,
mdbn,0eeh, /* DB 0EEH */
mendm), /* ENDM */
/* OUT dst:Rw(DX),src:Aw */
out4 cmac8struc public data(
.out3,2,
specR,modw+singlerange+registerrange,rdx,
specA,modw,
mdbn,0efh, /* DB 0EFH */
mendm), /* ENDM */
/* POP dst:Ew */
pop1 cmac10struc data(
nil,1,
specE,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,8fh, /* DB 8FH */
mmodrm1,0,dst, /* MODRM 0,dst */
mendm), /* ENDM */
/* POP dst:Sd(ES) */
pop2 cmac16struc data(
.pop1,1,
specS,modd+singlerange+registerrange,res,
mdbit, /* DBIT 3(0),2(dst(0)),3(7) */
mnumberbits,3,0,
mformalbits,2,dst,0,
mnumberbits,3,7,
mendbit,
mendm), /* ENDM */
/* POP dst:Sd(SS,DS) */
pop3 cmac17struc data(
.pop2,1,
specS,modd+doublerange+registerrange,rss,rds,
mdbit, /* DBIT 3(0),2(dst(0)),3(7) */
mnumberbits,3,0,
mformalbits,2,dst,0,
mnumberbits,3,7,
mendbit,
mendm), /* ENDM */
/* POP dst:Rw */
pop4 cmac12struc public data(
.pop3,1,
specR,modw,
mdbit, /* DBIT 5(01011B),3(dst(0)) */
mnumberbits,5,0bh,
mformalbits,3,dst,0,
mendbit,
mendm), /* ENDM */
/* POPF */
popf1 cmac3struc public data(
nil,0,
mdbn,9dh, /* DB 9DH */
mendm), /* ENDM */
/* PUSH dst:Ew */
push1 cmac10struc data(
nil,1,
specE,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,0ffh, /* DB 0FFH */
mmodrm1,6,dst, /* MODRM 6,dst */
mendm), /* ENDM */
/* PUSH dst:Sd */
push2 cmac15struc data(
.push1,1,
specS,modd,
mdbit, /* DBIT 3(0),2(dst(0)),3(6) */
mnumberbits,3,0,
mformalbits,2,dst,0,
mnumberbits,3,6,
mendbit,
mendm), /* ENDM */
/* PUSH dst:Rw */
push3 cmac12struc public data(
.push2,1,
specR,modw,
mdbit, /* DBIT 5(01010B),3(dst(0)) */
mnumberbits,5,0ah,
mformalbits,3,dst,0,
mendbit,
mendm), /* ENDM */
/* PUSHF */
pushf1 cmac3struc public data(
nil,0,
mdbn,9ch, /* DB 9CH */
mendm); /* ENDM */
end$module cmac3;