image of READY prompt

Wang2200.org

Listing of file='28DEFEI' on disk='vmedia/mvp-diag-2.6.2.wvd.zip'

# Sector 4513, program filename = '28DEFEI'
0010 DIM R$10,C$15
0020 DIM T$1,A$3,A1$,C8$,E$,D$(9)70,M$(9)70,N$(9)70,P$(9)70,S$1
   : PRINT HEX(03)
0030 D$(1)="INCORRECT OPCODE DECODER PROM OUTPUT "
   : D$(2)="ILLEGAL OPCODE DETECTOR ERRONEOUSLY GENERATED AN NMI "
   : D$(3)="ILLEGAL OPCODE DETECTOR FAILED TO GENERATE AN NMI "
0040 D$(4)="OPCODE DECODER PROM CHECKSUM ERROR "
   : D$(5)=" DS STEERING LOGIC FAILED DURING AN NMI "
   : D$(6)=" DS STEERING LOGIC FAILED DURING A MODE 2 INTERRUPT "
0050 D$(7)=" DS STEERING LOGIC FAILED DURING A STEERING INSTRUCTION "
   : D$(8)=" D SPACE AREA OF RAM FAILED "
   : D$(9)="READ ERROR FROM D SPACE DURING ID MODE"
0060 M$(1)=" ERROR CODE INTERPRETER FOR THE 2228D/E/F POWER UP DIAGNOSTIC "
   : M$(2)="PRESS RETURN TO CONTINUE "
   : M$(3)="UNABLE TO COMMUNICATE WITH CONTROLLER"
   : M$(4)="ERROR CODE RECEIVED =   "
   : M$(5)=" GETTING ERROR CODE FROM CONTROLLER "
0070 M$(6)="CONTROLLER FAILED DMA POWER UP TEST"
   : M$(7) ="CONTROLLER FAILED DMA CURRENT AND WORD COUNT REGISTERS TEST"
   : M$(8)="CONTROLLER FAILED CTC GO/NO GO POWER UP TEST"
   : M$(9)="CONTROLLER FAILED CTC CHANNEL INTERRUPT TEST"
0080 N$(1)="CONTROLLER FAILED SIO BISYNC INTERNAL LOOP BACK TRANSMIT/RECEIVE T
     EST"
   : N$(2)="NMI OCCURRED DURING POWER UP DIAGNOTIC "
   : N$(3)="NMI OCCURRED DURING NORMAL OPERATION FROM BOOTSTRAP"
   : N$(4)="ALL POWER UP DIAGNOSTICS PASSED UPON RETRY"
0090 N$(5)="WRITE BAD PARITY/PARITY GENERATOR TEST ERROR"
   : N$(6)="MEMORY ERROR"
   : N$(7)="FAILING MEMORY ADDRESS = "
   : N$(8)="EXPECTED DATA = "
   : N$(9)="ACTUAL DATA = "
0100 P$(1)="ON A TEST OTHER THAN PARITY, BANK DECODER, OR MARCHING 1'S AND 0'S
     "
   : P$(2)="INVALID STATUS ERROR CODE RECEIVED FROM CONTROLLER"
   : P$(3)="EXPECTED DATA = ACTUAL DATA = "
   : P$(4)="BAD PARITY"
   : P$(5)="BANK DECODER TEST ERROR"
0110 P$(6)="CONTROLLER FAILED SIO BISYNC EXTERNAL LOOP BACK TRANSMIT/RECEIVE T
     EST"
   : P$(7)="PRESS RETURN TO TEST PIO & 2200 OB'S AND IB'S "
0120 PRINT HEX(03);AT(2,9);M$(1);AT(4,32);"REVISION 3370";
0130 PRINT AT(12,0);"This program interprets error codes from the 2228D/E/F, O
     NLY if the LED is      FLASHING.  DO NOT use for any other purpose. The r
     esults will be unpredictable."
0140 PRINT AT(22,26);M$(2);
0150 KEYIN E$
   : IF E$=HEX(0D) THEN 160
   : GOTO 150
0160 PRINT HEX(03);AT(1,10);M$(1);AT(3,32);"REVISION 3370";AT(6,10);"DOES THIS
      CONTROLLER HAVE A REV D, E, OR F DAUGHTER BOARD ?"
0170 PRINT AT(10,25);
   : LINPUT " PLEASE ENTER D, E, OR F."-T$
0180 IF STR(T$,1,1)<HEX(44) THEN GOTO 160
0190 IF STR(T$,1,1)>HEX(46) THEN GOTO 160
0200 PRINT HEX(03);AT(1,10);M$(1);AT(3,32);"REVISION 3370";AT(6,10);"AVAILABLE
      ADDRESSES ARE - 019  01A  01B  01C  01D  01E  01F"
0210 PRINT AT(10,0);
   : LINPUT "               PLEASE ENTER THE ADDRESS OF THIS CONTROLLER ?"-A$
0220 IF STR(A$,1,1)="0" THEN 230
   : GOTO 250
0230 IF STR(A$,2,1)<> "1" THEN 250
   : IF STR(A$,3,1)<"9" THEN 250
   : IF STR(A$,3,1)>"F"THEN 250
0240 SELECT #1<A$>
   : GOTO 290
0250 PRINT AT(12,21);"ADDRESS IS NOT WITHIN SPECIFIED RANGE";HEX(06)
   : GOSUB 260
   : FOR I = 1 TO 60
   : PRINT AT(12,I);HEX(20)
   : NEXT I
   : GOTO 210
0260 FOR I =1 TO 5000
   : NEXT I
   : RETURN
0270 PRINT HEX(03)
   : PRINT AT(12,10);M$(1)
   : PRINT AT(22,26);M$(2)
   : PRINT HEX(06)
0280 KEYIN E$
   : IF E$=HEX(0D) THEN 290
   : GOTO 280
0290 PRINT HEX(03)
   : STR(R$,3,2)=HEX(000D)
0300 $GIO #1(1232 1020,R$)
0310 PRINT AT(9,25);"SELECTING DEVICE ADDRESS ";HEX(20);A$
0320 PRINT AT(11,33);"DEVICE IS ";HEX(06020404020E);
0330 STR(R$,8,1)=STR(R$,8,1)AND HEX(10)
   : IF STR(R$,8,1)=HEX(10) THEN 340
   : PRINT "READY";HEX(020400000F)
   : GOTO 350
0340 PRINT "BUSY";HEX(020400000F)
0350 PRINT AT(22,28);M$(2)
   : PRINT HEX(06)
   : E$=HEX(20)
0360 KEYIN E$
   : IF E$=HEX(0D) THEN 370
   : GOTO 360
0370 PRINT HEX(0306);AT(12,14);M$(5)
   : $GIO #1 (4103 7510 1232 8602 1200,R$)
0380 IF STR(R$,2,1)<>HEX(20)THEN 400
0390 PRINT HEX(0306);AT(10,21);M$(3)
   : $GIO #1(4103 7510 1232 8602 1200,R$)
   : GOTO 380
0400 IF STR(R$,2,1)<>HEX(01) THEN 410
   : PRINT HEX(0306);AT(10,18);N$(5);AT(15,28);M$(4);HEX(20);HEXOF(STR(R$,2,1)
     )
   : GOTO 610
0410 IF STR(R$,2,1)<>HEX(02) THEN 420
   : PRINT HEX(0306);AT(10,27);P$(5);AT(15,26); M$(4);HEX(20);HEXOF(STR(R$,2,1
     ))
   : GOTO 610
0420 IF STR(R$,2,1)<>HEX(03) THEN 430
   : GOTO 690
0430 IF STR(R$,2,1)<>HEX(04) THEN 440
   : PRINT HEX(0306);AT(10,22);M$(6);AT(15,28);M$(4);HEX(20);HEXOF(STR(R$,2,1)
     )
   : GOTO 610
0440 IF STR(R$,2,1)<>HEX(05) THEN 450
   : PRINT HEX(0306);AT(10,10);M$(7);AT(15,28);M$(4);HEX(20);HEXOF(STR(R$,2,1)
     )
   : GOTO 610
0450 IF STR(R$,2,1)<>HEX(06) THEN 460
   : PRINT HEX(0306);AT(10,18);M$(8);AT(15,28);M$(4); HEX(20);HEXOF(STR(R$,2,1
     ))
   : GOTO 610
0460 IF STR(R$,2,1)<>HEX(07) THEN 470
   : PRINT HEX(0306);AT(10,18);M$(9);AT(15,28);M$(4);HEX(20);HEXOF(STR(R$,2,1)
     )
   : GOTO 610
0470 IF STR(R$,2,1)<>HEX(08) THEN 480
   : PRINT HEX(0306);AT(10,20);N$(2);AT(12,8);P$(1);AT(15,26);M$(4);HEX(20);HE
     XOF(STR(R$,2,1))
   : GOTO 610
0480 IF STR(R$,2,1)<>HEX(09) THEN 490
   : PRINT HEX(0306);AT(10,13);N$(3);AT(12,18);N$(4);AT(15,26);M$(4);HEX(20);H
     EXOF(STR(R$,2,1))
   : GOTO 610
0490 IF STR(R$,2,1)<>HEX(10) THEN 500
   : PRINT HEX(0306);AT(10,6);P$(6);AT(15,27);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0500 IF STR(R$,2,1)<>HEX(11) THEN 510
   : PRINT HEX(0306);AT(10,4);N$(1);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0510 IF STR(R$,2,1)<>HEX(12) THEN 520
   : PRINT HEX(0306);AT(10,4);D$(1);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0520 IF STR(R$,2,1)<>HEX(13) THEN 530
   : PRINT HEX(0306);AT(10,4);D$(2);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0530 IF STR(R$,2,1)<>HEX(14) THEN 540
   : PRINT HEX(0306);AT(10,4);D$(3);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0540 IF STR(R$,2,1)<>HEX(15) THEN 550
   : PRINT HEX(0306);AT(10,4);D$(4);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0550 IF STR(R$,2,1)<>HEX(16) THEN 560
   : PRINT HEX(0306);AT(10,4);D$(5);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0560 IF STR(R$,2,1)<>HEX(17) THEN 570
   : PRINT HEX(0306);AT(10,4);D$(6);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0570 IF STR(R$,2,1)<>HEX(18) THEN 580
   : PRINT HEX(0306);AT(10,4);D$(7);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 610
0580 IF STR(R$,2,1)<>HEX(19) THEN 600
   : PRINT HEX(0306);AT(10,4);D$(8);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 690
0590 IF STR(R$,2,1)<>HEX(1A) THEN 600
   : PRINT HEX(0306);AT(10,4);D$(9);AT(15,25);M$(4);HEX(20);HEXOF(STR(R$,2,1))
   : GOTO 690
0600 PRINT HEX(0306);AT(10,15);P$(2);AT(15,28);M$(4);HEX(20);HEXOF(STR(R$,2,1)
     )
0610 PRINT HEX(06);AT(22,18);P$(7)
0620 KEYIN E$
   : IF E$=HEX(0D) THEN 630
   : GOTO 620
0630 PRINT HEX(03)
   : A$=HEX(20)
   : PRINT AT(10,13);
   : LINPUT "INPUT THE HEX CHARACTER TO BE TRANSMITTED:"A$
0640 HEXPACK A1$ FROM A$
0650 STR(R$,1,1)=A1$
   : STR(R$,3,2)=HEX(0001)
   : $GIO #1 (4005 4210 7510 1232 8602 1200,R$)
0660 PRINT HEX(06);AT(15,27);" RECEIVED BYTE ";HEX(20);HEXOF(STR(R$,2,1))
0670 PRINT HEX(06);AT(22,24);M$(2)
   : KEYIN E$
   : IF E$=HEX(0D) THEN 680
   : GOTO 670
0680 GOTO 630
0690 $GIO #1 (4004 75FF C620,R$)C$
   : IF STR(C$,1,1)=HEX(28) THEN 1310
0700 IF STR(C$,1,1)<>HEX(01) THEN 600
   : PRINT HEX(0306);AT(1,30);HEX(0E);BOX(1,15);HEX(2020);N$(6);HEX(0F);AT(5,2
     3);N$(7);HEX(0E);HEX(20);BOX(1,7);HEX(2020);HEXOF(STR(C$,2,2));HEX(0F)
0710 IF STR(C$,4,1)=STR(C$,5,1) THEN 720
   : GOTO 730
0720 PRINT AT(8,16);P$(3);HEX(0E);HEX(20);BOX(1,13);HEX(2020);P$(4)
   : PRINT HEX(0F)
   : GOTO 740
0730 PRINT AT(8,16);N$(8);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C$,4,1)
     );HEX(0F);AT(8,45);N$(9);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C$,
     5,1));HEX(0F)
0740 IF STR(C$,6,1)<>HEX(01) THEN 820
   : PRINT AT(11,23);N$(7);HEX(0E);HEX(20);BOX(1,7);HEX(2020);HEXOF(STR(C$,7,2
     ));HEX(0F)
0750 IF STR(C$,9,1)=STR(C$,10,1) THEN 760
   : GOTO 770
0760 PRINT AT(14,16);P$(3);HEX(0E);HEX(20);BOX(1,13);HEX(2020);P$(4);HEX(0F)
   : GOTO 780
0770 PRINT AT(14,16);N$(8);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C$,9,1
     ));HEX(0F);AT(14,45);N$(9);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C
     $,10,1));HEX(0F)
0780 IF STR(C$,11,1)<>HEX(01) THEN 820
   : PRINT AT(17,23);N$(7);HEX(0E);HEX(20);BOX(1,7);HEX(2020);HEXOF(STR(C$,12,
     2));HEX(0F)
0790 IF STR(C$,14,1)=STR(C$,15,1) THEN 800
   : GOTO 810
0800 PRINT AT(20,16);P$(3);HEX(0E);HEX(20);BOX(1,13);HEX(2020);P$(4);HEX(0F)
   : GOTO 820
0810 PRINT AT(20,16);N$(8);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C$,14,
     1));HEX(0F);AT(20,45);N$(9);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(
     C$,15,1));HEX(0F)
0820 IF T$ = "F" THEN GOTO 820
   : PRINT HEX(06);AT(23,20);"KEY RETURN FOR BOARD DISPLAY OF ERROR(S)"
   : E$=HEX(20)
0830 KEYIN E$
   : IF E$ = HEX(0D) THEN 840
   : GOTO 830
0840 PRINT HEX(0306);
   : I=3
   : J=0
0850 FOR K = 1 TO 9
0860 PRINT AT(I,J);
   : PRINT BOX(3,4);
0870 J=J+6
   : NEXT K
   : J=0
   : IF I> 12 THEN 890
0880 I=I+4
   : GOTO 850
0890 PRINT AT(2,1);HEX(0E);"80    40    20    10     8     4     2     1     P
     ";HEX(0F)
0900 PRINT AT(4,55);"BANK # 1 ";HEX(0E);"(0800 TO 3FFF)";HEX(0F);AT(8,55);"BAN
     K # 3 ";HEX(0E);"(8000 TO BFFF)";HEX(0F);AT(12,55);"BANK # 2 ";HEX(0E);"(
     4000 TO 7FFF)";HEX(0F);AT(16,55);"BANK # 4 ";HEX(0E);"(C000 TO FFFF)";HEX
     (0F)
0910 IF STR(C$,2,1)> HEX(3F) THEN 920
   : I=3
   : J=2
   : GOTO 970
0920 IF STR(C$,2,1)> HEX(7F) THEN 930
   : I=11
   : J=2
   : GOTO 970
0930 I=15
   : J=2
   : IF STR(C$,2,1)> HEX(BF) THEN 970
   : I=7
   : J=2
   : GOTO 970
0940 IF STR(C$,7,1)> HEX(7F) THEN 950
   : I=11
   : J=2
   : GOTO 1090
0950 I=15
   : J=2
   : IF STR(C$,7,1)> HEX(BF) THEN 1100
   : I=7
   : J=2
   : GOTO 1090
0960 I=15
   : J=2
   : IF STR(C$,12,1)>HEX(BF) THEN 1200
   : I=7
   : J=2
   : GOTO 1200
0970 IF STR(C$,4,1)<>STR(C$,5,1) THEN 980
   : J=50
   : GOSUB 1080
0980 STR(C$,5,1)=XOR STR(C$,4,1)
0990 J=2
   : C8$=STR(C$,5,1) AND HEX(80)
   : IF C8$=HEX(80)THEN GOSUB 1080
1000 J=8
   : C8$=STR(C$,5,1) AND HEX(40)
   : IF C8$=HEX(40)THEN GOSUB 1080
1010 J=14
   : C8$=STR(C$,5,1) AND HEX(20)
   : IF C8$=HEX(20)THEN GOSUB 1080
1020 J=20
   : C8$=STR(C$,5,1) AND HEX(10)
   : IF C8$=HEX(10)THEN GOSUB 1080
1030 J=26
   : C8$=STR(C$,5,1) AND HEX(08)
   : IF C8$=HEX(08)THEN GOSUB 1080
1040 J=32
   : C8$=STR(C$,5,1) AND HEX(04)
   : IF C8$=HEX(04)THEN GOSUB 1080
1050 J=38
   : C8$=STR(C$,5,1) AND HEX(02)
   : IF C8$=HEX(02)THEN GOSUB 1080
1060 J=44
   : C8$=STR(C$,5,1) AND HEX(01)
   : IF C8$=HEX(01)THEN GOSUB 1080
1070 IF STR(C$,6,1)<>HEX(01) THEN 1300
   : GOTO 940
1080 K=I
   : PRINT AT(K,J);HEX(0E);"B"
   : K=K+1
   : PRINT AT(K,J);HEX(0E);"A"
   : K=K+1
   : PRINT AT(K,J);HEX(0E);"D"
   : PRINT HEX(0F)
   : RETURN
1090 IF STR(C$,9,1)<>STR(C$,10,1) THEN 1100
   : J=50
   : GOSUB 1080
1100 STR(C$,10,1)=XOR STR(C$,9,1)
1110 J=2
   : C8$=STR(C$,10,1) AND HEX(80)
   : IF C8$=HEX(80)THEN GOSUB 1080
1120 J=8
   : C8$=STR(C$,10,1) AND HEX(40)
   : IF C8$=HEX(40)THEN GOSUB 1080
1130 J=14
   : C8$=STR(C$,10,1) AND HEX(20)
   : IF C8$=HEX(20)THEN GOSUB 1080
1140 J=20
   : C8$=STR(C$,10,1) AND HEX(10)
   : IF C8$=HEX(10)THEN GOSUB 1080
1150 J=26
   : C8$=STR(C$,10,1) AND HEX(08)
   : IF C8$=HEX(08)THEN GOSUB 1080
1160 J=32
   : C8$=STR(C$,10,1) AND HEX(04)
   : IF C8$=HEX(04)THEN GOSUB 1080
1170 J=38
   : C8$=STR(C$,10,1) AND HEX(02)
   : IF C8$=HEX(02)THEN GOSUB 1080
1180 J=44
   : C8$=STR(C$,10,1) AND HEX(01)
   : IF C8$=HEX(01)THEN GOSUB 1080
1190 IF STR(C$,11,1)<>HEX(01) THEN 1300
   : GOTO 960
1200 IF STR(C$,9,1)<>STR(C$,10,1) THEN 1210
   : J=50
   : GOSUB 1080
1210 STR(C$,15,1)=XOR STR(C$,14,1)
1220 J=2
   : C8$=STR(C$,15,1) AND HEX(80)
   : IF C8$=HEX(80)THEN GOSUB 1080
1230 J=8
   : C8$=STR(C$,15,1) AND HEX(40)
   : IF C8$=HEX(40)THEN GOSUB 1080
1240 J=14
   : C8$=STR(C$,15,1) AND HEX(20)
   : IF C8$=HEX(20)THEN GOSUB 1080
1250 J=20
   : C8$=STR(C$,15,1) AND HEX(10)
   : IF C8$=HEX(10)THEN GOSUB 1080
1260 J=26
   : C8$=STR(C$,15,1) AND HEX(08)
   : IF C8$=HEX(08)THEN GOSUB 1080
1270 J=32
   : C8$=STR(C$,15,1) AND HEX(04)
   : IF C8$=HEX(04)THEN GOSUB 1080
1280 J=38
   : C8$=STR(C$,15,1) AND HEX(02)
   : IF C8$=HEX(02)THEN GOSUB 1080
1290 J=44
   : C8$=STR(C$,15,1) AND HEX(01)
   : IF C8$=HEX(01)THEN GOSUB 1080
1300 PRINT AT(21,0);
   : STOP
1310 S$=" "
   : IF STR(C$,2,1) = HEX(00) THEN S$="I"
   : IF STR(C$,2,1) = HEX(02) THEN S$="D"
   : IF S$ =" "THEN 600
   : PRINT HEX(0306);AT(1,30);HEX(0E);BOX(1,23);HEX(2020);N$(6);HEX(20);S$;HEX
     (20);"SPACE";HEX(0F)
1320 PRINT AT(5,23);N$(7);HEX(0E);HEX(20);BOX(1,7);HEX(2020);HEXOF(STR(C$,5,2)
     );HEX(0F)
   : IF STR(C$,3,1)<>STR(C$,4,1) THEN 1340
1330 PRINT AT(8,16);P$(3);HEX(0E);HEX(20);BOX(1,13);HEX(2020);P$(4)
   : PRINT HEX(0F)
   : GOTO 1350
1340 PRINT AT(8,16);N$(8);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C$,3,1)
     );HEX(0F);AT(8,45);N$(9);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C$,
     4,1));HEX(0F)
1350 IF S$="D" THEN 1390
   : IF STR(C$,7,1)<>HEX(28) THEN 1390
   : S$="D"
   : PRINT AT(11,30);HEX(0E);BOX(1,23);HEX(2020);N$(6);HEX(20);S$;HEX(20);"SPA
     CE";HEX(0F)
1360 PRINT AT(15,23);N$(7);HEX(0E);HEX(20);BOX(1,7);HEX(2020);HEXOF(STR(C$,11,
     2));HEX(0F)
   : IF STR(C$,9,1)<>STR(C$,10,1) THEN 1380
1370 PRINT AT(18,16);P$(3);HEX(0E);HEX(20);BOX(1,13);HEX(2020);P$(4);HEX(0F)
   : GOTO 1390
1380 PRINT AT(18,16);N$(8);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C$,9,1
     ));HEX(0F);AT(18,45);N$(9);HEX(0E);HEX(20);BOX(1,5);HEX(2020);HEXOF(STR(C
     $,10,1));HEX(0F)
1390 PRINT HEX(06);AT(23,20);"KEY RETURN FOR BOARD DISPLAY OF ERROR(S)";
   : E$=HEX(20)
1400 KEYIN E$
   : IF E$ = HEX(0D) THEN 1410
   : GOTO 1400
1410 PRINT HEX(0306);
   : I=2
   : J=0
1420 FOR K = 1 TO 9
1430 PRINT AT(I,J);
   : PRINT BOX(5,5);
1440 J=J+7
   : NEXT K
   : J=0
   : IF I> 9 THEN 1460
1450 I=I+8
   : GOTO 1420
1460 PRINT AT(1,1);HEX(0E);"  P      1      2      4      8     10     20
     40     80";HEX(0F);
1470 PRINT AT(3,67);HEX(0E);"D RAM ";HEX(0F);AT(5,63);HEX(0E);"(0800 TO FFFF)"
     ;HEX(0F);AT(11,67);HEX(0E);"I RAM";HEX(0F);AT(13,63);HEX(0E);"(0800 TO FF
     FF)";HEX(0F);
1480 IF STR(C$,2,1)<> HEX(00) THEN 1490
   : I=11
   : GOTO 1500
1490 I=3
1500 IF STR(C$,3,1)<>STR(C$,4,1) THEN 1510
   : J=3
   : GOSUB 1080
1510 STR(C$,3,1)=XOR STR(C$,4,1)
1530 J=59
   : C8$=STR(C$,3,1)AND HEX(80)
   : IF C8$=HEX(80)THEN GOSUB 1080
1540 J=52
   : C8$=STR(C$,3,1) AND HEX(40)
   : IF C8$=HEX(40)THEN GOSUB 1080
1550 J=45
   : C8$=STR(C$,3,1) AND HEX(20)
   : IF C8$=HEX(20)THEN GOSUB 1080
1560 J=38
   : C8$=STR(C$,3,1) AND HEX(10)
   : IF C8$=HEX(10)THEN GOSUB 1080
1570 J=31
   : C8$=STR(C$,3,1) AND HEX(08)
   : IF C8$=HEX(08)THEN GOSUB 1080
1580 J=24
   : C8$=STR(C$,3,1) AND HEX(04)
   : IF C8$=HEX(04)THEN GOSUB 1080
1590 J=17
   : C8$=STR(C$,3,1) AND HEX(02)
   : IF C8$=HEX(02)THEN GOSUB 1080
1600 J=10
   : C8$=STR(C$,3,1) AND HEX(01)
   : IF C8$=HEX(01)THEN GOSUB 1080
1610 IF STR(C$,7,1)<>HEX(28) THEN 1300
1620 I=3
   : IF STR(C$,9,1)<>STR(C$,10,1) THEN 1630
   : J=3
   : GOSUB 1080
1630 STR(C$,9,1)=XOR STR(C$,10,1)
1640 J=59
   : C8$=STR(C$,9,1)AND HEX(80)
   : IF C8$=HEX(80)THEN GOSUB 1080
1650 J=52
   : C8$=STR(C$,9,1) AND HEX(40)
   : IF C8$=HEX(40)THEN GOSUB 1080
1660 J=45
   : C8$=STR(C$,9,1) AND HEX(20)
   : IF C8$=HEX(20)THEN GOSUB 1080
1670 J=38
   : C8$=STR(C$,9,1) AND HEX(10)
   : IF C8$=HEX(10)THEN GOSUB 1080
1680 J=31
   : C8$=STR(C$,9,1) AND HEX(08)
   : IF C8$=HEX(08)THEN GOSUB 1080
1690 J=24
   : C8$=STR(C$,9,1) AND HEX(04)
   : IF C8$=HEX(04)THEN GOSUB 1080
1700 J=17
   : C8$=STR(C$,9,1) AND HEX(02)
   : IF C8$=HEX(02)THEN GOSUB 1080
1710 J=10
   : C8$=STR(C$,9,1) AND HEX(01)
   : IF C8$=HEX(01)THEN GOSUB 1080
1720 GOTO 1300
9999 DEFFN'16
   : LOAD T"START"