Sitenotice: 11/29/2018: The wiki is back. It turns out, some anti-virus product on my web server had an issue with the latest version of PHP. My server techs have resolved this issue, and things should be working again. During the investigation, I did restore to a backup from September. There is a chance that any changes done since then were lost, but I do not recall any edits. --OS-9 Al

8/30/2016: Massive re-work is being done on the InfoBox Templates. Read that page to keep up with the plan for that, and adding better keyword tags (categories) to all the pages. --OS-9 Al (talk) 15:28, 31 August 2016 (CDT)

CODE

From CoCopedia - The Tandy/Radio Shack Color Computer Wiki
Jump to navigation Jump to search
90 CLEAR 300
100 DATA "-...-/",".-.-.-","-..-./","-----/"
110 DATA ".----/","..---/"
120 DATA "...--/","....-/","...../","-..../","--.../"
130 DATA "---../","----./"
140 DATA ".-/","-.../","-.-./","-../","./","..-./","--./"
150 DATA "..../","../",".---/","-.-/",".-../","--/"
160 DATA "-./","---/",".--./","--.-/",".-./",".../"
170 DATA "-/","..-","...-/",".--/","-..-/","-.--/","--../"
180 T=100
190 DIM C$(39)
200 FOR I=0 TO 38: READ A$: C$(I)=A$: NEXT I
210 CLS: PRINT @7,"MORSE CODE"
220 PRINT@64,"SELECT ONE OF THE FOLLOWING:"
230 PRINT@100,"1. SEND AN INPUT STRING"
240 PRINT@132,"2. CODE PRACTICE"
250 PRINT@196,"WHICH ONE";:A$=INKEY$
260 IF (A$<>"1" AND A$<>"2") THEN 250
270 IF A$="2" THEN GOTO 400
280 CLS: PRINT @64,"SEND AN INPUT STRING"
290 GOSUB 570: GOSUB 620
300 PRINT @160,"ENTER STRING":INPUT A$
310 FOR I=1 TO LEN(A$)
320 V=ASC(MID$(A$,I,1))-52
330 IF V=-20 THEN GOSUB 800: GOTO 370
340 IF V>38 THEN 840
350 IF V<13 THEN V=V+7: IF V<0 THEN 840
360 GOSUB 720: GOSUB 800
370 NEXT I
380 GOSUB 670: IF R$="R" THEN GOTO 210
390 PRINT @192,"":PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:GOTO 300
400 CLS: PRINT @64,"CODE PRACTICE"
410 GOSUB 570: GOSUB 620
420 PRINT @160,"TO PRINTER (Y OR N)";: INPUT PR$
430 IF NOT(PR$="Y" OR PR$="N") THEN PRINT @245,"": GOTO 420
440 V=RND(90): IF V<45 THEN 440
450 IF (V>57 AND V<65) THEN 440
460 C=C+1: IF C-INT(C/6)*6=0 THEN GOSUB 800: PRINT " ";:GOTO 440
470 REM ***CHANGE NEXT "PRINT#-2," TO "LPRINT" FOR MC_10***
480 PRINT CHR$(V);: IF PR$="Y" THEN PRINT#-2,CHR$(V);
490 V=V-52: IF V<13 THEN V=V+7
500 GOSUB 720
510 IF INKEY$<>"" THEN 210
520 GOTO 440
530 SOUND T,S1:FOR K=0 TO S:NEXT K:RETURN
540 RETURN
550 SOUND T,S3:FOR K=0 TO S:NEXT K:RETURN
560 RETURN
570 PRINT @96,"ENTER SPEED";:INPUT S
580 IF (S<5 OR S>16) THEN PRINT @96,"": GOTO 570
590 IF S>10 THEN S=2*(S-10)+10
600 S=528/S : S1 =S/24: S3=S/8
610 RETURN
620 PRINT@128,"ENTER TONE-H(I),M(ED),L(OW)";:INPUT T$
630 IF TS="L" THEN T=50
640 IF T$="M" THEN T=100
650 IF T$="H" THEN T=150
660 RETURN
670 PRINT @416,"ENTER R FOR RESTART, OR JUST"
680 PRINT @448,"<ENTER> FOR SAME";: INPUT R$
690 IF NOT (R$="R" OR R$="") THEN PRINT @465,"": GOTO 670
700 PRINT @416,"":PRINT
710 RETURN
720 D$=C$(V)
730 FOR J=1 TO 6
740 EL$=MID$(D$,J,1)
750 IF EL$="." THEN GOSUB 530
760 IF EL$="-" THEN GOSUB 550
770 IF EL$="/" THEN 790
780 NEXT J
790 RETURN
800 FOR K=0 TO 1*S: NEXT K
810 RETURN
820 FOR K=0 TO 9*S: NEXT K
830 RETURN
840 PRINT @416,"BAD CHARACTER--INPUT AGAIN"
850 FOR I=1 TO 600: NEXT I: PRINT @416,"": GOTO 390