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