29 lines
963 B
Plaintext
29 lines
963 B
Plaintext
100 PROGRAM "Morse.bas"
|
|
110 STRING TONE$(48 TO 90)*5,ST$*254
|
|
120 SET CHARACTER 46,0,0,0,0,24,24,0,0,0:SET CHARACTER 47,0,0,0,0,126,126,0,0,0
|
|
130 FOR I=48 TO 90
|
|
140 READ TONE$(I)
|
|
150 NEXT
|
|
160 DO
|
|
170 PRINT :PRINT "String to convert to Morse code: ":INPUT PROMPT ">":ST$
|
|
180 LET ST$=LTRIM$(RTRIM$(UCASE$(ST$)))
|
|
190 FOR I=1 TO LEN(ST$)
|
|
200 LET C=ORD(ST$(I:I))
|
|
210 IF C>47 AND C<91 THEN
|
|
220 PRINT TONE$(C);" ";
|
|
230 FOR J=1 TO LEN(TONE$(C))
|
|
240 SOUND PITCH 48,DURATION(ORD(TONE$(C)(J))-45)^3+4
|
|
250 SOUND PITCH 126,DURATION 8
|
|
260 NEXT
|
|
270 ELSE
|
|
280 PRINT
|
|
290 SOUND PITCH 126,DURATION 16
|
|
300 END IF
|
|
310 SOUND PITCH 126,DURATION 16
|
|
320 NEXT
|
|
330 PRINT
|
|
340 LOOP UNTIL ST$=""
|
|
350 CLEAR FONT
|
|
360 DATA .////,..///,...//,..../,.....,/....,//...,///..,////.,/////,"","","","","","",""
|
|
370 DATA ./,/...,/./.,/..,.,../.,//.,....,..,.///,/./,./..,//,/.,///,.//.,//./,./.,...,/,../,.../,.//,/../,/.//,//..
|