Cpkmask
Aus Si:Wiki von Siegrist SystemLösungen - Informatik und Rezepte
Version vom 18. Januar 2016, 21:20 Uhr von Sigi (Diskussion | Beiträge) (Die Seite wurde neu angelegt: «<source lang="asm"> ************************************************************************ *…»)
************************************************************************ * * * COPYRIGHT (C) SIEMENS AG 1988 * * COPYRIGHT (C) SIEMENS NIXDORF INFORMATIONSSYSTEME AG 1991 * * ALL RIGHTS RESERVED * * * ************************************************************************ CPKMASK CSECT RESIDENT * NEUE MASKE 'LOGIN-MENU' WIRD BEI STATANM=X'FF' AUSGEGEBEN. * ZUS. BASISREGISTER R9. ACHTUNG, DIE ERSTEN BEFEHLE M U E S S E N * R13 ZUR BASISADRESSIERUNG VERWENDEN BIS R9 GELADEN IST !!!! ** V3.0A00 * MASKE KORRIGIERT. ** V2.0A04 * BEI ANSPRUNG VON CPCLOCK DARF REG 7 + 8 NICHT GESAVET WERDEN. ** V2.0A03 * ACHTUNG ! KEIN CHECK AUF BUFFERENDE (CIRKA NACH 6900 BYTES) * DA MELDUNG PARTNER TABEL FULL (ZCP0005) EHER AUFTRITT * * WENN Z4 GESETZT (FF) WERDEN AKTUELLE PAC'S AUSGEGEBEN * WENN Z2 GESETZT (FF) WIRD KEIN TEXT ANGEHAENGT (NACH PAC'S VOR CMD) * SONST WIRD TEXT Z2 (LEN.80) AUSGEGEBEN * WENN Z3 GESETZT (FF) WIRD DER STRING "CMD:" AUSGEGEBEN * WENN Z6 GESETZT (FF) WIRD PAC NACH TERMOUTA GESCHRIEB. * * WENN Z5 = 00 WIRD EIN FELD NACH LINKS GESPRUNGEN * (DUNKELGESTEUERT BEI PW EINGABE) * * 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 CPKMASK AMODE ANY CPKMASK RMODE ANY ##BAL OPSYN ##BAS ##BALR OPSYN ##BASR *---------------------------------------------------------------------* * * R7 RUECKSPRADRESSE: BASR R7,R13 * USING *,R13,R9 CLM R8,B'1000',=X'FF' VON CPCLOCK ???? BNE BEGKM ** AUS CPCLOCK MVI CLKMOD,X'FF' B BEG SAV7 DS 3F REG 7 BIS REG9 (REG9 = BASIS) BEGKM STM R7,R9,SAV7 USING STATEIN,R3 USING USEREIN,R4 *---------------------------------------------------------------------* * E X T R N ' S *---------------------------------------------------------------------* EXTRN ERRTEXT EXTRN Z2 EXTRN Z3 EXTRN Z4 EXTRN Z5 EXTRN Z6 EXTRN TEXT1 EXTRN OUTPUT2 EXTRN ERR15 EXTRN TERMOUTA EXTRN OUTPUT1 EXTRN CPVER *---------------------------------------------------------------------* BEG EQU * LA R1,4095 | LA R9,1(R13,R1) | BASISREGISTER LADEN * XR R8,R8 MVI STATK,X'10' MVC STATAKTP,=H'0' L R8,=A(Z4) USING Z4,R8 ** AKT. PAC'S AUSGEBEN ?? CLI Z4,X'FF' BNE F111 L R4,USERPAGA L R5,USERPAGE MVC 0(6,R15),=X'27841ED81DC8' * MVC 0(6,R15),=X'27841DC81ED8' A R15,=F'6' A R14,=F'6' L R8,=A(TEXT1) USING TEXT1,R8 MVC 0(88,R15),TEXT1 A R15,=F'88' A R14,=F'88' LOOPK EQU * A R4,=A(X'100') CLI USPID+1,X'00' BE GOTKN L R8,=A(OUTPUT2) USING OUTPUT2,R8 MVC OUTPUT2(80),=CL80' ' MVC OUTPUT2(4),USPAC MVC OUTPUT2+5(8),USPNA MVC OUTPUT2+14(8),USCPNAME MVC OUTPUT2+23(8),USPRO MVC OUTPUT2+32(4),USTYP MVC OUTPUT2+37(15),USERROR CLC USRC,=F'0' BE W130 L R8,=A(ERR15) USING ERR15,R8 ST 15,ERR15 UNPK OUT15,USRC(5) TR OUT15,HX-240 L R8,=A(OUTPUT2) USING OUTPUT2,R8 MVC OUTPUT2+53(8),OUT15 * WENN FREE BYTE GESTETZT IST WIRD DER EINTRAG GELOESCHT W130 EQU * MVC OUTPUT2+61(2),=X'2798' MVC 0(63,R15),OUTPUT2 A R15,=F'63' A R14,=F'63' CLI USFREE,C'F' BNE GOTKN CLI USDEC,C'D' BNE F0 MVI USFREE,C'D' MVC USAID,=F'0' MVC USCID,=F'0' MVI USOKZ,X'00' MVC USLEN,=F'0' MVC USADR1,=F'0' MVC USADR2,=F'0' MVC USADR3,=F'0' MVC USADR4,=F'0' MVC USLOE1,USLOE1SA MVC USRC,=F'0' MVC USNEA,=XL8'3650350000000000' MVC USERROR,=CL15'DECL SEQ:' MVC USERROR+10(4),USSEQSA MVC USSEQ,USSEQSA MVC USKEY1,=C'0000' MVC USLOE2,USLOE2SA XC USLOE3(25),USLOE3 MVC USTEXTA,=F'0' MVC USTEXTE,=F'0' MVC USTERMS,=F'0' MVC USIN,=F'0' MVC USLEN,=F'0' MVC USRES,=F'0' MVC USCO,=F'0' MVC USEI,=F'0' MVC USRPBA,=F'0' MVC USCCBA,=F'0' B GOTKN F0 XC USCPNAME(250),USCPNAME GOTKN EQU * CR R4,R5 BL LOOPK L R8,=A(Z4) USING Z4,R8 F111 MVI Z4,X'FF' ** TEXT ANHAENGEN VOR CMD, NACH PAC'S ?? L R8,=A(Z2) USING Z2,R8 CLI Z2,X'FF' BE F20 ** NEIN ** Z2 ALS TEXT ANHAENGEN MVC 0(80,R15),Z2 A R15,=F'80' A R14,=F'80' MVI Z2,X'FF' F20 EQU * ** STRING CMD: AUSGEBEN ?? L R8,=A(Z3) USING Z3,R8 CLI Z3,X'FF' BNE F21 ** NEIN ** STRING CMD: ANHAENGEN MVI Z3,X'FF' MVC 0(4,R15),=CL4'CMD:' A R15,=F'4' A R14,=F'4' F21 MVC 0(4,R15),=X'27841ED7' A R15,=F'4' A R14,=F'4' ** FELD FUER PASSWORTEINGABE MOD. ?? L R8,=A(Z5) USING Z5,R8 CLI Z5,X'FF' BE P3 ** NEIN ** PW-MENU ODER ANMELDUNG ?? CLI STATANM,STATANMP BE CPKPWM ** PW-MENU ** ANMELDE-MENU !! L R5,=A(OUTPUT1) MVC CPNPTAST(27),0(R5) L R5,=A(CPVER) MVC CPNVER(6),1(R5) LA R5,CPMENUN LH R6,CPMENUNL MVI Z5,X'FF' B X6MENU ** JA ! PASSWORT-MENU CPKPWM EQU * L R5,=A(OUTPUT1) A(KONST) AUS MCP002 MVC CPMPTAST(27),0(R5) L R5,=A(CPVER) AUS MCP002 MVC CPMVER(6),1(R5) LA R5,CPMENUT NICHT FF MENU MIT PASSWORT LH R6,CPMENUL LEN MENU MVI Z5,X'FF' B X6MENU MVC 0(2,R15),=X'27C7' A R15,=F'2' A R14,=F'2' P3 MVI Z5,X'FF' L R8,=A(TERMOUTA) USING TERMOUTA,R8 L R5,TERMOUTA L R8,=A(Z6) USING Z6,R8 CLI Z6,X'FF' BNE X6 MVC 112(4,R5),USPAC SYSZ MVI Z6,X'00' * PAC RESET X6 EQU * L R8,=A(TERMOUTA) USING TERMOUTA,R8 L R5,TERMOUTA LR R6,R14 X6MENU EQU * DROP R8 LA R2,STATEI L R4,STAIDCP L R8,STATCID L R14,STATRPBA YSEND RPB=(R14),CID=(R8),AREA=(R5),AREALN=(R6),AID=(R4), - EID=(R2) CLM R15,B'1001',=X'0000' BE W28 L R8,=A(ERRTEXT) USING ERRTEXT,R8 MVC ERRTEXT(20),=CL20'S/KMASK/YSEND03' CLM R15,B'1110',=X'10040C' BNE X5 SOLSIG EIID=(R2),COND=UNCOND,LIFETIM=10 CLM R15,B'0001',=X'00' BE X6 MVC ERRTEXT(20),=CL20'S/KMASK/YSEND03/SOL' X5 EQU * WENN R15 <> 0 DANN AUSGEBEN TEXT IN MCP002 **X5 BAS R14,FEHLER * NACH AUSGABE DER CP-MASKE --> BLEIBE IM LINE MODUS *>>> RUECKSPRUNG <<<<<<<<<<< W28 EQU * CLI CLKMOD,X'FF' AUS CPCLOCK ??? BNE W28CLK MVI CLKMOD,X'00' RESET BR R7 NACH CPCLOCK W28CLK LM R7,R9,SAV7 !! ACHTUNG, R9 IST BASISREGISTER !! BR R7 *---------------------------------------------------------------------* CLKMOD DC X'00' HX DC C'0123456789ABCDEF' DS 0F OUT15 DS L9 DS CL20 SCHUTZ DS 0F LTORG <<<<<<<<<<<<<<<<< CPMENUT DS 0F DC X'10401B20614040455165005040004121' * DC X'1B206148400000004040000000' PAR00D ANZ-ZEILE * DC X'21' CPMPTAST DS XL27 BEREICH FUER PROG TASTEN UEBER V(KONST) DC X'27822784' DC X'1ED81D7C' NP HELL GESCHUETZT DC C' ' DC C' ' DC C' ___________ ' DC C' _____________ ' DC C' / \ ' DC C' | \ ' DC C' | |~~~~~~~~~| | ' DC C' | |~~~~~~~~~~| | ' DC C' | | ~ ' DC C' | | | | ' DC C' | | ' DC C' | | | | ' DC C' | | ' DC C' | |__________| | ' DC C' | | ' DC C' | / ' DC C' | | ' DC C' | |~~~~~~~~~~~ ' DC C' | | _ ' DC C' | | ' DC C' | |_________| | ' DC C' | | ' DC C' \ / onnecti' DC C'on | | rogramm ' DC C' ~~~~~~~~~~~ ' DC C' ~~~ ' DC C' ' DC C' ' DC C'________________________________________' DC C'________________________________________' DC C' ' DC C' ' DC C' (c) by Siemens-Nixdorf-I' DC C'nformationssysteme AG ' DC C' ' DC C' ' DC C' All Rights R' DC C'eserved ' DC C'________________________________________' DC C'________________________________________' DC C' ' DC C' ' DC C' ' DC C' ' DC X'1ED81DC2' HELL UNTERSTRICHEN DC C'CP is in state LOCK. Please enter passwo' DC C'rd ' DC X'1E7C1DC4' NICHT GESCHUETZT DC C' ' DC X'1ED81D7C' NP HELL GESCHUETZT DC C' Version ' CPMVER DC CL6'X.XXXX' DC C' ' DC C' ' DC X'27C7' TBL CPMENUTL EQU * CPMENUL DC Y(CPMENUTL-CPMENUT) DS 0F CPMENUN DS 0F DC X'10401B20614040455165005040004121' CPNPTAST DS XL27 BEREICH FUER PROG TASTEN UEBER V(KONST) DC X'27822784' DC X'1ED81D7C' NP HELL GESCHUETZT DC C' ' DC C' ' DC C' ___________ ' DC C' _____________ ' DC C' / \ ' DC C' | \ ' DC C' | |~~~~~~~~~| | ' DC C' | |~~~~~~~~~~| | ' DC C' | | ~ ' DC C' | | | | ' DC C' | | ' DC C' | |__________| | ' DC C' | | ' DC C' | / ' DC C' | | ' DC C' | |~~~~~~~~~~~ ' DC C' | | _ ' DC C' | | ' DC C' | |_________| | ' DC C' | | ' DC C' \ / onnecti' DC C'on | | rogramm ' DC C' ~~~~~~~~~~~ ' DC C' ~~~ ' DC C'________________________________________' DC C'________________________________________' DC C' ' DC C' ' DC C' ' DC C' ' DC C' ' DC X'1ED81DC2' DC C'L O G I N - P r' DC C' o c e d e r e' DC X'1ED81D7C' NP HELL GESCHUETZT DC C' ' DC C' ' DC C' ' DC C' VT-Name : ' DC X'1E7C1DC4' NICHT GESCHUETZT CPNVTN DC C' ' DC X'1ED81D7C' NP HELL GESCHUETZT DC C' ' DC C' Password : ' DC X'1E7C1DC4' NICHT GESCHUETZT CPNPASS DC C' ' DC X'1ED81D7C' NP HELL GESCHUETZT DC C' ' DC C' ' DC C' ' DC C'________________________________________' DC C'________________________________________' DC C' ' DC C' ' DC C' Version ' CPNVER DC CL6'X.XXXX' DC C' / ' DC C'Copyright (C) Siemens Nixdorf ' DC C'Informationssysteme AG 1991 ' DC C' ' DC C' ' DC X'27C727C7' 2 * TBL CPMENUNE EQU * CPMENUNL DC Y(CPMENUNE-CPMENUN) DS 0F * *---------------------------------------------------------------------* * D S E C T ' S *---------------------------------------------------------------------* STATEIN EJECT USEREIN END