mirror of
https://github.com/ibm2030/IBM2030.git
synced 2026-01-11 23:52:47 +00:00
106 lines
22 KiB
Plaintext
106 lines
22 KiB
Plaintext
{\rtf1\ansi\ansicpg1252\deff0\deftab709{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}}
|
||
\viewkind4\uc1\pard\lang1033\f0\fs14 0 1 2 3 4 5 6 7 8 9\par
|
||
\par
|
||
.\par
|
||
Branch Index High (86),Branch Index Low or Equal (87) The incr is added to the 1st oprndm and the sum Which of the 2 ops (as specified by G7) together with \par
|
||
Format. OP,R1,R3,B2,D2 is compared algebraically to the cmprnd. Subsequently the results of the comparison determine whether to \par
|
||
A Each of these codes utilize a BR addr, and the 3 operands. the sum is placed in the 1st oprnd reg regardless of branch. The comparison consists of subtracting the \par
|
||
The BR addr (B2,D2) is determined prior to the whether the BR is taken. 1st oprnd from the cmprnd, so the formula is \par
|
||
addition and comparison. When the 1st oprnd and the cmprnd coincide, the original Branch=G7V sign V carry V 1BC \par
|
||
The 1st oprnd is in the reg specified by R1 reg contents are used as the cmprnd. Thus want to where carry V 1BC determines overflow, in which case \par
|
||
The cmprnd is in the od reg specified by R3 add incr to 1st oprnd and compare to orig contents of the sign must be inverted (sign V overflow) \par
|
||
The incr is in the reg specified by R3 cmprnd reg before storing sum in 1st oprnd reg\par
|
||
B If R3=odd, the incr and cmprnd coincide.\par
|
||
If R1=R3=odd, all 3 oprnds coincide.\par
|
||
\par
|
||
From I cycles. During loop At end of BR \par
|
||
S1=1 If previous instruction was execute S4=(Incr reg=even) S1=unchanged \par
|
||
C S2=1 if D ? (IC unavail) S5=(Done) S2=1 if something wrong with IC \par
|
||
S6=0 S6=1 if low bit of BR addr ?0 S6=1 if BR addr too big, otherwise S6=0 \par
|
||
IJ=IC S7=Carry from compute 1st oprnd UJ=BR addr \par
|
||
UV=BR addr, not checked for low bit=0 V=Incr addr and cmprnd addr. At end if no BR. \par
|
||
D=IC unavail T=1st oprnd addr S=0 \par
|
||
T=LH+K3L=1st oprnd addr. D=Incr IJ=IC\par
|
||
D L=Cmprnd At end in all cases\par
|
||
L=0, G is unpredictable\par
|
||
11 --- 0327 00 --- 032C 01 --- 0329 11 --- 0337 10 --- 033A 01 --- 033D\par
|
||
K 1010,1 | K 0001 | K 0011 | | | K 1010,1 | K 0010,0 |\par
|
||
A V+0+1>RC | A V.KL>Z | A LXH+KL>V | A G+LH+C>LC | A 0>L | A R>V | \par
|
||
E QA071.EFE------------*S *9A LS S*------S STORE |*--O-------------------------| |*--O ----| |*--O---S *9A LS S*--O---S WRITE K>W R*--O----------QA161------EJE\par
|
||
(11) C 0>S4,S5 | C ANSNZ>S2 | | C 0>S7 | | | | | | | | | | | | (00,10)\par
|
||
BR IX | | | | | | | | | | | | | | | | | | BR IX end\par
|
||
R 0,0 2CR R S2,1 29R | R 1,0 2ER | | R 1,1BC 3AR | R AC,G7 3CR | R S7,0 74R |\par
|
||
E1-- 00 --EA E2-- *1 --EB | E4-- 10 --ED | | E7-- 1* --EG | E8-- ** --EH | E9-- *0 --EJ |\par
|
||
Store high byte Test BR addr | Incr addr+V | | Before | Restore high byte | Branch |\par
|
||
F if BR addr for Lo bit ?0 | | | G7=op | of BR addr | |\par
|
||
1>S3 record in S2 | | | L0=sign | BR on | |\par
|
||
BR on S2 for | 11 --- 032B 10 --- 0386 | | G high=1000 | (IBC V sign)* | 10 --- 033E |\par
|
||
IC unavail | K 0000,0 | K 0011 | | | After | (op V carry) K 0010,0 | |\par
|
||
| A D>R | A LXH+KL>V | | | G7=op V carry | Note,IBC=0 so | A R>V | |\par
|
||
G ----S *A8 LS S*------S STORE |---O | AC=sign | 1BC V sign=sign O---S WRITE K>W R---- \par
|
||
C 1>S6 | C 0>S7 | | | G0=-sign | which is in AC | | | \par
|
||
| | | | | | G1,2,3 are | | | |\par
|
||
R 1,0 86R R 1,0 2ER | | unpredictable | | R S2,0 74R\par
|
||
G3-- 10 --GC G4-- 10 --GD | | | | G9-- *0 --GJ\par
|
||
Store IC unavail (BR addr too big) | | | | Branch\par
|
||
H 1>S6 records this fact | | | |\par
|
||
Incr addr+V | | | |\par
|
||
| | | 11 --- 033B | 00 --- 033C\par
|
||
| | | K 1010,1 | | K 0001,0 |\par
|
||
| | | A 0>L | | A 0>S | \par
|
||
J | | ----S *9A LS S---O---S WRITE K>W R*--- \par
|
||
| | | | | | | |\par
|
||
| | | | | | | |\par
|
||
| | R G0,G7 3CR | R S1,INTR 00R |\par
|
||
| | J8-- ** --JH | J9-- ** --JJ |\par
|
||
| | Restore high byte | No branch |\par
|
||
K ----------------------------------------------------------------------------------------- | of BR addr | |\par
|
||
| | BR on | |\par
|
||
| 10 --- 032E | (1BC V sign) | 11 --- 033F |\par
|
||
| K 0001 | | (op V carry) | K 0001,0 | |\par
|
||
| A V.KH>Z | | Note,1BC=1 so | A 0>S | |\par
|
||
L ---*S UV>MN LS S*--- | 1BC V sign=sign ----S WRITE K>W R---O \par
|
||
C HZ>S4 | | | which is in G0 | | |\par
|
||
| | | | | | |\par
|
||
R 0,0 30R | | R S1,INTR 00R |\par
|
||
L1-- 00 --LA | | L9-- ** --LJ |\par
|
||
(Incr reg=even)>S4 | | No branch |\par
|
||
M Read incr | ----------------------- -----------------------\par
|
||
| | |\par
|
||
01 --- 032D | 00 --- 0330 10 --- 0332 01 --- 0331 10 --- 0336 00 --- 0334 01 --- 0339 | | ** --- XXX\par
|
||
| | ----K 0001 | | | | | | | | | | | | | | GO TO |\par
|
||
A L-R+C>LC | A VOVK>V | A R>D | A V-0>V | A R>L | A R+D>R | A L-R+C>LC | | | | QA001.CBB | \par
|
||
N ---*S UV>MN LS S*------S WRITE |*------S UV>MN LS S*--O---S WRITE |*------S T>MN LS S*--O---| |*--O---S WRITE |*--- ----| | \par
|
||
| C 0>S7 | | | | | | | | | | | | | | | | | | \par
|
||
| | | ----| | | | | | | ----| | | | | | | | | |\par
|
||
| R 0,0 30R | R 1,0 32R R S4,1 31R | R 1,0 36R | R 0,S7 34R | R 0,S5 38R | R 1,1 37R | |\par
|
||
| N1-- 00 --NA | N2-- 10 --NB N3-- *1 --NC | N4-- 10 --ND | N5-- 0* --NE | N6-- 0* --NF | N7-- 11 --NG N9-- ** --NJ\par
|
||
| No carry,0>S7 | Cmprnd reg>V high Incr>D | Incr reg=odd | Cmprnd>L | No carry | Done Normal I \par
|
||
P | Do compare | (Always odd) Read cmprnd | Decr V | Read 1st oprnd | Compute 1st oprnd | Do final compare cycle start\par
|
||
| Read incr | BR on even | Leave V high as is | BR on carry | BR on done |\par
|
||
| 11 --- 032F | | 11 --- 0333 | | 01 --- 0335 | 00 --- 0338 \par
|
||
| | | | | K 0001 | | | | | | | | Total time in micro sec \par
|
||
| A L-R+C>LC | | | A V-K+1>V | | | A R+D+1>R | | A T-0>T | BR 50 \par
|
||
Q O--*S UV>MN LS S*--- ----S WRITE |*--- ----| |---O---S WRITE |*--- No BR 49 \par
|
||
| C 1>S7 | | | | | C LZ>S5 | | (Including base indexing) \par
|
||
| | | | | | | | | | \par
|
||
| R 0,0 30R R 1,0 36R R 0,S5 38R R AC,1 2DR | \par
|
||
| Q1-- 00 --QA Q4-- 10 --QD Q6-- 0* --QF Q7-- *1 --QG | \par
|
||
| Carry,1>S7 Incr reg=even Carry Not done |\par
|
||
R | Do compare Decr V Compute 1st oprnd Decr T |\par
|
||
| Read incr Make V high even BR on done (Done)>S5 |\par
|
||
| BR on carry |\par
|
||
| |\par
|
||
| |\par
|
||
S | | \par
|
||
| |\par
|
||
Q -----------------------------------------------------------------------------------------------------------------------------------------------------------\par
|
||
A\par
|
||
1\par
|
||
9 | 128015 09/27/65 | Mach 2030 | Date 11/17/65 Sheet 1 QA191 |\par
|
||
1 | 128045 11/17/65 | Name | Log 3563 Version |\par
|
||
| | Mode Manual | |\par
|
||
| | P.N. 837013 | Branch Index High (86) |\par
|
||
| | IBM Corp. | Branch Index Low or Equal (87) |\par
|
||
}
|
||
|