MHB8080

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Yarda1
Příspěvky: 2372
Registrován: 11 úno 2009, 01:00

#16 Příspěvek od Yarda1 »

honza_jan píše:Z80 vyráběli v NDR jako U880. Umělo to zpracovávat dvojbajtové instrukce. To Intel a jeho klony neuměly.
IMHO 8080 pracovala až s tříbajtovými instrukcemi, třeba LXI H, adr a částečně uměla i operace s šestnáctibitovými daty. Z80 měla navíc snad blokový přenos dat (nebo něco takového, nedostala se mi tehdy do spárů).

Uživatelský avatar
Hill
Administrátor
Administrátor
Příspěvky: 18898
Registrován: 10 zář 2004, 02:00
Bydliště: Jičín, Český ráj

#17 Příspěvek od Hill »

Z80CPU se vyskytovala ve třech verzích:
- originál Zilog, který uměl celou množinu instrukcí plus některé operace s indexregistry a ukazatelem zásobníku, které původně tvůrce nezamýšlel.
- klony z Asie (například NEC 780), které uměly jen tu publikovanou množinu instrukcí a při těch "nadstandartních" se chovaly od každého výrobce jinak, nejčastěji došlo k resetu počítače nebo z zacyklení.
- U880D z NDR, která uměla ještě půlit indexregistry a operovat s nimi (rotace a podobně, jestli se dobře pamatuji, tak to byly tříbajtové instrukce po FD xx xx..., ale to neberte za stoprocentní, už je to dost dávno).

V Polsku a u nás vznikla hromada programů, které využívaly tyto "zakázané" instrukce, tedy ty, co vznikly neúmyslně jaksi navíc (viz například skupina Proxima v Ústí n/L.). Tak se stalo, že v některém Spectru chodily všechny jejich programy, v jiném jen za předpokladu, že se vyhodí NEC a dá se tam Zilog, ale nejlíp U880D - ta totiž dovolovala, když se to ovšem umělo, dělat v programu s daty přímo psí kusy, zejména ty, které urychlily zobrazování (skoky ve videoram, a podobně). Ale ty se využívaly v době poslední křeči osmibitových počítadel, kdy za čárou už vesele běhaly šestnáctky i dvaatřicítky.
Záměrně píšu o Spectru, protože v architektuře jiných počítadel (Sharp MZ nebo Sord M5) neměly "zakázané" instrukce tak široké využití, pokud ho vůbec měly. Tam mohl chodit i ten NEC.

Těmito pestrostmi programy pro I8080 nemohly trpět, protože každá 8080 uměla jen tu jednu množinu instrukcí.

Uživatelský avatar
Yarda1
Příspěvky: 2372
Registrován: 11 úno 2009, 01:00

#18 Příspěvek od Yarda1 »

"Tajné" instrukce se daly využít třeba u programovatelné kalkulačky TI58, ale taky s nimi byly problémy, že u některých výrobních řad fungovaly u jiných ne.
Pokud si vzpomínám, nepublikované chování (tuším) adresové sběrnice bylo využito k zobrazování u počítačů Sinclair ZX.
Ale na to se tazatel původně neptal.
Ještě OT: U CNC systémů z kolínské Tesly byl použit procesor sestavený z obvodů malé a střední integrace. Uměl to co 8080 a navíc několik aritmetických instrukcí - obyčejná 8080 by v tomhle využití byla moc pomalá.

Uživatelský avatar
Hill
Administrátor
Administrátor
Příspěvky: 18898
Registrován: 10 zář 2004, 02:00
Bydliště: Jičín, Český ráj

#19 Příspěvek od Hill »

Už jsem neměl čas se blíž vrátit k té 8080, tak teď: je sice pravda, že Zilog toho uměl daleko víc, ale na druhou stranu I8080 bych dnes označil za ARISC-procesor (s téměř redukovanou instrukční sadou), u kterého se hromada potřebných instrukcí musela realizovat programovou rutinou. Například ten blokový přenos (LDIR) se na 8080 musel řešit smyčkou v programu - a byl rychlejší, protože využíval méně cyklů procesoru na každý průchod.

Vzhledem k potřebě mnoha podpůrných obvodů kolem I8080 bych se dnes hodně kroutil, kdybych s ním měl něco stavět. Bylo by to velké, složité a pažravé. Normální počítač s ním už snad nikdo konstruovat nebude ani z nostalgie a do aplikací obvykle stačí mikrokontroléry all-in-one.

Uživatelský avatar
Crifodo
Příspěvky: 14471
Registrován: 11 říj 2005, 02:00

#20 Příspěvek od Crifodo »

Především se už bude (na rozdíl od zilogu) ta 8080 pěkně blbě shánět. I s těmi podpůrnými obvody. O to je to cennější sběratelsky :wink:

Uživatelský avatar
kelley
Příspěvky: 192
Registrován: 04 led 2008, 01:00
Bydliště: Brno

#21 Příspěvek od kelley »

Pokud tě to opravdu zajímá, vřele doporučuji ke studiu modrá AR B 1/83 a B 2/83 - mikropočítačový systém Intelka a JPR-1 (ing. Eduard Smutný), 8080ka i s podpůrnými obvody je tam rozebraná do detailu.
A pokud bys na to chtěl i ty součástky, napiš SZ, nějak se domluvíme :wink:

Uživatelský avatar
zdenekxxx
Příspěvky: 272
Registrován: 19 úno 2007, 01:00

#22 Příspěvek od zdenekxxx »

Nevíte někdo o překladači assembleru 8080 do hex kódu? Chtěl bych si s tím trochu pohrát a psát program přímo ve strojovém kódu je poněkud nepraktické

Pak by se tento hex kód nahrál do dané EPROM nebo FLASH.

:-)

Návštěvník

#23 Příspěvek od Návštěvník »

Na tyhle starý potvory používám Telemark Assembler (TASM) od Tohomase N. Andersona. Umí pøekládat pro 6502, 8048, 8051, 8085, Z80, 6805 a TMS32010.

jnd

#24 Příspěvek od jnd »

Já mùžu doporuèit sbasm, úspìšnì jsem ho použil na MHB8048/8035 :) http://www.sbprojects.com/sbasm/crosses.htm

Uživatelský avatar
forbidden
Příspěvky: 8808
Registrován: 14 úno 2005, 01:00
Bydliště: Brno (JN89GF)
Kontaktovat uživatele:

#25 Příspěvek od forbidden »

zdenekxxx píše:Nevíte někdo o překladači assembleru 8080 do hex kódu? Chtěl bych si s tím trochu pohrát a psát program přímo ve strojovém kódu je poněkud nepraktické

Pak by se tento hex kód nahrál do dané EPROM nebo FLASH.

:-)
Sem si vzpomnel, jak jsme kdysi ve skole programovali tyto procesory. Misto prekladace byly tabulky a kazda ASM instrukce mela svuj hexa kod. Takto jsme prekladali program a pres klavesnici cpali do programove pameti 8O

Neznamy

#26 Příspěvek od Neznamy »

To je tu niekto cez sado-maso, alebo vazny zberatelsky kus?

Nema niekto prekladac pre 4004, neviete to niekto napalit? To vazne k tomu treba externu pamat? No to som netusil :-)

Fakt, tri napajania a este sa k tomu musia spinat v urcenom poradi?
No parada, ja som myslel, ze budu treba styri napatia + a - a - a + :-)

Preco chcete programovat 8080 v hex? Nie je to moc pohodlne? Nie je nativnejsie pouzitie priamo v binarom zapise?

Neobavate sa tej prudkej rychlosti spracovania udajov?
Predpokladam, ze to bude minimalne na nejaku DPS aplikaciu.

Minule som videl pekny navod na vyrobu parneho stroja z konzervy. Pekne pracuje, dokonca i vrtulkou toci. Totalne high-end.

Uživatelský avatar
Svaradmin
Příspěvky: 65
Registrován: 21 kvě 2007, 02:00
Kontaktovat uživatele:

#27 Příspěvek od Svaradmin »

Tak jeden masochista by tu byl :D

Asi před 4 roky se mi dostaly do ruky do šrotu mířící osazené desky z nějakého tuzemského stařičkého počitadla. A na nich hejna obvodů z dob mého mládí. Vše se točilo kolem procesoru MHB8080A. Zachvátila mne vlna nostalgie a já si řekl, že si čas udělám a postavím mikropočítač ve stylu tréninkových kitů ze 70. let minulého století. Jako podmínku jsem si dal to, že použiju integráče pouze z těch desek a taky, že to postavím z hlavy a nikoliv podle nějakých návodů. Výsledek, pojmenovaný NOSTALCOMP 8080, je na přiloženém obrázku dole.

Na obrázku vpravo je vlastní počítač. Osazení klasika: 8080A + 8224 a 8228. Krystal 18 MHz. Statická RAM 1 kB (2x2114), EPROM volitelná jumpery mezi 2716, 2732 a 2764 (není osazena, protože jsem používal simulátor). Dekódování adres má na starosti 3205, která prostě jen visí na A13-A15 a rozděluje adresový prostor na 8 bloků po 8 kB (v těchto blocích jsou adresovány i periferie). To je z důvodů jednoduchosti. Invertor 7404 slouží jako zesilovač pro výstup INTE, kde je LEDka. To je celkem zbytečné, ale posloužilo to jako nejjednodušší indikátor, že to něco dělá (první program prostě jen otestoval RAM a střídavým povolováním a zakazováním přerušení rozblikal tuto ledku na znamení, že RAM je OK). Ostatní ledky signalizují přítomnost napětí (-5V, +5V a +12V). Konektor "pětikolík" slouží pro připojení zdroje. Ostatní konektory PSL10 slouží pro připojení periferií. Na jeden jsou vyvedeny signály RESET, INT a "čipselekty", na druhém je datová sběrnice D0 až D7.

Druhá deska je terminál. Obsahuje 20 tlačítek v matici + tlačítka pro RESET a INT. Jako displej slouží 8 sedmisegmentovek v multiplexu. Na další port je pověšeno 8 LEDek na hraní. Jako porty slouží 4x 74LS373. Díky jejich šílenému rozložení vývodů je to asi nejhorší možnost, ale nic jiného na těch deskách tehdy nebylo (dnes už mám i desky s 8255 :D ). Dále je na desce terminálu jeden 7400 (RS klopné obvody pro ošetření tlačítek RESET a INT) a 7402 (NOR pro dekódování LE a OE u vstupního portu, aby byl správně zajištěn jeho třetí stav při neadresování). Dva konektory PSL10 slouží k propojení s deskou CPU. Napájení je také z procesorové desky (+5V).

Vše je osazeno na dvou vrtaných univerzálkách z GM a pospojováno zvonkovým drátem. Všechny IO, tranzistory, sedmisegmentovky a krystal je z těch šrotových desek. Všechny IO a tranzistory jsou TESLA. Vše funguje :D Pro překlad jsem používal zde zmiňovaný TASM a simulátor EPROM jsem stavěl podle nějaké ročenky ELECTUS. Napájecí zdroj jsem sehnal od PMD85 a má to potřebné pořadí náběhu napětí. Ovšem to není až tak nutné. V "dobové" literatuře je spousta konstrukcí zdrojů, které mají maximálně pojistku výpadku -5V, ale pořadí neřeší.

Později jsem si drbal hlavu, že jsem to nepostavil kompatibilní s PMI-80. Mohl jsem převzít hotový monitor a pohrát si více, protože vymýšlet vlastní monitor už se mi nechtělo, a tak vše skončilo jen u několika málo testovacích programů (testy RAM, displeje, ledek, klávesnice). Pak to šlo do šuplíku...

Ale ta nostalgická vlna se občas vrací a já ty staré desky se spoustou součástek pořád mám. A více než posledně. Mimochodem mám také dvě desky s docela vzácným procesorem 8085, takže uvidíme... :D

PS: ale stavět něco s CPU 4004 (viz předešlý příspěvek), to je teda síla! Mít ten šváb, tak si na to čas udělám hned teď. 4 bity jsou prostě 4 bity :D

Edit: ještě jsem našel fotku těch původních dárcovských desek, tak ji přikládám.
Přílohy
nostalcomp8080.jpg
Nostalgický mikropočítač s CPU 8080
(53.14 KiB) Staženo 147 x
darci2.jpg
Dárci součástek :-)
(82.85 KiB) Staženo 150 x
Naposledy upravil(a) Svaradmin dne 05 led 2010, 19:27, celkem upraveno 1 x.

Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 02:00

#28 Příspěvek od Andrea »

Hezké, aspoň, že nejsem sama, komu občas takhle hrábne :)

Uživatelský avatar
Crifodo
Příspěvky: 14471
Registrován: 11 říj 2005, 02:00

#29 Příspěvek od Crifodo »

Na těch nostalgických vlnách je jedno mínus, a sice že jejich perioda je v porovnání s lidským životem ne moc výhodná :D :D
ty dárcovské desky jsou CNC tesla kolín?

Uživatelský avatar
Svaradmin
Příspěvky: 65
Registrován: 21 kvě 2007, 02:00
Kontaktovat uživatele:

#30 Příspěvek od Svaradmin »

Fakt netuším z čeho ty původní desky jsou. Ale je to z několika různých systémů. Třeba ta 8080 tam byla dvakrát a pokaždé na jiné desce z evidentně různých zařízení. Dalším pokladem, který na těch deskách je jsou jednočipy 8748 a 8035. Deska se sedmisegmentovkami byla zase zahraniční (imperialistická) a ty displeje jsou HP.

Á propos, nemáte někdo předlohu DPS (i amatérky navrženou, ale kompatibilní) pro PMI-80? :D A co třeba zdroják (nejlépe komentovaný) monitoru PMI-80? :D

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“