| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDA1 | IFEQ | FLDA4 |
| C | | FLDA2 | OREQ | FLDA4 |
| C | | FLDA3 | OREQ | FLDA4 |
| C | | FLDA1 | IFGT | FLDA4 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | If | FLDA1=FLDA4 or |
| C | | | | FLDA2=FLDA4 or |
| C | | | | FLDA3=FLDA4 |
| C | | | If | FLDA1>FLDA4 |
| The following WHXX statements would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDA1 | WHEQ | FLDA2 |
| C | | FLDA1 | WHEN | FLDA2 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | When | FLDA1=FLDA2 |
| C | | | When | FLDA1<>FLDA2 |
| The following DOXX statements would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDN1 | DOWGT | FLDN2 |
| C | | *IN99 | ANDEQ* | OFF |
| C | | FLDN1 | DOUEQ | FLDN2 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Dow | FLDN1>FLDA2 and |
| C | | | | *IN99=OFF |
| C | | | Dou | FLDN1=FLDN2 |
| * | *** | ********** | *** | *** | * | * | *** | **** | * | ** | *** | *** |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDN1 | ADD | FLDN3 |
| C | | | ADD | FLDN3 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | FLDN3=FLDN1 + FLDN2 |
| C | | | Eval | FLDN3=FLDN3 + FLDN4 |
| The following SUB statements would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDN1 | SUB | FLDN2 | | | FLDN3 |
| C | | | SUB | FLDN2 | | | FLDN3 |
| To: |
| CL0N01Factor1_++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | FLDN3=FLDN1 - FLDN2 |
| C | | | Eval | FLDN3=FLDN3 - FLDN2 |
| The following Z-ADD statements would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | Z-ADD | *ZEROS | | | FLDN3 |
| C | | | Z-ADD | 999 | | | FLDN3 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | FLDN3=*ZEROS |
| C | | | Eval | FLDN3=999 |
| The following Z-SUB statements would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | Z-SUB | FLDN2 | | | FLDN3 |
| C | | | Z-SUB | 1000 | | | FLDN3 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | FLDN3=0 - FLDN2 |
| C | | | Eval | FLDN3=0 - 1000 |
| The following MULT statements would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDN1 | MULT | FLDN2 | | | FLDN3 |
| C | | FLDN1 | MULT | .5 | | | FLDN3 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | FLDN3=FLDN1 * FLDN2 |
| C | | | Eval | FLDN3=FLDN1 * .5 |
| The following DIV statements would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDN1 | DIV | FLDN2 | | | FLDN3 |
| C | | FLDN1 | DIV | 15 | | | FLDN3 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | FLDN3=FLDN1 / FLDN2 |
| C | | | Eval | FLDN3=FLDN1 / 15 |
| The EVAL operation has no equivalent to the DIV / MVR operation combination, so any DIV |
| operation followed by a MVR will not be converted. |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDN8 | DIV | FLDN4 | | | FLDN6 |
| C | | | MVR | | | | FLDN3 |
| Arithmetic operations will not be converted if resulting indicators are present. |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | ADD | FLDN2 | | | FLDN3 | | | | 3231 |
| C | | FLDN4 | SUB | FLDN5 | | | FLDN3 | | | | | 30 |
| * | *** | ********** | *** | *** | * | * | *** | ** | * | * | * | *** |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | MOVE | *BLANKS | | | FLDA1 |
| C | | | MOVE | *ZEROS | | | FLDN1 |
| C | | | MOVE | *BLANKS | | | FLDA1 |
| C | | | MOVE | *ZEROS | | | FLDN1 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | FLDA1=*Blanks |
| C | | | Eval | FLDN1=*Zeros |
| C | | | Eval | FLDA1=*Blanks |
| C | | | Eval | FLDN1=*Zeros |
| CVTRPGIV converts MOVE and MOVEL operation codes to Eval operations when '1', '0', |
| *ON or *OFF are specified in factor 2 and the result field is a single indicator. |
| The following MOVE/MOVEL operations would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | MOVE | '1' | | | *IN10 |
| C | | | MOVE | '0' | | | *IN11 |
| C | | | MOVE | *ON | | | *IN10 |
| C | | | MOVE | *OFF | | | *IN11 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | *IN10=*On |
| C | | | Eval | *IN11=*Off |
| C | | | Eval | *IN10=*On |
| C | | | Eval | *IN11=*Off |
| MOVE and MOVEL operations will not be converted if resulting indicators are present. |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | MOVE | FLDN1 | | | FLDN2 | | | | 12 | 11 |
| * | *** | ************** | *** | ************* | * | * | *** | **** | *** | **** | *** | *** |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | SETON | | | | | | | | 1210 | |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | *IN12=*On |
| C | | | Eval | *IN10=*On |
| The following SETOFF statement would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | | SETOFF | | | | | | | | 22 | 21 |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | *IN22=*Off |
| C | | | Eval | *IN20=*Off |
| The following COMP statement would convert from: |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | | FLDN1 | COMP | FLDN2 | | | | | | | 3230 | 31 |
| C | | FLDN1 | COMP | FLDN2 | | | | | | | 3232 | |
| To: |
| CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++++ |
| C | | | Eval | *IN32=FLDN1 > FLDN2 |
| C | | | Eval | *IN30=FLDN1 < FLDN2 |
| C | | | Eval | *IN31=FLDN1 = FLDN2 |
| C | | | Eval | *IN32=FLDN1 >= FLDN2 |
| SETON, SETOFF and COMP operations with continuation statements (AN / OR in postions |
| 7 & 8) will not be converted if resulting indicators are present. |
| CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq |
| C | N50 |
| C | AN60 | | SETON | | | | | | | | 12 | 11 |
| C | 99 |
| C | OR97 | FLDN1 | COMP | FLDN2 | | | | | | | 3230 | 31 |
| * | *** | ************* | *** | *** | * | * | *********** | *** | ***** | ** | *** | *** |