ZXTape! 0Created with Ramsoft MakeTZXPROCESSOR t"v"s$="1":236099\,255  0:0::9900&  6:  P=0  Q=0 +"Number of inputs into this logicsystem?" %s$:9900&:f=110 9S=(s$):S:100d:S<1S>10 4000  "Number of outputs?" #%s$:9900&:f=130 $8T=(s$):T:100d:T<1T>64050 ( 2"How many gates?" 7%s$:9900&:f=1502 8%G=s$:S+T>9 *G4100:G < AG$(G,4) FI(G+1) HF(G+1) KL(8*G) PO(10 *G) UP(8*G) VM(8*G) WN(10 *G) XC(8*G) Z J=1G d n"Gate number: ";J o s"Gate type?" tH$:H$=""116t u 4200@ vH$ x G$(J)=H$ #"Number of inputs for this gate?" &c$:8000@:f=1140 I=c$ I I(J)=I "Input line numbers?" "Type ENTER after each number" K=1I &c$:8000@:f=1160 V=c$ 4V<25,-10 :V<2160 V;" "; P=P+1 L(P)=V M(P)=V K  $"Output line number for the gate?" -c$:8000@:f=1190:O=c$ O=c$:O "Fan out?" /c$:8000@:f=1193:FAN=c$ FAN=c$:FAN F(J)=FAN K=1FAN Q=Q+1 O(Q)=O N(Q)=O K Y=135 Y J :9000(# W0:4:0::"Do you want a print out of the circuit data (Y or N)?" ="n"Ŧ="N"225 ="y"Ŧ="Y"5000 222  J"Input data received-thank you I will check it for errors and report" K=1235 K  , I=1P 1L(I)=0326# 6 J=1P 7N(I)=0320 8&N(I)>0N(I)=M(J)N(I)=0 9N(I)=0M(J)=0 :J>IL(I)=M(J)M(J)=0 @J EI F F=0 G H=0 J I=1P OM(I)0F=F+1 PN(I)0H=H+1 TI U V YF=SH=T395E ^ c"Data entry error - restart" hJ=1150 mJ r 1  ""Data consistent - will process" J=1170 J  G0,0;6;0;" TRUTH-TABLE " 65;0;"I N P U T S O U T P U T S"  X=2  Y=0  I=1P M(I)=0440\  X,Y;M(I)  Y=Y+2 I  Y=19  I=1P N(I)=0470k  X,Y;N(I)  Y=Y+3@ I  I=1P  C(I)=O(I)  P(I)=L(I) I  Y=0  I=1P M(I)=0544 819,0;4;"2=copy 3=clear data 4=new" .21,0;"INPUT:";M(I);" (1 OR 0)?"  M(I)0c$ "8000@:f=1525  Z=c$  Z=2 Z=3@399G Z=41 Z=2480p Z>4525@ P(I)=Z  J=1P L(I)=P(J)P(J)=Z J X+1,Y;Z  Y=Y+2  I # B=0 $ C=1 % A=1 & I=1G ( 0G$(I)="and "2000 :G$(I)="nand"2020 DG$(I)="or "2040 NG$(I)="nor "2060  XG$(I)="xor "2080  bG$(I)="xnor"21004 lG$(I)="not "2120H nG$(I)="high"2140\ qG$(I)="low "2160p v C=C+I(I) { A=A+F(I) I  B=B+1 B<3@548  t=0  I=1P O(I)=0709 C(I)>16000p  t=t+5 I  I=1P P(I)>16000p I  Y=19 I=1P+1 N(I)=07306 X+1,Y;C(I)  Y=Y+3@ I  X=X+1  480p K=CC+I(I)-1 P(K)=07000Z C(A)=03000; K C(A)=0  7200a C(A)=13060?@  K=CC+I(I)-1 P(K)=07200a C(A)=13060?@ K C(A)=1  7000Z C(A)=03000;  K=CC+I(I)-1 P(K)=17200a C(A)=13060?@ K C(A)=1  7000Z C(A)=03000;   K=CC+I(I)-1 P(K)=17000Z C(A)=03000; K C(A)=0  7200a C(A)=13060?@   QP(C)=1P(C+1)=0P(C)=0P(C+1)=17200a !C(A)=13060?@ "C(A)=1 $ 7000Z %C(A)=03000; & 4QP(C)=1P(C+1)=0P(C)=0P(C+1)=17000Z 5C(A)=03000; 6C(A)=0 8 7200a 9C(A)=13060?@ : HP(C)=17000Z JP(C)=07200a KC(A)=03000; LC(A)=13060?@ M \ 7200a ^ 3060?@ _ p 7000Z r 3000; s J=1P O(A)=P(J)P(J)=0 J  J=1P O(A)=P(J)P(J)=1 J  "Input size invalid" J=150H J   10  "Output size invalid" J=150H J  25H  ""Looks strange - I wont process" J=150H J   1 h H$="and" r H$="nand" | H$="or"  H$="nor"  H$="xor"  H$="xnor"  H$="not"  H$="high"  H$="low"  $"I dont understand ";h$; " logic" K=1250 K  100H  66;0;"LOGIC SYSTEM TO BE ANALYSED "  65;0;"N/TYPE INPUTS OUT "  C=1  Z=1  I=1G I+3@,0;I I+3@,2;G$(I)  A=0 J=CC+I(I)-1 I+3@,7`+A;L(J)  A=A+3@ J  A=0 K=ZZ+F(I)-1 I+3@,21(+A;O(K)  A=A+3@ K  C=C+I(I)  Z=Z+F(I) I #20,0;"Press C ENTER" C$   225a p u z`"I have not been able to process this circuit in two passes - is the input sequence sensible?" J=1100H J  1 d:j=1P:I(j);:j i nj=1P:L(j);:j s xj=1P:M(j);:j  XR=AA+F(I)-1 bC(R)=0 lR v  R=AA+F(I)-1 RC(R)=1 \R p @ f=0 Bc$=""f=1 El=1̱c$ J0c$(ll)<480ůc$(ll)>579f=1 Tl Yf=15,-10 ^ #(5:5:1: #215,5;7;"THE LOGIC PROCESSOR" #<$18,0;" Scisoft 1984" #F?21,0;6;" Press any key to continue. " #P=""9040P# #Q""9041Q# #d #x?21,0;6;" Press any key to continue. " #n=(*32 ) #m=(*21) #j=(*8) #k=(*8) #f=(*2) #b=(*2) #i=((*12 )+130) #m,n;b;f;j;k;i $"=""9100# $, &0:5 & :" "; &beep=*40(+20 &j=1beepbeep/8 &ץ*100d/1000,j &j & f=0 &s$=""f=1 &s$=""s$=" " &k=1̱s$ &0s$(kk)>579ůs$(kk)<480f=1 & f=1 &:f=17;2;"Illegal input - try again" & f=1 & f=1 &k & ee n`fp@q@stS3gand and or {{{{E@Jvoa0 Horc`za@hxnmbC0 BASES '$;ʷ' 8700!:0:0: vt(5):n$(12 ):n(5):b(5):p$(5,12 ):v(5):w$(5,12 ):x(5)  c=480 m$="" menu=5000:menu  m$="" c=480 n$(12 ) 5500| p6;2;1;3,0;" Input number in denary then press ENTER. (integers only) " c$:85004!:s=c$:n=s !::5;"DENARY NUMBER=";n :: (%٥*5+2;"TO WHICH BASE?" 2c$:85004!:b=c$ 3 b<2b>16502 4:::5;"BASE=";b 7:: 8 80P 9 132 Pn$(12 ) Rj=112 dx=n/b ex=0120x fy=n-((x)*b) gy>9 c=557 hy9 c=480 in=(x) ln$(j)=(c+y) nj xj=12 1-1 zn$(j)=" "130 ~ m$=m$+n$(j) j  i=*5+2 si;1;"DENARY ";s;" IN BASE ";b;" =";m$;" " ?21,0;0;" " 100d !7;"Press C to continue." '6;"press R to return to menu." ="c"Ŧ="C"5070 ="r"Ŧ="R"2 180 :5500|:f=0  v=0  e=1  num=0  d=0 P6;2;1;3,0;" Input base you are working in. " c$:85004!:s=c$:n=s "n<1n>161010 )::٥*5+1;"NUMBER BASE=";n :: $4;"INPUT NUMBER IN BASE ";n 23658j\,0 $b$ %m=1̱b$ ((b$(m)>579Ưb$(m)<97a)ůb$(m)>102f" You have just keyed in an incorrect base. Please use lower case letters and numbers." )7(b$>579Ưb$<97a)ůb$>102f1055 ,m -1070.:1125e .c=b$ 0 j=1c 1 b$(jj)>n-19000(# 2!b$(jj)-87W>n9000(# 3j 8j=c1-1 :2b$(jj)>96`Ưb$(jj)<103gv=87W ;1b$(jj)480Ưb$(jj)579v=480 Bd=((b$(j))-v)*e Le=e*n V num=num+d `j b e::: f: g: j94;0;b$;" IN BASE ";n;" = ";num;" denary." t?21,0;0;" " ~!7;"Press C to continue." '6;"press R to return to menu." ="c"Ŧ="C"5070 ="r"Ŧ="R"1  1180 8:2:1:" Number base conversion test. " Q:5500|:6:1:;" Number base conversion test. ":5500| -6;"Answer the following questions- " ,,7;"Take as much time as you need - use pencil and paper to work outyour answers - the objective is a perfect score. Repeat the exercise if you get any wrong."  200 k=15 m$="" n$(12 ) n=(*20)+2 b=(*14+2) n(k)=n b(k)=b  80P  p$(k)=m$ k k=15 .v=0:e=1:num=0:d=0 n=(*15+2) v(k)=n m$=""  f=0 l=13 !m$=m$+((*n-1)+1) l m$>3f=1 f=1m$="" f=14086  w$(k)=m$ "b$=m$ , 1070. 6 x(k)=num @k J s=0 hk=15 m r710 ,6;4;n(k);" is a denary number" |;12 ,6;5;"What is it in base ";b(k);"?" a$  6000p a$=""4230 a$=p$(k)(̱a$)s=s+1 ,16,6;6;"ANSWER=";p$(k) ;18,6;7;"YOUR RESPONSE=";a$:200 k k=15  C10 ,6;4;(w$(k));" is a base ";v(k); " number" 412 ,6;5;"What is it in denary?" a$  6500d a$=""4300 (a$)=x(k)s=s+1 +16,6;6;"ANSWER=";x(k) >18,6;7;"YOUR RESPONSE=";(a$):200 k s=10 7000X :t$=" I am sorry but you have got some wrong - repeat the exercise - it is essential that you fully understand number bases before proceeding! " j=1168 &-10 ,0;4;t$(jj+30) 0.05|L,-20 :j Dmenu $ 0:0: G6;0,0;1;" UNIVERSAL NUMBER BASE TUTOR " 42;1;"1. Convert denary to any base."  5500| 43;1;"2. Convert any base to denary."  5500| 64;1;"3. Convert any base to any base."  5500| *5;1;"4. Number base test."  5500| ,6;"5. Number base - demonstration."  5500| 7;"6. Quit."  5500| 61;5;" Press number of your choice. "  5500| I$= =""5065 I$="1"8 I$="2"1000 I$="3"8000@ I$="4"4000 I$="5"7500L I$="6"9900&  5065 |: t=*491+2 j=t524t/3  .05|L,j j  pj=1̱a$ z c=a$(jj) /c>96`c<122za$(jj)=(c-32 ) j  dj=1̱a$ n c=a$(jj) x~c>579c<4800,0;7;2;"ILLEGAL ALPHABETICAL ENTRY------please try again. " #c>579c<4804280 j  X:t$=" Well done perfect score - you may now move onto the next exercise. " bj=1102f l-10 ,0;5;t$(jj+30) q<*5+2:.05|L,-10 :.03{u\,20 vj menu L/:7;"Number base demo--up to base ten" Vx=30:y=4 `k=04 e 5500| jy,x;6;k tx=x-k-3 ~k $4,0;5;"Power:" &;٥*5+2;"Which base?";c$ 85004!:n=c$ "n<2n>10 7570 %5,0;6;"Base:";n x=29:y=5 k=04 y,x;5;n x=x-k-3 k -7;"________________________________" x=29:y=7 k=04 y,x;3;n^k t(k+1)=n^k y+1,x;7;"X" x=x-k-3 k %7,0;7;"Denary:" %9 ,0;2;"Number:" (11 ,0;5;"Products:" ?10 ,0;7;"________________________________"  7;7;"Input number in this base ";c$:85004! b$=c$:c=c$ c$>57690  .v=0:e=1:num=0:d=0  1070. #x=29:y=10 (k=0c-1 2y-1,x;4;c$(cc) 4/y+1,x;4;(c$(cc))*t(k+1) <x=x-k-3 A c=c-1 Fk P;16,0;5;"Therefore denary number=";num Z 100d _:: d!7;"Press C to continue." n'6;"Press R to return to menu." x="c"Ŧ="C"7500L ="r"Ŧ="R"menu  7800x 6 @:5500|:f=0 Av=0:m$="" B e=1 C num=0 D d=0 Ep6;2;1;3,0;"Input base you are working in. " Jc$:85004!:s=c$:n=s T"n<2n>168010J h)::٥*5+1;"NUMBER BASE=";n r$4;"INPUT NUMBER IN BASE ";n tb1=n v23658j\,0 wb$ xm=1̱b$ y(b$(m)>579Ưb$(m)<97a)ůb$(m)>102f" You have just keyed in an incorrect base. Please use lower case letters and numbers." z7(b$>579Ưb$<97a)ůb$>102f8054v {m  5;b$  1070. g$=b$ n=num :: 5;"TO WHICH BASE?" c$:85004!:b=c$  b<2b>16502 6;"BASE=";b :  80P 57;1;g$;" IN BASE ";b1 (4;1;"=";m$;" IN BASE ";b  100d :: l!7;"Press C to continue." v&6;"Press R to return to menu" ="c"Ŧ="C"8000@ ="r"Ŧ="R"menu 8320 !4 f=0 !6 c$=""menu !9k=1̱c$ !>0c$(kk)>579ůc$(kk)<480f=1 !Hrf=10,0;7;2;"ILLEGAL KEYBOARD ENTRY---------RESTART AFTER RETURN TO MENU---." !Jf=14,-10 !Mf=1menu !Rk !Wc$>4096f=1 !Xc$>40968520H! !\ !5:1:5: "*5,9 ;7;"NUMBER BASES" "$18,0;" Scisoft 1984" "?21,0;6;" Press any key to continue. " "$=""8740$" "%""8741%" ". #(:5500| #2v2;6;"YOU HAVE JUST TYPED A NUMBER WHICH IS NOT VALID FOR THIS BASEPLEASE START AGAIN. " #> 5500| #?-7;"Press any key to repeat process " #A 0 #Fmenu & c7ent!xf9!s nbxyi3Lv0eudA1T I am sorry but you have got some wrong - repeat the exercise - it is essential that you fully understand number bases before proceeding! xA A I3 B255G255C16 FF MFF]