Sari la conținut
ELFORUM - Forumul electronistilor

Reconstruirea minicomputerului Cobra cu circuite moderne ?


cristi7521

Postări Recomandate

Mission complete! CobRRa pe un singur chip.

Procesor Z80 (65MHz)

ROM - Sinclair (16K - Basic) intern

RAM - 48K (minus memoria video + attribute) intern

Tastatura PS2

Iesire VGA 1024 x 768 color

 

Multa Bafta la toti!

RR

 

basic.jpg

cobrra.jpg

Editat de roadrunner
Link spre comentariu
  • Răspunsuri 145
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • roadrunner

    73

  • cloudy

    24

  • Ovidanie

    12

  • BIZONUL66

    9

Top autori în acest subiect

Imagini postate

@cloudy

Asta a fost prima oara in viata mea cand am scris GO TO pe o masina d-asta (adica cu Z80) cu toate ca am facut ceva Cobre n-am scris niciodata un program BASIC pe una (mi se pare imbecilizanta tastaura cu modurile si diverse tipuri de cursor - si n-are Backspace ma rog) - Cand au facut astia Cobra eu trecusem de la Basic la ASM pentru 6502 (6508) si pe tastaturi full.

 

Ti-am lasat emailul pe mesaj privat, mai curat codul il pun la mine pe blog si cam asta e, restul e deja istorie.

Multa bafta.

RR

Editat de roadrunner
Link spre comentariu

Salut @roadrunner

Da-ne si noua linkul cu blogul tau si poate poti pune intreg proiectul , poate inspira si pe altii(si eu am vreo 2 Z80 care zac in sertar :) ).

 

Mersi

BR/Daniel

Editat de Craciun
Link spre comentariu

@Craciun link-ul este pe pagina anterioară. Proiectul cu FPGA nu are nevoie de un CPU extern deci nu are nevoie de acele Z80-uri. Oricum puțin probabil ca cineva să replice proiectul dacă nu are deja o placă de dezvoltare care zace degeaba, scopul lui este unul didactic.

Link spre comentariu

Ma gandeam sa "decuplez" clock-ul partii de afisare (care e 65MHz din cauza rezolutiei - adica e pixel clock-ul) si sa pun Z80 sa lucreze la 85MHz (care se pare ca e limita pe ce FPGA am eu) - o sa fie niste artefacte pe ecran la afisare de chestii foarte dinamice dar nu cred ca o sa afisam nimic foarte dinamic (video) . 

Decupland astea trebuie sa fiu atent cand trec dintr-un clock domain in altul sa le sincronizez in clock domain-ul nou sa evit metastabilitatea (ma refer la INT si la tastatura care e sincrona cu clockul de USB de 12MHz)

Va trebui sa inteleg cum se face scanrea tastaturii ca din cauza vitezei sporite a CPU e destul de greu sa scrii la tatatura ca bate cateva caractere in loc de unul. Trebuie sa ma creieresc cum fac asta fara sa pun frana la CPU si fara sa  modific ROM-ul original de Sinclair. 

Pot sa fac un hack la conversia din scan codes in matrice de keyb de sinclair dar e cam ciobaneste asa.(ca frana de la bicicletele Tohan)

RR

Editat de roadrunner
Link spre comentariu

M-am apucat sa fac un cablaj un PCB dedicat pentru CobRRa si am inceput cu un experiment JTAG (inca nu sunt hotarat daca inglobez "cablul de JTAG" pe placa dar mai vedem) asa ca am facut un PCB mic si albastru cu un bridge cu FTDI sa vad daca il pot programa cum vreau eu ca sa impersoneze un cablu JTAG de Xilinx/AMD

Daca merge experimentul poate il adaug pe main PCB. 

RR

jtag.png

Editat de roadrunner
Link spre comentariu

Ar fi bine ca softul sa poata primi primi update-uri, fără programator jtag. Nu am avut tangență  cu FPGA-urile, așa că intreb: ar fi posibil ca FPGA-ul să instaleze eventualele update-uri de pe cardul de memorie?

Link spre comentariu

FPGA-ul porneste (se configureaza) din doua locuri din jtag cand faci development (si asta e rolul principal al placii) si dintr-o memorie SPI care o scrii tot din JTAG.  O sa-i pun un socket de micro SD ca nu ma costa mai nimic (decat timp) si teoretic pot sa fac ceva sa copieze un fisier de pe micro SD si sa suprascrie SPI-ul dar daca-l mucesti tot la JTAG ajungi. (avand JTAG ai access la o gramada de facilitati in tool-rile de FPGA mai ales pentru debug)

RR

Citat

Ar fi bine ca softul sa poata primi primi update-uri, fără programator jtag.

pe FPGA nu exista "softu" totul e hardware stiu ca suna ca o aroganta dar nu e.

Am gasit modelu 3D corect la conetorul ala "roz" ...

Trebuie sa panelizez placa asta ca e prea mica s-o pun pe masini si m-a cam lovit lenea de weekend.

 

jtag.png

Editat de roadrunner
Link spre comentariu

A mai avansat Cobbra ...VGA, HDMI, USB Tastatura si Gamepad-uri, port serial pe USB, si ceva regulatoare de tensiune (evident un FPGA in mijloc)

RR

img1.thumb.png.8375fe4d6b1311772ef3efe1a537e8ba.pngimg2.png

Editat de roadrunner
Link spre comentariu

Nu renunta la card . Trebuie sa-l faci sa incarce si jocuri de pe card . Ca e CF Card sau SD Card , cum iti vine bine . Formatul de fisiere sa fie TAP sau TZX . Si automat trebuie sa aiba viteza 100 % a spectrumului , ca altfel pa-pa jocuri . Ce frumos arata placa aia , la sfarsit sper sa ne dai si noua schemele si proiectele ( hard si soft ) , sa facem si noi jucaria asta . Mii de multumiri .

 

Editat de aureli67
corectare text
Link spre comentariu

De ce trebuie sa aiba 100% viteza originalului? Sa poata incarca jocurile de pe caseta audio?

Eu ma gandeam ca jocurile pot fi stocate in format digital, asa cum le salvam pe flopy, pe vremea cand aveam HC95...

 

Eu sper ca la sfarsit sa pot cumpara placuta aia gata ehipata si programata, eu nu am cu ce programa FPGA-ul ala.

Editat de Ovidanie
Link spre comentariu
Acum 3 ore, aureli67 a spus:

Ce frumos arata placa aia , la sfarsit sper sa ne dai si noua schemele si proiectele ( hard si soft ) , sa facem si noi jucaria asta . Mii de multumiri .

o sa fie destul de greu de facut la nivel hobby cu BGA-ul ala de 196 de "pini" in mijloc.

Trebuie sa-i pun ceva storage (niste flash pe placa) si inca nu m-am hotarat dar e posibil sa pun si nise RAM tot pe Hyperbus. mai vedem. (un soclu de micro SD va avea sigur)

O sa fie doua "arome" una simpla (si ieftina) si una mai cu de toate si mai scumpa.

 

Ma uitam la un video cu o plaforma cu EZ80 (un microcontroller Z80 care poate adresa mai mult de 64K)  care  cel din video il numea cel mai rapid sistem cu Z80 din lume, ma gandeam daca sa-i spun ca sistemul meu ruleaza cu 80Mhz am decis sa nu-i spun sa nu-i stric omului ziua, video-ul foarte bun de altfel si tipul e bun cunoscator al Z80 si nu numai.

 

Ca sa mai clarific o treaba, placa asta nu are nimic cu Sinclair, Z80, Cobra si altele e simplu o placa cu un FPGA inconjurat de niste conectori (asa in mare) si are unicul rol de a fi utila in invatarea proiectarii de circuite digitale. Un digital playground (e plin internetul de ele nu nici prima nici ultima)

RR

 

Citat

De ce trebuie sa aiba 100% viteza originalului? Sa poata incarca jocurile de pe caseta audio?

cum te joci daca merge de 30x mai repede. Crezi ca rutinele de casetofon (duratele la impulsurile alea) nu sunt de 30 de ori mai scurte? Sunetele sunt cu frecvente de 30x mai sus (adica nu mai sunt pentru oameni) imaginezati jocul "pong" de 30x mai repede. Calculatoarele astea de pe vremuri nu foloseu timere hardware toate intazierile sunt date de software si sunt legate de clk.

 

Citat

Eu sper ca la sfarsit sa pot cumpara placuta aia gata ehipata si programata, eu nu am cu ce programa FPGA-ul ala.

Toolchain-ul (cu care definesti ce o sa fie in FPGA) e free.

RR

Editat de roadrunner
Link spre comentariu

Cand am citit 100% am gândit că viteza trebuie să fie stric identică cu originalul, și mintea mea a găndit că cineva ar vrea să incarce jocurile de pe un sistem audio...

 

Cat despre jocuri, chiar am cerut să am posibilitatea să scad viteza, cum spuneam, încă sufăr că nu am ajuns la ultimul nivel în jocul Exolon.

Editat de Ovidanie
Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări