Email Us! sales@juggersoft.com


JGS Cobol Decompiler Product Description


Every computer program stores the same information in two different computer languages. The first is called the source language and consists of English-like instructions which can be understood by humans. If a programmer wishes to change the task which a program is to perform s/he changes the instructions contained in the source. However, these instructions cannot be understood by the computer. The computer can only process instructions written in machine language. In order to run the program, the source instructions must be run through a language translator called a compiler. The compiler creates a new version of the program, one written in machine language. In other words, the compiler translates programs written in a language understandable by humans into a language understood by the computer.

As long as the machine language version of the program exists on the computer system, the program can be run, and as long as the source language version exists on the system, the program can be modified, enhanced or debugged by the programmer. If the machine language version is accidentally destroyed, the source can be run through the computer again, and a new machine instruction version is generated. But, if the source is accidentally destroyed, it can only be reached by the use of a decompiler, a programmer's tool which reverses the process of the original compiler.


AS/400 ENVIRONMENT: The JGS utility will run on all models of the AS/400 system. Version 3 Release 1 or above of OS/400 is required.


CAPABILITIES: The AS/400 COBOL compiler produces not only executable code, but also a number of structures and tables which contain information associating the source member to the executable program object. An ODT (object definition table) is constructed containing information (length, type, decimal positions) about variables and constants. A BOM (break offset mapping) table is constructed associating a source statement with an MI instruction number. At that MI instruction number, a string of MI instructions are performed corresponding to the original COBOL source instruction. A symbol table is constructed, containing the names of source fields, tables and arrays. Altogether, the program template contains almost all of the information from the original source member. The decompiler, then, has the capacity to generate a new source member identical to the original, except for internal comments, for any program object which has not had observability removed.

PERFORMANCE: Current benchmarks put the time required to decompile a program at approximately three times (3x) longer than the time required to compile the source program. That is, a program which would take 1 minute to compile would take 3 minutes to decompile.


Enhances/increases user programmer productivity in several problem solving areas:

Determines which of several source members corresponds to currently running object programs.
Retrieves modifications in current object missing from current source.
Delivers Best Price/Performance for Recreating Existing Code.
Simplifies Migration to New Platforms.
Protects Investment in Existing Software for Which Source is Not Available.


Each copy of JGS COBOL/400 is tied to a particular CPU via the system's unique serial number to prevent unauthorized duplication of the software. In order to decompile a program object, the user must have *ALLOBJ authority over the object to be restored and *CHANGE authority to the source physical file where the new member is to reside.


JGS COBOL currently supports decompilation of program objects compiled under CPF release 8 through OS/400 V5R2 for those objects which have not had observability removed.


U.S. 513-885-0858

Home | Products | About Us | Partners | Contact | Order | Site Directory | Downloads | Samples
© Copyright 2012 Jugger Enterprises, LLC. All rights reserved. Send email to