Month: August 2025

Debugging AbendsDebugging Abends

I’ve added an introductory section on debugging to the main page. Currently, there are four videos and four abending programs that cover abends S0C1, S0C4, and two versions of S0C7. You will have to add some JCL for your system. I’ve included the data sets the programs process. I will add some more videos for other abends later.

Review an Instruction: MGReview an Instruction: MG

Multiply Grande (MG) is the sister instruction of Multiply(M) and produces produces 128-bit products in an even/odd register pair. Ususally the result we are looking for is in the single, odd, grande (64-bits) register. That presents a problem: How do we convert a 64-bit product in a grande register to packed-decimal? It’s not obvious and requires a bit of mathematical know-how. This article shows you the assembler code that will do the conversion, and points to an explanation.

Review an Instruction: MFYReview an Instruction: MFY

It’s been a few weeks since I’ve posted. Life intervenes occasionally. This post is for a Multiply (Fullword) instruction which has an RXY-a instruction format providing a long displacement. This instruction is well worth a look, if you consistently reach for (M) when multiplying fullwords. You can find the short article for MFY here.

, ,