image of READY prompt

Wang2200.org

Listing of file='RCDI010A' on disk='vmedia/701-2048D.wvd.zip'

# Sector 636, program filename = 'RCDI010A'
0010 REM RCDI010A,00-00(02/18/76),12003A - COPYRIGHT WANG LABS. INC., 1976
0040 COM R1$8,R2$1,R3$2,R9$8,R9$(16)
   : COM B$(16,16)1,A1,A2,I$3
   : DIM Q6$64
   : PRINT HEX(03)
0090 GOSUB '243("ENTER THE DISK ADDRESS.",3)
   : IF STR(Q6$,1,1)="B"THEN 120
   : IF STR(Q6$,1,1)<>"3"THEN 150
0120 I$=Q6$
   : GOSUB '97(I$)
   : IF Q6$="Y"THEN 190
0150 GOSUB 1270
   : GOTO 90
0190 GOSUB '248(7,20,9)
   : PRINT "DISK ADDRESS = ";I$
   : GOSUB '98(250,2,I$)
   : LOAD DC T#0,"SELECT"250,250
0250 % SELECT #2 GOES HERE
0260 GOSUB '98(280,3,I$)
   : LOAD DC T#0,"SELECT"280,280
0280 % SELECT #3 GOES HERE
0300 GOSUB '245("ENTER THE HIGHEST SECTOR ADDRESS OF THE DISK.",5,0)
   : A2=Q9
   : GOSUB '248(8,20,0)
   : PRINT "HIGHEST SECTOR ADDRESS =";A2
0340 GOSUB '245("ENTER THE NUMBER OF INDEX SECTORS.  (0=UNKNOWN)",3,0)
   : A1=Q9
   : IF A1>=A2THEN 380
   : IF A1<256THEN 400
0380 GOSUB 1270
   : GOTO 340
0400 IF A1<>0THEN 570
   : PRINT HEX(010A);"MOUNT INPUT DISK";TAB(64)
   : GOSUB '254
   : PRINT HEX(01);,"FINDING NUMBER OF INDEX SECTORS";TAB(64),TAB(64),TAB(64)
0460 DATA LOAD BA T#2,(A1,A1)B$()
   : AND (B$(1,1),C0)
   : IF B$(1,1)=HEX(40)THEN 530
   : IF B$(1,1)<>HEX(80)THEN 460
   : DATA LOAD BA T#2,(A1,A3)B$()
   : AND (B$(1,1),F0)
   : IF B$(1,1)<>HEX(80)THEN 460
0530 A1=A1-1
   : PRINT HEX(01);TAB(64),"REMOUNT ISS PLATTER IF REMOVED.";TAB(64)
   : KEYIN Q6$,660,660
   : GOSUB '254
0570 GOSUB '248(9,20,0)
   : PRINT "NUMBER OF INDEX SECTORS =";A1
   : COM CLEAR I$
   : LOAD DC T#0,"RCDI020A"
0640 DEFFN'15
   : PRINT HEX(030A);"REMOUNT ISS PLATTER IF REMOVED."
0660 KEYIN Q6$,660,660
   : GOSUB '254
   : COM CLEAR R1$
   : LOAD DC T#0,"START040"
0710 DEFFN'242(W0,Q6$)
   : IF W0<=0THEN 750
   : INIT(Q6$)Q6$
   : PRINT STR(Q6$,1,W0);
0750 RETURN
0770 DEFFN'254
   : GOSUB '248(2,0,1)
   : INPUT "KEY RETURN(EXEC) TO RESUME ",Q6$
   : W4$=Q6$
   : GOSUB '248(1,0,3)
   : Q6$=W4$
   : RETURN
0850 DEFFN'243(Q6$,Q0)
   : GOSUB 1300
0870 SELECT CO 205
   : Q6$=" "
   : INPUT Q6$
   : IF Q0=0THEN 1370
   : IF LEN(Q6$)<=Q0THEN 1370
   : GOSUB 1270
0940 DEFFN'244(Q0)
   : GOSUB 1350
   : GOSUB 1320
   : GOTO 870
0990 DEFFN'245(Q6$,Q2,Q3)
   : Q0=ABS(Q2)+Q3+1
   : GOSUB 1300
1020 IF ABS(Q2)+ABS(Q3)=0THEN 1060
   : GOSUB '242(ABS(Q2)+2,HEX(09))
   : PRINT "/"
   : GOTO 1070
1060 PRINT ,," "
1070 GOSUB 1350
   : SELECT CO 205
   : Q9,W0=-1E-99
   : INPUT Q9
   : IF W0=Q9THEN 1150
   : IF ABS(Q2)+Q3=0THEN 1250
   : IF Q9>=0THEN 1220
   : IF Q2<=0THEN 1220
1150 GOSUB 1270
1170 DEFFN'246(Q2,Q3)
   : Q0=ABS(Q2)+Q3+1
   : GOSUB 1350
   : GOSUB 1320
   : GOTO 1020
1220 IF ABS(Q9)>=10^ABS(Q2)THEN 1150
   : W0=ABS(Q9*10^Q3)
   : IF INT(W0)<>W0THEN 1150
1250 GOSUB '248(3,0,1)
   : RETURN
1270 GOSUB '248(3,0,1)
   : PRINT "RE-ENTER"
   : RETURN
1300 SELECT PRINT 005(64),CO 005
   : PRINT HEX(010A);STR(Q6$,1);
1320 SELECT PRINT 005(64),CO 005
   : GOSUB '242(Q0+2,"-")
   : PRINT TAB(64)
1350 PRINT HEX(010A0A)
   : RETURN
1370 PRINT HEX(0A);TAB(64)
   : SELECT PRINT 005(64),CO 005
   : RETURN
1410 DEFFN'248(Q6,Q7,Q8)
   : GOSUB 1540
   : IF Q8<1THEN 1510
   : GOSUB 1510
   : SELECT PRINT 205
   : PRINT TAB(64-Q7)
   : IF Q8<2THEN 1510
   : FOR W0=2TO Q8
   : PRINT HEX(0A);TAB(64)
   : NEXT W0
1510 PRINT HEX(01)
   : GOSUB '242(Q7,HEX(09))
   : GOSUB '242(Q6,HEX(0A))
1540 SELECT PRINT 005(64),CO 005
   : RETURN
1580 DEFFN'97(Q6$)
   : STR(Q6$,4)=HEX(00300131023203330434053506360737083809390A410B420C430D440E
     450F462020)
   : $TRAN(Q6$<2,2>,Q6$<4>)R
   : IF STR(Q6$,2,1)>HEX(0F)THEN 1720
   : IF STR(Q6$,3,1)>HEX(0F)THEN 1720
   : ROTATE(STR(Q6$,2,1),4)
1650 STR(Q6$,4,1)=STR(Q6$,2,1)
   : OR (STR(Q6$,4,1),STR(Q6$,3,1))
   : $GIO(02000316122273404400,Q6$)
   : IF STR(Q6$,8,1)<>HEX(00)THEN 1720
   : Q6$="Y"
   : RETURN
1720 Q6$="N"
   : F$="N"
   : RETURN
1770 DEFFN'98(Q8,Q9,Q6$)
   : R9$(1)=HEX(20FF0000A5D7313331300D0000FE)
   : PACK(####)STR(R9$(1),3,2)FROMQ8
   : CONVERT Q9TO STR(R9$(1),7,1),(#)
   : STR(R9$(1),8,3)=Q6$
   : LIMITS T#0,"SELECT",Q8,Q9,Q9
   : DATA SAVE BA T#0,(Q8+1,Q9)R9$()
   : RETURN