Cioè come caricare un gioco su cassetta su un Amstrad CPC464 con un iPhone ed un FLAC…

Preserviamo le cassette

Lemmings Spectrum cassette Tra gli anni ’70 ed ’80 il software per gli home PC veniva distribuito attraverso comuni cassette audio che venivano lette da registratori a cassette collegati al computer.

Nel 2006 è stato definito il formato dati .TZX con l’obiettivo di preservare tutte le cassette audio contenenti software. Questo formato era stato studiato principalmente per lo ZX Spectrum (qui le specifiche) e non faceva altro che trasformare in file dati quello che, alla fonte, era audio analogico…

Con l’avvento degli emulatori quasi tutto il software disponibile su cassetta è stato in qualche modo convertito in file.

Qualcuno ha adattato il formato .TZX alle macchine Amstrad CPC: è stato definito il formato .CDT, che è di fatto è uno .TZX con qualche informazione aggiuntiva a supporto delle macchine Amstrad. Qui le specifiche.

Ma se volessimo fare il processo contrario?

Se volessimo prendere uno di questi files CDT e volessimo ritrasformarlo in una traccia audio (un FLAC oppure un WAVE) e farlo leggere ad un vero computer Amstrad?

Musica CPC 464!

amstrad cpc 464Iniziamo dai files CDT: su cpc-power.com è possibile reperirne oltre 1700, tutti perfettamente catalogati e verificati.

Adesso non ci resta che trasformarli in files audio, preferibilmente in formato FLAC, così da non perdere informazioni a causa della compressione.

Per fare questo ci vengono in soccorso una serie di tools, originariamente pensati per lo Spectrum, ma perfetti anche per gli Amstrad.

PlayTZX è un software per PC/DOS in grado di convertire un file TZX e CDT in traccia audio .VOC oppure .AU. Tra le utilities del sito World of Spectrum se ne trovano varie versioni, alcune adattate a funzionare in ambiente Win32/Cygwin.Il suo utilizzo è da riga di comando ed è molto semplice:

Usage: playtzx [switches] file.tzx [output.voc|output.au]

Switches: -voc Create a .VOC file instead of audio output
          -au Create a .au file instead of audio output
          -freq n Set sampling frequency to n Hz (22050Hz or 44010Hz)
          -info Show extensive Info on TZX file
          -one Show One line of Info per block (condensed form)
          -x eXpand the Groups in one line mode
          -b n Start replay/conversion at block n
          -e n End replay/conversion after block n
          -p Wait after each page of Info
          -128 Work in 128k mode

Ad esempio per produrre il file .AU di Bubble Bobble:

playtzx -au -freq 44010 "BubbleBobble (UK) (1987) [Original] [TAPE].cdt"

Attenzione: un file .CDT ha dimensioni di poche decine di KB. Il corrispondente file audio avrà dimensioni di diverse decine di MB.

Z:>playtzx -au -freq 44010 "BubbleBobble (UK) (1987) [Original] [TAPE].cdt"

ZXTape Utilities - Play TZX , TZX to VOC Converter and TZX Info v0.12b for Linux

ZXTape file revision 1.12
Number of Blocks: 60

Starting playback on CoreAudio using 44010 Hz frequency.

Block   1:    Pause                 Length: 0.317s
Block   2:    --------------------  Length:   263   Speed:  72% ,Pause: 0.016s
Block   3:    --------------------  Length:   263   Speed:  72% ,Pause: 10.284s
Block   4:    --------------------  Length:   263   Speed:  72% ,Pause: 0.016s
Block   5:    --------------------  Length:   521   Speed:  73% ,Pause: 3.976s
Block   6:    Pure Tone             Length:  4998
Block   7:    Pause                 Length: 0.008s
Block   8:    --------------------  Length:   308   Speed: 106% ,Pause: 0.013s
(...)
Block  58:    --------------------  Length: 12290   Speed: 100% ,Pause: 3.359s
Block  59:    --------------------  Length:     7   Speed: 100% ,Pause: 0.914s
Block  60:    --------------------  Length:  1122   Speed: 100%

Alcune considerazioni:

  • Il file .VOC è un formato proprietario di Creative Labs usato per le schede audio della famiglia SoundBlaster. Davvero vecchio!
  • Il file .AU è un formato un po’ più recente (del 1992) della Sun Microsystems pensato per essere usato sulle prime pagine web di un neonato Internet.

Entrambi i formati si possono leggere con VLC. Se invece li si vuole convertire a standard più moderni si può usare l’ottimo Goldwave (oggi a pagamento) oppure Audacity insieme al suo plug-in FFmpeg import/export library.

Audacity file AU Bubble Bobble

Non ci rimane altro che salvare il nostro file FLAC!! Nel caso dell’esempio da un files di 85KB contenente 60 blocchi è stato prodotto un file da 15MB in FLAC  e di circa 25MB in WAV!

Far digerire ad un Amstrad CPC 464 un file FLAC

Abbiamo un file audio lossless. Come farlo leggere ad un PC vecchio di oltre 40 anni? Con questa:

Audio cassette adaptor

…e con l’aiuto di qualche strumento decisamente più moderno!!

Queste “finte cassette” hanno un ingresso audio analogico attraverso un normalissimo jack da cuffie. Basta collegarlo al proprio PC, ad uno smartphone o ad un tablet che possa riprodurre il file audio. In questo video ho usato un iPad ed un iPhone caricando i files audio via cloud!

Un consiglio: come lettore del file FLAC scegliete un software che non comprima on-the-fly l’audio e trasmetta bit-x-bit il file, senza perdita di informazioni (per iOS consiglio It’s Playing).

Potete acquistare su amazon l’adattatore per cassette per pochi euro:

Reshow viaggio cassetta adattatore per autoRESHOW Cassette adapter Red RESHOW Cassette adapter Black IOMAX - Adattatore Cassetta, Cavo RetrattileIOMAX – Adattatore Cassetta, Cavo Retrattile

NOTA: l’esegubile playtzx può direttamente “suonare” un file .cdt senza necessariamente passare da un file .AU e quindi da un file .FLAC. In questo modo è sufficiente collegare il jack audio della cassetta con il proprio PC e caricare il programma “on-the-fly”. basta omettere l’opzione -au (oppure -voc) nella riga di comando.

Galleria

Altri strumenti

CDT2WINQualche altro tool degno di nota reperibili da qui:

  • CDT2WAV: un semplice player in grado di far suonare direttamente i CDT dal PC Windows trasformandoli al volo in file WAV
  • PlayTZX per MacOS: analogo alla controparte per DOS/WIN
  • WinTZX: applicazione completa, in grado di creare WAVE o VOC direttamente attraverso una comoda GUI.

Qualche gioco