Vai al contenuto
PLC Forum


Retrocomputing con una CPU V20 (8088 + 8080)...


Just4Fun

Messaggi consigliati

Ciao a tutti,

era un pò che questa cosa mi frullava in testa... ovvero fare una versione della mia precedente scheda Z80-MBC2 usando una CPU V20 (8088 con modalità 8080 compatibile).
In particolare ho scelto la versione full static CMOS della V20, ovvero un uPD70108H, cosa che mi porterà importanti semplificazioni.

 

20190416-173956.jpg

 

Ho appena iniziato i primi "esperimenti" con la CPU V20 usando una MCU STM32F030R8 come processore ausiliario di I/O (è la scheda custom bianca).
Essendo una versione "full static" posso eseguire singoli impulsi di clock ed usare i GPIO della scheda ARMando come un Logic Analyzer.


Nella foto ho forzato una istruzione di HALT (0xF4) sul bus dati facendo entrare la CPU V20 nella stato di HALT evidenziato dall'accensione del led blu:

 

20200203-185726b.jpg

 

Il prossimo passo sarà predisporre una la sequenza di boot per caricare ed eseguire un file binario da microSD...

 

 

Link al commento
Condividi su altri siti

  • 1 month later...

Dopo alcune piccole variazioni sia nell'HW che nel FW della MCU STM32F030 ora tutto funziona come previsto.

 

20200219-200954.jpg

 

Ho realizzato due utility: iLoad che carica da seriale un file in formato Intel-Hex contenente codice 8088/8086 eseguibile, ed iLoad-80 che fa la stessa cosa ma con codice 8080 (la differenza è nella gestione della memoria e nell'attivazione della modalità 8080 della  CPU V20).

 

Qui una breve demo con il consueto "Hello world" scritto in assembler 8088/8086. Ho usato NASM come assember.

Visto che non sembra possibile inserire direttamente video da youtube (ma tutte ste limitazioni le trovo solo nei forum italiani... mah... 😕) inserisco il link:

 

video: https://youtu.be/3EfY2uouxss

 

E qui un test di esecuzione di codice 8080. In particolare ho fatto il porting dell'Altair Basic:

 

video: https://youtu.be/yM8VKNeYMu8

 

 

Nel frattempo ho completato (su carta) la versione definitiva della scheda che avrà 3 possibili configurazioni di RAM (128/512/1024KB), una porta GPIO in stile Raspberry ed una porta di espansione I2C. Inoltre sarà possibile aggiungere come opzione una scheda microSD per l'emulazione degli HD ed uno RTC.

 

Ora non rimane che passare al CAD lo schema elettrico e realizzare il PCB...

Link al commento
Condividi su altri siti

Grazie!

A volte mi diverto pure a mischiare il retrò con il nuovo...

Qui una scheda custom che ho realizzato per emulare in una FPGA CPU a 8 bit, utilizzando il progetto VHDL Multicomp:

 

A191117.jpg

 

e qui un video con un sistema Z80 completo (in VHDL) che esegue MP/M (SO CP/M compatibile multi utente) con 4 "utenti"/terminali in contemporanea...

 

 

 

Wow!!! allora li prede i video youtube... 😀

Link al commento
Condividi su altri siti

  • 2 weeks later...

Ho completato il PCB della scheda "finale" (V20-MBC):

 

A250220-B.jpg

 

Le principali caratteristiche sono:

- V20HL CPU (uPD70108HCZ)
- RAM configurabile come 128/512/1024KB;
- moduli RTC e microSD opzionali (gli stessi della scheda Z80-MBC2);
- porta 16x GPIO opzionale;
- porta I2C;
- porta seriale;
- connettore ISP (per l'Atmega32);
- clock configurabile a 4/8MHz;
- compatibile con le schede uTerm (terminale VT100) e uCom (adattatore RS232)

 

Ora alcuni raffinamenti finali prima d'inviare i file gerber in fabbricazione...

Link al commento
Condividi su altri siti

Ciao just 4fun,
 

ho visto il tuo messaggio in questo e anche in un altro forum, il tutto semrba interessante, ma, tuttavia, forse, e' presentato un po' come una dimostrazione di capacita'.

Sarebbero casomai anche interessanti alcuni dettagli riguardo lo scopo finale di tutto questo, e, se puo trovare utilita' per gli utenti del forum.

:whistling:
 

Modificato: da dott.cicala
Link al commento
Condividi su altri siti

Il 18/3/2020 alle 17:58 , dott.cicala ha scritto:

Sarebbero casomai anche interessanti alcuni dettagli riguardo lo scopo finale di tutto questo...

 

Poi ti faccio un disegnino... 🤣

Link al commento
Condividi su altri siti

  • 1 month later...

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...