Stránka 2 z 4

Napsal: 25 srp 2009, 06:29
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ů).

Napsal: 25 srp 2009, 09:00
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í.

Napsal: 25 srp 2009, 09:25
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á.

Napsal: 25 srp 2009, 10:09
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.

Napsal: 25 srp 2009, 10:20
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:

Napsal: 27 srp 2009, 12:18
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:

Napsal: 28 srp 2009, 14:58
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.

:-)

Napsal: 28 srp 2009, 15:16
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.

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

Napsal: 31 srp 2009, 15:18
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

Napsal: 27 zář 2009, 02:14
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.

Napsal: 05 led 2010, 17:35
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.

Napsal: 05 led 2010, 17:58
od Andrea
Hezké, aspoň, že nejsem sama, komu občas takhle hrábne :)

Napsal: 05 led 2010, 23:12
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?

Napsal: 06 led 2010, 10:27
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