image of READY prompt

Wang2200.org

Listing of file='BSC*010' on disk='vmedia/731-0111.wvd.zip'

# Sector 193, program filename = 'BSC*010'
0010 REM BSC*010 02/02/81, BATCH LOADER,COPYRIGHT WANG LABS, 1981
0030 REM %--DEFINE AND SET VARIABLES
0040 COM X5
   : X5=0
0090 REM GIO ARGUMENTS
0100 COM N$64,G9$(1)6,G2$(2)3,G2$10,G3$14,G$64,B$(3)1,D8$17,B$1,C$1,A,B,C
0110 REM ONLY FOR LOADER
0120 DIM W$(64,4)16,P$(1)16
0130 REM COMMON
0140 G2$(1)=HEX(177F03)
0142 G2$(2)=HEX(177F01)
0146 REM .Provide special keyboard translation  -- Table has (to-from)
0148 REM .1-Left bracket  2-right bracket  3-backslash  4-left arrow
0150 G3$=STR(Z$,51)
   : REM /.User may modify special keys in ASK?xxxx"
0151 C$=STR(Z$,36)
   : REM /FROM ASK?I/O FOR 2780,3780,3741
0152 REM SET SYSTEM DEVICE ADDRESSES (PROGRAM IS #0)
0154 SELECT PRINT 005, CO 005, INPUT 001, CI 001
0156 REM ..Allow fixed length send for 2780 and 3780.
0158 REM ..Overlay fixed length send with REM
0160 REM ...for 3741 and 2200-2200 ("2780")
0161 REM . Jump on 2780,3780,3741
0163 ON VAL(STR(Z$,31))-51 GOTO 180,180,168
0166 C$=STR(Z$,43)
   : REM /2200-2200
0168 STR(W$,57)="BSC*REM"
   : REM /3741 AND 2200-2200
0180 ON VAL(C$) -48 GOSUB 200,210,220,230
   : GOTO 240
0200 SELECT #6 01C
   : C$=HEX(1C)
   : RETURN
0210 SELECT #6 01D
   : C$=HEX(1D)
   : RETURN
0220 SELECT #6 01E
   : C$=HEX(1E)
   : RETURN
0230 SELECT #6 01F
   : C$=HEX(1F)
   : RETURN
0240 D8$=HEX(010A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A)
0280 REM %--RESET T.C. HARDWARE
0300 $GIO #6(4580,Q2$)
0320 REM %--SET MICROCODE PARAMETER VECTOR
0330 P$(1)=Z$
0790 REM %--LOAD 2228B MICROCODE
0810 REM OPEN 2228B MICROCODE FILE
0820 DATA LOAD DC OPEN T#0, STR(W$,9,8)
0830 REM READ HIGH-ORDER 4K OF MICROCODE
0840 DATA LOAD DC #0, W$()
   : REM  PRINT HEX(01)
0845 PRINT "Microcode revision = ";W$(1,1);W$(1,2);TAB(64)
0850 DATA LOAD DC #0, W$()
0860 REM WRITE HIGH-ORDER 4K OF MICROCODE INTO 2228B
0870 $GIO WRITE #6 (012002011212 4400 4020 4000 A200 440C,A$)W$()
0880 IF STR(A$,8,1)<>HEX(00) THEN 1040
0890 REM READ LOW-ORDER 4K BYTES OF MICROCODE
0900 DATA LOAD DC OPEN T#0, STR(W$,9,8)
0910 DATA LOAD DC #0, W$()
0920 REM SET RAM JUMP ADDRESS FOR BID RESET
0930 MAT COPY W$()<129,6>TO G9$()<1,6>
0940 REM SET PARAMETER VECTOR IN MICROCODE
0950 MAT COPY P$() <1,13> TO W$() <1695,13>
0960 REM WRITE LOW-ORDER 4K-128 BYTES OF MICROCODE INTO 2228B
0970 $GIO WRITE #6 (4400 4010 4080 A200 440C, A$)W$()<129,4096-128>
0980 IF STR(A$,8,1)<>HEX(00) THEN 1040
1000 REM %--LOAD EMULATOR PROGRAM
1024 REM %.Set status read $GIO Arg 1
1025 G$=HEX(710540064001400A400A400A400A400A400A400A400A400A400A400A400A711C6C
     014220423042408605F0902020)
   : STR(G$,32,1)=C$
1035 A$="BSC*010B"
   : $IF ON /000,1050
   : LOAD DC T#0,"ASKSHELL"
1040 PRINT HEX(03);
   : STOP "ERROR LOADING MICROCODE -- check 2228B or Op 62B device address"
1050 $GIO TEST FOR PROCESSOR /005(7601,A$)
1055 B$=A$
   : AND (B$,20)
   : IF B$=HEX(20)THEN 1070
1058 STR(G$,43)=HEX(C22071051800A2002020)
   : REM /%GIO change for VP
1060 PRINT "VP"
   : A$="BSC*010V"
   : LOAD DC T#0,"ASKSHELL"
1070 STR(G$,33)=HEX(4401102088014220423042408605C22071051800A2002020)
   : REM /$GIO change for MVP
1080 PRINT "MVP"
   : A$="BSC*010M"
   : LOAD DC T#0,"ASKSHELL"