image of READY prompt

Wang2200.org

Listing of file='B327020' on disk='vmedia/bsc_3271_rel_1.14.04.wvd.zip'

# Sector 633, program filename = 'B327020'
0010 REM B327020 02/03/84,3270 LOADER (COPYRIGHT WANG LABS.) 1980
0090 COM F1$(80)2,F2$40
   : COM N$64,B$1,C$1,A,B,C
   : COM C1$(16)16,C1$8
   : COM C8$(16)16,C7$(7)80
   : DIM W$(34)121,A$(10)1,B$(16)16,D$(12)4
   : SELECT PRINT 005(80)
   : IF B$="L"THEN 170
   : IF B$="T"THEN 290
   : IF B$="P"THEN 290
   : IF B$="B"THEN 290
   : STOP "Must be Load or Terminal"
0170 SELECT @PART"3270UNIV"
   : @A$=" "
   : STR(@A$,40,1)="L"
   : GOSUB '99(0,"Establish Data Link Processor")
   : PRINT AT(5,0)
   : PRINT
   : PRINT "Microcode loading at --"
   : GOSUB 340
   : GOSUB '201
   : A$(3)=B$
   : FOR A=1TO 12
   : D$(A)=@D$(A)
   : STR(D$(A),3)=HEX(0000)
   : NEXT A
0230 $GIOSETCONFIGURATIONTABLE#6(012002011212400040004031406740004230A000,A$()
     )D$()
   : IF A$(8)<>HEX(00)THEN 550
   : LOAD DC T#0,"327PATCH"
0290 N$(1)="ASKAWHAT"
   : GOSUB 564
   : GOSUB 2430
   : GOSUB 4040
   : C7$(7)=A$
   : IF STR(C7$(7),6,2)="PC"THEN GOSUB 4200
   : IF B$="B"THEN 305
   : IF B$="P"THEN 310
   : Z=0
   : LOAD T#0,"3277TERM"
0305 W$="3277TERM3277TERP"
   : LOAD DC T#0,<2>W$
0310 LOAD DC T#0,"3277TERP"
0340 $GIO#6(4580,Q2$)
   : DATA LOAD DC OPEN T#0,STR(W$,9,8)
   : A$(3)=HEX(0A)
0400 DATA LOAD DC #0,W$()
   : IF A$(3)>HEX(F0)THEN RETURN
   : IF END THEN RETURN
   : $GIOWRITE#6(01200201121240004010400042304000A000,A$())W$()<1,4096>
   : HEXPRINT A$(3)
   : PRINT HEX(0D0C);
   : IF A$(8)<>HEX(00)THEN 550
   : IF A$(3)=HEX(0A)THEN PRINT STR(W$(),1,32)
   : ADD(A$(3),10)
   : GOTO 400
0550 PRINT HEX(03);
   : STOP "ERROR LOADING MICROCODE -- check 2228D device address"
0564 A=-1
   : RESTORE LINE610
0566 A=A+2
   : READ STR(F2$,A)
   : IF STR(F2$,A)<>" "THEN 566
0610 DATA HEX(3D0D)
   : DATA HEX(2C01)
   : DATA HEX(2E02)
   : DATA HEX(2B03)
   : DATA HEX(3104)
   : DATA HEX(3205)
   : DATA HEX(3306)
   : DATA HEX(3407)
   : DATA HEX(3510)
   : DATA HEX(3611)
   : DATA HEX(3712)
   : DATA HEX(3813)
   : DATA HEX(3914)
   : DATA HEX(3A15)
   : DATA HEX(3B16)
   : DATA HEX(3C17)
   : DATA HEX(2D81)
   : DATA HEX(301E)
   : DATA " "
0740 C1$=HEX(08020D03)
   : C1$(01)=HEX(01010101010101010201010101030101)
   : C1$(02)=HEX(01010101010101010101010101010101)
   : C1$(03)=HEX(202122232425262728292A2B2C2D2E2F)
   : C1$(04)=HEX(303132333435363738393A3B3C3D3E3F)
   : C1$(05)=HEX(404142434445464748494A4B4C4D4E4F)
0860 C1$(06)=HEX(505152535455565758595A5B5C5D5E5F)
   : C1$(07)=HEX(606162636465666768696A6B6C6D6E6F)
   : C1$(08)=HEX(707172737475767778797A0101010101)
   : C1$(09)=HEX(01050701080101010101010101010101)
   : C1$(10)=HEX(01010101010101010101010101010101)
0950 C1$(11)=HEX(01060101010101010101010101010101)
   : C1$(12)=HEX(01010101010101010101010101010101)
   : C1$(13)=HEX(01010101010101010101010101010101)
   : C1$(14)=HEX(01010101010101010101010101010101)
   : C1$(15)=HEX(01010101010401010101010101010101)
1020 C1$(16)=HEX(0101010101010101010101010101015F)
   : A=0
   : RESTORE LINE1390
1070 A=A+1
   : READ F1$(A)
   : IF F1$(A)<>" "THEN 1070
   : A=A-1
   : IF STR(A$,6,2)="PC"THEN 1076
   : IF STR(A$,6,2)<>"DW"THEN 1078
1076 A=A+1
   : READ F1$(A)
   : IF F1$(A)<>" "THEN 1076
1078 RETURN
1390 DATA HEX(1200)
   : DATA HEX(0301)
   : DATA HEX(0302)
   : DATA HEX(0303)
   : DATA HEX(0304)
   : DATA HEX(0305)
   : DATA HEX(0306)
   : DATA HEX(0307)
   : DATA HEX(0310)
   : DATA HEX(0311)
   : DATA HEX(0312)
   : DATA HEX(0313)
   : DATA HEX(0314)
   : DATA HEX(0315)
   : DATA HEX(0316)
   : DATA HEX(0317)
   : DATA HEX(0A08)
   : DATA HEX(0B09)
   : DATA HEX(0C0A)
   : DATA HEX(0D0B)
   : DATA HEX(0E0C)
   : DATA HEX(0F0D)
   : DATA HEX(100E)
   : DATA HEX(110F)
   : DATA HEX(0918)
   : DATA HEX(0119)
   : DATA HEX(011A)
   : DATA HEX(041B)
   : DATA HEX(051C)
   : DATA HEX(061D)
   : DATA HEX(031E)
1466 DATA HEX(071F)
   : DATA HEX(08F0)
   : DATA HEX(13A0)
   : DATA HEX(027E)
   : DATA HEX(027F)
   : DATA " "
   : DATA HEX(0B49)
   : DATA HEX(0B59)
   : DATA HEX(0C4A)
   : DATA HEX(0C5A)
   : DATA HEX(1442)
   : DATA HEX(1452)
   : DATA HEX(164F)
   : DATA HEX(165F)
   : DATA HEX(0D46)
   : DATA HEX(0D56)
   : DATA HEX(0E4C)
   : DATA HEX(0E5C)
   : DATA HEX(0F4D)
   : DATA HEX(0F5D)
   : DATA HEX(1045)
   : DATA HEX(1055)
   : DATA HEX(0850)
   : DATA HEX(1548)
   : DATA " "
2430 INIT(20)C8$()
   : C8$(01)=HEX(202020202020202020202020200D2020)
   : C8$(02)=HEX(2020202020202020202020202A203B20)
   : C8$(03)=HEX(202122232425262728292A2B2C2D2E2F)
   : C8$(04)=HEX(303132333435363738393A3B3C3D3E3F)
   : C8$(05)=HEX(404142434445464748494A4B4C4D4E4F)
2480 C8$(06)=HEX(505152535455565758595A5B5C5DA0A0)
   : C8$(07)=HEX(A06162636465666768696A6B6C6D6E6F)
   : C8$(08)=HEX(707172737475767778797A7B7C7D7E7F)
   : RETURN
3000 DEFFN'99(A,A$)
   : PRINT HEX(03);BOX(5,79);HEX(0A0A0E);TAB(40-LEN(A$)/2);A$
   : IF A=0THEN RETURN
   : FOR A=ATO 0STEP -1
   : PRINT A;HEX(0C)
   : $GIO(75FF,A$)
   : NEXT A
   : RETURN
4040 C7$(6)=" '16  '17  '18  '19  '20  '21  '22  '23  '24  '25  '26  '27  '28
      '29  '30  '31"
   : C7$(4)=" PF 5 PF 6 PF 7 PF 8 PF 9 PF10 PF11 PF12 EEof  --   --  Disp NumL
      Util TReq Det"
4060 C7$(3)=" ID=  PA 1 PA 2 PA 3 PF 1 PF 2 PF 3 PF 4 Eras Del  Ins   ^    >
       <    v   DUP"
   : C7$(5)=" '0  '1   '2   '3   '4   '5   '6   '7   '8   '9   '10  '11  '12
     '13  '14  '15"
4080 C7$(1)=" RETURN is ENTER     ERASE is BACK TAB   LOAD is HOME        EDIT
      is RESET"
   : C7$(2)=" FN or STMT is TAB   CLEAR is CLEAR      RUN is NEW LINE     CONT
     INUE is F.M."
   : IF STR(A$,6,2)<>"DW"THEN 4125
4110 C7$(1)=" RETURN is ENTER     ERASE is BACK TAB   EXEC is HOME        EDIT
      is RESET"
   : C7$(2)=" TAB is TAB          PREV SCRN is CLEAR  L/RUN is NEW LINE   DTAB
     /RCALL is F.M."
4125 RETURN
4200 C7$(1)=" RETURN is ENTER     BACKTAB is BACKTAB  SHFT EXEC is HOME   CANC
     EL is RESET"
   : C7$(2)=" TAB is TAB          PREV is CLEAR       EXEC is NEW LINE    GL i
     s F.M."
   : STR(C1$(),VAL(HEX(E5))+1)=BIN(1)
   : F1$(36)=HEX(157F)
   : F1$(43)=HEX(167C)
   : F1$(44)=HEX(167D)
   : F1$(54)=HEX(0148)
4500 RETURN
7000 DEFFN'201
   : A$,@A$=" "
   : INIT(" ")@P$(1),@P$(2),@P$(3),@P$(4)
   : INIT(00)@D$(),@T$()
   : IF STR(@P$(5),55,1)=" "OR STR(Z$,34,1)<"4"THEN 7020
   : STR(Z$,34,1)="3"
   : STR(Z$,10,2)="hh"
7020 @C$,@Z$=Z$
   : @W$=W$
   : A$="xx   Printer  ddd      Unattached "&HEX(0000FF0000FF0000FF0000)
   : ON VAL(STR(@C$,34))-48GOTO 7080,7070,7060,7050
   : GOTO 7090
7050 STR(A$,1,2)=STR(@C$,10,2)
   : STR(A$,15,3)=STR(W$,37,3)
   : @P$(4)=A$
7060 STR(A$,1,2)=STR(@C$,7,2)
   : STR(A$,15,3)=STR(W$,33,3)
   : @P$(3)=A$
7070 STR(A$,1,2)=STR(@C$,4,2)
   : STR(A$,15,3)=STR(W$,29,3)
   : @P$(2)=A$
7080 STR(A$,1,2)=STR(@C$,1,2)
   : STR(A$,15,3)=STR(W$,25,3)
   : @P$(1)=A$
7090 STR(@P$(1),35)=STR(A$,35)
   : GOSUB 7820
   : A$=" "
   : RETURN
7820 D1$="0123456789ABCDEF"
   : A=41
   : B=1
7840 GOSUB 7890
   : STR(@D$(B),1,1)=B$
   : A=A+3
   : B=B+1
   : IF B<9THEN 7840
   : A=1
7860 GOSUB 7890
   : STR(@D$(B),1,1)=B$
   : A=A+3
   : B=B+1
   : IF B<13THEN 7860
   : A=29
   : GOSUB 7890
   : RETURN
7890 C$=STR(Z$,A+0)
   : IF C$="h"THEN 7920
   : BIN(B$)=POS(D1$=C$)-1
   : ROTATE(B$,4)
   : C$=STR(Z$,A+1)
   : BIN(C$)=POS(D1$=C$)-1
   : ADD(B$,C$)
   : RETURN
7920 B$=HEX(00)
   : RETURN