Jump to content
ELFORUM - Forumul electronistilor

Retro Electro (Z80)


ALEKS
 Share

Recommended Posts

Prezint si eu aici cu ce mi-am omorat putinul timp liber in ultima vreme:

 

Posted Image

 

Posted Image

 

Posted Image

 

Posted Image

 

Posted Image

 

Posted Image

 

Posted Image

 

Note: Mazga aia de pe placa e de fapt sacaz dizolvat in alcool isopropilic. Am uns-o ca sa protejeze stratul de cupru impotriva reactiei cu oxigenul din aer. Pentru curiosi: Da, e facut integral in regim de amator, in casa (de la proiectarea schemei electrice de principiu pana la realizarea practica cu treceri "metalizate" din craci de LED-uri si rezistori).

 

Detalii:

 

Microcalculator cu Z80 / 3.6MHz, 32k ROM, 32k RAM, Video VGA, 64k Video RAM, 2 porturi RS-232. De acum ma apuc de implementat soft-ul sistemului de operare... cand o fi gata am sa revin cu poze. Deocamdata am doar LED-uri care palpaie si tot felul de linii si gunoi grafic pe ecran.

 

icon_toilet

 

ALEKS

Link to comment
Share on other sites

... exista cluburi de pasionati de spectrum pe net, pe langa asta, exista rombios-urile de spectrum, ca imagini, foloseste-le ca sa-ti dai seama cum erau concepute rutinele...insa daca xilinxul ala nu e 100% compatibil cu Z80, ai cam pus-o!!!o alta sugestie ar fi sa cauti o copie dupa cartea "The Complete Spectrum ROM Dissasembly", de Ian Logan si Frank O'Hara, aparuta la Melbourne House prin... 1987 sau 1988...

Link to comment
Share on other sites

Z80-ul si Z80 SIO-ul nu erau puse in socluri in momentul in care am facut pozele. Xilinx-ul se ocupa doar de video. Microcalculatorul asta al meu nu va fi similar cu Spectrum, mai degraba va fi un periferic pentru PC (control full de pe PC prin RS-232).Am sa ma documentez din ROM-urile dezasamblate pe care le-am tot gasit pe Internet de-a lungul timpului.PS: Clona de spectrum mi-am facut singur (Cobra) acum ceva ani. Gramada de integrate nu alta.ALEKS

Link to comment
Share on other sites

A iesit foarte frumos!Dar de ce nu are procesor? Daca nu ai Z80 iti fac eu cadou, sigur mai am cateva, numai sa le gasesc. Cred ca mai am si un SIO-Z80, nu stiu exact ce versiune.Daca te apuci sa scrii singur SO iti ia foarte mult, am scris odata doar partea de BIOS pentru un CP/M, si mi-a luat cam jumatate de an. Inca mai am sursele de BDOS si CCP si documentatia de CP/M daca asta ai de gand.Mai frumos ar fi un LINUX.Ce sistem de operare vrei sa pui pe el?Later edit:Vad ca am postat simultan, am si cartea cu ROM-ul de SPECTRUM daca te ajuta cu ceva, dezasamblat si comentat dar e pe hartie nu in format electronic.

Link to comment
Share on other sites

arata incredibil pentru un microcomputer realizat in regim de amator :aplauze cred ca mi am si eu cateva Z80-uri si mai am o placa de HC '85 (parca asta era) cu toate CI pe ea (deci si Z80-ul si EPROM-ul )poate te ajuta cu ceva softul scris in EPROM (cand am timp incerc sa scot memoria si sa o citesc)oricum Bafta! la programat ,pentru mine programarea ramane un mister :rade:

Link to comment
Share on other sites

Salutare,

 

Sa raspund pe rand:

 

RoGeorge, am Z80 mai multe bucati dar am descoperit unul interesant pe o placa industriala. Este unul de culoare alba facut de MicroElectronica. Vreau intai sa-l dezlipesc apoi il voi utiliza pe acesta. Cat despre Z80-SIO, am cateva care..... surpriza nu intra in soclu deoarece au picioarele mai apropiate. Daca le cracanez cu un patent miniatura poate incap dar eu sper sa gasesc un SIO care sa intre ok in soclu.

 

sofian, programul pe care l-am folosit pentru proiectarea schemei electrice de principiu si pentru proiectarea cablajului este CadSoft EAGLE. Cele 3 oscilatoare sunt dupa cum urmeaza:

 

OSC1: 1.8432MHz pentru Z80-SIO

OSC2: 32MHz pentru Video VGA

OSC3: 3.69MHz pentru procesorul Z80

 

Mai greu cu programarea (ca trebuie sa lucrez cu assemblerul pentru Z80). Cu electronica nu-i problema pentru mine. Inca nu am gasit un compilator pentru Z80 care sa ruleze pe PC pentru a-mi putea face .BIN-uri (codurile ROM) sa le programez in EPROM-ul de pe placa.

 

Xilinx-ul il programez prin portul paralel cu ajutorul Xilinx ISE Pack cu care fac si schemele electrice interne / programarea Verilog (cu care inca nu ma descurc cum as dori).

 

stefan_ro, multumesc pentru aprecieri.

 

ALEKS

Link to comment
Share on other sites

poti incerca folosind emulatorul de spectrum, sunt disponibile celebrele gens/mons, si zeus... ai de unde alege!! :rade: mai nasol o sa fie cu scrierea epromului... nu am nici cea mai mica idee daca emulatorul o sa salveze un fisier corect din punctul de vedere al lui z80... nu uita ca discutam despre un procesor pe 8 biti, emulat pe un sistem cu so de 32 de biti, si procesor tot pe 32 de biti!!!din acelasi motiv (procul e pe 8 biti, si inca mai e si fioros de lent), sunt cam sceptic ca poti face ceva cu xilinxul... eu as fi incercat ceva cu atmega, sau cu un pic... sau, pur si simplu, as fi copiat configuratia hardware de la ramul video de spectrum, si-as fi scos RGB, plus conexiune pe scart-ul unui tv... ca sa faci un vga e cam naspa, pentru ca viteza interfetei video o sa fie fioros de mare in comparatie cu a procesorului... o sa ai niste dureri de cap cu temporizarile!!!sau clasicul modulator video cu iesire pe canalul 5 FIF!!! :rade: poate ar fi trebuit sa folosesti un atmega cu frecventa de tact maxima de 10 mhz... scadeai drastic numarul de NOP-uri bagate numai ca sa potrivesti tactii intre ei...si ca veni vorba de eprom... as fi incercat sa folosesc in loc de eprom un flash, d'alea de bios... paginat, etc... nu de alta, dar e mai simplu sa scrii si sa stergi (mai ales :rade: ) un flash decat un eprom "de moda veche"...insa unde-ar mai fi fost distractia??? :da

Link to comment
Share on other sites

Existau sigur sub MS-DOS emulatoare de CP/M. Iar sub CP/M sunt mai multe asambloare de Z80. Cele mai puternice pe care le stiam erau MASM si TASM. Sub CP/M gasesti si compilatoare sau interpretoare pentru aproape orice limbaj care exista la vremea respectiva. Nu stiu daca exista emulator CP/M direct sub Windows sau Linux pentru ca de atunci nu am mai avut treaba cu CP/M.

 

Cauta cu Google CP/M emulator (CP/M este un sistem de operare) si vezi ce gasesti pe acolo. Sub CP/M ai toate sculele soft de care ai avea nevoie ca sa scrii orice pentru Z80. Iar codul masina rezultat poate fi rulat si testat chiar pe PC pentru ca orice procesor de PC este backward compatible cu x86 care este compatibil cu Z80, compatibil la randul lui cu 8080 pe care s-a scris nativ CP/M.

 

Deci codul executabil al oricarui soft (fie el asamblor, limbaj de nivel inalt sau ce iti mai trebuie tie) care merge pentru Intel 8080 poate fi rulat si pe Z80 sau orice procesor care se gaseste in PC-uri din ziua de azi compatibile IBM-PC.

 

Pentru a proba codul rezultat pe viu, in montajul tau, e foarte buna ideea cu flash-ul in loc de EPROM.

 

O sa ai ceva de munca la soft, e un proiect maricel. In functie de cat timp ai si ce vrei de la el s-ar putea intinde de la cateva luni la cativa ani...

 

Sa inteleg ca partea de VGA inca nu ai implementat-o? Xilinx-ul ala e gol?

Link to comment
Share on other sites

Multumiri tuturor pentru informatii.Aria logica am programat-o ca un procesor de sine statator. Nu trebuie sa sincronizez nimic cu Z80-ul. Ca si cum as scrie un Z80-SIO sau un Z80-PIO. Scriu registrul de 8-bit de comanda LOW, apoi HIGH apoi scriu simplu registrul culoare apoi dau CS (chip select) si latch. Selectia se face cu A0, A1 de pe magistrala de adrese de la Z80. Proiectul de generare VGA nu este integral al meu, m-am inspirat dintr-un link de pe Internet (acum mai multa vreme) pe care nu-l mai gasesc, si din niste scheme logice de interfata VGA. Sa nu va asteptati la cine stie ce 640x480. Nu, pot genera decat maximum 64 culori (video pe 6-bit) intr-o rezolutie emulata de 200x200, totul pe un monitor cu o rezolutie de 640x480/61Hz (asta datorita cristalului de 32MHz).MASM si TASM le stiu din timpurile vechi cu 286/386 (1993-1994). Foarte bun mi se pare mai ales TASM. Am sa caut emulatorul de CP/M. Stiu de el, am avut ocazia sa lucru cu el dar nu am stiut ca exista un emulator pentru a-l putea rula pe laptopul 486 pe care fac programarea soft-ului.ROM-ul nu va pleca de pe placa fiindca asta e magia: "Z80 ROM BIOS" e printre primele lucruri care va aparea corect pe ecran. Dar pentru teste, voi folosi un Flash ROM similar cu stergere electrica.Mai este inca mult de lucru... ca sa obtin un rezultat satisfacator.ALEKS

Link to comment
Share on other sites

... Blind, eu zic ca merita un sticky!!! :da sunt verde de invidie din 2 motive: z80 a fost prima mea dragoste in materie de calculatoare... al doilea, placa aia arata trasnet, e incredibil ca poate fi realizata in regim diy!!!ALEKS, felicitari, succes in continuare, si... cel putin pe mine sa ma tii la curent!!! :rade:

Link to comment
Share on other sites

PLA / PAL = arie logica programabila. Eu folosesc acelasi termen de "arie logica" si pentru CPLD-uri (in speta XC9572-ul meu). Probabil si de aici confuzia, scuzele mele.Dispozitivele de tip PALxyVz nu se pot reprograma pe cand dispozitivele de tip PALCExyVz sunt reprogramabile cu stergere electronica (dispozitive in tehnologie CMOS cu stergere electronica). Cat despre XC9572, se sterge electronic fara nici o problema.Integratele mici de pe placa sunt 74HC32 si 74HC14 (folosite exclusiv pentru decodificarea adreselor celor 2 periferice: video / Z80-SIO). Cel de langa condensatoarele acelea electrolitice albastre, este transceiverul serial de tip MAX232. La un proiect mai complicat as fi folosit PALCE-uri pentru decodificarea adreselor sau a altor functii de pe placa.ALEKS

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines