Ritenuto in fatto :
A.- La mattina di Pasqua del 4 aprile 1999, C._ veniva trovato morto nel corridoio del primo piano della casa di sua proprietà in via del Fiume 5 a Bellinzona. Evidenti ecchimosi ed escoriazioni riscontrate al capo, alle labbra, agli arti superiori, al tronco e agli arti inferiori del defunto, escludevano l'ipotesi della morte naturale e lasciavano presupporre l'intervento di terzi. Secondo il rapporto autoptico del 28 ottobre 1999, il decesso era avvenuto per asfissia meccanica per soffocamento, blocco meccanico della respirazione e, verosimilmente, costrizione del collo.
B.- Il 6 aprile 1999, A._ e sua moglie, B._ venivano arrestati. Quest'ultimi abitavano al pianterreno dello stabile di proprietà del defunto. Finalmente, il 21 aprile 1999, A._ confessava aver ucciso C._ la sera del 3 aprile 1999 mentre lo stava rapinando nel suo appartamento. B._ riconosceva di aver partecipato esclusivamente alla rapina.
Secondo i fatti accertati in sede cantonale, verso la fine del mese di marzo 1999, A._ e sua moglie vivevano in condizioni economiche disastrose e progettarono di rapinare C._, il loro padrone di casa. Essi decisero di agire la sera del 3 aprile 1999 tornando da una festa, dopo aver consumato alcolici. Consapevoli della necessità di neutralizzare C._, il quale usciva raramente di casa e portava sempre con sé il portamonete nonché la chiave della cassaforte, si accordarono che la rapina sarebbe stata eseguita materialmente da A._.
Mascherato, egli avrebbe aspettato che l'anziano scendesse al pianterreno per fare rientrare il cane e chiudere la porta dell'ingresso principale. Si sarebbe quindi introdotto nell'appartamento, l'avrebbe immobilizzato, steso a terra e legato, per infine sottrargli il portamonete e la chiave della cassaforte. B._ forniva al marito gli indumenti idonei a mascherarsi nonché una corda gialla, un laccio stringa blu-nero, un paio di guanti e la chiave del portone d'ingresso, sottratta a C._ dieci giorni prima "per dispetto". Indossando una giacca nera con cappuccio, con una calza di nylon in tasca e un'altra sul viso, A._ usciva e girava intorno allo stabile, rientrandovi dal portone principale. Giunto al pianerottolo davanti all'appartamento di C._, stava per infilare la calza di nylon e alzare il cappuccio della giacca sulla testa, quando, scorto attraverso il vetro il malcapitato abbassare la maniglia della porta, A._ si buttava contro quest'ultima, scaraventando così l'anziano contro lo stipite della porta di fronte. Lo agganciava quindi dalle spalle, afferrandolo per il collo della camicia e facendolo cadere a terra con uno sgambetto. Poiché si lamentava, A._ si sedeva sulla sua schiena con tutto il suo peso e tentava di tappargli la bocca, dapprima con una camicia e, infine, legando un asciugamano a modo di bavaglio molto stretto dietro la nuca. Un momento prima C._ avrebbe detto a A._ di averlo riconosciuto e, dopo aver emesso un rantolo, non avrebbe più parlato.
In seguito, A._ si girava, si sedeva con tutto il suo peso sulla testa della vittima, le legava le mani dietro la schiena e le sottraeva di tasca il portamonete nonché un mazzo di chiavi. Rovistava quindi nell'appartamento in cerca di refurtiva. Tornato poi dall'anziano, dopo aver infilato sulla testa la seconda calza di nylon, A._ lo rivoltava sulla schiena, constatando la sua morte. Si recava quindi nel proprio appartamento e raccontava alla moglie l'accaduto, consegnandole la somma di fr. 140.-- trovata nel portamonete del defunto. Quest'ultima usciva per comprare una bottiglia di whisky che beveva poi con il marito. Munito di alcuni sacchi per i rifiuti, egli risaliva nell'appartamento di C._ e rovistava di nuovo in cerca di refurtiva appropriandosi di diversi oggetti. Slegava poi in parte la vittima, cancellava le impronte e scendeva con il bottino. Recatosi per l'ultima volta sul luogo del delitto, egli rimetteva le chiavi nella tasca del morto e partiva lasciando la porta semiaperta. Usciva quindi dal portone principale che chiudeva con la chiave datagli dalla moglie e rientrava nel suo appartamento, ove nascondeva la refurtiva.
C.- Il 31 agosto 2000, la Corte delle assise criminali del Cantone Ticino, statuente a Bellinzona, riconosceva A._ colpevole di assassinio e di rapina per avere, a scopo egoistico, con mancanza di scrupoli e modalità perverse, ucciso intenzionalmente C._ la sera del 3 aprile 1999 e per avere, in correità con B._, sottratto l'ammontare di fr. 140.-- e altri oggetti. La Corte concedeva che l'imputato aveva agito in stato di scemata responsabilità poiché, a causa della sua disturbata personalità e dell'euforia indotta dall'abuso di bevande alcoliche, benché avesse avuto coscienza dell'illiceità del suo comportamento, non aveva potuto conformarsi a tale valutazione. La Corte riconosceva inoltre B._ colpevole di rapina per aver concorso con A._ a perpetrare il furto ai danni di C._, sapendo che il marito avrebbe usato violenza, e in particolare per avere dato assistenza a quest'ultimo fornendogli abiti e oggetti idonei a travestirsi, come pure due corde per legare la vittima, dei guanti e la chiave dell'ingresso principale dello stabile. Entrambi gli imputati venivano infine riconosciuti colpevoli di ripetuta infrazione e contravvenzione alla legge federale sugli stupefacenti per spaccio e consumo di eroina.
La Corte delle assise condannava quindi A._ a 12 anni di reclusione e all'espulsione effettiva dalla Svizzera per 12 anni. B._ veniva condannata a 3 anni e 6 mesi di reclusione. La sospensione condizionale relativa a una pena di 30 giorni di detenzione e di 3 anni di espulsione inflitta a A._ il 14 aprile 1997 nonché la sospensione condizionale concernente una pena di 15 giorni di detenzione pronunciata a carico di B._ il 29 marzo 1999 venivano revocate. La Corte ordinava altresì per i due imputati un trattamento ambulatoriale ai sensi dell'<ref-law> e li condannava a rifondere alla parte civile Rosalba Antonietti un'indennità di fr. 12'318. 10 per spese di patrocinio, di fr. 628. 05 per risarcimento danni e di fr. 10'000.-- per torto morale.
D.- Adita da A._, la Corte di cassazione e di revisione penale del Tribunale d'appello del Cantone Ticino (CCRP) ne respingeva l'impugnativa con sentenza del 24 aprile 2001.
E.- Con tempestivi ricorsi di diritto pubblico e per cassazione, A._ è insorto contro la sentenza della CCRP, chiedendo che essa sia annullata, con protesta di spese e ripetibili. Egli insta altresì affinché gli venga accordata l'assistenza giudiziaria.

Considerando in diritto :
1.- a) Il Tribunale federale esamina d'ufficio e con libero potere d'esame l'ammissibilità del rimedio esperito, senza essere vincolato, in tale ambito, dagli argomenti delle parti o dalle loro conclusioni (<ref-ruling> consid. 2a, 126 I 81 consid. 1, 125 I 253 consid. 1a e rinvii, 458 consid. 1).
b) Nella misura in cui rinviano agli argomenti sollevati in sede cantonale, i gravami sono inammissibili (<ref-ruling>, 100 IV 181 consid. 1a).
c) Vista la natura cassatoria del ricorso di diritto pubblico (<ref-ruling> consid. 5a e rinvii), nella misura in cui il gravame domanda il rinvio all'autorità cantonale per nuovo giudizio nel senso dei considerandi, esso è inammissibile.
d) Date le impugnative e conformemente all'art. 275 cpv. 5 PP, conviene esaminare in primo luogo il ricorso di diritto pubblico e ribadire che con quest'ultimo possono essere censurati in particolare la violazione dei diritti costituzionali quali la garanzia contro l'arbitrio negli accertamenti dei fatti e la violazione del principio in dubio pro reo, mentre la lesione del diritto federale va fatta valere con ricorso per cassazione (art. 269 PP).
I. Ricorso di diritto pubblico (6P. 93/2001)
2.- a) Secondo giurisprudenza costante, nell'ambito dell'accertamento dei fatti e della valutazione delle prove il giudice di merito dispone di un ampio potere di apprezzamento. Per censurare un accertamento dei fatti o una valutazione delle prove arbitrari, non basta che il ricorrente contesti semplicemente la decisione impugnata o che vi contrapponga una propria versione o valutazione, quand'anche essa sia sostenibile o addirittura preferibile; egli deve dimostrare perché l'accertamento dei fatti e la valutazione delle prove da lui criticati sono manifestamente insostenibili o in chiaro contrasto con la situazione di fatto, si fondano su di una svista manifesta o contraddicono in modo urtante il sentimento della giustizia edell' equità. Non è sufficiente che la motivazione della decisione impugnata sia insostenibile, pure il risultato deve essere arbitrario (art. 90 cpv. 1 lett. b OG; <ref-ruling> consid. 1c; sulla nozione di arbitrio: <ref-ruling> consid. 3a, 125 I 166 consid. 2a, 124 I 208 consid. 4, 118 Ia 28 consid. 1b e rinvii).
Quando, come in concreto, la cognizione con la quale ha giudicato l'ultima istanza cantonale è pari a quella di cui dispone il Tribunale federale nell'ambito del ricorso di diritto pubblico, solo la decisione di tale istanza, ad eccezione di quella dell'autorità precedente, può essere oggetto del gravame (<ref-ruling> consid. 1b e rinvii). Anche se la decisione dell'autorità cantonale inferiore non può essere impugnata formalmente, il ricorrente può e deve, nella motivazione del ricorso di diritto pubblico, contestare nel merito la valutazione delle prove eseguita dall'autorità inferiore ritenuta non arbitraria dall'ultima istanza cantonale, che fruiva di un potere d'esame limitato. Egli deve tuttavia confrontarsi contemporaneamente con la motivazione della decisione dell'ultima istanza, la sola che costituisce oggetto del litigio, e spiegare come e perché sia stata negata a torto una valutazione arbitraria delle prove da parte dell'istanza inferiore.
Il Tribunale federale esamina senza riserva l'uso che l'autorità cantonale di ricorso ha fatto del suo limitato potere cognitivo (<ref-ruling> consid. 3c; <ref-ruling> consid. 1b, 125 I 492 consid. 1a/cc, 116 III 70 consid. 2b, 112 Ia 350 consid. 1, 111 Ia 353 consid. 1b in fine; Karl Spühler, Die Praxis der staatsrechtlichen Beschwerde, Berna 1994, pag. 58 n. 140).
b) Il ricorrente contesta di avere ucciso la vittima intenzionalmente e qualifica di arbitrari gli accertamenti compiuti in sede cantonale. Egli si sarebbe reso conto della morte di C._ solo una volta rigirato il corpo dopo aver rovistato nell'appartamento in cerca di refurtiva. A sostegno della sua tesi, cita uno spezzone del verbale di interrogatorio del 26 maggio 1999, dove dichiara "[...] quando ho girato il nonno [C._], dopo aver guardato nella cassaforte e dopo aver messo la calza mi sono accorto che il nonno era morto e quindi ho capito che intanto che lo stavo imbavagliando il nonno stava morendo".
Sostanzialmente, egli propone i medesimi argomenti sollevati in sede cantonale, rinviandovi a tratti, senza confrontarsi in modo rigoroso con gli argomenti sviluppati nella sentenza impugnata. La questione dell'ammissibilità della censura può tuttavia restare indecisa poiché, comunque, infondata.
c) In primo luogo, lo stesso ricorrente (gravame di diritto pubblico, pagg. 7 in fine e 11 in fine) riconosce espressamente che sono sostenibili sia la tesi da lui difesa che quella sposata dall'autorità cantonale. L'accertamento del carattere intenzionale dell'illecito litigioso (v. sentenza impugnata, pagg. 6-9 consid. 3) si poggia tra l'altro sul verbale di interrogatorio del 26 maggio 1999 nel quale il ricorrente, oltre alla frase da lui già citata nel gravame, dichiarava testualmente che una volta a terra C._ "non si era più mosso" che "forse non era ancora morto, ma stava morendo" e che comunque fosse si era accorto che l'anziano "se ne stava andando".
Di per sé, ciò non sarebbe forse rilevante se in aula il ricorrente non avesse testualmente ammesso di "aver avuto la percezione che C._ stesse morendo quando gli prese le braccia da sotto il corpo per legargliele dietro la schiena": egli "non opponeva più nessuna resistenza; le braccia erano molli e lui capì che probabilmente stava morendo" (v. verbale del dibattimento, pag. 5). Tale ammissione è talmente chiara da non potere essere relativizzata, sotto il profilo dell'arbitrio, dalla lettura, per di più parziale, del verbale del 26 maggio 1999. Inoltre, benché durante l'elaborazione del piano il ricorrente non avesse avuto l'intenzione di uccidere l'anziano, egli, pur conoscendo l'età (83 anni) e lo stato di salute precario della sua vittima, era subito passato alle maniere forti.
Dopo averla scagliata violentemente contro lo stipite della porta, averla afferrata per il collo della camicia e con uno sgambetto fatta cadere a terra con il viso contro il pavimento, si era seduto sulla sua schiena con forza per tapparle la bocca e aveva udito un rantolo. Ciò nonostante aveva cambiato il bavaglio, sostituendo la camicia, troppo larga, con l'asciugamano per stringerlo ancora di più. Si era seduto poi sulla sua testa, otturando le vie respiratorie, e le aveva legato le mani inerti dietro la schiena. Da tali constatazioni i giudici di merito hanno dedotto che, man mano che dava sfogo al suo impeto di violenza, il ricorrente aveva percepito, senza curarsene, le conseguenze del suo gesto. A siffatti argomenti, egli contrappone una propria versione dei fatti appellatoria e fondata su un'interpretazione isolata delle sue dichiarazioni. Pretende, inoltre, che la sua affermazione in aula era stata mal compresa a causa delle sue carenze linguistiche. Simile argomento risulta assai poco credibile, non foss'altro che per la presenza, come rileva a giusto titolo la CCRP (sentenza impugnata, pag. 7 consid. 3c), dell'avvocato difensore. Il ricorrente insiste ancora su tre circostanze "fondamentali" a suo favore che dimostrerebbero che egli, al momento di girare il corpo della vittima, fosse convinto che quest'ultima era ancora viva, ossia il fatto che, accortosi che la camicia ostruiva completamente la bocca dell'anziano, prese l'asciugamano per facilitargli la respirazione, che prima di voltarlo si infilò la seconda calza di nylon per evitare di essere riconosciuto e infine che, ancora prima di slegargli le braccia, egli lo liberò dal morso (gravame di diritto pubblico, pagg. 8-9). Tali censure, del resto già trattate dalla CCRP (sentenza impugnata, pag. 8 consid. 3e), hanno un carattere appellatorio manifesto e, pertanto, sono inammissibili. Il ricorrente sostiene poi che gli elementi da lui sollevati proverebbero l'arbitrio, se non singolarmente, perlomeno se "considerati nel loro insieme" (gravame di diritto pubblico, pag. 9 in fine). È invece l'insieme degli elementi valutati in modo dettagliato nella sentenza impugnata (consid. 3, pagg. 6-9) che dimostra che l'accertamento secondo il quale l'aggressore era consapevole che la sua vittima stava morendo è sostenibile. Pertanto, è senza alcun arbitrio che i giudici cantonali hanno accertato il carattere intenzionale dell'atto omicida.
d) Il ricorrente si duole che la sua tesi difensiva non sia stata considerata in sede cantonale. A sua mente, scegliere un'interpretazione dei fatti quando ne esiste un'altra più favorevole all'accusato, senza nemmeno giustificare tale scelta, è manifestamente insostenibile (gravame di diritto pubblico, pag. 8). La Corte cantonale ha motivato in modo diffuso e dettagliato, per di più conformemente all'<ref-law> , le ragioni per cui essa considerava che il ricorrente aveva agito con coscienza e volontà; pertanto, anche tale censura va disattesa.
3.- a) Il ricorrente si avvale infine della violazione del principio in dubio pro reo. Egli persiste nel sostenere l'esistenza di dubbi "rilevanti ed insuperabili" circa l'adempimento del momento soggettivo dell'atto omicida a lui rimproverato.
b) Il principio "in dubio pro reo" è il corollario del principio della presunzione d'innocenza garantita agli <ref-law> , 6 n. 2 CEDU e 14 cpv. 2 Patto ONU II e concerne sia la valutazione delle prove sia la ripartizione dell'onere della prova.
Quale regola che disciplina l'onere probatorio, esso significa che spetta alla pubblica accusa provare la colpevolezza dell'imputato e non invece a quest'ultimo dimostrare la sua innocenza. Il Tribunale federale fruisce al riguardo di un libero potere di esame (<ref-ruling> consid. 2a, 124 IV 86 consid. 2a, 120 Ia 31 consid. 2).
Riferito alla valutazione delle prove, esso significa che il giudice di merito non può dichiararsi convinto dell'esistenza di una fattispecie più sfavorevole all'imputato quando, secondo una valutazione oggettiva del materiale probatorio, sussistono dubbi sulla realtà di tale fattispecie.
Una certezza assoluta non può tuttavia essere pretesa.
Per ammettere una violazione, i dubbi devono apparire seri e irriducibili, ossia imporsi in modo oggettivo (<ref-ruling> consid. 2a, 124 IV 86 consid. 2a, 120 Ia 31 consid. 2d, 106 IV 85 consid. 2b/bb). Sotto questa accezione, il principio "in dubio pro reo" ha la stessa portata che il divieto dell'arbitrio (<ref-ruling> consid. 4b, 119 Ia 362 consid. 3a e la giurisprudenza citata).
c) Il ricorrente si duole della violazione del principio in dubio pro reo nella valutazione delle prove.
Egli si dilunga in modo appellatorio sulla sua tesi difensiva e sostiene che tra le due versioni dei fatti, ugualmente sostenibili, i giudici avrebbero dovuto scegliere la sua, in quanto a lui più favorevole. Ora, dalle prove valutate senza arbitrio, non esistono dubbi ai sensi della giurisprudenza sulla versione adottata dai giudici di merito.
Per il sovrappiù, gli argomenti sollevati si confondono con quelli sviluppati precedentemente nell'ambito della censura di arbitrio. Conviene comunque ribadire che determinanti sono state, non solo le dichiarazioni, ma altresì la dinamica dell'agire raccontata dal ricorrente. Secondo giurisprudenza costante, quando, come nella presente causa, mancano testimoni oculari o prove materiali inconfutabili, un giudizio di condanna che si poggia su di una serie d'indizi, tra cui le dichiarazioni dello stesso imputato, purché sufficientemente precisi da consentire una deduzione logica e rigorosa, non viola il principio in dubio pro reo (RDAT 1998 II 38 141 consid. 2 e 3; sentenza non pubblicata del Tribunale federale del 29 gennaio 1992 nella causa X.
[1P. 784/1990] consid. 2b).
d) Il ricorrente accenna alla limitazione del potere di esame del Tribunale federale in materia di violazione del principio in dubio pro reo e richiama una parte della dottrina che prona la libera cognizione (gravame di diritto pubblico, pag. 11). Come testé ricordato, la giurisprudenza compie una distinzione, che tiene perfettamente conto del ruolo di corte costituzionale del Tribunale federale, tra la violazione del principio "in dubio pro reo" in quanto regola della ripartizione dell'onere della prova, esaminata con libero potere di esame, e la violazione dello stesso principio come regola riferita alla valutazione delle prove ove, trattandosi - giova ripeterlo - di una ponderazione degli elementi probanti, il potere di esame corrisponde per insindacabili motivi a quello in materia di arbitrio (<ref-ruling> consid. 2a, 124 IV 86 consid. 2a, 120 Ia 31 consid. 2). Ancora recentemente è stata ribadita la conformità al diritto costituzionale e internazionale di tale modo di procedere (<ref-ruling> consid. 2 e 4).
4.- Infine nella misura in cui il ricorrente contesta la commisurazione della pena, egli si prevale di una questione di diritto federale (v. art. 269 PP) riservata al ricorso per cassazione e, pertanto, inammissibile in sede di gravame di diritto pubblico.
5.- Discende da quanto precede che il ricorso di diritto pubblico va respinto nella misura della sua ammissibilità.
II. Ricorso per cassazione (6S. 400/2001)
6.- Il ricorso per cassazione, di natura cassatoria (art. 277ter cpv. 1 PP), può essere fondato unicamente sulla violazione del diritto federale (art. 269 PP; sulla nozione v. Martin Schubarth, Nichtigkeitsbeschwerde 2001, Berna 2001, pagg. 41 e segg.). La Corte di cassazione penale del Tribunale federale è vincolata dagli accertamenti di fatto dell'autorità cantonale (art. 277bis cpv. 1 seconda e terza proposizione PP). Essa deve fondare il suo giudizio sui fatti quali accertati dall'ultima istanza cantonale ed eventualmente su quelli considerati dall'autorità inferiore, ma solo nella misura in cui essi siano ripresi, per lo meno in modo implicito, nella decisione impugnata (art. 273 cpv. 1 lett. b PP; <ref-ruling> consid. 1; Bernard Corboz, Le pourvoi en nullité, SJ 1991, pagg. 92 e 93). La motivazione del ricorso non deve criticare accertamenti di fatto né proporre eccezioni ed impugnazioni nuove (art. 273 cpv. 1 lett. b PP). Le censure formulate contro gli argomenti sviluppati nella decisione di prima istanza sono ammissibili solamente nella misura in cui la CCRP li riprende (<ref-ruling> consid. 1).
7.- a) Il ricorrente contesta essenzialmente l'applicazione dell'<ref-law> e ribadisce che l'assassinio non può essere perpetrato per dolo eventuale. La volontà criminale richiesta, più intensa che per l'omicidio, risulta indebolita dalla mancanza di dolo diretto. Il dolo eventuale potrebbe essere ammesso solo in casi particolarmente eclatanti ove, a differenza della fattispecie, le premesse materiali dell'assassinio non suscitano dubbi alcuni.
b) È d'uopo precisare che i giudici cantonali hanno stabilito che il ricorrente aveva agito con dolo diretto; il dolo eventuale è stato esaminato solo a titolo abbondanziale. I presupposti del dolo diretto sono adempiuti allorquando l'agente è cosciente che il risultato illecito si compirà e, ciò nonostante, agisce, accettandone così il suo sopraggiungere (<ref-ruling> consid. 2b). Ciò che l'autore sapeva, voleva o accettava sono questioni di fatto che non possono essere esaminate nel quadro di un ricorso per cassazione (art. 273 cpv. 1 lett. b, 277bis cpv. 1 PP; <ref-ruling> consid. 3, 119 IV 1 consid. 5). I fatti vincolanti accertati nel giudizio impugnato, tra cui soprattutto le ammissioni dello stesso autore, rivelano senza dubbio che egli si rese conto che stava uccidendo la vittima fin dall'inizio dell'aggressione ma, ciò nonostante, continuò ad infierire su di lei ripetutamente e con estrema violenza, dimostrando così una vera e propria consapevolezza omicida. Simile comportamento è indubbiamente costitutivo del dolo diretto; pertanto, la conclusione dei giudici cantonali è conforme al diritto federale, in particolare all'<ref-law>.
8.- a) Il ricorrente sostiene che il suo agire non adempie i criteri dell'<ref-law> e pretende la derubricazione della dichiarazione di colpevolezza per assassinio a omicidio intenzionale.
b) L'omicidio intenzionale (<ref-law>) deve essere qualificato come assassinio (<ref-law>) se l'agente ha agito con particolare mancanza di scrupoli, segnatamente con movente, scopo o modalità particolarmente perversi. In altre parole l'assassinio è un caso aggravato di omicidio intenzionale che si contraddistingue per il carattere particolarmente riprensibile dell'atto illecito (FF 1985 II 912-913, <ref-ruling> consid. 1; Bernard Corboz, Les principales infractions, Vol. I, Berna, 1997, ad <ref-law>, n. 1-23). La nozione di "particolare mancanza di scrupoli" corrisponde alla nozione di "particolare perversità" dell' <ref-law> previgente (FF 1985 II 912; Gunther Stratenwerth, Schweizerisches Strafrecht, Besonderer Teil I, Berna 1995, 5a ed., n. 17, pag. 26). Per caratterizzare "la particolare mancanza di scrupoli", l'<ref-law> evoca l'ipotesi di movente, scopo o modalità particolarmente perversi; tale lista è esemplificativa (FF 1985 II 912; Stratenwerth, op. cit. , n. 20, pag. 27). La casistica è varia. Il movente dell'agente è particolarmente odioso allorquando egli uccide contro rimunerazione o per derubare la sua vittima (<ref-ruling> consid. 1b, 115 IV 187 consid. 2 e 3); lo scopo è particolarmente odioso quando l'agente elimina un testimone sgradito o una persona che si interpone alla commissione di un reato; il modo di agire è specialmente odioso se l'agente dimostra una certa crudeltà o gode nel vedere soffrire la sua vittima (v. anche Corboz, op. cit. , ad art. 112, n. 8-19 e gli esempi citati; nonché Stefan Disch, L' homicide intentionnel, Tesi, Losanna 1999, pagg. 313-322).
Riferendosi più precisamente al caso specifico, conviene ribadire che, in linea di principio, l'uccisione di una persona a scopo di rapina costituisce un tipico caso di assassinio, essendo irrilevante che il rapinatore abbia ucciso prima, durante o subito dopo la fase dell'appropriazione del bottino, senza una ragione particolare oppure per timore di una reazione (effettiva o presunta) della vittima (<ref-ruling>).
c) Per potere dire se l'atto, esaminato sotto ogni angolo, conferisce al suo agente i tratti caratteristici dell'assassino, bisogna procedere a una valutazione globale.
Le circostanze rilevanti sono solo le circostanze dell' atto, quelle cioè direttamente connesse con la sua commissione.
I precedenti e il comportamento dell'agente dopo l'agire possono aver un certo peso se concernono l'illecito e forniscono un quadro della personalità dell'autore (<ref-ruling> consid. 1a, 117 IV 369 consid. 17 e 19a; v. anche Disch, op. cit. , pag. 322). La premeditazione non è un presupposto determinante del reato di cui all'<ref-law> (Disch, op. cit. , pag. 292 e rinvii). Esso non esige nemmeno che l'agente abbia provato piacere nel fare soffrire la sua vittima o nell'ucciderla così come non richiede un'assenza di legami tra di loro o che l'agente abbia agito a sangue freddo. Il tipo d'assassino a cui si riferisce l' <ref-law> è una persona senza scrupoli, che agisce a sangue freddo, di un egoismo primitivo e crasso, priva di sentimenti sociali, che non tiene dunque in alcun conto la vita altrui pur di realizzare il proprio interesse (<ref-ruling> consid. 1a e rinvii; FF 1985 II 912/913). Tale mentalità deve apparire come un carattere costante della personalità sulla quale il giudice si pronuncia secondo criteri morali oggettivi (<ref-ruling> consid. 1a, 115 IV 8 consid. 1b).
d) Nella fattispecie - premesso che nella misura in cui il ricorrente sottopone un'interpretazione diversa dei fatti accertati in sede cantonale e nega in particolare di essersi accanito sulla vittima, le sue considerazioni sono inammissibili (art. 277bis PP) - la CCRP ha giustamente ripreso, aderendovi, le considerazioni dei primi giudici sul carattere particolarmente reprensibile dell'illecito (sentenza impugnata, consid. 6, pagg. 10-12). In questa sede basta ribadire che il ricorrente conosceva lo stato di salute della sua vittima, che sapeva debole e anziana al punto che "anche un bambino con uno spintone avrebbe potuto neutralizzarla". Ciò nonostante, per derubarla, ha messo in atto una violenza, qualificata di "inaudita", "selvaggia", violenza di cui i segni erano visibili su tutto il cadavere.
Egli ha aggredito, atterrato, imbavagliato e legato C._ utilizzando una forza bruta: si è seduto sulla sua schiena, gli ha fratturato le costole e ha compresso il torace fino a bloccargli la respirazione, si è poi seduto sulla sua testa, bloccando le vie respiratorie già ostruite dal bavaglio. Pur accorgendosi che il malcapitato stava morendo, non ha desistito (sentenza impugnata, pag. 7-8 consid. 3c, pag. 11-12 consid. 6b e 6c). Ragioni per un tale comportamento, se non prettamente egoistiche, non ve ne erano. Anzi, il ricorrente stesso ha dichiarato di essere stato amico della vittima dalla quale aveva ricevuto del bene, come "da un padre" (sentenza della Corte delle assise, pag. 48 consid. 8). Da tale valutazione complessiva, i giudici cantonali hanno dedotto a ragione una freddezza d'animo e una mancanza di scrupoli tipici dell' assassino.
e) Il ricorrente si riferisce altresì alla <ref-ruling> consid. 1b e sostiene che la "particolare crudeltà necessaria alla qualifica di assassinio deve essere riconosciuta solo quando l'agente con animo freddo e spietato provoca alla vittima una grave sofferenza e non quando suscita un orrore particolare per altri motivi". Il Tribunale federale non si è espresso in simili termini. Il passaggio citato nella sentenza richiamata viene isolato dal suo contesto: esso non è un considerando del Tribunale federale ma uno stralcio del riassunto della motivazione del giudizio cantonale impugnato. Non è possibile condividere la tesi del ricorrente neanche allorquando egli sostiene che il giudizio di colpevolezza si è fondato su "argomenti esclusivamente emotivi". Come testé affermato, i giudici di merito hanno valutato in modo analitico e diffuso le circostanze globali dell'atto, per poi giudicarle in modo obbiettivo.
f) Il ricorrente ribadisce che non sono state sufficientemente considerate le circostanze e il suo comportamento prima e dopo l'atto, in particolare lo stato di miseria e di disperazione nel quale egli si trovava, nonché il ruolo chiave assunto dalla moglie, la quale odiava la vittima, ed, infine, l'atteggiamento di profondo rincrescimento e di vergogna da lui dimostrato.
Il comportamento del ricorrente denota piuttosto freddezza e cinismo. Egli non ha esitato, una volta immobilizzata la sua vittima e senza curarsi del suo stato, a rovistare nelle sue tasche e nell'appartamento cercando beni di valore. Constatato poi il decesso e dopo essere sceso dalla moglie, egli è risalito per cercare altra refurtiva e cancellare le tracce del crimine testé perpetrato. Senza che questi elementi assumano, a giusto titolo, un peso determinante (Disch, op. cit. , pag. 322), essi sono indizi abbondanziali a conferma del cinismo e della freddezza d'animo dimostrati. Gli altri argomenti sollevati nel gravame sono stati, come si vedrà qui di seguito (infra, consid. 10), correttamente ponderati nell'ambito della commisurazione della pena.
9.- Discende da quanto precede che la condanna del ricorrente per assassinio non viola il diritto federale.
10.- a) Il ricorrente si duole, a titolo sussidiario, della commisurazione della pena nella misura in cui l'autorità cantonale avrebbe omesso di considerare il sincero pentimento dimostrato nei verbali di polizia, davanti al Procuratore pubblico e in aula.
b) Secondo l'<ref-law>, il giudice commisura la pena essenzialmente in funzione della colpa del reo. Tale disposizione non elenca in modo dettagliato ed esauriente gli elementi pertinenti per la commisurazione. La giurisprudenza ha tuttavia interpretato questa disposizione nelle <ref-ruling> consid. 1 e 116 IV 288 consid. 2a alle quali si rinvia. È quindi sufficiente rilevare che il giudice di merito, più vicino ai fatti, fruisce di un'ampia autonomia. Il Tribunale federale interviene solo quando egli cade nell'eccesso o nell'abuso del suo potere di apprezzamento, ossia laddove la pena fuoriesca dal quadro legale, sia valutata in base a elementi estranei all'<ref-law> o appaia eccessivamente severa o clemente (<ref-ruling>1 consid. 2c, 123 IV 49 consid. 2a, 122 IV 156 consid. 3b, 122 IV 241 consid. 1a, 122 IV 299 consid. 2a, 121 IV 3 consid. 1a, 121 IV 193 consid. 2a, 120 IV 136 consid. 3a e rinvii). Il giudice di merito deve motivare la pena pronunciata per permettere di controllare se egli non abbia ecceduto il proprio ampio potere di apprezzamento o se ne abbia abusato. Non gli incombe tuttavia di pronunciarsi su ogni censura particolareggiata sollevata dalle parti né di indicare in cifre o in percentuale l'importanza attribuita agli elementi determinanti per la commisurazione della pena; egli può omettere di richiamare i fatti che, senza arbitrio, gli appaiono non accertati o di scarsa rilevanza (<ref-ruling> consid. 2a/aa, 120 IV 136 consid. 3a e rinvii).
Deve comunque esporre gli elementi da lui considerati decisivi - concernenti in particolare il reato e la personalità dell'agente - in maniera tale che sia possibile controllare se e in quale modo tutti i fattori determinanti, aggravanti e attenuanti, sono stati effettivamente ponderati. In altre parole, la motivazione deve giustificare la pena pronunciata e permettere in particolare di seguire il ragionamento che ne è alla base. La sola enumerazione delle aggravanti e delle attenuanti non è di per sé sufficiente. Delle esigenze supplementari in materia di motivazione si giustificano laddove la pena pronunciata appaia particolarmente severa o mite (<ref-ruling> consid. 2a/aa e rinvii).
c) L'<ref-law> prevede in caso di assassinio la reclusione perpetua o la reclusione non inferiore a 10 anni.
È pacifico che nella fattispecie la pena complessiva di 12 anni, tenuto conto del concorso con il reato di rapina e d'infrazione alla legge federale sugli stupefacenti, è stata fissata nell'ambito del quadro legale. La Corte di merito ha diligentemente esaminato i criteri previsti all' <ref-law> senza lasciarsi guidare da considerazioni estranee.
Il ricorrente non cita alcun elemento pertinente che potrebbe giustificare una modifica della pena e che sarebbe stato omesso o preso in considerazione a torto. Per quanto concerne la pretesa circostanza attenuante del sincero pentimento (sulle condizioni, <ref-ruling>), unica censura proposta, è sufficiente rilevare la confessione del ricorrente e la sua susseguente collaborazione sono state correttamente ponderate come un elemento a favore nell'ambito dell'<ref-law> (sentenza non pubblicata del Tribunale federale del 26 aprile 1999 nella causa D. [6S. 146/1999] consid. 3d). L'illecito è soggettivamente nonché oggettivamente grave, in particolare se si tiene conto della brutalità nell'agire, del motivo prettamente egoistico nonché della freddezza d'animo e del cinismo dimostrati durante l'esecuzione.
A favore dell'imputato sono stati ribaditi oltre alla collaborazione prestata dopo la confessione, le difficili condizioni personali, familiari e sociali in cui viveva e la scemata responsabilità. Dati questi elementi, tenuto conto del minimo edittale e dei reati in concorso, la pena non da adito a critica.
d) Il ricorrente non insorge, e a ragione, la durata della sua espulsione dal territorio svizzero, la quale appare proporzionata nonché esaurientemente motivata (<ref-ruling> consid. 3, 117 IV 112 consid. 3a).
11.- Discende da quanto precede che il ricorso per cassazione è respinto nella misura della sua ammissibilità.
III. Sulle spese
12.- Visto l'esito dei ricorsi, le spese processuali sono poste a carico del ricorrente soccombente (art. 156 cpv. 1 OG e 278 cpv. 1 PP). Il Tribunale federale dispensa la parte, la quale dimostra di essere in uno stato di bisogno e le cui conclusioni non si rivelano fin dall' inizio sprovviste di possibilità di esito favorevole, dal pagare le spese processuali e i disborsi (art. 152 cpv. 1 OG). Se occorre, il Tribunale federale può fare assistere questa parte da un avvocato i cui onorari sono sopportati dalla cassa del Tribunale medesimo (art. 152 cpv. 2 OG). In concreto, essendo i gravami in buona parte inammissibili, rispettivamente manifestamente infondati, ossia fin dall' inizio privi di possibilità di successo, la domanda di assistenza giudiziaria va respinta, sia per ciò che concerne la dispensa dal pagamento delle spese processuali sia per quanto riguarda la nomina di un patrocinatore e l'assunzione dei relativi onorari. Nel fissare la tassa di giustizia si terrà tuttavia conto della situazione finanziaria e personale del ricorrente (art. 153a OG).

Per questi motivi
il Tribunale federale
pronuncia :
I.
1. Nella misura in cui è ammissibile, il ricorso di diritto pubblico (6P. 93/2001) è respinto.
2. La domanda di assistenza giudiziaria è respinta.
II.
3. Nella misura in cui è ammissibile, il ricorso per cassazione (6S. 400/2001) è respinto.
4. La domanda di assistenza giudiziaria è respinta.
III.
5. La tassa di giustizia complessiva di fr.
1'600.-- è posta a carico del ricorrente.
6. Comunicazione al patrocinatore del ricorrente, alla Corte di cassazione e di revisione penale del Tribunale d'appello e al Ministero pubblico del Cantone Ticino.