EMMU
# EMMU

L'EMMU è un chip MMU di tipo custom impiegato nel home computer 130XE della famiglia Atari 8-bit. È utilizzato per accedere alla RAM che eccede i primi 64 KB presenti nel 130XE.

L'utente non può manipolare direttamente l'EMMU. Per selezionare le ROM ed i banchi di memoria RAM occorre agire attraverso un registro hardware mappato in memoria e chiamato PORTB $(54017_{10}$ o $D301_{16}).$ A partire dalla linea XL dei propri home computer Atari ha cambiato il registro PORTB trasformandolo da porta di ingresso sulle macchine 400/800 in porta di uscita sulle macchine XL/XE. Così facendo sulle macchine XL/XE sono presenti solamente due porte per il joystick anziché quattro come sulle macchine della serie 400/800.

Impostando o azzerando specifici bits sulla PORTB l'utente può accedere alla RAM che eccede i primi 64 KB in blocchi di 16 KB. Nessuna sincronizzazione è richiesta perché accesso alla memoria è gestito direttamente dal sistema operativo.

L'assegnazione dei bit per la PORTB è la seguente:

PORTB $(D301_{16})$ :

| Bit No. | Descrizione |
| - | - |
| 0 | Controlla la regione della ROM dove risiede il sistema operativo. Disabilitando l'OS ROM viene abilitata la RAM. 0 per disabilitare, 1 per abilitare. |
| 1 | Controlla la regione di ROM sulla quale risiede l'Atari BASIC. 0 per disabilitare, 1 per abilitare. |
| 2 | Controlla il LED #1 nel 1200XL. Controlla la selezione del banco di memoria sul 130XE. |
| 3 | Controlla il LED #2 nel 1200XL. Controlla la selezione del banco di memoria sul 130XE. |
| 4 | Abilita il banco di memoria per la CPU. Solo per il modello 130XE. |
| 5 | Abilita il banco di memoria per il chip ANTIC. Solo per il modello 130XE. |
| 6 | Non usato. |
| 7 | Controlla la regione di ROM dove risiede il codice per il self test. Disabilitando il self test viene abilitata la RAM. 0 per disabilitare, 1 per abilitare. |
