Programma PLAY — Edizione 2.10
Generazione di melodie e suoni
Copyright 2010-2018 Giuliano Artico
Pagina WebScrivi all'autore
Guida all'uso del programma

IMPORTANTE

Si dà per scontato che, prima di iniziare a servirsi del programma PLAY, ogni utilizzatore prenda visione della licenza per la distribuzione e l'uso ed accetti e rispetti integralmente le norme in essa contenute. Chi è in disaccordo anche con una sola delle condizioni deve rinunciare a qualunque impiego di questo software.

Sommario

1. Introduzione

Il programma PLAY.EXE, nel seguito indicato per brevità PLAY, svolge la funzione di produrre vari suoni (melodie, note di durata e frequenza a piacere, segnali in codice Morse, trilli, suono di sirena) mediante gli altoparlanti del calcolatore. I suoni possono essere riversati in un file WAV per vari impieghi, ad esempio come suonerie da inserire in un telefono cellulare.

1.1. Modi di funzionamento

La generazione dei suoni si articola in sei diversi modi di funzionamento.
Modo melodia
Scopo: produzione di melodie in modo analogo al comando PLAY del Basic.
Modo Morse.
Scopo: generazione di segnali in telegrafia Morse.
Precisazione. Nell'ambito del programma PLAY, con i termini traduzione in Morse o riproduzione in Morse si intende la trasformazione di un testo in un segnale acustico, emesso dai dispositivi dell'elaboratore, che è composto da punti e linee secondo il codice Morse. Il testo sorgente può essere immesso nel campo Stringa della finestra principale del programma o al prompt dei comandi oppure può essere acquisito da un file su disco.
Modo tono tono fisso).
Scopo: emissione di una nota a frequenza costante.
Modo sirena
Scopo: emissione di un suono di sirena.
Modo trillo.
Scopo: emissione di un trillo.
Modo preset
Scopo: riproduzione di melodie preimpostate (preset) o di melodie salvate.
Il normale funzionamento del programma è interattivo, ma è possibile introdurre tutti i dati dal prompt per l'uso in modo batch. Si può avere una panoramica delle caratteristiche del programma eseguendo i file batch inclusi nella distribuzione. Fra le funzioni disponibili c'è inoltre la traduzione in Morse di un file, che può essere opportunamente strutturato per scopi didattici.

È stata prevista la possibilità di emettere i suoni tramite il cicalino o buzzer, il piccolo altoparlante incorporato che è collegato direttamente alla scheda madre e di cui i calcolatori sono normalmente dotati.

1.2. Download e installazione

Il programma PLAY può essere usato, copiato e distribuito gratuitamente, purché vengano accettate e rispettate rigorosamente tutte le condizioni specificate nella licenza.

La pagina Internet del programma PLAY è:

https://www.artico.name/soft/play/

Il programma PLAY viene fornito mediante un file di setup generato con il software di compressione dati WinRAR.

Per installare il programma svolgere le operazioni indicate di seguito.

Il programma va avviato con il collegamento che si trova nel desktop al termine dell'installazione. L'avvio è possibile anche da Risorse del computer, dalla finestra Esegui oppure dal prompt o ancora tramite un file batch.

I file presenti nell'archivio di setup sono:

Vedere le informazioni sui requisiti di sistema.

Torna al sommario.

2. Funzionamento interattivo

Il funzionamento interattivo comporta che i valori desiderati vengano inseriti nei campi presenti nella schermata di avvio. Ciascuno dei sei modi di funzionamento (v. [¶ 1.1] prevede l'inserimento di un certo numero di valori, a seconda del tipo di suono scelto. Le spiegazioni riguardanti questi campi sono fornite più avanti.

Oltre ai campi dedicati, che sono specifici per i singoli modi, gli ultimi tre campi sono presenti in tutti i modi.

Volume
indica l'intensità del suono, un numero in percentuale da 1 a 100.
Ripeti
il numero di volte che il suono viene emesso, normalmente una sola volta. Indicando -1 si ottiene la ripetizione del suono all'infinito (finché si preme un tasto per terminare).
Pausa
la durata della pausa fra le ripetizioni del suono, espressa in secondi, con eventuale frazione di secondo. La durata massima della pausa è di 60 secondi.
Attenzione: tutti i valori di durata vanno espressi in secondi, con eventuale frazione di secondo. Il separatore decimale è il punto. Ad esempio 2.5 indica due secondi e mezzo.

Usare i normali tasti di correzione per modificare il contenuto dei campi, le frecce direzionali, i tasti PgUp e PgDn e i tasti di funzione per svolgere altre azioni. Segue il prospetto completo dei tasti disponibili nel modo interattivo.

F1 o Alt+H
Aprono un testo di aiuto (comandi e documentazione).
Shift+F1
Visualizza la licenza.
Ctrl+F1 o Alt+O
Mostrano il sommario delle opzioni disponibili da prompt.
F2 ... F7
Selezione diretta del modo di funzionamento:
  • F2=Melodia.
  • F3=Morse.
  • F4=Tono.
  • F5=Sirena.
  • F6=Trillo.
  • F7=Preset.
F8 o Alt+D
Finestra di esplorazione, dove è possibile aprire i file o tradurre in Morse i file di testo.
Shift+F8 o Alt+M
Avvio immediato della traduzione del file Morse [¶ 2.12]. I comandi sono indipendenti dal modo attualmente impostato.
F9
Apre il manuale del programma.
Shift+F9
Apre la finestra di scelta dell'editor.
F10
Registra il suono su disco.
Shift+F10 o Alt+T
Traduzione in Morse di caratteri immessi da tastiera.
F11
Varia ciclicamente la frequenza di campionamento fra i tre valori ammessi.
Shift+F11
Verifica se esiste una nuova versione del programma PLAY e ne consente il prelievo.
F12
Cambia il dispositivo per la generazione del suono (scheda audio o buzzer).
Shift+F12
Ripristina le condizioni predefinite.
PgDn e PgUp
Selezionano il modo successivo e precedente.
Invio
Avvia la riproduzione del suono.
Ctrl+C, Ctrl+M, Ctrl+V
Sono i tasti per eseguire le operazioni di copia e incolla, che agiscono nei campi Stringa dei modi melodia, Morse e preset. Precisamente:
  • Ctrl+C copia il contenuto del campo negli appunti di Windows (il preesistente contenuto degli appunti viene cancellato).
  • Ctrl+M è simile al precedente, ma il testo viene aggiunto a quello preesistente negli appunti (senza cancellarlo).
  • Ctrl+V incolla nel campo il contenuto degli appunti di Windows.
Alt+A
Traduce in Morse il testo contenuto negli appunti di Windows [¶2.14].
Alt+F
Apre con l'editor il file Morse.
Alt+W
Avvia l'editor (senza parametri).
Esc o Alt+F4
Chiusura del programma.

2.1. Generazione del suono: la frequenza di campionamento (FC)

Il suono viene prodotto dal programma PLAY generando nella memoria del calcolatore un file PCM (Pulse-code modulation). La frequenza di campionamento FC, cioè il numero di campioni al secondo, può essere 8000, 11025 oppure 22050 (quest'ultimo è il valore predefinito). I valori massimi di frequenza e durata del suono dipendono dal valore di FC: la frequenza deve essere minore della metà di FC mentre la durata massima diminuisce all'aumentare di FC. I valori sono riassunti nel seguente prospetto.
FC >Frequenza massima Durata massima
22050 11024 Hz 999 sec
11025 5512 Hz 1998 sec
8000 3999 Hz 2753 sec
Osservazione. Le limitazioni per la frequenza e la durata sono applicate anche quando il dispositivo di emissione del suono è il cicalino (anche se il cicalino funziona senza utilizzare il campionamento).

2.2. Funzioni di aiuto

Nella parte inferiore dello schermo si trovano: Con il tasto F1 si apre la schermata di aiuto contestuale, disponibile nella finestra principale, nella finestra di esplorazione e durante la traduzione del file Morse o degli appunti. Oltre al prospetto dei comandi, essa contiene i link per aprire il manuale e per verificare la disponibilità di aggiornamenti del programma.

Per il sommario delle opzioni da prompt di Windows, avviare il file allegato aiuto.bat, che esegue il comando PLAY /?, oppure premere Ctrl+F1 o Alt+O nella finestra principale.

2.3. Modo melodia

Scopo: produzione di melodie in modo analogo al comando PLAY del Basic.
Campi dedicati: stringa.
Stringa
è una successione di caratteri che deve essere impostata seguendo la sintassi del comando PLAY del Basic (v. le spiegazioni particolareggiate nel [¶ 4]).
Osservazione. Nel modo melodia il contenuto del campo stringa è trattato come se fosse immesso dal prompt [¶ 3]. Ciò significa che in realtà è possibile indicare anche suoni degli altri modi, purché si specifichi l'opportuna sintassi. Ad esempio, immettendo 1000,3 si ottiene una nota di 3 secondi a 1000 Hz e il modo viene commutato su tono.

2.4. Modo Morse

Scopo: generazione di segnali in telegrafia Morse.
Campi dedicati: stringa, tono, WPM, Bil. L/P, Bil. S/P.
Stringa
è la parola o frase che si vuole tradurre in telegrafia Morse. Il programma esamina tutti i caratteri, ignorando quelli che non hanno un corrispondente nel codice Morse. In particolare sono accettati alcuni segni di punteggiatura e le lettere accentate [¶2.4.1].
Tono
è la frequenza in Hz della nota della telegrafia. Il valore è soggetto alle limitazioni indicate in [¶ 2.1].
WPM
Determina la velocità del Morse. Il numero è espresso in WPM o parole al minuto. Il valore predefinito è 20, corrispondente a una durata di 60 millisecondi per l'unità elementare (il punto).
Bil. L/P
Serve per modificare il bilanciamento linea/punto BLP, cioè il rapporto fra la durata di una linea e la durata del punto. Il valore consigliato per BLP va da 1 a 1.5 (i valori ammessi sono compresi fra 0.66 e 5).
Indicando con P la durata del punto e con L la durata di una linea, si ha la seguente formula:
L = 3 * P * BLP
Con BLP=1 si ha il rapporto consueto L/P=3 della telegrafia Morse ordinaria. Con BLP<1> le linee vengono abbreviate, con BLP>1 vengono allungate.
Bil. S/P
Serve per modificare il bilanciamento spazi/punto BSP, cioè il rapporto fra la durata degli spazi interlettera e interparola con la durata del punto. I valori ammessi sono compresi fra 0.66 e 50.
Indicando con P la durata del punto, con SL la durata dello spazio interlettera e con SP la durata dello spazio interparola, si hanno le seguenti formule:
SL = 1 + 2 * P * BSP
SP = 1 + 6 * P * BSP
Con BSP=1 si hanno i rapporti consueti della telegrafia Morse ordinaria, che sono SL/P=3 per lo spazio interlettera e SP/P=7 per lo spazio interparola. Con BSP<1> gli spazi vengono abbreviati, con BSP>1 vengono allungati.
Riassumendo, la durata ordinaria degli elementi nella trasmissione del codice Morse è stabilita come indicato di seguito. Osservazioni.
  1. I valori predefiniti dei coefficienti di bilanciamento BLP e BSP sono entrambi uguali a 1 e determinano le durate ordinarie come descritte sopra. Qualunque sia il loro valore, la durata dell'unità elementare rimane invariata, dipendendo unicamente dalla velocità WPM. Pur essendo sconsigliabile modificare i valori predefiniti, l'alterazione delle durate può essere motivata da ragioni di gusto personale o o per facilitare l'apprendimento durante le fasi iniziali.
  2. È possibile impostare uno spazio interparola extra mediante l'opzione /B o la chiave MorseEIS del file di inizializzazione. A questo parametro non corrisponde un campo nel funzionamento interattivo.

2.4.1. Caratteri traducibili in Morse

Quanto esposto in questa sezione riguarda tutti i testi tradotti in Morse dal programma PLAY (compresi quelli che si acquisiscono da prompt, dagli appunti di Windows, dal file Morse o mediante il reindirizzamento dell'input).

Oltre alle lettere e alle cifre, il programma PLAY è in grado di tradurre in Morse i seguenti caratteri:

! " $ & ' ( ) + , - . / : ; = ? @ _ Þ à ä ç è é ì ð ò ù
ß ñ æ
I caratteri rimanenti sono trattati tutti alla stregua di spazi, con la convenzione che una stringa di spazi consecutivi di qualunque lunghezza viene ridotta a un unico spazio. Ad esempio, la seguente stringa viene interpretata come uno spazio singolo:
{   #%^    [] }
Un ruolo speciale è svolto dal carattere spazio non divisore o spazio rigido (codice 160, in inglese non-breaking space), che produce una pausa come lo spazio ordinario (della durata di sette punti) ma non è soggetto alla compressione degli spazi di cui sopra. Perciò, inserendo nelle posizioni opportune uno o più spazi rigidi, è possibile forzare la lunghezza delle pause aumentandola a piacere.

Per favorire la leggibilità del testo da tradurre in Morse, è possibile rappresentare lo spazio rigido con un simbolo particolare. Per impostazione predefinita, il programma PLAY interpreta %s come uno spazio rigido e %S come una sequenza di cinque spazi rigidi consecutivi. Se si preferisce, questi due simboli possono essere modificati con la chiave MorseNbsp nel file play.ini.

Si ricorda infine che la lunghezza delle pause può essere variata anche sfruttando la funzione di bilanciamento descritta in [¶2.4].

2.5. Modo tono fisso

Scopo: emissione di una nota a frequenza costante.
Campi dedicati: frequenza, durata.
Frequenza
un numero che indica la frequenza in Hz della nota, valore soggetto alle limitazioni indicate in [¶ 2.1].
Durata
un numero che indica la durata in secondi della nota. Per indicare un valore con frazione di secondo, occorre usare come separatore decimale il punto): ad esempio, per indicare un secondo e mezzo scrivere 1.5. La durata minima è 0.01 (pari a 10 millisecondi). La durata massima è soggetta alle limitazioni indicate in [¶ 2.1].

2.6. Modo sirena

Scopo: emissione di un suono di sirena.
Campi dedicati: freq.ini, freq.fin, durata, semicicli.
Freq.ini e freq.fin
due numeri che indicano le frequenze, espresse in Hz, fra le quali oscilla il suono di sirena. Il suono consiste di cicli che si ripetono con cadenza determinata dai valori numerici durata e semicicli. Dato che il suono inizia con frequenza freq.ini, l'andamento iniziale (primo semiciclo) è ascendente quando freq.ini è minore di freq.fin, altrimenti è discendente. Le due frequenze sono soggette alle limitazioni indicate in [¶ 2.1].
Durata
durata di un semiciclo (passaggio dalla frequenza iniziale alla frequenza finale o viceversa) espressa in secondi. Si può indicare un numero decimale: ad esempio 0.07 corrisponde a 70 millisecondi. La durata minima è 0.01 (pari a 10 millisecondi).
Semicicli
il numero di semicicli di cui è composto il suono di sirena. La durata complessiva del suono è pari al prodotto della durata per il numero di semicicli e non può superare il valore massimo di durata indicato nel prospetto del [¶ 2.1]. Notare che con il valore 1 (un solo semiciclo) il suono si riduce a un fischio, più o meno rapido a seconda del valore indicato per la durata.

2.7. Modo trillo

Scopo: emissione di un trillo.
Campi dedicati: freq.ini, freq.fin, durata, toni.
Freq.ini e freq.fin
due numeri che indicano le frequenze, espresse in Hz, dei due toni di cui è composto il trillo. Il suono è costituito da due toni, alle frequenze indicate, che si ripetono alternativamente cominciando con freq.ini. Le due frequenze sono soggette alle limitazioni indicate in [¶ 2.1].
Durata
durata, espressa in secondi, di ciascuno dei toni di cui è composto il trillo. Si può indicare un numero decimale: ad esempio 0.07 corrisponde a 70 millisecondi. La durata minima è 0.01 (pari a 10 millisecondi).
Toni
il numero di toni di cui è composto il trillo. Notare che indicando il valore 1 si ottiene un solo tono di frequenza freq.ini (in questo caso il valore di freq.fin è ininfluente). La durata complessiva del suono è pari al prodotto della durata per il numero di toni. Ad esempio, si ha una durata complessiva di due secondi sia indicando 2 per la durata e 1 per il numero di toni sia indicando 0.05 per la durata e 40 per il numero di toni. La durata complessiva non può superare il valore massimo di durata indicato in [¶ 2.1].

2.8. Modo preset

Scopo: riproduzione di melodie preimpostate (preset) o di melodie salvate.
Campi dedicati: numero, stringa.
Numero
indica il numero d'ordine di un preset oppure di una melodia salvata.
  • il numero d'ordine dei preset è positivo (1, 2, 3, ...).
    I preset sono melodie di esempio preimpostate e sono contenuti nelle sezioni [PRESET] e [PERSONAL] del file play.ini (v. [¶ 5] e opzione /D).
  • il numero d'ordine delle melodie salvate è negativo (-1, -2, -3, ...).
    Le melodie salvate sono quelle che l'utilizzatore immette durante l'uso del programma e che vengono memorizzate nella sezione [SAVE] del file play.ini (-1 indica la melodia più recente).
In modo interattivo, il programma mostra nella barra di stato il numero di preset e di melodie salvate disponibili. Ad esempio, se compare la dicitura Preset 23/5 si può indicare un preset da 1 a 23 oppure una melodia salvata da -1 a -5 (dove -1 è la più recente).
Stringa
è la stringa corrispondente al preset o alla melodia salvata. Se si desidera recuperare questa stringa, dopo aver portato il cursore nel campo Stringa, premere uno dei due tasti indicati di seguito.
  • Ctrl+C: la stringa viene copiata negli appunti di Windows.
  • Invio: il programma ricopia la stringa nel campo Stringa del modo melodia e in tal modo offre la possibilità di eseguire le modifiche.

2.9. Memorizzazione del suono su disco

Premendo il tasto F10 si può riversare il suono in un file PCM su disco, che è un file di tipo .wav. Inizialmente la memorizzazione avviene nella cartella di lavoro [¶ 6]. Volendo memorizzare i file in una cartella diversa, è sufficiente scrivere il percorso completo del file (incluse l'unità e la cartella). Successivamente basterà indicare il nome del file, che verrà collocato nella cartella usata più recentemente.

Vedere anche l'opzione /O, mediante la quale è possibile eseguire il riversamento direttamente dal prompt o con un file batch.

2.10. Esplorazione delle unità disco

Nella finestra principale premere F8 oppure Alt+D. La prima volta che si usa questo comando si apre la cartella di lavoro, in seguito l'ultima cartella consultata. Nell'elenco che compare si può spostare il cursore con vari comandi, come specificato di seguito (notare il comportamento di Spazio e di Invio in questo contesto).
F1 o Alt+H
Aiuto (comandi e documentazione.
Spazio
Se il cursore punta un file di testo, avvia la traduzione in Morse del suo contenuto.
FrecciaSu/FrecciaGiù
Sposta il cursore nella riga precedente/successiva.
PgUp/PgDn
Sposta il cursore su/giù di una videata.
Home/End
Seleziona il primo/ultimo elemento dell'elenco.
Ctrl+Home/Ctrl+End
Sposta il cursore a inizio/fine schermo.
BackSpace
Risale alla directory di livello precedente.
F2
Commutatore per attivare/disattivare la visualizzazione delle parole durante la traduzione in Morse di un file o degli appunti.
F3
Passa alla cartella di lavoro.
F4
Sposta il cursore sul primo file (saltando le directory).
F5 o Alt+A
Traduzione in Morse del testo contenuto negli appunti di Windows.
F6 o Alt+C
Se il cursore punta un file di testo, il contenuto è copiato negli appunti di Windows.
F9 o Alt+W
Apertura dell'editor (senza parametri).
F10
Apre il file o la directory (come Invio).
Lettera A-Z
Portano il cursore su un file o una cartella che iniziano con quella lettera.
Esc o Alt+F4
Ritorno alla finestra principale.

2.11. Editor per aprire i file di testo

È possibile utilizzare un editor per modificare un file di testo, tipicamente i file Morse. Al momento del primo avvio, il programma PLAY esegue una ricerca per identificare la presenza nel sistema di alcuni editor di uso comune e ne adotta uno in modo automatico. Per modificare la scelta premere Shift+F9 e utilizzare i comandi descritti di seguito.

Di seguito sono elencati gli editor predefiniti. I nomi in grassetto sono quelli che nella schermata di assegnazione di cui sopra compaiono via via premendo Tab.

pspad
PSPad, freeware, portable, menù in italiano.
Ho preparato questo pacchetto già configurato e con poche istruzioni elementari in italiano. Decomprimere l'archivio e collocare l'intera sottocartella pspad nella posizione desiderata, rispettando le indicazioni fornite in [¶ 2.11.1].
notepad++
Notepad++, freeware, menù in italiano.
balabolka
Balabolka, Eccellente programma gratuito con funzioni sia di editor sia di TTS.
textpad
TextPad, shareware, italiano (anche il manuale).
uedit32
UltraEdit, shareware, ben documentato in italiano, uno degli editor più potenti sul mercato.
notepad2
Notepad2 freeware, leggero e versatile, solo in inglese.
GMEditor
GMEditor, Editor di tipo portable, realizzato da Guido Melani, intuitivo, apre file txt e rtf.
biblos
Biblos, shareware, italiano, con funzioni specifiche per non vedenti.
winword
WinWord, il programma di videoscrittura di Microsoft Office.
write
WordPad, il programma di videoscrittura incorporato in Windows.
notepad
Il Blocco note di Windows.

2.11.1. Collocazione dell'editor

Alcuni editor, tipicamente quelli di tipo portable, non possono essere collocati entro i programmi di Windows 7 o versione successiva a causa della protezione UAC perché i file di configurazione si trovano nella stessa cartella del programma, il quale ha la necessità di accedere in scrittura a questi file.

Nel corso della ricerca automatica o dalla finestra di scelta [¶ 2.11], per facilitare l'individuazione dell'editor, il programma PLAY considera le cartelle appartenenti alle due categorie indicate di seguito.

Prima categoria.
Fanno parte di questa categoria le cartelle elencate di seguito. In esse l'editor viene cercato anche in tutte le sottocartelle fino al secondo livello:
  1. per gli editor predefiniti, la cartella di installazione standard,
  2. la cartella dei programmi a 32 bit,
  3. la cartella dei documenti dell'utente,
  4. la cartella in cui si trova il file play.exe attualmente in uso,
  5. nelle unità su disco fisso o nell'unità in cui si trova il file play.exe in uso (quest'ultima può essere removibile), le cartelle in radice di nome ut o con il nome che inizia con uti (C:\util, D:\ut, F:\utility, eccetera).
Esempio. Il programma PSPad, che in Windows 7 o versione successiva non può trovarsi nella cartella dei programmi, può essere collocato nella seguente cartella, dopo di che sarà sufficiente scrivere pspad nella finestra di scelta (tasto Shift+F9) affinché PLAY sia in grado di individuarlo:
D:\utility\editor\pspad\
Seconda categoria.
Sono le cartelle elencate nel path di sistema, in ciascuna delle quali l'editor viene cercato senza esplorare le sottocartelle, a meno che la cartella non faccia già parte della prima categoria.

2.12. Traduzione in Morse di un file di testo

È possibile tradurre in Morse il contenuto di un file su disco. A tale scopo premere F8 per aprire la finestra di esplorazione [¶ 2.10]. Portare quindi il cursore sul nome di un file di testo e premere Spazio: il file scelto viene indicato con il termine file Morse. Si può anche premere Shift+F8 o Alt+M dalla finestra principale per riprendere la traduzione e, in tal caso, essa continua dal punto in cui era stata interrotta.

Quanto esposto nel resto di questo paragrafo è applicabile anche alla traduzione in Morse degli appunti di Windows [¶2.14].

Per informazioni sui caratteri traducibili in Morse e sulla forzatura delle pause v. [¶2.4.1].

Qualunque sia il file mandato in riproduzione, le righe che iniziano con ## vengono ignorate e possono svolgere il ruolo di commento.

Il file Morse può essere opportunamente strutturato in sezioni per lo svolgimento di esercitazioni [¶2.13].

Mentre è in corso l'emissione si possono premere vari tasti, che agiscono al termine della parola in corso di emissione. Alcuni di essi producono effetto solo se il file Morse è strutturato. I parametri che subiscono alterazioni (ad esempio la velocità del Morse) rimangono in vigore, potendo naturalmente essere ripristinati in seguito con le apposite azioni previste dal programma.

Segue il prospetto dei comandi disponibili.

F1 o Alt+H
Aiuto (comandi e documentazione).
F2
Attiva/disattiva la visualizzazione delle parole.
Spazio
Sospende/riprende l'emissione.
Tab (per file strutturati)
Passa alla sezione successiva dell'esercitazione.
Shift+Tab (per file strutturati)
Passa alla sezione precedente dell'esercitazione.
BackSpace (per file strutturati)
Riprende dall'inizio la sezione corrente dell'esercitazione.
Cifre 1, 2, ... 0
Arretra di 1, 2, ... 10 parole.
Freccia sinistra
Arretra di dieci parole.
Freccia destra
Avanza di dieci parole.
Home
Riprende la traduzione dall'inizio del file.
End
Salta alla fine del file (ultime dieci parole).
PgDn
Avanza di un numero di parole pari al 10% del totale.
PgUp
Arretra di un numero di parole pari al 10% del totale.
Lettera b (minuscola)
Richiama il segnalibro memorizzato.
Lettera B (maiuscola)
Memorizza nel segnalibro la posizione attuale.
Lettera f (minuscola)
Aumenta di un semitono la frequenza del tono Morse.
Lettera F (maiuscola)
Riduce di un semitono la frequenza del tono Morse.
Lettera i (minuscola)
Aumenta di cinque punti Morse la lunghezza dello spazio interparola.
Lettera I (maiuscola)
Riduce di cinque punti Morse la lunghezza dello spazio interparola.
Lettera l (minuscola)
Aumenta di un punto decimale il coefficiente di bilanciamento linea/punto.
Lettera L (maiuscola)
Riduce di un punto decimale il coefficiente di bilanciamento linea/punto.
Lettera s (minuscola)
Aumenta di due punti decimali il coefficiente di bilanciamento spazio/punto.
Lettera S (maiuscola)
Riduce di due punti decimali il coefficiente di bilanciamento spazio/punto.
Lettera v (minuscola)
Aumenta il volume audio del 10%.
Lettera V (maiuscola)
Riduce il volume audio del 10%.
Lettera w (minuscola)
Aumenta la velocità del Morse di 5 parole al minuto.
Lettera W (maiuscola)
Riduce la velocità del Morse di 5 parole al minuto.
Esc o Alt+F4
Termina la traduzione del file Morse.
L'emissione sonora è accompagnata dalla visualizzazione del testo parola per parola (premere F2 per nascondere le parole o per riprenderne la visualizzazione).

La traduzione del file Morse è limitata ai primi dieci Mbyte. Inoltre il suono prodotto non può essere riversato su file.

A questa funzione si accede da prompt con l'opzione /M [¶ 3.2]. Vedere anche il reindirizzamento dell'input [¶ 3.1].

2.13. File Morse strutturato

Grazie a una particolare formattazione, il file Morse può essere suddiviso in sezioni e può costituire così un corso di esercitazioni per l'apprendimento. I file allegati esercizi.txt e random.txt sono semplici esempi, dai quali ciascuno può trarre spunto per preparare esercitazioni più ricche e organiche.

Di seguito sono descritte le poche regole necessarie per costruire un file Morse strutturato.

Etichetta iniziale
Il file può avere un nome qualunque e deve iniziare con l'etichetta identificativa [PLAY-MORSE]. Se manca l'etichetta identificativa, il file è un ordinario file di testo, per il quale non sono attivi i comandi specifici per i file strutturati [¶2.12].
Segno di inizio sezione
Il file è diviso in sezioni, ciascuna delle quali inizia con il segno di inizio sezione, che è composto da tre caratteri particolari {¶} (segno di paragrafo, ASCII 182), racchiuso fra parentesi graffe). Una sezione inizia con questo segno e termina con il successivo segno di inizio sezione.
Descrizione della sezione
La parte di riga a destra del segno di inizio sezione fino alla fine della riga costituisce la descrizione della sezione. La parte rimanente è il testo vero e proprio, o corpo della sezione. Il programma traduce in Morse solo il corpo della sezione, mentre la descrizione viene mostrata a inizio schermo dopo il nome del file.
Corpo della sezione
Il corpo della sezione può essere un testo ordinario, composto da un numero di righe a piacere, oppure un comando per generare caratteri in modo random. Per la seconda alternativa vedere [¶2.13.1].

2.13.1. Corpo della sezione costituito da testo random

Invece di contenere testo ordinario, il corpo della sezione può essere costituito da un comando per generare caratteri random secondo diversi criteri. Il comando è costituito da una parola chiave iniziale e da quattro campi con stringa di separazione secondo la seguente sintassi (i termini racchiusi fra parentesi quadre sono parametri facoltativi e, se assenti, viene loro attribuito un valore predefinito):
\RANDOM [caratteri ammessi] \ [<][lunghezza blocco] \ [numero blocchi] \ [ripetizione]
Stringa di separazione
Per impostazione predefinita, la stringa di separazione è il carattere «\» (barra inversa), come indicato nella sintassi. La stringa di separazione può essere modificata utilizzando la chiave SepString nel file di inizializzazione play.ini [¶ 5].
Parola chiave iniziale
È obbligatorio iniziare il comando con la stringa di separazione seguita, senza alcun carattere intermedio, dalla parola chiave RANDOM (in caratteri maiuscoli). Gli spazi indicati nella sintassi sono facoltativi.
Campo 1: caratteri ammessi
Indica una stringa di caratteri traducibili in Morse [¶2.4.1]. Tutti i caratteri non traducibili vengono ignorati. La stringa può includere un numero di caratteri a piacere. Sono ammessi caratteri ripetuti allo scopo di aumentarne la frequenza nella scelta random.
La stringa può includere uno o più intervalli di caratteri. Ad esempio a-ew-z2-4 è equivalente a abcdewxyz234. L'intervallo è valido se i due caratteri adiacenti al trattino sono entrambi lettere oppure entrambi cifre. Se si vuole includere nella stringa il trattino «-» come carattere da riprodurre, è necessario che esso non sia coinvolto nella rappresentazione di un intervallo e perciò si raccomanda di porlo come primo oppure ultimo carattere.
La stringa predefinita è costituita da tutte le lettere e le cifre, cioè a-z0-9.
Campo 2: lunghezza blocco
Si tratta di un numero maggiore di 0 che indica la lunghezza dei blocchi di caratteri. Se il numero è preceduto da «<» (minore) i blocchi avranno lunghezza variabile compresa fra 1 e il numero indicato.
Il valore predefinito è 5.
Campo 3: numero blocchi
Indicare in questo campo il numero dei blocchi da generare. Il valore predefinito è 20.
Campo 4: ripetizione
Questo parametro determina la possibilità o meno di includere caratteri ripetuti. I valori ammessi sono 0, 1 e 2 con il significato indicato di seguito.
  • Valore 0 (predefinito).
    I caratteri possono essere ripetuti, anche entro uno stesso gruppo.
  • Valore 1.
    I caratteri entro uno stesso gruppo non sono mai ripetuti.
  • Valore 2.
    Come con il valore 1, i caratteri entro uno stesso gruppo non vengono ripetuti. Però in questo caso la condizione è rafforzata perché, anche passando a un nuovo gruppo, i caratteri vengono pescati dalla stringa elenco fino ad esaurimento. Solo a quel punto si riprende l'acquisizione dei caratteri da una nuova copia della stringa e si procede ciclicamente finché tutti i gruppi richiesti sono stati generati.
È ammessa la presenza simultanea di sezioni ordinarie e di altre con comandi per generare testo random, in numero e disposizione a piacere. Il testo prodotto dai comandi random, se ve ne sono, viene riportato in un file strutturato di tipo ordinario con nome random*.log, dove l'asterisco indica la data e l'ora di generazione. Anche se si parte dallo stesso testo origine, questi file hanno un contenuto che varia ad ogni avvio della traduzione. La scrittura di questi file può essere esclusa o abilitata utilizzando la chiave LogRandom del file play.ini e l'opzione /L.

Osservazione. Alcune combinazioni dei parametri non sono ammissibili. Ad esempio, se la stringa del primo campo contiene caratteri distinti in numero minore della lunghezza dei gruppi specificata nel secondo campo, non è possibile adottare un valore diverso da 0 per il parametro di ripetizione. In tal caso, perciò, la lunghezza dei gruppi viene opportunamente ridotta.

Esempi.

2.14. Traduzione in Morse degli appunti di Windows

Se negli appunti di Windows (clipboard) è presente un testo, esso può essere immediatamente tradotto in Morse con i comandi indicati di seguito. La traduzione avviene in modo interattivo, cioè sono utilizzabili i comandi relativi alla traduzione del file Morse [¶2.12]. Inoltre, se il testo presente negli appunti è strutturato [¶2.13], viene rispettata la suddivisione in sezioni e sono disponibili gli specifici comandi.

È possibile copiare negli appunti di Windows il contenuto di un file: aprire con F8 la finestra di esplorazione, spostare il cursore su un file di testo e premere Alt+C. Questo comando è una scorciatoia che equivale ad aprire il file con l'editor, selezionare l'intero contenuto e copiarlo negli appunti con il comando Ctrl+C di Windows.

Anche se non strutturato, il testo presente negli appunti può essere costituito da un singolo comando per la generazione di caratteri random. In tal caso esso viene tradotto secondo le regole illustrate in [¶2.13.1].

2.15. Traduzione in Morse dei caratteri immessi da tastiera

Questa funzione si attiva dalla finestra principale premendo Shift+F10 oppure Alt+T. Ogni carattere battuto sulla tastiera viene immediatamente tradotto in Morse, purché naturalmente sia tra quelli previsti dal codice. La pressione di Spazio produce una pausa di durata pari a quella fra due parole. Premere Esc per ritornare al normale funzionamento.

Torna al sommario.

3. Elaborazione batch

Questo capitolo è dedicato all'illustrazione della sintassi per l'elaborazione batch. Per i particolari relativi ai modi di funzionamento vedere il [¶ 2]. Vedere anche gli esempi contenuti nei file batch allegati al programma.

Le caratteristiche dei suoni possono essere determinate specificando opportuni valori nella riga di comando, a destra del nome del programma play.exe. Sono previste varie sintassi con diversi effetti, descritti nel seguito di questo capitolo [¶ 3.1]. Alcune caratteristiche possono essere inoltre controllate mediante opportune opzioni [¶ 3.2].

3.1. Sintassi della riga di comando

Schermata di aiuto
Sintassi: PLAY.EXE /?]
Questo comando visualizza una schermata sintetica di aiuto dove sono elencate le sintassi ammesse e le opzioni disponibili (l'opzione /H produce lo stesso effetto). Nella stessa finestra sono presenti anche i link alla documentazione, come avviene quando si preme F1 dalla finestra principale.
Modo melodia
Sintassi: PLAY.EXE stringa [opzioni]
La stringa di cui sopra non deve iniziare con le virgolette e deve essere impostata seguendo la sintassi del comando PLAY del Basic ([¶ 4]).
Ricordiamo che i caratteri < e > devono essere immessi come ^< e ^> o, in alternativa, possono essere sostituiti con le parentesi tonde [¶ 5].
Esempio:
   play.exe l16o3gab^>cdef+g8
Modo Morse
Sintassi: PLAY.EXE "stringa" [opzioni]
stringa è una parola o frase da tradurre in telegrafia Morse. Notare che in questa stringa, a differenza di quella del modo melodia, le virgolette che racchiudono la stringa sono obbligatorie e servono al programma PLAY per distinguere un caso dall'altro. Ogni altro carattere è consentito (ad eccezione dei caratteri di reindirizzamento che nel prompt di Windows hanno ruoli riservati.
Esempio:
   play.exe "cqcq de i3lgp/3"
Modo tono fisso
Sintassi: PLAY.EXE frequenza, durata [opzioni]
Viene emessa una nota costante con la frequenza e la durata specificate. I due numeri frequenza e durata devono essere obbligatoriamente separati con una virgola.
Esempio:
   play.exe 600,3
produce una nota costante di 600 Hz per 3 secondi.
Modo sirena
Sintassi: PLAY.EXE freq.ini, freq.fin, ds, ns [opzioni]
freq.ini e freq.fin sono le frequenze estreme, espresse in Hz, del suono di sirena, ds è la durata in secondi di un semiciclo, ns è il numero di semicicli. Tutti i parametri del comando devono essere separati uno dall'altro con una virgola.
Esempio:
   play.exe 500,1000,0.1,30
produce un suono di sirena oscillante fra le frequenze di 500 e 1000 Hz (30 semicicli di 100 millisecondi ciascuno per una durata complessiva di 3 secondi).
Modo trillo
Sintassi: PLAY.EXE freq.ini, freq.fin, ds, ns [opzioni] con ns numero minore di 0
freq.ini e freq.fin sono le frequenze, espresse in Hz, dei due toni di cui è costituito il trillo, ds è la durata in secondi di ciascuno dei toni, ns è il numero di toni. Tutti i parametri del comando devono essere separati uno dall'altro con una virgola.
Osservazione. La sintassi del trillo è uguale a quella del suono di sirena, con la differenza che qui il parametro ns (ultimo numero) è negativo, cioè è preceduto dal segno meno «-».
Esempio:
   play.exe 932,659,.05,-30
produce un trillo composto da 30 suoni, alternativamente alle frequenze di 932 e 659 Hz, ciascuno della durata di 50 millisecondi (la durata complessiva è di 1.5 secondi).
Modo preset
Sintassi: PLAY.EXE n [opzioni]
Questo comando comprende due alternative, a seconda che il numero n sia positivo o negativo (cioè preceduto dal segno meno «-»).

Primo caso: il numero n è maggiore di 0, cioè 1, 2, 3, ...
Viene suonato il preset (melodia preimpostata) avente numero d'ordine uguale a n (v. le sezioni [PRESET] e [PERSONAL] del file play.ini e l'opzione /DP).
Esempio:

   play.exe 23
suona la melodia preimpostata numero 23.

Secondo caso: il numero n è minore di 0, cioè -1, -2, -3, ...
Viene suonata la melodia salvata avente numero d'ordine uguale al valore n privato del segno meno «-» (v. la sezione [SAVE] del file play.ini e l'opzione /DS).
Esempio:

   play.exe -1
suona l'ultima melodia immessa dall'utilizzatore.
Reindirizzamento dell'input
Sintassi: play.exe [opzioni]<FileTesto
FileTesto indica il nome di un file di testo. Se è specificata l'opzione /M il contenuto viene tradotto in Morse altrimenti si assume che il testo sia redatto secondo la sintassi PLAY e viene riprodotto in modo melodia.
Esempio:
play.exe /M /O suono.wav < morse.txt
Il reindirizzamento dovrebbe essere usato principalmente con l'opzione /O per riversare il suono su file.
In presenza di reindirizzamento dell'input sussistono le limitazioni indicate di seguito.
  • La riproduzione non può essere interrotta.
  • Il flusso dei dati viene acquisito senza alcuna verifica preventiva del contenuto, cioè qualunque testo è trattato in modo ordinario (le righe di commento non sono identificate come tali, la struttura in sezioni per il Morse è ignorata, il controllo se il file è binario non viene svolto).
  • La durata massima del suono ottenibile è soggetta alle limitazioni indicate in [¶ 2.1].
  • Il modo interattivo è automaticamente disattivato. In particolare, le eventuali opzioni utilizzate non alterano il file di inizializzazione.
  • Il nome FileTesto va specificato esclusivamente a destra del carattere di reindirizzamento e non come parametro dell'opzione /M. Tale nome non viene assunto come file Morse [¶ 2.12].

3.2. Assegnazione di parametri dal prompt dei comandi

Il programma PLAY può essere avviato dal prompt dei comandi di Windows con particolari opzioni utili per impostare alcuni valori di funzionamento. Questi e altri valori possono essere assegnati anche modificando il file di inizializzazione play.ini, ma le impostazioni da riga di comando prevalgono su quelle corrispondenti che si trovano nel file di inizializzazione.

Nel collegamento al programma PLAY presente sul desktop è possibile specificare eventuali opzioni nelle proprietà alla voce Destinazione. Ad esempio, si supponga di voler avviare il programma con un volume di suono sempre molto basso, indipendentemente da eventuali aggiustamenti eseguiti durante l'uso. Si scriverà:

"%homedrive%\Programmi\play\play.exe" /v5
Le opzioni disponibili sono descritte qui di seguito. Esse sono indicate in grassetto, mentre la parte a destra di ciascuna indica i suoi eventuali parametri. I parametri fra parentesi quadre sono facoltativi. Per i riferimenti ai tasti citati v. [¶2], per i riferimenti al file di inizializzazione play.ini v. [¶5].
Dispositivo per la generazione del suono
Sintassi: /A[01]|
Il valore 0 indica la scheda audio, il valore 1 indica l'altoparlante incorporato (cicalino o buzzer). L'opzione /A1 è inefficace se viene usata una fra le opzioni /C, /O oppure /V.
V. il tasto F12 e la chiave PlayDevice del file play.ini.
Attenzione: può accadere che il cicalino non funzioni correttamente, in particolar modo su elaboratori portatili.
Bilanciamento del Morse
Sintassi: /B[s][,l[,i]]
I numeri s e l determinano rispettivamente il bilanciamento spazi/punti e linee/punti del Morse. Il terzo numero i indica uno spazio supplementare interparola espresso in unità di lunghezza del punto Morse. V. [¶2.4] nonché le chiavi BMorseSP, BMorseLP e MorseEIS del file play.ini.
Frequenza FC
Sintassi: /Cn
Il numero n è la frequenza di campionamento FC usata per la produzione dei suoni tramite la scheda audio e può essere 22050 (che è il valore predefinito), 8000, 11025. Si può abbreviare la scrittura indicando 1 per 11025, 2 per 22050, 8 per 8000. La presenza Dell'opzione /C comporta implicitamente la scelta della scheda audio come dispositivo di uscita, come se fosse specificata anche l'opzione /A0.
V. il tasto F11 e la chiave NSamples nel file play.ini.
Ripristino delle condizioni predefinite
Sintassi: /D[C][P][S]
Ripristina selettivamente le condizioni predefinite (default) e comporta le conseguenti modifiche al file play.ini (se non è contemporaneamente presente anche l'opzione /N). Il comportamento è determinato da una o più lettere indicate a destra di "/D" e precisamente:
  • Nessuna lettera oppure lettera C:
    Sono adottati i valori predefiniti, ignorando anche i parametri specificati al prompt dei comandi.
  • Lettera P:
    viene ripristinata la sezione [PRESET] con i preset originali.
  • lettera S:
    viene svuotata la sezione [SAVE], con la perdita di tutte le melodie salvate.
Ad esempio, l'opzione /Dcps, se non avvengono modifiche durante la sessione, ricostituisce il file originale play.ini," lasciando però intatta la sezione [PERSONAL] con gli eventuali preset personali inseriti dall'utilizzatore mediante un editor.
V. il comando Shift+F12.
Esclusione del modo interattivo
Sintassi: /E
Comporta l'esecuzione immediata, escludendo cioè l'entrata nel modo interattivo.
Frequenza Morse
Sintassi: /Fn
Determina la frequenza del tono per i segnali Morse. Il valore n va espresso in Hz e la frequenza è soggetta alle limitazioni indicate in [¶ 2.1].
V. la chiave MorseFreq del file play.ini.
Disabilitazione del file di inizializzazione
Sintassi: /I
Con questa opzione il programma ignora completamente il file play.ini, cioè non carica le impostazioni che vi sono memorizzate e non lo modifica al termine della sessione. L'opzione /I è diversa da /D perché:
  • adotta implicitamente l'opzione /N;
  • vengono accettati i parametri specificati al prompt.
Trascrizione testo random
Sintassi: /L[0|1]
Con il valore 1 i caratteri generati dalle sezioni random di un testo Morse strutturato vengono trascritti su file (condizione predefinita), mentre con il valore 0 tale trascrizione non ha luogo. V. il [¶2.13.1] e la chiave LogRandom nel file play.ini.
Traduzione in Morse di un file
Sintassi: /M[FileTesto]
Sono possibili due situazioni (v. il reindirizzamento dell'input in [¶3.1]).
  • Situazione ordinaria (senza reindirizzamento):
    Il parametro FileTesto è obbligatorio e indica il nome, con eventuale percorso, del cosiddetto file Morse, cioè un file di testo da tradurre in Morse. L'opzione /M comporta l'adozione implicita delle opzioni /E e /N, cioè viene escluso il modo interattivo e gli ulteriori parametri eventualmente specificati non vengono memorizzati nel file play.ini. Ai fini pratici, la grandezza del file è illimitata (10 Mbyte), salvo il caso in cui si voglia riversare l'audio su file, v. nota seguente.
  • Nel comando è specificato il reindirizzamento:
    in questo caso l'opzione /M indica che il contenuto del file deve essere tradotto in Morse (e non interpretato come melodia). In presenza di reindirizzamento il testo viene comunque trattato in modo ordinario, , anche se il file è strutturato in sezioni. Il parametro FileTesto viene ignorato (perché è già specificato nel comando di reindirizzamento).
Nota. Se si riversa l'audio su file WAV (opzione /O) o si usa il reindirizzamento, la durata complessiva della riproduzione è soggetta alle limitazioni indicate in [¶ 2.1].
Non modificare il file di inizializzazione
Sintassi: /N
La presenza di questa opzione comporta che il file play.ini non verrà alterato al termine dell'esecuzione. Pertanto il programma, nelle successive sessioni, manterrà tutte le impostazioni preesistenti.
Riversamento su file del suono
Sintassi: /O[NomeFile.wav]
Con questa opzione il suono non viene mandato agli altoparlanti ma viene riversato nel disco nel file specificato NomeFile.wav, che può comprendere il percorso completo. Se NomeFile contiene spazi, deve essere racchiuso tra virgolette. Il file viene posto nella cartella di lavoro oppure nella cartella che è stata specificata per ultima. Se non si indica il nome del file, viene adottato implicitamente il nome play.wav.
V. il tasto F10, il [¶ 2.9] e la chiave WavOutDir nel file play.ini.
Osservazione. L'opzione /O comporta implicitamente la scelta della scheda audio come dispositivo di uscita, come se fosse specificata anche l'opzione /A0. Inoltre l'esecuzione è immediata e il file play.ini non viene modificato, come se fossero specificate le opzioni /E e /N, e al termine della scrittura si esce dal programma.
Pausa fra le ripetizioni
Sintassi: /Pn
Indica il valore della pausa che il programma PLAY inserisce fra le eventuali ripetizioni di un suono. Il valore va espresso in secondi, con eventuale frazione di secondo e non può superare 60.
V. la chiave LPause nel file play.ini.
Esecuzione silenziosa
Sintassi: /Q
Riduce la quantità di scritte sullo schermo e inoltre, se si avvia il programma in modo non interattivo (opzione /E), termina l'esecuzione senza porre domande.
Riproduzione con ripetizione
Sintassi: /R[n]
Con questa opzione si provoca la ripetizione del suono, qualunque sia il modo, un numero n di volte. Se l'opzione /R non è seguita dal numero n, la ripetizione continua fino a quando si preme un tasto per terminare. Questa opzione può essere abbinata all'opzione /P per ottenere effetti particolari.
V. la chiave NRepeat nel file play.ini.
Visualizzazione parole
Sintassi: /T[01]|
Il valore 1 determina la visualizzazione delle parole durante la traduzione del file Morse o degli appunti, mentre con il valore 0 le parole non vengono mostrate.
V. il [¶2.12], il tasto F2 nella schermata di esplorazione e la chiave DspText nel file play.ini.
Volume del suono
Sintassi: /Vn
Determina il volume dei suoni. il numero n è una percentuale e può andare da 1 a 100. Il valore predefinito è 35. La presenza Dell'opzione /V comporta implicitamente la scelta della scheda audio come dispositivo di uscita, come se fosse specificata anche l'opzione /A0.
V. la chiave Volume nel file play.ini.
Velocità del Morse
Sintassi: /Wn
Determina la velocità del Morse. Il numero n è espresso in WPM o "parole al minuto".
V. la chiave MorseSpeed nel file play.ini.

Torna al sommario.

4. Descrizione del comando PLAY per la generazione di melodie

Nelle versioni del Basic per MS-DOS è incluso il comando PLAY, che è in sostanza un linguaggio interpretato con il quale è possibile definire un piccolo brano musicale mediante una sequenza di caratteri in una stringa e riprodurre la corrispondente melodia tramite il cicalino o buzzer, il piccolo altoparlante che è collegato direttamente alla scheda madre del calcolatore.

Il programma PLAY.EXE riprende la sintassi del linguaggio PLAY e consente di emettere la corrispondente melodia con gli altoparlanti collegati alla scheda audio (o, volendo, tramite il cicalino, v. opzione /A e tasto F12).

La stringa musicale va preparata combinando i comandi descritti di seguito. Sono implementati quasi tutti i comandi di PLAY: Mancano quelli che consentono il controllo del buffer all'interno di un programma Basic (PLAY ON, PLAY OFF, PLAY STOP) e i comandi per l'esecuzione in sottofondo (MB e MF). Sono state introdotte alcune variazioni, riguardanti soprattutto l'ambito di azione dei comandi. Indicheremo con un asterisco (*) la presenza di una variazione rispetto al Basic. Tutte le differenze sono elencate in [¶ 4.1].

Comando per indicare una nota: lettera [{#|+|-}]
Le lettere comprese fra A e G corrispondono alle note da La a Sol, indifferentemente in carattere maiuscolo o minuscolo. Ciascuna lettera può essere seguita da un segno di accidente e precisamente «+» o «#» per il diesis oppure «-» per il bemolle (*).
Sono disponibili 85 note (*), corrispondenti alla maggior parte dei tasti del pianoforte: precisamente si va dal Do di prima ottava (tre ottave sotto il Do centrale) fino al quarto Do sopra il Do centrale (quest'ultima nota non è prevista in Basic).
Scelta dell'ottava: O n
La lettera O seguita da un numero compreso fra 0 e 7 (*) indica l'ottava cui appartengono le note successive. Ogni ottava inizia con C e termina con B. Il Do centrale è C dell'ottava 3 (la quarta ottava del pianoforte, dato che PLAY comincia a contare le ottave da 0). L'ottava predefinita è la 4.
PLAY.EXE riconosce anche l'ottava 7 (*), ma in tale ottava l'unica nota consentita è il Do (O7C).
Una nota può essere indicata in due modi: con il suo valore numerico, da 1 a 85 (*), oppure con una descrizione che comprende una lettera da A a G, un'informazione sull'ottava ed eventualmente un accidente. Ad esempio, entrambi i comandi seguenti suonano il Do diesis centrale:
   play.exe O3c+
   play.exe N38
L'ottava va indicata solo quando la nota successiva si trova in un'ottava diversa, cosicché le istruzioni possono essere raggruppate in sequenze più concise. Ad esempio, il prossimo comando suona una scala ascendente formata dalle cinque note da G (Sol) dell'ottava 3 fino a D (Re) dell'ottava 4 (occorre indicare l'ottava prima del Do):
   play.exe O3GABO4CD
Comando numerico per indicare una nota: N n
Suona la nota n, dove n indica un numero da 1 a 85 (*). La nota 1 è il Do più basso del pianoforte, la nota 85 è il Do più alto, mentre la nota 37 è il Do centrale. La nota 0 non produce suono e può essere usata per produrre una pausa (v. il comando P). Gli spazi sono ignorati, ma possono essere utilizzati per migliorare la leggibilità dei comandi.
Comando per avanzare di un'ottava: «>» oppure «^>» oppure «)»
Questo comando incrementa l'ottava di una unità. Se lo si usa mentre si è nell'ottava 6, si passa all'ottava 7, dove però è ammesso solo il Do, nota 85 (*).
Comando per retrocedere di un'ottava: «<» oppure «^<» oppure «(»
Il comando riduce l'ottava di una unità. Se l'ottava è 0 si rimane nell'ottava 0 perché non esiste un'ottava più bassa.

Osservazione. Il prompt di Windows non consente l'uso dei caratteri > e <, che sono riservati per il reindirizzamento. Per tale ragione, quando si immette la stringa dal prompt, occorre anteporre a questi due caratteri il carattere «^», grazie al quale essi riprendono il loro significato letterale. Per maggior comodità, si è prevista come alternativa la possibilità di sostituire i due caratteri con le parentesi tonde.

Durata delle note: L n
Il comando L seguito da un numero (L1, L2, ..., L64) determina la durata delle note successive. I valori numerici corrispondono alla durata secondo il seguente prospetto:
1 intero (quattro quarti o semibreve)
2 mezzo (due quarti o minima)
4 un quarto (semiminima)
8 un ottavo (croma)
16 un sedicesimo (semicroma)
32 un trentaduesimo (biscroma)
64 un sessantaquattresimo (semibiscroma)
Anche i valori intermedi sono ammessi (ad esempio, L3). In mancanza del comando L viene assunto implicitamente il comando iniziale L4. Il massimo valore consentito è 256 (*).
Durata di note singole
La durata di una nota può essere modificata, rispetto alla durata comune stabilita dal comando L, aggiungendo a destra del nome della nota un numero. Tale numero stabilisce la durata unicamente della nota cui è riferito, con lo stesso significato di durata del comando L.
Comando per ottenere una pausa: P n
Viene eseguita una pausa con durata corrispondente a n, valore che si interpreta come nel prospetto relativo al comando L. Se il comando P viene usato senza valore numerico, viene assunto per n il valore del più recente comando L (*).
Punto di valore
Ponendo un punto «.» a destra di una nota o di una pausa, il relativo valore viene aumentato della metà, cioè la durata della nota diventa una volta e mezzo la durata della nota priva del punto. Ad esempio, la nota C8. (croma col punto) ha la durata di un ottavo più un sedicesimo (cioè di tre semicrome). È possibile usare più punti consecutivi, ciascuno dei quali aggiunge al valore complessivo la metà del valore aggiunto dal punto precedente. Ad esempio, la durata di C2.. è pari a:
   2/4 + 1/4 + 1/8 = 7/8 (sette crome)
Assegnazione del tempo (metronomo): T n
Il comando T imposta il tempo, dove n indica il numero di quarti in un minuto e può variare da 16 a 9999 (*). In mancanza di questo comando, il tempo è impostato implicitamente a 120.
Staccato, normale e Legato: MS, MN, ML
A seconda del modo impostato, la durata della nota viene ridotta di una certa quantità, sostituendo la durata residua con una pausa, per staccare più o meno una nota dall'altra. I modi possibili sono tre:
  • MS Music Staccato:
    durata = 3/4 della nota;
  • MN Music Normal:
    durata = 7/8 della nota (questo è il modo ordinario);
  • ML Music Legato:
    durata intera della nota (le note sono legate, senza alcun respiro).

4.1. Differenze rispetto al comando PLAY del Basic

Torna al sommario.

5. Il file play.ini (file di inizializzazione)

Il file play.ini contiene le informazioni che servono al programma PLAY per ripresentare la situazione in cui si trovava quando è stato terminato durante l'ultima sessione. Trattandosi di un file di testo, esso può anche essere modificato con il Blocco Note di Windows o con altro editor.

La prima riga serve per identificare il file e deve iniziare con l'etichetta [PLAY]. Il file play.ini è articolato nelle sezioni [CONFIG], [PRESET], [PERSONAL], [SAVE].

Sezione [CONFIG].
Contiene i valori dei parametri di funzionamento e gli ultimi dati immessi. Per la descrizione particolareggiata v. [¶5.1].
Sezione [PRESET].
Contiene i preset, melodie di esempio preimpostate. Ogni riga corrisponde a una melodia, composta secondo le regole del comando PLAY del Basic. L'utilizzatore ha la facoltà di modificarli o di cancellarli (tutti o in parte), o anche di aggiungere altri preset. Il numero di preset predefiniti è 30. Volendo ripristinare i preset originali, basta lanciare play.exe con l'opzione /DP che riscrive interamente la sezione [PRESET] riportandola allo stato iniziale.
Sezione [PERSONAL].
Vanno posti in questa sezione i preset personali che l'utilizzatore desidera conservare. Tale sezione va considerata come un prolungamento della sezione [PRESET]. Il numero dei preset disponibili, mostrato nella barra di stato, è calcolato sommando quelli di entrambe le sezioni. La sezione [PERSONAL] non viene alterata dall'opzione /DP.
Sezione [SAVE].
Il programma PLAY memorizza in questa sezione, una per riga, tutte le melodie inserite durante l'uso, sia in modo interattivo sia dal prompt. L'ordine di immissione è rovesciato, cioè la prima melodia è quella immessa più recentemente. Le righe duplicate vengono eliminate automaticamente. L'opzione /DS azzera questa sezione, eliminando definitivamente tutti i comandi in essa contenuti.

5.1. Descrizione particolareggiata della sezione [CONFIG]

Nella sezione [CONFIG] i parametri sono memorizzati con righe del tipo seguente:
   Etichetta=valore ;commento
La parte di riga che inizia con il carattere ; (punto e virgola) viene ignorata. La parte a sinistra di = è una chiave identificativa, mentre a destra di = è posto il corrispondente valore.

Nel seguente prospetto la parte in grassetto è la chiave, mentre a destra di =, è riportato il valore predefinito (se previsto). Le righe possono essere disposte anche in ordine diverso da quello indicato. Le frequenze dei suoni sono espresse in Hz e sono soggette alle limitazioni indicate in [¶ 2.1]. I valori di durata sono espressi in secondi o frazione di secondo.

NSamples=22050
Frequenza di campionamento FC. Valori ammessi: 8000, 11025, 22050.
Volume=35
Volume del suono tramite scheda audio, in percentuale da 1 a 100.
MorseFreq=900
Frequenza del tono per i segnali Morse.
MorseSpeed=20
Velocità del Morse in parole al minuto (WPM).
BMorseLP=1
Bilanciamento linea/punto in Morse. Valori ammessi: da 0.66 a 5.
BMorseSP=1
Bilanciamento spazio/punto in Morse. Valori ammessi: da 0.66 a 50.
MorseEIS=0
Spazio extra interparola in Morse. Valori ammessi: da 0 a 100.
La durata dello spazio supplementare è il multiplo secondo il valore specificato della durata di un punto Morse. Per impostazione predefinita questo valore è 0.
DspText=1
Il valore 1 determina la visualizzazione delle parole durante la traduzione del file Morse, mentre con il valore 0 le parole non vengono mostrate.
MorseNbsp=%s
Simbolo per rappresentare lo spazio rigido o spazio non divisore (ASCII 160): il primo carattere non deve essere compreso fra quelli traducibili in Morse e deve essere seguito da almeno un carattere alfabetico.
Nel testo da tradurre in Morse seguire la seguente convenzione:
  • se la parte alfabetica è minuscola (ad esempio %s) il simbolo rappresenta uno spazio rigido.
  • se la parte alfabetica è maiuscola (ad esempio %S) il simbolo rappresenta cinque spazi rigidi consecutivi.
Verbose=1
Determina la quantità di scritte sullo schermo: 0=ridotte, 1=complete.
SepString=\
Definisce la stringa di separazione da usare nei comandi per generare testo random in file Morse strutturati [¶2.13.1]. La stringa deve contenere uno o più caratteri con le restrizioni indicate di seguito.
  • Il primo carattere deve avere codice ASCII compreso fra 35 e 127 e non deve essere riproducibile in Morse.
  • La stringa non deve contenere al suo interno né il simbolo dello spazio rigido né la stringa di inizio sezione {¶}.
  • La stringa non deve iniziare con ##.
Se la stringa non è specificata o se non è valida, viene utilizzata la stringa predefinita «\».
LogRandom=1
I valori 1 e 0 determinano rispettivamente se trascrivere o meno i caratteri generati dalle sezioni random di un testo Morse strutturato. V. il [¶2.13.1] e l'opzione /L.
PlayDevice=0
Scelta del dispositivo per la generazione del suono: il valore 0 indica la scheda audio, il valore 1 indica l'altoparlante incorporato (cicalino o buzzer).
NMenu=1
Numero compreso fra 1 e 6 che indica il tipo dell'ultimo comando eseguito.
NRepeat=1
Se il numero a destra di uguale è positivo, il suono (qualunque sia il modo) viene ripetuto il numero di volte indicato. Se il numero indicato è -1, il suono viene ripetuto all'infinito, finché si preme un tasto per terminare.
Differenze rispetto alla corrispondente opzione /R.
  • Il valore specificato viene considerato solo se il programma è stato avviato in modo interattivo.
  • Se il numero è assente oppure vale 0, esso viene interpretato come 1.
LPause=0.1
Durata della pausa fra le ripetizioni del suono.
TFreq=1000
Frequenza del tono fisso.
TDur=1
Durata del tono fisso.
SIniFreq=500
Frequenza iniziale della sirena.
SEndFreq= 1000
Frequenza finale della sirena.
SDur= 0.08
Durata di un semiciclo della sirena.
SNum=30
Numero di semicicli della sirena.
RIniFreq=932
Frequenza iniziale del trillo.
REndFreq=659
Frequenza finale del trillo.
RDur=0.05
Durata del tono del trillo.
RNum=30
Numero di toni del trillo.
InsMode=1
Modalità della tastiera: 1=inserimento, 0=sostituzione.
BrowDir=[cartella di lavoro]
Ultima cartella aperta durante l'esplorazione.
LastMorse=0,0,[cartella di lavoro]\esercizi.txt
Ultimo file tradotto in Morse. I due numeri separati da virgole che precedono il percorso indicano rispettivamente le posizioni di riproduzione e del segnalibro.
WavOutDir=[cartella di lavoro]
Ultima cartella in cui è stato memorizzato un suono come file .wav.
SpecEditor=[Percorso editor]
Contiene il percorso completo dell'editor individuato automaticamente oppure selezionato dall'utente nella finestra di scelta dell'editor [¶ 2.11].
LString=
Ultima stringa immessa in modo melodia.
LMorse=
Ultima stringa immessa in modo Morse.

Torna al sommario.

6. Requisiti del sistema operativo

Il programma PLAY può essere utilizzato in ambiente Windows XP o versione successiva. In particolare, esso funziona in ambiente Windows 7, anche a 64 bit.

La posizione della cartella di lavoro può dipendere dal sistema operativo in uso. In ambiente Windows XP la cartella di lavoro coincide con la cartella del programma e quindi la sua posizione è determinata esclusivamente dalla scelta fatta dall'utilizzatore al momento dell'installazione (naturalmente è necessario che la cartella scelta sia abilitata in scrittura).

Nelle versioni successive di Windows (Vista/Win7, eccetera) possono verificarsi due situazioni.

Se la cartella di installazione è contenuta nella cartella dei programmi:
viene utilizzata la cartella di lavoro play (nome prefissato) contenuta nella cartella Documenti. Qui vengono posti tutti i file necessari al funzionamento (file di inizializzazione, file batch di esempio, file wave di uscita, file temporanei).
Se la cartella di installazione non si trova nella cartella dei programmi:
in questo caso il programma funziona come in ambiente Windows XP, adottando la cartella di installazione come cartella di lavoro e collocando in essa tutti i file necessari.
Da quanto detto consegue che il programma PLAY può essere ospitato per intero in un'unità scelta a piacere, ad esempio in un'unità esterna USB. Perciò, se si ha questa esigenza, l'utilizzo può essere svincolato dal particolare sistema operativo presente nell'elaboratore.

Se si riscontrano inconvenienti con altre versioni di Windows o con emulazioni di Windows in ambienti diversi, si raccomanda di verificare per prima cosa le proprietà del collegamento sul desktop, adattando i nomi delle cartelle alla situazione reale. In ogni caso è possibile cancellare il collegamento prodotto dall'installazione e sostituirlo con uno nuovo, ottenuto mediante le apposite funzioni del sistema operativo.

6.1. Informazioni tecniche

Lo spazio occupato su disco dai file del programma è di circa 300 kbyte.
Il programma utilizza circa 24 Mbyte di memoria RAM.
Per disinstallare il programma PLAY è sufficiente cancellare la cartella di installazione, il collegamento sul desktop ed eventualmente la cartella di lavoro se diversa dalla cartella di installazione.
PLAY è un programma di tipo console, cioè l'inserimento dei dati e la visualizzazione avvengono in modalità testo.

Il programma PLAY è realizzato con il compilatore PB/CC, PowerBasic Console Compiler.

Torna al sommario.

7. Cosa è cambiato

Nei paragrafi successivi sono descritte le modifiche apportate nelle varie versioni al programma PLAY.

Variazioni nella versione 2.10

  1. Nei file Morse strutturati, è possibile includere una o più sezioni costituite da un particolare comando che genera testo random secondo vari criteri [¶2.13.1]. Il testo generato può essere trascritto su file (v. l'opzione /L e la chiave LogRandom nel file play.ini).
  2. La memorizzazione dell'audio su file WAV ora è consentita anche a partire da un testo strutturato in sezioni per il Morse (opzione /M) [¶ 2.9].
  3. Nella traduzione in Morse è stata introdotta la possibilità di specificare facoltativamente uno spazio interparola supplementare. Questo parametro può essere impostato con il terzo valore nell'opzione /B [¶ 3.2] o con la chiave MorseEIS nel file play.ini [¶ 5]. Si può anche variare lo spazio interparola durante la traduzione di un file Morse utilizzando la lettera I (maiuscola o minuscola).
  4. Nuovi tasti. Oltre al tasto I già citato sopra, nella traduzione di un file in Morse si possono ora usare le lettere L e S (maiuscole e minuscole) per variare interattivamente il bilanciamento linea/punto e spazio/punto [¶ 2.12].
  5. Ora sono traducibili in Morse anche i seguenti caratteri: ß (legatura SZ), æ (legatura AE), ñ (N con tilde).
  6. È stata migliorata l'individuazione dell'editor e sono stati aggiunti alcuni editor predefiniti [¶ 2.11]. Per la possibile collocazione dell'editor v. [¶ 2.11.1].
  7. Sono stati inclusi nella distribuzione i seguenti nuovi file:
    • aiuto.bat mostra la sintassi e il prospetto delle opzioni disponibili da riga di comando (come con il comando play.exe /?),
    • random.bat e random.txt. per esemplificare la generazione di Morse random.
  8. Correzioni.
    • La traduzione in Morse dei caratteri immessi da tastiera (Shift+F10 o Alt+T) funzionava correttamente solo dopo aver selezionato il modo Morse nella finestra principale.
    • Il testo specificato al prompt tra virgolette viene ora tradotto in morse integralmente anche se contiene i caratteri ?/.
    • Il percorso dell'editor non veniva mantenuto fra una sessione e l'altra. Per ovviare all'inconveniente è stata aggiunta la chiave SpecEditor nel file play.ini.
    • Il numero di ripetizioni del suono, pur essendo correttamente memorizzato nella chiave NRepeat del file play.ini, veniva sempre ignorato. Ora tale valore viene considerato quando il programma è avviato in modo interattivo.
  9. Se si usa l'opzione /Q insieme con /M, la frase Traduzione in Morse del file ... ora non viene più visualizzata.

Variazioni nella versione 2.0

  1. In Windows Vista o versione successiva, se la cartella di installazione è contenuta nella cartella dei programmi di Windows, ora il programma PLAY utilizza come cartella di lavoro la sottocartella play nei documenti dell'utente [¶6].
  2. Nuova funzione: finestra di esplorazione [¶2.10].
  3. Nuove funzioni: traduzione in Morse di un file di testo, detto file Morse [¶ 2.12], e degli appunti di Windows [¶2.14].
  4. Nuova funzione: traduzione in Morse dei caratteri immessi da tastiera [¶2.15].
  5. Nuova funzione di reindirizzamento dell'input: se è presente l'opzione /m il testo è tradotto in Morse, altrimenti è interpretato in modo melodia. In particolare, aggiungendo l'opzione /O, questo permette di riversare in un file wave la traduzione in Morse di un intero file fino alla durata massima di circa 45 minuti [¶ 3.1].
  6. I testi di aiuto sono mostrati con il browser e includono riferimenti ipertestuali per consultare la documentazione e per verificare la disponibilità di aggiornamenti. In particolare ciò riguarda F1, Shift+F1, Ctrl+F1 nella finestra principale, la finestra di aiuto da prompt e la schermata al termine dell'installazione.
  7. Nel seguente elenco sono mostrati i tasti della finestra principale che sono stati aggiunti (nuovo) o che svolgono una funzione diversa (modificato).
    • Shift+F1: mostra la licenza (nuovo).
    • Ctrl+F1: sommario delle opzioni da prompt (nuovo).
    • F8: apre la finestra di esplorazione (modificato).
    • Shift+F8: avvia immediatamente la traduzione del file Morse (nuovo).
    • F9: apre il manuale (modificato).
    • Shift+F9: apre la finestra di scelta dell'editor (nuovo).
    • Shift+F10: traduce in Morse i caratteri immessi da tastiera (nuovo).
    • F11: modifica la frequenza di campionamento (nuovo, la funzione era svolta da F9).
    • Shift+F11: verifica se esiste un aggiornamento del programma (nuovo).
    • Shift+F12: ripristino condizioni predefinite (nuovo, la funzione era svolta da F8).
    • PgUp/PgDn: cambio modo (nuovi, la funzione era svolta da Tab/Shift+Tab).
    • Tab/Shift+Tab: cambio riga (modificati, ora sono duplicati delle frecce verticali).
    • Alt+A: traduce in Morse il testo contenuto negli appunti di Windows (nuovo).
    • Alt+D: apre la finestra di esplorazione (nuovo, duplicato di F8).
    • Alt+F: apre con l'editor il file Morse (nuovo).
    • Alt+H: finestra di aiuto (nuovo, duplicato di F1).
    • Alt+M: avvia immediatamente la traduzione del file Morse (nuovo, duplicato di Shift+F8).
    • Alt+O: sommario delle opzioni da prompt (nuovo, duplicato di Ctrl+F1).
    • Alt+T: traduce in Morse i caratteri immessi da tastiera (nuovo, duplicato di Shift+F10).
    • Alt+W: avvia l'editor (nuovo).
    • Ctrl+C, Ctrl+M, Ctrl+V: tasti per eseguire le operazioni di copia e incolla nei campi Stringa dei modi melodia, Morse e preset (nuovi).
  8. Comandi della nuova funzione di esplorazione.
    • Invio o F10: apertura file o cartella.
    • Spazio: traduzione in Morse del file scelto, che assume il ruolo di file Morse.
    • F1: aiuto contestuale.
    • F2: attiva/disattiva la visualizzazione delle parole durante la traduzione del file Morse.
    • F3: passa alla cartella di lavoro.
    • F4: salta le directory e va al primo file.
    • F5 o Alt+A: traduzione in Morse del testo contenuto negli appunti di Windows.
    • F6 o Alt+C: copiano negli appunti di Windows il contenuto di un file di testo.
    • F9 o Alt+W: avvio dell'editor (senza parametri).
    • Frecce, Home, End: comandi usuali per scelta file e cartelle
    • Lettera A-Z: portano il cursore su un file o una cartella che iniziano con quella lettera.
  9. Il file Morse può essere opportunamente strutturato in sezioni per lo svolgimento di esercitazioni.
  10. Durante la traduzione del file Morse o degli appunti di Windows sono disponibili vari comandi per avanzare/retrocedere, per fissare o richiamare il segnalibro e per cambiare parametri di tono, velocità, volume.
  11. Nuovi file inclusi nella distribuzione:
    • esercizi.txt (esempio di file Morse strutturato) e morse.txt (file di testo per esemplificare l'utilizzo dell'opzione /M).
    • file batch: brevi.bat (esempi in aggiunta a quelli di esempi.bat, che è stato risistemato), preset.bat (riproduzione di tutti i preset in sequenza), esercizi.bat (avvio dell'esercitazione).
  12. Modo Morse: nuovi parametri bilanciamento linee/punti e spazi/punti [¶ 3.1]. Il bilanciamento si imposta nei nuovi campi del modo Morse, appositamente aggiunti, o con l'opzione /B.
  13. Caratteri in morse: completata la punteggiatura e aggiunte le lettere accentate. Per informazioni sui caratteri traducibili in Morse e sulla forzatura delle pause v. [¶2.4.1].
  14. Durante la prima installazione della versione 2.0, se esiste già il file play.ini, i preset memorizzati vengono aggiornati.
  15. Modificata la grandezza del buffer del suono in memoria. La durata del suono è conseguentemente aumentata secondo i valori della tabella in [¶ 2.1].
  16. Ottimizzata la velocità di scrittura del riversamento del suono su file (tasto F10 e opzione /O).
  17. Nuove opzioni da prompt:
    • /B: imposta il bilanciamento del Morse.
    • /I: ignora il file play.ini.
    • /M: imposta il file Morse e ne avvia la riproduzione oppure, se è attivo il reindirizzamento dell'input, seleziona il modo Morse per la riproduzione.
    • /T:abilita o esclude la visualizzazione delle parole durante la riproduzione del file Morse.
  18. Cambiamenti nel file play.ini:
    • Nuove chiavi: BMorseLP, BMorseSP, DspText, MorseNbsp, BrowDir, LastMorse.
    • Il carattere di inizio commento è stato modificato da «#» (cancelletto) in «;» (punto e virgola).
  19. Il manuale del programma è stato ampiamente riveduto.
  20. Il nome del file di installazione originale è cambiato ed ora è del tipo setup-play*.exe, dove l'asterisco indica un numero che fa riferimento all'edizione del software.

Torna al sommario.

Registrazioni Ciechi File I3LGP Lia Religione Scrivi Inizio