Files
Digital-Research-Source-Code/MPM OPERATING SYSTEMS/MPM-86/MPM-86 2.0 SOURCES/10/CMAC4.PLM
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

506 lines
15 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

$title ('CODEMACRO DEFINITIONS - PART 4')
cmac4:
do;
/*
modified 6/16/81 R. Silberstein
*/
$include (:f1:macro.lit)
$include (:f1:cmacd.lit)
$include (:f1:equals.lit)
$include (:f1:cmac.lit)
dcl
/* RCL dst:Eb,count:Db(1) */
rcl1 cmac13struc data(
nil,2,
specE,modb,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d0h, /* DB 0D0H */
mmodrm1,2,dst, /* MODRM 2,dst */
mendm), /* ENDM */
/* RCL dst:Ew,count:Db(1) */
rcl2 cmac13struc data(
.rcl1,2,
specE,modw,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d1h, /* DB 0D1H */
mmodrm1,2,dst, /* MODRM 2,dst */
mendm), /* ENDM */
/* RCL dst:Eb,count:Rb(CL) */
rcl3 cmac13struc data(
.rcl2,2,
specE,modb,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d2h, /* DB 0D2H */
mmodrm1,2,dst, /* MODRM 2,dst */
mendm), /* ENDM */
/* RCL dst:Ew,count:Rb(CL) */
rcl4 cmac13struc public data(
.rcl3,2,
specE,modw,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d3h, /* DB 0D3H */
mmodrm1,2,dst, /* MODRM 2,dst */
mendm), /* ENDM */
/* RCR dst:Eb,count:Db(1) */
rcr1 cmac13struc data(
nil,2,
specE,modb,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d0h, /* DB 0D0H */
mmodrm1,3,dst, /* MODRM 3,dst */
mendm), /* ENDM */
/* RCR dst:Ew,count:Db(1) */
rcr2 cmac13struc data(
.rcr1,2,
specE,modw,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d1h, /* DB 0D1H */
mmodrm1,3,dst, /* MODRM 3,dst */
mendm), /* ENDM */
/* RCR dst:Eb,count:Rb(CL) */
rcr3 cmac13struc data(
.rcr2,2,
specE,modb,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d2h, /* DB 0D2H */
mmodrm1,3,dst, /* MODRM 3,dst */
mendm), /* ENDM */
/* RCR dst:Ew,count:Rb(CL) */
rcr4 cmac13struc public data(
.rcr3,2,
specE,modw,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d3h, /* DB 0D3H */
mmodrm1,3,dst, /* MODRM 3,dst */
mendm), /* ENDM */
/* REP PREFX */
rep1 cmac3struc public data(
nil,0+prefix$on,
mdbn,0f3h, /* DB 0F3H */
mendm), /* ENDM */
/* REPE PREFX */
repe1 cmac3struc public data(
nil,0+prefix$on,
mdbn,0f3h, /* DB 0F3H */
mendm), /* ENDM */
/* REPNE PREFX */
repne1 cmac3struc public data(
nil,0+prefix$on,
mdbn,0f2h, /* DB 0F2H */
mendm), /* ENDM */
/* RET dst:Db */
ret1 cmac7struc data(
nil,1,
specD,modb,
mdbn,0c2h, /* DB 0C2H */
mdwf,dst, /* DW dst */
mendm), /* ENDM */
/* RET dst:Dw */
ret2 cmac7struc data(
.ret1,1,
specD,modw,
mdbn,0c2h, /* DB 0C2H */
mdwf,dst, /* DW dst */
mendm), /* ENDM */
/* RET */
ret3 cmac3struc public data(
.ret2,0,
mdbn,0c3h, /* DB 0C3H */
mendm), /* ENDM */
/* RETF dst:Db */
retf1 cmac7struc data(
nil,1,
specD,modb,
mdbn,0cah, /* DB 0CAH */
mdwf,dst, /* DW dst */
mendm), /* ENDM */
/* RETF dst:Dw */
retf2 cmac7struc data(
.retf1,1,
specD,modw,
mdbn,0cah, /* DB 0CAH */
mdwf,dst, /* DW dst */
mendm), /* ENDM */
/* RETF */
retf3 cmac3struc public data(
.retf2,0,
mdbn,0cbh, /* DB 0C3H */
mendm), /* ENDM */
/* ROL dst:Eb,count:Db(1) */
rol1 cmac13struc data(
nil,2,
specE,modb,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d0h, /* DB 0D0H */
mmodrm1,0,dst, /* MODRM 0,dst */
mendm), /* ENDM */
/* ROL dst:Ew,count:Db(1) */
rol2 cmac13struc data(
.rol1,2,
specE,modw,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d1h, /* DB 0D1H */
mmodrm1,0,dst, /* MODRM 0,dst */
mendm), /* ENDM */
/* ROL dst:Eb,count:Rb(CL) */
rol3 cmac13struc data(
.rol2,2,
specE,modb,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d2h, /* DB 0D2H */
mmodrm1,0,dst, /* MODRM 0,dst */
mendm), /* ENDM */
/* ROL dst:Ew,count:Rb(CL) */
rol4 cmac13struc public data(
.rol3,2,
specE,modw,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d3h, /* DB 0D3H */
mmodrm1,0,dst, /* MODRM 0,dst */
mendm), /* ENDM */
/* ROR dst:Eb,count:Db(1) */
ror1 cmac13struc data(
nil,2,
specE,modb,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d0h, /* DB 0D0H */
mmodrm1,1,dst, /* MODRM 1,dst */
mendm), /* ENDM */
/* ROR dst:Ew,count:Db(1) */
ror2 cmac13struc data(
.ror1,2,
specE,modw,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d1h, /* DB 0D1H */
mmodrm1,1,dst, /* MODRM 1,dst */
mendm), /* ENDM */
/* ROR dst:Eb,count:Rb(CL) */
ror3 cmac13struc data(
.ror2,2,
specE,modb,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d2h, /* DB 0D2H */
mmodrm1,1,dst, /* MODRM 1,dst */
mendm), /* ENDM */
/* ROR dst:Ew,count:Rb(CL) */
ror4 cmac13struc public data(
.ror3,2,
specE,modw,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d3h, /* DB 0D3H */
mmodrm1,1,dst, /* MODRM 1,dst */
mendm), /* ENDM */
/* SAHF */
sahf1 cmac3struc public data(
nil,0,
mdbn,9eh, /* DB 9EH */
mendm), /* ENDM */
/* SAL dst:Eb,count:Db(1) */
sal1 cmac13struc data(
nil,2,
specE,modb,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d0h, /* DB 0D0H */
mmodrm1,4,dst, /* MODRM 4,dst */
mendm), /* ENDM */
/* SAL dst:Ew,count:Db(1) */
sal2 cmac13struc data(
.sal1,2,
specE,modw,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d1h, /* DB 0D1H */
mmodrm1,4,dst, /* MODRM 4,dst */
mendm), /* ENDM */
/* SAL dst:Eb,count:Rb(CL) */
sal3 cmac13struc data(
.sal2,2,
specE,modb,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d2h, /* DB 0D2H */
mmodrm1,4,dst, /* MODRM 4,dst */
mendm), /* ENDM */
/* SAL dst:Ew,count:Rb(CL) */
sal4 cmac13struc public data(
.sal3,2,
specE,modw,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d3h, /* DB 0D3H */
mmodrm1,4,dst, /* MODRM 4,dst */
mendm), /* ENDM */
/* SAR dst:Eb,count:Db(1) */
sar1 cmac13struc data(
nil,2,
specE,modb,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d0h, /* DB 0D0H */
mmodrm1,7,dst, /* MODRM 7,dst */
mendm), /* ENDM */
/* SAR dst:Ew,count:Db(1) */
sar2 cmac13struc data(
.sar1,2,
specE,modw,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d1h, /* DB 0D1H */
mmodrm1,7,dst, /* MODRM 7,dst */
mendm), /* ENDM */
/* SAR dst:Eb,count:Rb(CL) */
sar3 cmac13struc data(
.sar2,2,
specE,modb,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d2h, /* DB 0D2H */
mmodrm1,7,dst, /* MODRM 7,dst */
mendm), /* ENDM */
/* SAR dst:Ew,count:Rb(CL) */
sar4 cmac13struc public data(
.sar3,2,
specE,modw,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d3h, /* DB 0D3H */
mmodrm1,7,dst, /* MODRM 7,dst */
mendm), /* ENDM */
/* SBB dst:Eb,src:Db */
sbb1 cmac14struc data(
nil,2,
specE,modb,
specD,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,80h, /* DB 80H */
mmodrm1,3,dst, /* MODRM 3,dst */
mdbf,src, /* DB src */
mendm), /* ENDM */
/* SBB dst:Ew,src:Db */
sbb2 cmac14struc data(
.sbb1,2,
specE,modw,
specD,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,81h, /* DB 81H */
mmodrm1,3,dst, /* MODRM 3,dst */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* SBB dst:Ew,src:Dsb */
sbb3 cmac14struc data(
.sbb2,2,
specE,modw,
specD,modsb,
msegfix,dst, /* SEGFIX dst */
mdbn,83h, /* DB 83H */
mmodrm1,3,dst, /* MODRM 3,dst */
mdbf,src, /* DB src */
mendm), /* ENDM */
/* SBB dst:Ew,src:Dw */
sbb4 cmac14struc data(
.sbb3,2,
specE,modw,
specD,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,81h, /* DB 81H */
mmodrm1,3,dst, /* MODRM 3,dst */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* SBB dst:Ab,src:Db */
sbb5 cmac9struc data(
.sbb4,2,
specA,modb,
specD,modb,
mdbn,1ch, /* DB 1CH */
mdbf,src, /* DB src */
mendm), /* ENDM */
/* SBB dst:Aw,src:Db */
sbb6 cmac9struc data(
.sbb5,2,
specA,modw,
specD,modb,
mdbn,1dh, /* DB 1DH */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* SBB dst:Aw,src:Dw */
sbb7 cmac9struc data(
.sbb6,2,
specA,modw,
specD,modw,
mdbn,1dh, /* DB 1DH */
mdwf,src, /* DW src */
mendm), /* ENDM */
/* SBB dst:Eb,src:Rb */
sbb8 cmac12struc data(
.sbb7,2,
specE,modb,
specR,modb,
msegfix,dst, /* SEGFIX dst */
mdbn,18h, /* DB 18H */
mmodrm2,src,dst, /* MODRM src,dst */
mendm), /* ENDM */
/* SBB dst:Ew,src:Rw */
sbb9 cmac12struc data(
.sbb8,2,
specE,modw,
specR,modw,
msegfix,dst, /* SEGFIX dst */
mdbn,19h, /* DB 19H */
mmodrm2,src,dst, /* MODRM src,dst */
mendm), /* ENDM */
/* SBB dst:Rb,src:Eb */
sbb10 cmac12struc data(
.sbb9,2,
specR,modb,
specE,modb,
msegfix,src, /* SEGFIX src */
mdbn,1ah, /* DB 1AH */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* SBB dst:Rw,src:Ew */
sbb11 cmac12struc public data(
.sbb10,2,
specR,modw,
specE,modw,
msegfix,src, /* SEGFIX src */
mdbn,1bh, /* DB 1BH */
mmodrm2,dst,src, /* MODRM dst,src */
mendm), /* ENDM */
/* SCAS dst:Eb */
scas1 cmac8struc data(
nil,1,
specE,modb,
mnosegfix,res,dst, /* NOSEGFIX ES,dst */
mdbn,0aeh, /* DB 0AEH */
mendm), /* ENDM */
/* SCAS dst:Ew */
scas2 cmac8struc public data(
.scas1,1,
specE,modw,
mnosegfix,res,dst, /* NOSEGFIX ES,dst */
mdbn,0afh, /* DB 0AFH */
mendm), /* ENDM */
/* SCASB */
SCASB1 CMAC3STRUC PUBLIC DATA(
NIL,0,
MDBN,0AEH,
MENDM),
/* SCASW */
SCASW1 CMAC3STRUC PUBLIC DATA(
NIL,0,
MDBN,0AFH,
MENDM),
/* SHR dst:Eb,count:Db(1) */
shr1 cmac13struc data(
nil,2,
specE,modb,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d0h, /* DB 0D0H */
mmodrm1,5,dst, /* MODRM 5,dst */
mendm), /* ENDM */
/* SHR dst:Ew,count:Db(1) */
shr2 cmac13struc data(
.shr1,2,
specE,modw,
specD,modb+singlerange+number$range,1,
msegfix,dst, /* SEGFIX dst */
mdbn,0d1h, /* DB 0D1H */
mmodrm1,5,dst, /* MODRM 5,dst */
mendm), /* ENDM */
/* SHR dst:Eb,count:Rb(CL) */
shr3 cmac13struc data(
.shr2,2,
specE,modb,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d2h, /* DB 0D2H */
mmodrm1,5,dst, /* MODRM 5,dst */
mendm), /* ENDM */
/* SHR dst:Ew,count:Rb(CL) */
shr4 cmac13struc public data(
.shr3,2,
specE,modw,
specR,modb+singlerange+register$range,rcl,
msegfix,dst, /* SEGFIX dst */
mdbn,0d3h, /* DB 0D3H */
mmodrm1,5,dst, /* MODRM 5,dst */
mendm); /* ENDM */
end$module cmac4;