Classic AmigaOS (but IIRC not Amiga Forever, due to legal stuff) comes with a speech synthesizer in two parts: narrator.device [1] synthesizes phonemes written in extended ARPABET phonetic syntax, and translator.library [2] converts written US English into the phonetic syntax.
I'm currently going through the tables and using Wiktionary to look up the IPA pronunciations so I can map IPA to ARPABET as used by narrator.device. This is helping me learn IPA, which I've seen around but never got into.
Then I'm thinking of writing something like translator.library but for Catalan, which should be considerably easier than English due to it's more regular pronunciation/spelling. This will help me learn Catalan.
Maybe I should see if narrator.device supports all Catalan phonetics first, to avoid getting stuck at the end of the proejct...
[1] https://wiki.amigaos.net/wiki/Narrator_Device#How_to_Write_Phonetically_for_Narrator
[2] https://wiki.amigaos.net/wiki/Translator_Library