In questa risposta riporto l'informazione al riguardo che si trova nel capitolo I del libro Italiano di Luca Serianni.
Nella sezione I.22 si spiega come il sistema vocalico latino, che distingueva tra vocali lunghe e brevi, ebbe un'evoluzione in età imperiale:
In latino le vocali si distinguevano in base alla quantità, ossia alla durata della loro articolazione, che poteva essere breve (VĔNIT 'viene') o lunga (VĒNIT 'venne'). Il sistema quantitativo entrò in crisi in età imperiale, quando le vocali brevi tendevano a essere pronunciate come aperte (quindi VĔNIT approssimativamente /'wεnit/) e le lunghe come chiuse (VĒNIT /'we:nit/).
Il nuovo sistema oppositivo basato sulla qualità (o timbro) ebbe presto ragione del vecchio, indebolitosi anche quando il latino, estendendosi in Europa e Africa, «si sovrappose a lingue che nel loro sistema vocalico non conoscevano l'opposizione fonematica fra vocali lunghe e vocali brevi» (TAGLIAVINI 1969: 237).
La sezione I.23 si mostra l'evoluzione delle vocali latine a quelle italiane quando queste si trovano in sillaba tonica. Ci sono anche informazioni su come certe vocali latine si evolverono in dittonghi e sull'evoluzione dei dittonghi latini in vocali italiane:
Dalle dieci vocali latine in sillaba tonica si ebbero quindi in italiano, e nella maggior parte dell'area romanza, i seguenti risultati:
- Ī --> /i/
- Ĭ --> /e/
- Ē --> /e/
- Ĕ --> /ε/
- Ā --> /a/
- Ă --> /a/
- Ŏ --> /ɔ/
- Ō --> /o/
- Ŭ --> /o/
- Ū --> /u/
In sillaba libera o aperta (cioè terminante in vocale, come po in cam-po) da Ĕ si ha il dittongo /jɛ/ e da Ŏ, /wɔ/; in sillaba implicata o chiusa (terminante in consonante, come cam in cam-po), si mantengono /ɛ/ e /ɔ/.
Esempi: VĪNUM>vino, MĬNUS>meno, STĒLLAM>stella, PĔCTUS>petto (ma PĔDEM>piede), ĀLAM>ala, MĂRE>mare, CŎRPUS>corpo (ma NŎVUM>nuovo), SŌLEM>sole, CRŬCEM>croce, LŪNAM>luna.
Dei dittonghi latini, AU si trasforma in /ɔ/
(AURUM>oro), AE segue le sorti di Ĕ (LAETUM>lieto) e OE si fonde con Ē (POENAM>pena).
Ecco nella sezione I.23 com'è stata l'evoluzione dal latino nel caso di vocali in posizione atona:
Nel vocalismo atono mancano – come
abbiamo già visto – le vocali aperte (e i dittonghi):
- Ī --> /i/
- Ĭ --> /e/
- Ē --> /e/
- Ĕ --> /e/
- Ā --> /a/
- Ă --> /a/
- Ŏ --> /o/
- Ō --> /o/
- Ŭ --> /o/
- Ū --> /u/
Esempi (vocale postonica finale): VIGINTĪ>venti, DICĬT>dice, PURĒ>pure,
SEPTĔM>sette, ILLĀC>là, AMĂT>ama, DERETRŎ>dietro, DICŌ>dico, FILIŬM>figlio; per Ū si deve ricorrere a una vocale protonica: FRŪMENTUM>frumento.
Si noti che in sede finale tra le toniche
non compare mai /o/ e tra le atone /u/ (tranne in pochi esotismi come guru, bantu, tabu e zulu; ma anche bantù e, molto più spesso, tabù e zulù).
Come hai indicato nella domanda, però, possiamo trovare esempi di suoni vocalici italiani che non hanno seguito l'evoluzione dal latino che si è spiegata fin qui. Ecco la spiegazione che se ne dà nella sezione I.25:
Gli esiti indicati sono propri delle voci popolari, ossia di quelle che sono state ininterrottamente in uso dalla latinità alla nascita del volgare (esaurendosi nell'italiano antico come ghieva<GLĒBAM 'zolla', o arrivando sino ad oggi, come tutti gli altri esempi citati). Nelle parole dotte (o cultismi), attinte dai libri in età medievale, rinascimentale o moderna, il vocabolo latino è stato adattato solo morfologicamente, mediante desinenza italiana, e si è mantenuta la vocale latina, quale che fosse la quantità (da notare che la e e la o – secondando la pronuncia del latino abituale ancora oggi – sono adattate come aperte, tranne che non risentano dell'analogia di altre forme): quindi DĬSCUM-disco (invece popolarmente desco, nell'accezione concreta di 'tavola per il desinare'), MĒRUM-mero (invece di *miero), CRUDĒLEM-crudele (pronunciato /kru'dεle/, non /kru'dele/, come ci aspetteremmo in caso di esito popolare).
Naturalmente, queste corrispondenze vocaliche tra latino e italiano non esauriscono il quadro dei complessi fenomeni evolutivi attraverso i quali le vocali latine si trasformano in vocali italiane. Per un approfondimento è indispensabile ricorrere a una grammatica storica come ROHLFS 1966-1969 o all'ampio profilo – esteso anche al consonantismo e alla morfologia – di BRUNI 1984: 199-239.
Per aggiungere un esempio di questi altri "fenomeni evolutivi attraverso i quali le vocali latine si trasformano in vocali italiane" a cui fa accenno Serianni e anche un altro caso in cui dalla vocale latina Ō si è ottenuto il suono /ɔ/ in una voce dotta, riporto un passaggio dell'articolo "Dal latino all’italiano: una storia di parole" di Maurizio Trifone, tratto di una sezione dedicata a studiare una serie di coppie di allotropi. Si tratta in questo caso di due termini italiani che derivano dalla stessa parola latina CŌPULA(M), il primo ("coppia") come voce popolare (o "parola ereditaria") e il secondo ("copula") come voce dotta (o "latinismo"), ambedue pronunciati in italiano standard con la o aperta, ma per due ragioni diverse. Per ogni vocabolo si indica inoltre la prima attestazione scritta conosciuta:
CŌPULA(M)
1. coppia /'kɔppja/ - 1260/1266, Brunetto Latini, Favolello (area fiorentina)
2. copula /'kɔpula/ - secolo XIII exeunte, Bonagiunta monaco, Rime (area fiorentina)
La parola ereditaria coppia e il latinismo copula hanno come base comune il latino
CŌPULA(M) ‘unione, legame’, derivato dal verbo APĔRE ‘legare, attaccare’, con il
prefisso CŬM ‘con’. La voce popolare rientra nel lessico fondamentale dell’italiano,
quella dotta è usata solo nel linguaggio letterario con il significato di ‘accoppiamento, coito’ e nella terminologia grammaticale con la duplice accezione di ‘forma verbale che unisce il nome o l’aggettivo del predicato nominale al soggetto’ e ‘congiunzione’ (in
particolare la congiunzione copulativa e). In quest’ultima accezione grammaticale il
latinismo è impiegato da Giovanni Boccaccio nelle Esposizioni sopra la Comedia di Dante (1373-1374). L’esito popolare /'kɔppja/ ha origine dalla sincope della vocale postonica e dalla trasformazione del nesso intervocalico -PL- in /ppj/. Da Ō ci aspetteremmo o chiusa; nel latinismo copula la /ɔ/ si può spiegare con la tendenza a realizzare con timbro aperto le vocali toniche medie presenti nei cultismi e nei forestierismi, sintetizzata da Bruno Migliorini nell'efficace formula «vocale incerta, vocale aperta» (Migliorini 1945: 46 e 1990: 22). Quanto a coppia, invece, l’apertura di /o/ in /ɔ/ in sillaba chiusa è probabilmente da attribuire a influssi settentrionali; va tuttavia segnalato che /o/ prevale nelle varietà toscane, in area lucchese, pisana e senese (DOP). Altro esito popolare del latino CŌPULA(M) è il regionalismo di origine bolognese
gubbia ‘insieme di due o tre cavalli o muli attaccati a un barroccio’.