Traducteur MORSE en langage pour AMSTRAD
Arno59
Messages postés
4755
Date d'inscription
Statut
Contributeur
Dernière intervention
-
tristanrock -
tristanrock -
J'ai retrouvé une ancienne revue Science et vie qui traite le Morse, seulement je ne connais pas ce langage, est-il posiible de l'émuler sous Linux, ou mieux encore peut-on le réecrire en Java.
Voici la source:
/*******************************************************************
*Programme : Traducteur MORSE *
*Source: Science et Vie N°824 : Mai 1986 *
*Programme fonctionnant sous AMSTRAD *
*******************************************************************/
10 REM ***************************************************************
15 REM * Page de présentation *
20 REM ***************************************************************
25 Mode 1 : cls
30 PRINT "************************************************************"
35 PRINT "* *"
40 PRINT "* Generateur de Morse autromatique *"
45 PRINT "* *"
50 PRINT "************************************************************"
55 PRINT: PRINT: PRINT: PRINT
60 PRINT "Vitesse de frappe variable:" :PRINT :PRINT
65 PRINT "10 = Vitesse lente ":PRINT
70 PRINT " 1 = Vitesse rapide ":PRINT
75 REM *****************************************************************
80 REM * Controle et memorisation de la vitesse demandee *
85 REM *****************************************************************
90 INPUT "Votre choix ? (de 1 a 10, 5= Normal)"; V
95 IF V<1 Or V> 10 THEN PRINT CHR$(7):GOTO 25
100 REM *****************************************************************
105 REM * Mise en Place de la page de travail *
110 REM *****************************************************************
115 MODE 2:Cls
120 PRINT "Vitesse de frappe";V;"(n'oublier pas de passer en majuscules)"
125 PRINT :PRINT :PRINT
130 PRINT "Message":PRINT
135 REM *****************************************************************
140 REM * Donnees de caracteres *
145 REM *****************************************************************
150 DATA 1,4,0
155 DATA 4,1,1,1,0
160 DATA 4,1,4,1,0
165 DATA 4,1,1,0
170 DATA 1,0
175 DATA 1,1,4,1,0
180 DATA 4,4,1,0
185 DATA 1,1,1,1,0
190 DATA 1,1,0
195 DATA 1,4,4,4,0
200 DATA 4,1,4,0
205 DATA 1,4,1,1,0
210 DATA 4,4,0
215 DATA 4,1,0
220 DATA 4,4,4,0
225 DATA 1,4,4,1,0
230 DATA 4,4,1,4,0
235 DATA 1,4,1,0
240 DATA 1,1,1,0
245 DATA 4,0
250 DATA 1,1,4,0
255 DATA 1,1,1,4,0
260 DATA 1,4,4,0
265 DATA 4,1,1,4,0
270 DATA 4,1,4,4,0
275 DATA 4,4,1,1,0
280 REM *****************************************************************
285 REM * Donnees de Chiffres *
290 REM *****************************************************************
295 DATA 4,4,4,4,4,0
300 DATA 1,4,4,4,4,0
305 DATA 1,1,4,4,4,0
310 DATA 1,1,1,4,4,0
315 DATA 1,1,1,1,4,0
320 DATA 1,1,1,1,1,0
325 DATA 4,1,1,1,1,0
330 DATA 4,4,1,1,1,0
335 DATA 4,4,4,1,1,0
340 DATA 4,4,4,4,1,0
345 DATA 4,4,4,4,4,0
350 REM *****************************************************************
355 REM * Consultation du clavier *
360 REM *****************************************************************
365 LET A$=INKEY$
370 PRINT A$;
375 IF A$<>"" THEN LET C=(ASC (A$))-64
380 IF A$=" " THEN GOSUB 450
385 IF A$=" " THEN GOSUB 650
390 IF C>-17 AND C<-6 THEN LET N+C+17:GOTO 420
395 IF C<1 OR C>26 THEN GOTO 345
400 REM *****************************************************************
405 REM * Orientation vers la sous routine du caractere *
410 REM *****************************************************************
415 ON C GOSUB 470,475,480,485,490,495,500,505,510,515,520,525,530,535,540,545,550,555,560,565,570,575,580,585,590,595
420 ON N GOSUB 600, 605, 610,615,620,625,630,635,640,645
425 LET C=0: LET N=0
430 GOTO 345
435 REM ********************************************************************
440 REM * Pause correspondant a l'espace
445 REM *********************************************************************
450 FOR E= 1 TO 80*V:NEXT E:RETURN
455 REM ********************************************************************
460 REM * Positionnement des donnees pour transmission
465 REM *********************************************************************
470 RESTORE 150:GOSUB 670:RETURN
475 RESTORE 155:GOSUB 670:RETURN
480 RESTORE 160:GOSUB 670:RETURN
485 RESTORE 165:GOSUB 670:RETURN
490 RESTORE 170:GOSUB 670:RETURN
495 RESTORE 175:GOSUB 670:RETURN
500 RESTORE 180:GOSUB 670:RETURN
505 RESTORE 185:GOSUB 670:RETURN
510 RESTORE 190:GOSUB 670:RETURN
515 RESTORE 195:GOSUB 670:RETURN
520 RESTORE 200:GOSUB 670:RETURN
525 RESTORE 205:GOSUB 670:RETURN
530 RESTORE 210:GOSUB 670:RETURN
535 RESTORE 215:GOSUB 670:RETURN
540 RESTORE 220:GOSUB 670:RETURN
545 RESTORE 225:GOSUB 670:RETURN
550 RESTORE 230:GOSUB 670:RETURN
555 RESTORE 235:GOSUB 670:RETURN
560 RESTORE 240:GOSUB 670:RETURN
565 RESTORE 245:GOSUB 670:RETURN
570 RESTORE 250:GOSUB 670:RETURN
575 RESTORE 255:GOSUB 670:RETURN
580 RESTORE 260:GOSUB 670:RETURN
585 RESTORE 265:GOSUB 670:RETURN
590 RESTORE 270:GOSUB 670:RETURN
595 RESTORE 275:GOSUB 670:RETURN
600 RESTORE 295:GOSUB 670:RETURN
605 RESTORE 300:GOSUB 670:RETURN
610 RESTORE 305:GOSUB 670:RETURN
615 RESTORE 310:GOSUB 670:RETURN
620 RESTORE 315:GOSUB 670:RETURN
625 RESTORE 320:GOSUB 670:RETURN
630 RESTORE 325:GOSUB 670:RETURN
635 RESTORE 330:GOSUB 670:RETURN
640 RESTORE 335:GOSUB 670:RETURN
645 RESTORE 340:GOSUB 670:RETURN
650 RESTORE 345:GOSUB 670:RETURN
655 REM ********************************************************************
660 REM * Sous routine d'emission
665 REM *********************************************************************
670 READ X
675 IF X=0 THEN GOTO 700
680 SOUND 1,80,(V*X)+2,7,0,0,0
685 IF SQ (1)<>4 THEN GOTO 685
690 FOR t=0 TO 20*V:NEXT T
695 GOTO 670
700 FOR E=0 TO 40*V:NEXT E
705 RETURN
Voici la source:
/*******************************************************************
*Programme : Traducteur MORSE *
*Source: Science et Vie N°824 : Mai 1986 *
*Programme fonctionnant sous AMSTRAD *
*******************************************************************/
10 REM ***************************************************************
15 REM * Page de présentation *
20 REM ***************************************************************
25 Mode 1 : cls
30 PRINT "************************************************************"
35 PRINT "* *"
40 PRINT "* Generateur de Morse autromatique *"
45 PRINT "* *"
50 PRINT "************************************************************"
55 PRINT: PRINT: PRINT: PRINT
60 PRINT "Vitesse de frappe variable:" :PRINT :PRINT
65 PRINT "10 = Vitesse lente ":PRINT
70 PRINT " 1 = Vitesse rapide ":PRINT
75 REM *****************************************************************
80 REM * Controle et memorisation de la vitesse demandee *
85 REM *****************************************************************
90 INPUT "Votre choix ? (de 1 a 10, 5= Normal)"; V
95 IF V<1 Or V> 10 THEN PRINT CHR$(7):GOTO 25
100 REM *****************************************************************
105 REM * Mise en Place de la page de travail *
110 REM *****************************************************************
115 MODE 2:Cls
120 PRINT "Vitesse de frappe";V;"(n'oublier pas de passer en majuscules)"
125 PRINT :PRINT :PRINT
130 PRINT "Message":PRINT
135 REM *****************************************************************
140 REM * Donnees de caracteres *
145 REM *****************************************************************
150 DATA 1,4,0
155 DATA 4,1,1,1,0
160 DATA 4,1,4,1,0
165 DATA 4,1,1,0
170 DATA 1,0
175 DATA 1,1,4,1,0
180 DATA 4,4,1,0
185 DATA 1,1,1,1,0
190 DATA 1,1,0
195 DATA 1,4,4,4,0
200 DATA 4,1,4,0
205 DATA 1,4,1,1,0
210 DATA 4,4,0
215 DATA 4,1,0
220 DATA 4,4,4,0
225 DATA 1,4,4,1,0
230 DATA 4,4,1,4,0
235 DATA 1,4,1,0
240 DATA 1,1,1,0
245 DATA 4,0
250 DATA 1,1,4,0
255 DATA 1,1,1,4,0
260 DATA 1,4,4,0
265 DATA 4,1,1,4,0
270 DATA 4,1,4,4,0
275 DATA 4,4,1,1,0
280 REM *****************************************************************
285 REM * Donnees de Chiffres *
290 REM *****************************************************************
295 DATA 4,4,4,4,4,0
300 DATA 1,4,4,4,4,0
305 DATA 1,1,4,4,4,0
310 DATA 1,1,1,4,4,0
315 DATA 1,1,1,1,4,0
320 DATA 1,1,1,1,1,0
325 DATA 4,1,1,1,1,0
330 DATA 4,4,1,1,1,0
335 DATA 4,4,4,1,1,0
340 DATA 4,4,4,4,1,0
345 DATA 4,4,4,4,4,0
350 REM *****************************************************************
355 REM * Consultation du clavier *
360 REM *****************************************************************
365 LET A$=INKEY$
370 PRINT A$;
375 IF A$<>"" THEN LET C=(ASC (A$))-64
380 IF A$=" " THEN GOSUB 450
385 IF A$=" " THEN GOSUB 650
390 IF C>-17 AND C<-6 THEN LET N+C+17:GOTO 420
395 IF C<1 OR C>26 THEN GOTO 345
400 REM *****************************************************************
405 REM * Orientation vers la sous routine du caractere *
410 REM *****************************************************************
415 ON C GOSUB 470,475,480,485,490,495,500,505,510,515,520,525,530,535,540,545,550,555,560,565,570,575,580,585,590,595
420 ON N GOSUB 600, 605, 610,615,620,625,630,635,640,645
425 LET C=0: LET N=0
430 GOTO 345
435 REM ********************************************************************
440 REM * Pause correspondant a l'espace
445 REM *********************************************************************
450 FOR E= 1 TO 80*V:NEXT E:RETURN
455 REM ********************************************************************
460 REM * Positionnement des donnees pour transmission
465 REM *********************************************************************
470 RESTORE 150:GOSUB 670:RETURN
475 RESTORE 155:GOSUB 670:RETURN
480 RESTORE 160:GOSUB 670:RETURN
485 RESTORE 165:GOSUB 670:RETURN
490 RESTORE 170:GOSUB 670:RETURN
495 RESTORE 175:GOSUB 670:RETURN
500 RESTORE 180:GOSUB 670:RETURN
505 RESTORE 185:GOSUB 670:RETURN
510 RESTORE 190:GOSUB 670:RETURN
515 RESTORE 195:GOSUB 670:RETURN
520 RESTORE 200:GOSUB 670:RETURN
525 RESTORE 205:GOSUB 670:RETURN
530 RESTORE 210:GOSUB 670:RETURN
535 RESTORE 215:GOSUB 670:RETURN
540 RESTORE 220:GOSUB 670:RETURN
545 RESTORE 225:GOSUB 670:RETURN
550 RESTORE 230:GOSUB 670:RETURN
555 RESTORE 235:GOSUB 670:RETURN
560 RESTORE 240:GOSUB 670:RETURN
565 RESTORE 245:GOSUB 670:RETURN
570 RESTORE 250:GOSUB 670:RETURN
575 RESTORE 255:GOSUB 670:RETURN
580 RESTORE 260:GOSUB 670:RETURN
585 RESTORE 265:GOSUB 670:RETURN
590 RESTORE 270:GOSUB 670:RETURN
595 RESTORE 275:GOSUB 670:RETURN
600 RESTORE 295:GOSUB 670:RETURN
605 RESTORE 300:GOSUB 670:RETURN
610 RESTORE 305:GOSUB 670:RETURN
615 RESTORE 310:GOSUB 670:RETURN
620 RESTORE 315:GOSUB 670:RETURN
625 RESTORE 320:GOSUB 670:RETURN
630 RESTORE 325:GOSUB 670:RETURN
635 RESTORE 330:GOSUB 670:RETURN
640 RESTORE 335:GOSUB 670:RETURN
645 RESTORE 340:GOSUB 670:RETURN
650 RESTORE 345:GOSUB 670:RETURN
655 REM ********************************************************************
660 REM * Sous routine d'emission
665 REM *********************************************************************
670 READ X
675 IF X=0 THEN GOTO 700
680 SOUND 1,80,(V*X)+2,7,0,0,0
685 IF SQ (1)<>4 THEN GOTO 685
690 FOR t=0 TO 20*V:NEXT T
695 GOTO 670
700 FOR E=0 TO 40*V:NEXT E
705 RETURN
A voir également:
- Traducteur MORSE en langage pour AMSTRAD
- Langage ascii - Guide
- Decodeur morse gratuit - Télécharger - Outils professionnels
- Langage binaire - Guide
- Traducteur photo gratuit - Guide
- Traducteur de langues gratuit - Télécharger - Traduction
9 réponses
Salut !
Déjà c'est du BASIC, après pour le transformer sur java, je ne sais pas du tout, connais pas les fonctions Java.
Déjà c'est du BASIC, après pour le transformer sur java, je ne sais pas du tout, connais pas les fonctions Java.
Merci pour l'info BASIC, existe-t-il un moyen de le faire tourner sous Linux ainsi que sous Windows ?
Il existait un basic propre à Microsoft Non ??
Il existait un basic propre à Microsoft Non ??
Je ne connais pas, mais tiens un lien peut-être intéressant :
http://www.linuxfrench.net/article.php3?id_article=367
http://www.linuxfrench.net/article.php3?id_article=367
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
tu devrais pouvoir le retranscrire dans à peu près nimporte quel langage basic sans trop de difficulté.
tu peux essayer en python, qui est utilisable sous linux et windaube.
@++
tu peux essayer en python, qui est utilisable sous linux et windaube.
@++
Merci,
j'ai visité le lien http://smallbasic.sourceforge.net/
BOn maintenant je vais voir coment faire.
j'ai visité le lien http://smallbasic.sourceforge.net/
BOn maintenant je vais voir coment faire.