* Temperature conversion 10/09/2015 TEMPERAT CSECT USING TEMPERAT,R15 LA R4,1 i=1 LA R5,TT @tt(1) LA R6,IDE @ide(1) LOOPI CH R4,=AL2((T-TT)/8) do i=1 to hbound(tt) BH ELOOPI ZAP T,0(8,R5) t=tt(i) CVD R4,DW store to packed decimal UNPK PG(1),DW+7(1) unpack OI PG,X'F0' zap sign MVI PG+1,C' ' MVC PG+2(12),0(R6) ide(i) XPRNT PG,14 output i MVC PG(12),=C'Kelvin: ' MVC ZN,EDMASKN load mask EDMK ZN,T+5 t (PL3) BCTR R1,0 sign location MVC 0(1,R1),ZN+L'ZN-1 put sign MVC PG+12(L'ZN-1),ZN value MVC PG+19(2),=C' K' unit XPRNT PG,21 output Kelvin MVC PG(12),=C'Celsius: ' ZAP DW,T t SP DW,=P'273.15' t-273.15 MVC ZN,EDMASKN load mask EDMK ZN,DW+5 (PL3) BCTR R1,0 sign location MVC 0(1,R1),ZN+L'ZN-1 put sign MVC PG+12(L'ZN-1),ZN value MVC PG+19(2),=C' C' unit XPRNT PG,21 output Celsius MVC PG(12),=C'Fahrenheit: ' ZAP DW,T t MP DW,=P'18' *18 DP DW,=PL3'10' /10 ZAP DW,DW(5) SP DW,=P'459.67' t*1.8-459.67 MVC ZN,EDMASKN load mask EDMK ZN,DW+5 (PL3) BCTR R1,0 sign location MVC 0(1,R1),ZN+L'ZN-1 put sign MVC PG+12(L'ZN-1),ZN value MVC PG+19(2),=C' F' unit XPRNT PG,21 output Fahrenheit MVC PG(12),=C'Rankine: ' ZAP DW,T t MP DW,=P'18' *18 DP DW,=PL3'10' /10 ZAP DW,DW(5) t*1.8 MVC ZN,EDMASKN load mask EDMK ZN,DW+5 (PL3) BCTR R1,0 sign location MVC 0(1,R1),ZN+L'ZN-1 put sign MVC PG+12(L'ZN-1),ZN value MVC PG+19(2),=C' R' unit XPRNT PG,21 output Rankine LA R4,1(R4) i=i+1 LA R5,8(R5) @tt(i) LA R6,12(R6) @ide(i) B LOOPI ELOOPI XR R15,R15 BR R14 IDE DC CL12'absolute',CL12'ice melts',CL12'water boils' TT DC PL8'0.00',PL8'273.15',PL8'373.15' T DS PL8 PG DS CL24 ZN DS ZL8 5num DW DS D PL8 15num EDMASKN DC X'402021204B202060' CL8 5num YREGS END TEMPERAT