Hcinit

Aus Si:Wiki von Siegrist SystemLösungen - Informatik und Rezepte
Zur Navigation springen Zur Suche springen

<syntaxhighlight lang="asm">

  • SAW IN HCPSAW BEI'SENDE MODIF...' IMMER AUF 'SENDE UNGESCHUETZTE...'
  • (BIT 2^0 = 0) SETZEN, WEIL DAS FELD FUERS TERMINAL BEI DER NAECHSTEN
  • DATENEINGABE NICHT ALS MODIFIZIERT GILT.
    • V2.1C12
  • SIGNAL FUER HC IST EINGETROFFEN. ZUR VERARBEITUNG UND AUSGABE
  • WIRD EINE CONTI HCPRCO ANGESTOSSEN (PRIO 8) DIE LAUEFT DANN IN IDLE
  • TIME UND HIER KANN WEITERGEMAXHT WERDEN.
    • V2.0A00

HCINIT CSECT

        PRINT NOGEN

R0 EQU 0 R1 EQU 1 R2 EQU 2 R3 EQU 3 R4 EQU 4 R5 EQU 5 R6 EQU 6 R7 EQU 7 R8 EQU 8 R9 EQU 9 R10 EQU 10 R11 EQU 11 R12 EQU 12 R13 EQU 13 R14 EQU 14 R15 EQU 15

  • ---------------------------------------------------------------------*
        GPARMOD 31

HCINIT AMODE ANY HCINIT RMODE ANY

    1. BAL OPSYN ##BAS
    2. BALR OPSYN ##BASR
  • ---------------------------------------------------------------------*
  • > REGISTERUEBERGABE <
  • R3 STATEIN
  • R4 USEREIN
  • R14 RET. ADRES (BASR R14,R15)
        USING *,R15
        STM   R8,R12,SAVTAB
        ST    R14,SAV14
        USING CPHCINI,R9,R10
        USING STATEIN,R3
        USING USEREIN,R4

CPHCINI BASR R9,0

        BCTR  R9,R0
        BCTR  R9,R0
        LA    R1,4095
        LA    R10,1(R9,R1)
        DROP  R15
        B     HCIBEG

SAV14 DS F SAVTAB DS 5F

        EXTRN IDHCOCP
        EXTRN EIIDHC             AUS MOD. MCP002
  • ---------------------------------------------------------------------*

HCIBEG EQU *

        L     R5,STATHCPG
        LA    R12,4095
        L     R14,STAIDCP  
        L     R13,STATRPBA
        L     R7,STATCID
        LA    R2,STATEI
        YRESET RPB=(R13),OPTCD=(CS,SPEC),CID=(R7),AID=(R14)
        L     R14,STAIDCP  
        L     R7,STATCID
        LA    R2,STATEI
        LA    R11,33
        YSENDREC RPB=(R13),CID=(R7),AID=(R14),AREA=HCSAW,AREALN=(R11),-
              EID=(R2),AAREA=(R5),AAREALN=(R12)
        YSHOWCB BLK=RPB,BLKADDR=(R13),WAREA=HCARECL,LENGTH=4,         -
              FIELDS=ARECLN
        L     R14,STAIDCP  
        L     R7,STATCID
        LA    R2,STATEI
        YRESET RPB=(R13),OPTCD=(CA,ANY),CID=(R7),AID=(R14)
  • MVC HCDEV(8),STATDEV

HCWUD L R5,ZAAREA1 LETZTE NACHR.

        CLC   10(1,R5),=X'40'
        BNE   PARSETX
        CLC   11(5,R5),=X'1B20614040'  PAR00L    ISO ??
        BE    PARSET1
        CLC   11(5,R5),=X'2740817C7C'  PAR00L    EBCDIC ??
        BE    PARSET2

PARSETX EQU * STD PAR00L WIRD GESESTZT

        CLC   10(1,R5),=X'48'   NK 8BYTE ???
        BE    PARSETX1          NEIN
        CLC   10(1,R5),=X'50'   NK 16 BYTE ???
        BE    PARSETX3
        B     PARSETX2

PARSETX1 EQU * NK 8BYTE

        MVC   HCNK8(10),9(R5)
        LH    R12,HCNK8L
        LA    R5,HCNK8
        B     HCW230

PARSETX3 EQU * NK 16 BYTE

        MVC   HCNK16(18),9(R5)  18 BYTE MIT LEN-FIELD UND NBZ
        LH    R12,HCNK16L
        LA    R5,HCNK16
        B     HCW230

PARSETX2 EQU * " -> BEI U/D LETZTES BILD

        MVC   HCPAR(13),HCPARSTD
        MVI   HCPARL,X'10'    LEN 10 BEI ISO
        LH    R12,HCMESSL
        LA    R5,HCMESS
        B     HCW230

PARSET1 EQU * PAR00L ISO

        MVC   HCPAR(13),11(R5)
        CLC   USTYP,=C'U/D '      NUR BEI U/D SAW AENDERN !!!!!!
        BNE   PARSET1E
        CLI   HCPSAW,X'4D'          MOD (FM2)
        BE    PARSET11
        CLI   HCPSAW,X'45'          MOD (FM2)
        BE    PARSET11
        CLI   HCPSAW,X'41'          MOD (FM2)
        BE    PARSET11
        B     PARSET1E

PARSET11 EQU *

        NI    HCPSAW,B'11111110'   UNGER. 2^0  AUF GERADE 2^0

PARSET1E EQU *

        MVI   HCPARL,X'10'    LEN 10 BEI ISO
        LH    R12,HCMESSL
        LA    R5,HCMESS
        B     HCW230

PARSET2 EQU * PAR00L EBCDIC

        MVC   HCPAR(13),11(R5)
        MVI   HCPARL,X'02'    LEN 01 BEI EBCDIC
        LH    R12,HCMESSL
        LA    R5,HCMESS
        B     HCW230

HCW230 L R14,STAIDCP

        L     R7,STATCID
        LA    R2,STATEI
        YSEND RPB=(R13),CID=(R7),AID=(R14),AREA=(R5),AREALN=(R12),    -
              EID=(R2)

HCWNTXX EQU *

        POSSIG EIID=EIIDHC,LIFETIM=43000,SPOSTR=(R3)
  • INIT HCPRINT
        L     R14,SAV14
        LM    R8,R12,SAVTAB
        BR    R14

MVCMESS MVC 0(0,R5),HCMESS AUSFUEHREN UEBER EX

        DS    F
  • ----------------------------------------------------------------------*

HCS23 DS 2F SAVE R2,R3 HCCOMAD DS F HCARECL DS F LENGTH DER EMPF. NACHR.

        ENTRY HCARECL       FUER MOD. HCPRCO
        DS     0F
  • PAR00L PAG 4040
  • HCSAW DC X'0A48436254664B540041212740D9' BILDSCHIRM LESEN

HCSAW DC X'1E401B20614040436254664B54004121' 2740D9' SCHIRM

        DC     X'1B206148406600004040000000212740D9'

HCMESS DS 0H HCPARL DC X'10' LEN 10 BEI ISO, 01 BEI EBCDIC

        DC    X'40'

HCPAR DC X'1B20614040' | HCPSAW DC X'44' > HCPARAM HCPREST DC X'6254003240004121' |

  • DC X'2740814840000000404100000021'
  • DC X'2740817CD7'
  • DC X'1D7C' HELL
  • DC C'HARDCOPY INITIATED ON DEVICE: 31
  • HCDEV DC CL8' '
  • DC C'
  • DC CL30' '
  • DC X'1DC8'
  • DC X'19'

HCMESSE EQU * HCMESSL DC Y(HCMESSE-HCMESS) HCPARSTD DC X'1B20614040456254003240004121' HCNK8 DC X'0A484051450050000044' STD NK 8 BYTE HCNK8L DC H'10' HCNK16 DC X'125040514500500000440000000000000000' STD NK 16BYTE HCNK16L DC H'18'

        DS    0F
        LTORG
  • ---------------------------------------------------------------------*
  • D S E C T ' S
  • ---------------------------------------------------------------------*
        STATEIN
        EJECT
        USEREIN
  • STATEIN DSECT (STATIONEINTRAG 1 FUER TERMINAL)
  • STATPNA DS CL8 H1500350
  • STATPRO DS CL8 V217H15
  • STAIDCP DS F AID --> CP
  • USERPAGA DS F A(ANFANG BUFFERSEITE FUER PARTNERVERWALTUNG)
  • USERPAGE DS F A(ENDE BUFFERSEITE)
  • TERMTYP DS F X'00000000'
  • STATCID DS F CID FUER TERMINAL --> CP
  • STATAKTP DS H AKTUELLER PID
  • STATTID DS H TID FUER TERMINAL X'00000001'
  • STATZZ DS CL1 X'00'
  • STATK DS CL1 X'00' NORMAL X'10' K- TASTE GED
  • STATRPBA DS F
  • STATCCBA DS F
  • STATEI DS F
  • STATRPB1 DS F
  • STATSTOP DS F
  • STATFREE DS CL1
  • STATADM DS CL1
  • STATPW DS CL8
  • STAPWSAV DS CL8
  • STATDEV DS CL8 DEVICE NAME FOR HARDCOPY
  • STATFORM DS CL8 FORMULAR NAME FUER HC
  • STATHCPG DS F 3 SEITEN FUER HC UND SO
  • STATHCTY DS CL1 'P' = 80 CHAR / REST = 82 CHAR
  • STATCLK DS F CLOCK TIME LAST ENTRY
  • USEREIN DSECT (PARTNEREINTRAG 1 FUER YOPNCON)
  • USCPNAME DS CL8 CP000001
  • USPRO DS CL8 V217H21
  • USAID DS F AID --> CP00001
  • USCID DS F CID FUER CP00001 -- > CP
  • USPNA DS CL8 $DIALOG
  • USTYP DS CL4 TIAM/U/D/UCON
  • USPID DS H PID X'01'
  • USREF DS CL1 REFRESH GEWUENSCHT ? ('Y' - JA/ 'N' - NEIN)
  • USOKZ DS CL1
  • USTEXTA DS F A(ANFNANG BUFFER FUER YRECEIVE)
  • USTEXTE DS F A(ENDE BUFFER FUER YRECEIVE)
  • USTERMS DS F A(ANFANG BUFFER FUER TERMINAL/PARTNERSEITE)
  • USIN DS F A(DCAM INPUT)
  • USLEN DS F A(DCAM LAENGE)
  • USADR1 DS F *
  • USADR2 DS F *
  • USADR3 DS F *
  • USADR4 DS F *
  • USPAC DS CL4 PAC DES PARTNERS
  • USNEA DS CL8 NEABT-PROT
    • -->*<-- WIRD VOM MODUL VERSORGT UND GEFLEGT
  • USRES DS F REASON X'00000001' --> ASY YRECEIVE EINGETROF N
    • X'00000002' --> ACK VON TERMINAL
    • X'00000003' --> NEUAUFBAU VON GEWUENSCH
    • REG 1 -- > STATIONSTABELLENEINTRAG
    • REG 2 -- > PARTNERTABELLEN EINTRAG
    • BEI REASON 1 / BUFFERVERWALTUNG / TERMINALBUFFERVERWALTUNG /
    • YSEND AUF TERMINAL SOFERN AKTUELLER PID = YRECEIVE / VERSORGUNG USACK
    • BEI REASON 2 / BUFFERVERWALTUNG / TERMINALBUFFERENTWERTUNG /
    • YSEND AUFS TERMINAL
    • BEI REASON 3 / VERSORGUNG USACK ?
    • YSEND AUFS TERMINAL
  • USRC DS F
  • USERROR DS CL15
  • USFREE DS CL1
  • USCO DS F
  • USEI DS F
  • USRPBA DS F
  • USCCBA DS F
  • USLOE1 DS CL16
  • USLOE2 DS CL7
  • USLOE3 DS CL25
  • USSEQ DS F
  • USKEY1 DS F
  • USSEQSA DS F
  • USDEC DS CL1
  • USLOE1SA DS CL16
  • USLOE2SA DS CL7
  • DS CL20
  • USTATPNA DS CL8
  • USTATPRO DS CL8
  • ORG USLOE2+4
  • ZAAREA1 DS F
  • ORG
        END