IBM SC34-6814-04 User Manual

Page 338

Advertising
background image

**************************************************************************
*

Before issuing an XPI function call, set up addressing to XPI

*

*

parameter list.

*

*************************************************************************
*

L

R5,UEPXSTOR

SET UP ADDRESSING FOR XPI

*

PARAMETER LIST

*

USING DFHSMMC_ARG,R5

MAP PARAMETER LIST

*
*************************************************************************
*

Before issuing an XPI function call, you must ensure that register

*

*

13 addresses the kernel stack.

*

*************************************************************************
*

L

R13,UEPSTACK

ADDRESS KERNEL STACK

*
*************************************************************************
*

Issue the DFHSMMCX macro call, specifying:

*

*

*

*

CALL --

the macro is to be called immediately

*

*

*

*

CLEAR --

initialize the parameter list before inserting values. *

*

*

*

IN --

input values follow.

*

*

*

*

FUNCTION(GETMAIN) -- acquire storage

*

*

GET_LENGTH(120) -- 120 bytes of it

*

*

SUSPEND(NO) -- don’t suspend if storage not available

*

*

INITIAL_IMAGE(X’00’)

-- clear acquired storage

*

*

to hex zero throughout.

*

*

STORAGE_CLASS(USER)

-- class of storage to be

*

*

acquired is user storage

*

*

above the 16MB line.

*

*

*

*

OUT --

output values follow

*

*

*

*

ADDRESS((R6)) -- put address of acquired storage in

*

*

register 6.

*

*

RESPONSE(*) -- put response at SMMC_RESPONSE in

*

*

macro parameter list.

*

*

REASON(*) -- put reason at SMMC_REASON in macro

*

*

parameter list.

*

*

*

*************************************************************************
*

DFHSMMCX CALL,

*

CLEAR,

*

IN,

*

FUNCTION(GETMAIN),

*

GET_LENGTH(120),

*

SUSPEND(NO),

*

INITIAL_IMAGE(X’00’),

*

STORAGE_CLASS(USER),

*

OUT,

*

ADDRESS((R6)),

*

RESPONSE(*),

*

REASON(*)

*

*

Figure 13. Global user exit program with XPI (part 2)

316

Customization Guide

Advertising