Data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 7387c8f97b
commit cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions

View file

@ -0,0 +1,48 @@
* Unconditional Branch or No Branch:
B label Unconditional
BR Rx "
NOP label No Operation
NOPR Rx "
* After Compare Instructions
BH label Branch on High
BHR Rx "
BL label Branch on Low
BLR Rx "
BE label Branch on Equal
BER Rx "
BNH label Branch on Not High
BNHR Rx "
BNL label Branch on Not Low
BNLR Rx "
BNE label Branch on Not Equal
BNER Rx "
* After Arithmetic Instructions:
BP label Branch on Plus
BPR Rx "
BM label Branch on Minus
BMR Rx "
BZ label Branch on Zero
BZR Rx "
BO label Branch on Overflow
BOR Rx "
BNP label Branch on Not Plus
BNPR Rx "
BNM label Branch on Not Minus
BNMR Rx "
BNZ label Branch on Not Zero
BNZR Rx "
BNO label Branch on No Overflow
BNOR Rx "
* After Test Under Mask Instructions:
BO label Branch if Ones
BOR Rx "
BM label Branch if Mixed
BMR Rx "
BZ label Branch if Zero
BZR Rx "
BNO label Branch if Not Ones
BNOR Rx "
BNM label Branch if Not Mixed
BNMR Rx "
BNZ label Branch if Not Zero
BNZR Rx "

View file

@ -0,0 +1,73 @@
expression:
opcode,op1,rel,op2
opcode,op1,rel,op2,OR,opcode,op1,rel,op2
opcode,op1,rel,op2,AND,opcode,op1,rel,op2
opcode::=C,CH,CR,CLC,CLI,CLCL, LTR, CP,CE,CD,...
rel::=EQ,NE,LT,LE,GT,GE, (fortran style)
E,L,H,NE,NL,NH (assembler style)
P (plus), M (minus) ,Z (zero) ,O (overflow)
opcode::=CLM,TM
rel::=O (ones),M (mixed) ,Z (zeros)
* IF
IF expression [THEN]
...
ELSEIF expression [THEN]
...
ELSE
...
ENDIF
IF C,R4,EQ,=F'10' THEN if r4=10 then
MVI PG,C'A' pg='A'
ELSEIF C,R4,EQ,=F'11' THEN elseif r4=11 then
MVI PG,C'B' pg='B'
ELSEIF C,R4,EQ,=F'12' THEN elseif r4=12 then
MVI PG,C'C' pg='C'
ELSE else
MV PG,C'?' pg='?'
ENDIF end if
* SELECT
SELECT expressionpart1
WHEN expressionpart2a
...
WHEN expressionpart2b
...
OTHRWISE
...
ENDSEL
* example SELECT type 1
SELECT CLI,HEXAFLAG,EQ select hexaflag=
WHEN X'20' when x'20'
MVI PG,C'<' pg='<'
WHEN X'21' when x'21'
MVI PG,C'!' pg='!'
WHEN X'22' when x'21'
MVI PG,C'>' pg='>'
OTHRWISE otherwise
MVI PG,C'?' pg='?'
ENDSEL end select
* example SELECT type 2
SELECT select
WHEN C,DELTA,LT,0 when delta<0
MVC PG,=C'0 SOL' pg='0 SOL'
WHEN C,DELTA,EQ,0 when delta=0
MVC PG,=C'1 SOL'' pg='0 SOL'
WHEN C,DELTA,GT,0 when delta>0
MVC PG,=C'2 SOL'' pg='0 SOL'
ENDSEL end select
* CASE
CASENTRY R4 select case r4
CASE 1 case 1
LA R5,1 r5=1
CASE 3 case 3
LA R5,2 r5=2
CASE 5 case 5
LA R5,3 r5=1
CASE 7 case 7
LA R5,4 r5=4
ENDCASE end select