Browse Prior Art Database

Universal Macro Processor

IP.com Disclosure Number: IPCOM000074380D
Original Publication Date: 1971-Apr-01
Included in the Prior Art Database: 2005-Feb-23
Document File: 3 page(s) / 51K

Publishing Venue

IBM

Related People

Harris, L: AUTHOR [+2]

Abstract

A Device Assembler Program is an assembly program running under IBM OS/360 which assembles the device source statements into object code for the device. The Universal Macro Processor (UMP) provides a macro language capability for the Device Assembler with a minimal expenditure of effort. The technique, which provides a macro language capability virtually equivalent to that provided in OS/360 Assembler Language, is applicable to any assemblers operating under OS/360. The particular attraction of the UMP approach is its ease of implementation and general applicability. Although the following describes its usage with a particular device, its general applicability will be clear.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 54% of the total text.

Page 1 of 3

Universal Macro Processor

A Device Assembler Program is an assembly program running under IBM OS/360 which assembles the device source statements into object code for the device. The Universal Macro Processor (UMP) provides a macro language capability for the Device Assembler with a minimal expenditure of effort. The technique, which provides a macro language capability virtually equivalent to that provided in OS/360 Assembler Language, is applicable to any assemblers operating under OS/360. The particular attraction of the UMP approach is its ease of implementation and general applicability. Although the following describes its usage with a particular device, its general applicability will be clear.

Macro definitions are written using the OS/360 macro language and conditional assembly statements. All facilities of the OS/360 macro and conditional assembly language are provided with the following exceptions: Attribute facility (e.g., Type, Length, Scaling, Integer,

Count, Number) for symbolic name in the device statements.

(Count and Number attributes of macro instruction operands

are provided.)

&SYSECT facility may not be used to represent the device

CSECT in which the statement appears.

No assembler statement may precede the MACRO statement of

locally defined macros.

No macro names may be the same as any device operation code.

Variable symbols are substituted for in device comment

statements.

Operation involves two steps equivalent to the steps involved in using the OS/360 Assembler. First, the macro 1 is placed on the macro library 2. Second, the actual compilation of the source program is done. The first step uses the IFLUPDAT program 3 described later in this section. While placing the macro 1 on the library 2, IFLUPDAT modifies the macro for the proper use with the Device Assembler 4. The second step consists of execution of a three jobstep procedure. Jobstep 1 uses IFLUPDAT 3 to preprocess the source program 5 to generate preprocessed source program 6 in the same way the macro definition 1 is preprocessed. (Details of this preprocessing are provided later.) Jobstep 2 uses the OS/360 Assembler 7 to expand all macro instructions from library 2. Because...