COBOL review and a little Assembler

I guess I don’t remember COBOL as well as I thought, because when the below COBOL move statement gives me an error…it’s time for a review.

00032 05 WS-AMOUNT1 PIC 999.99.
00033 05 WS-AMOUNT2 PIC 999.99.
00080 MOVE WS-AMOUNT1 TO WS-AMOUNT2.
80 IKF4052I-E DNM=1-254 (NE) MAY NOT BE TARGET FIELD FOR DNM=1-225 (NE) IN MOVE STATEMENT, AND IS DISCARDED.

Typed one of my Assembler programs from school. The beginning where you set up addressability (spell checker doesn’t like this spelling) and register save areas didn’t look familiar to me. Started with PGENT (program entry?) macro and produced errors. Probably a MVT macro, or perhaps school supplied. I looked at SYS2.JCLLIB(PRIMASM) and borrowed the program initialization start and end setup which did look somewhat familiar. I guess it was similar to how I did it at work in DOS/SP/VS/VSE etc. The addressing should be similar between DOS and MVS. A very simple I/O (from a beginning class) program to read disk and write to printer. Simple is what I need…very rusty at Assembler. Need to start with something small. Typing each instruction brought back some familiarity. This exercise also helped me setup the proper JCL for this. I probably won’t do a lot of Assembly at this stage but it will give me a good starting point for the future. Ended the night with a clean Assembly.

Also installed HLASM extension for VS code which didn’t seem to know proper column areas.