Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Kiedy ostatnio pisaliście coś na Z80

marekzs3 02 Lip 2015 20:30 1320 14
  • #1 02 Lip 2015 20:30
    marekzs3
    Poziom 19  

    Pytanie z czystej ciekawości.
    Jeśli chodzi o mnie to chyba 15 lat temu.
    Głównie zabawy z CA80, ale i kilka projektów samodzielnych powstało.
    Zmusiłem CA80 do współpracy z PC przez RS232. Pisałem program na PC i przesyłałem skompilowany do RAM i uruchamiałem. Szybkość 2400 bo ograniczało to działające przerwanie niemaskowalne.

    0 14
  • #3 02 Lip 2015 22:02
    freebsd
    Poziom 34  

    Ostatni z nielicznych razów w 1994 lub 1995.

    0
  • #5 03 Lip 2015 15:20
    EuroGenio
    Poziom 17  

    89-91, miłość od pierwszego wejrzenia do asm'a, Spectrum składak - MB oryginalna

    0
  • #6 03 Lip 2015 19:17
    tobiasz54
    Poziom 12  

    marekzs3 napisał:
    Pytanie z czystej ciekawości.
    Jeśli chodzi o mnie to chyba 15 lat temu.
    Głównie zabawy z CA80, ale i kilka projektów samodzielnych powstało.
    Zmusiłem CA80 do współpracy z PC przez RS232. Pisałem program na PC i przesyłałem skompilowany do RAM i uruchamiałem. Szybkość 2400 bo ograniczało to działające przerwanie niemaskowalne.

    Z80 kojarzy mi się z ZX Spectrum.
    To pisałem na początku lat 80 ub. wieku. Nie było żadnych PC.
    Jedyne komputery o których wtedy słyszałem(i widziałem) to Odra(ZETO w Poznaniu) i Raid(chyba, Elektrownia Dolna Odra).
    Na spectrum pisałem w basic, mam jeszcze kody w zeszycie i taśmy magnetofonowe z programami.

    0
  • #7 04 Lip 2015 20:58
    TWl
    Poziom 19  

    Wstyd się przyznać... Około 2006 roku, na laborce z Technik Mikroprocesorowych ;) Podobno do dziś uczą na Z80.

    TWl

    0
  • #9 06 Lip 2015 18:35
    ZbeeGin
    Poziom 38  

    Z80?
    Ostatni raz to było w 1998 roku. "System allokacji bloków danych w RAM z odzyskiwaniem fragmentacji". Dość proste na Z80 z powodu dobrodziejstw instrukcji LDIR.

    0
  • #10 21 Lip 2015 01:23
    czarusgg
    Poziom 12  

    Aż się łezka w oku kręci jakiś 1982 - 1984 na ZX Spectrum :) Później wpadł mi w ręce skan angielskiego skryptu z procedurami w READ / DATA, cuda się działy :)

    0
  • #11 21 Lip 2015 12:04
    marekzs3
    Poziom 19  

    Znalezione na dysku - jest cała lista.
    Kto jeszcze pamięta?
    ADC A,m1 Dodaj z przeniesieniem pamięć do A
    ADC A,#n Dodaj z przeniesieniem argument bezpośredni do A
    ADC A,r Dodaj z przeniesieniem rejestr r do A
    ADC HL,rr Dodaj z przeniesieniem parę rejestrów rr do HL
    ADD HL,m1 Dodaj pamięć do A
    ADD A,#n Dodaj argument bezpośredni do A
    ADD A.r Dodaj rejestr r do A
    ADD HL.rr Dodaj parę rejestrów rr do HL
    ADD IX,rr Dodaj parę rejestrów rr do IX
    ADD IY,rr Dodaj parę rejestrów rr do IY
    ADD rr,rr Dodaj pary rejestrów
    AND m1 AND A z pamięcią
    AND #n AND A z argumentem bezpośrednim
    AND r AND A z rejestrem r
    BIT b,m1 Badaj bit b w pamięci
    BIT b,r Badaj bit b w rejestrze r
    CALL cc,nn Warunkowane wywołanie podprogramu
    CALL nn Wywołanie podprogramu

    0
  • #12 21 Lip 2015 12:52
    czarusgg
    Poziom 12  

    A ile w różnych wersjach było rozkazów nie udokumentowanych? Po prefiksach? Jak na tamte czasy, ten CPU to było arcydzieło :)

    0
  • #13 21 Lip 2015 15:29
    michalko12
    Specjalista - Mikrokontrolery

    Swoją drogą to co mnie zastanawia to jak w tamtych czasach projektowali dekodery instrukcji dla tych procesorów.

    0
  • #14 21 Lip 2015 18:09
    czarusgg
    Poziom 12  

    Kiedyś zaprojektowałem koprocesor arytmetyczny do Z80 i napisałem jego pełen emulator (praca dyplomowa :)), w programie sam musiałem rozgryźć ten problem. Wbrew pozorom było to bardzo proste. Słowo dekoder jest tutaj kluczowe. Wystarczy rozrysować sobie rozkazy na postać binarną i samo rzuca się w oczy, że np. dwa najstarsze bity określają rodzaj operacji, trzy najmłodsze zawsze stanowią o argumencie a w zależności od zaledwie jednego bitu zależy, czy dochodzi do uruchomienia następnego dekodera, czy też określenie argumentu. Zawsze w Z80 argument był określany tylko trzema bitami, ewentualny dodatkowe przełączniki to kolejne zawsze tylko max 2 bity. Dlatego reszta, tj. 5 lub 3 bity wchodziły na dekoder instrukcji. A tam już po prostu licznik kroków po przepełnieniu którego aktywował się pin M1 i wszystko zaczynało sie od nowa :)

    0
  • #15 26 Lip 2015 08:17
    ZbeeGin
    Poziom 38  

    marekzs3 napisał:
    Kto jeszcze pamięta?
    (...)
    ADD HL,m1 Dodaj pamięć do A

    Takiego mnemonika sobie nie przypominam. Jeśli brać pod uwagę opis to raczej chodzi o ADD A,(HL). Chyba, że używaliście dziwnego i niezgodnego ze standardem assemblera.

    1