Pagina 1 di 1

Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 19/09/2016, 20:23
da Digimorf
Ciao a tutti,

come primo post volevo farvi conoscere la mia passione per l'emulazione, che incominciata su PC con emulatori in FLASH e Javascript, e' approdata sui Microcontrollers. Dopo essere rimasto affascinato dai film su Steve Jobs, Apple etc, mi sono invaghito dell'Apple-1. Assolutamente irraggiungibile per me ho pensato di costruirmene uno partendo da un emulatore su una scheda STM32F401 Discovery, che monta un microcontroller ARM Cortex M4.

Mi sono sviluppato un driver per generare un segnale PAL/NTSC per poter collegare un giurassico CRT portatile a 5 pollici, creato ovviamente l'emulatore partendo dal codice di un 6502 e costruendoci su tutto il resto. Poi ovviamente non contento di avere le schede volanti ed il TV che incorporava anche la tipica radio FM/AM, mi sono costruito un case in legno sia per il computer sia per il monitor.

Dopo un po' e' nato :) Con tanta felicita' finalmente ho provato l'emozione di usare un Apple-1, so che non e' l'originale ma il fascino e' molto vicino :) SPero vi piaccia, e se interessati vi racconto un po' di piu'.

Immagine

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 20/09/2016, 22:25
da devil78
Molto interessante :D tutto ciò che è home made è fantastico. Benvenuto :D

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 21/09/2016, 8:09
da Dungeonmaster
un lavorone complimenti <-clap->

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 21/09/2016, 11:45
da Digimorf
Grazie Ragazzi...

Allora scendo un pò in dettaglio :) Vediamo cosa contiene il case.

Immagine

Sono partito da una scheda di sviluppo STM32401 Discovery. In futuro ne farò una custom ma durante lo sviluppo meglio usarne una standard. La scheda verde in centro è quindi la Motherboard. Ha un miocrocontroller ARM Cortex M4, della ST, con uin clock di 84Mhz, 256KB di memoria Flash per il firmware e 64KB di RAM. Più che sufficiente per l'emulazione di un Apple-1.

A sinistra c'è un Arduino Mini Pro che si interfaccia ad una tastiera di un Macintosh 128K vintage. Ho usato un piccolo Arduino con un ATMega328 per leggere gli scancodes della tastiera perchè questa trasmette i dati con un protocollo seriale tipo I2C proprietario, quindi è necessario dedicare un pò di risorse solo per quello, cosa che non ho voluto caricare sul programma principale per via della generazione del segnale TV composito.

In alto c'è un piccolo DAC a 2 bit che pilotato dal driver TV che ho scritto riesce a generare un segnale video composito b/n in PAL o NTSC. Questo è piuttosto complesso e i tempi dell'interrupt che genera le scanlines sono molto stretti (63.5us per NTSC e 64us per PAL), da qui la scelta di non sovracaricare il sistema di interrupt della scheda madre.

L'emulatore fa girare un 6502 virtuale, un driver video, una semplice emulazione del PIA6821 che gestisce via software il terminale video e la ricezione degli scancodes della tastiera.

Ora sto studiando come scrivere l'ACI, l'interfaccia cassette per poter leggere/scrivere su nastro i programmi. Infatti ora purtroppo non si può memorizzare nulla. Non voglio usare la solita scheda SD come ormai si fa perchè il bello del lavoro è proprio rompersi la testa per fare le cose al meglio <-dash->

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 21/09/2016, 12:32
da Dungeonmaster
Sinceramente non ci ho capito una mazza, ma quando vedo ste cose vi ammiro perche deve essere una grandissima soddisfazione, ancora complimenti ;)

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 21/09/2016, 15:08
da antoniomauro
Molto interessante!

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 22/09/2016, 12:32
da Digimorf
Grazie, programmazione e falegnameria sono strettamente collegati. Lo stress della programmazione viene scaricato dal lavoro manuale :)

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 22/09/2016, 13:03
da acordo76
un' ora di applausi!!

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 23/09/2016, 7:45
da Digimorf
Troppo buoni... Chissà che non mi viene voglia di fare un Wood Mame ;)

Re: Emulatore Apple-1 Replica per ARM Cortex M4

Inviato: 07/10/2016, 22:55
da Digimorf
Ciao a tutti,

volevo solo segnalare che ho aperto il blog su questo progetto dove documentero' tutto o quasi :) spero che possa essere di aiuto o ispirazione per qualcuno...

https://arm-cortex-apple-1-replica.blogspot.it/?m=1

Seguitemi ;)