Did you ever have some particular comment or section of code that you would like to have stand out so that when the next person comes along he would be sure to see it? Maybe it's instructions to compile a program or display file in a certain way or to note that someone should be notified if a certain piece of logic changes. Maybe you have a specific way that a certain program needs to be implemented whenever it's changed. Wouldn't it be nice to be able to highlight, reverse image, draw boxes, change the color of the source code, etc. for the source code you want to emphasize? Although it's not provided in SEU, you can do this by inserting the proper hexadecimal code(s) into your source file.
I've found that the hex values to add emphasis begin at about hex 22 and end somewhere before hex 40. I find it easier to create a master source member with the desired emphasis and then copy those lines into the programs where I want to emphasize the source code. The sample program will demonstrate a couple ways to emphasize source as well as use them in combination to draw a box. If you have access to a dumb terminal that allows entry of hex characters, you can skip the sample program and enter the hex codes directly into your source member. While the highlighting codes are not visible in the edited source, their value must remain in the source code and be displayed in the viewable part of the screen for them to have their desired effect.
Here is a short list of hex values that you may find more interesting than others:
21 - Reverse Image
22 � Highlight
23 � Highlight and Reverse Image
24 � Underline
28 - Color Red
Program source � BLDSRC � Builds a source member with sample highlighting
FOUTFIL1 O F 92 DISK IOUTREC DS I 13 13 FLD1 I 15 15 FLD2 I 20 31 TEXT1 I 81 81 FLD3 I 83 83 FLD4 I 1 92 SRC I 'SAMPLE TEXT' C TEXT C CLEARSRC C MOVELTEXT TEXT1 C MOVELX'21' FLD1 RI C WRITEOUTFIL1 OUTREC C MOVELX'22' FLD1 HI C WRITEOUTFIL1 OUTREC C MOVELX'23' FLD1 HI RI C WRITEOUTFIL1 OUTREC C MOVELX'24' FLD1 UL C WRITEOUTFIL1 OUTREC C MOVELX'28' FLD1 RED C WRITEOUTFIL1 OUTREC C* DRAW BOX C Z-ADD0 COUNT 10 C COUNT DOUEQ3 C ADD 1 COUNT C CLEARSRC C MOVELX'23' FLD1 C MOVELX'22' FLD4 C COUNT IFEQ 2 C MOVELX'22' FLD2 C MOVELX'23' FLD3 C END C WRITEOUTFIL1 OUTREC C END C SETON LR
Commands to run
CRTSRCPF FILE(MYLIB/SRCSMPLE) RCDLEN(92) MBR(SRCSMPLE) OVRDBF FILE(OUTFIL1) TOFILE(MYLIB/SRCSMPLE) MBR(SRCSMPLE) CALL PGM(BLDSRC)
Granatir is vice president of Technical Services for Interlink Technologies in Maumee, Ohio, and he has 17 years experience working primarily on the IBM midrange platforms.