eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaPamięć nadpisuje stos (choć powinno być mnóstwo miejsca) › Re: Pamięć nadpisuje stos (choć powinno być mnóstwo miejsca)
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
    e.net!feeder.erje.net!news.mb-net.net!open-news-network.org!aioe.org!peer03.ams
    4!peer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!u
    nt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.PO
    STED!not-for-mail
    Subject: Re: Pamięć nadpisuje stos (choć powinno być mnóstwo miejsca)
    Newsgroups: pl.misc.elektronika
    References: <5f738c77$0$17355$65785112@news.neostrada.pl>
    <rl05si$7nh$1@dont-email.me>
    From: Atlantis <m...@w...pl>
    Date: Tue, 29 Sep 2020 23:04:13 +0200
    User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
    Thunderbird/68.12.0
    MIME-Version: 1.0
    In-Reply-To: <rl05si$7nh$1@dont-email.me>
    Content-Type: text/plain; charset=utf-8
    Content-Language: pl
    Content-Transfer-Encoding: 8bit
    Lines: 39
    Message-ID: <5f73a14d$0$17357$65785112@news.neostrada.pl>
    Organization: Telekomunikacja Polska
    NNTP-Posting-Host: 83.27.224.139
    X-Trace: 1601413453 unt-rea-a-01.news.neostrada.pl 17357 83.27.224.139:34330
    X-Complaints-To: a...@n...neostrada.pl
    X-Received-Bytes: 2409
    X-Received-Body-CRC: 1213768467
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:757557
    [ ukryj nagłówki ]


    On 29.09.2020 22:36, heby wrote:

    > To może wskazywać np. na to że nie wracasz z przerwania (masz jakieś?)

    Systemy na 6502 mają tylko jeden wektor przerwań. Linia INT jest
    zwierana do masy przez poszczególne urządzenia zgłaszające przerwania,
    za pomocą wyjść typu OC. W kodzie obsługi przerwania trzeba po kolei
    odpytać wszystkie urządzenia i zdjąć flagi. Jest więc tylko jedna
    procedura obsługująca przerwanie, zakończona instrukcją RTI, więc
    program wraca z przerwania.
    Na początku procedury zapisuję na stosie zawartość rejestrów A oraz X
    (tylko z nich korzystam) a przed powrotem je przywracam.

    Wszystkie funkcjonalności związane z przerwaniami działają poprawnie.


    > lub się nie wyrabiasz i po jakims czasie przekręca się stos sprzętowy.

    Co masz na myśli?


    > Co prawda widzę CLI na początku maina, ale może cos przeoczyłem.

    W 6502 CLI to instrukcja "clear interrupt DISABLE", natomiast SEI
    oznacza "set interrupt DISABLE". Czyli CLI włącza przerwania, SEI je
    wyłącza. Odwrotnie niż w AVR-ach czy PIC-ach.


    > Jeszcze jedno: nie przestawiasz gdzieś procesora w tryb BCD?

    Świadomie nie. Cały program zawiera tylko kilka asemblerowych fragmentów
    (m.in. procedura obsługi przerwań) i jestem pewien, że w żadnym z nich
    nie stosowałem instrukcji SED.


    > I jeszcze jedno: Masz gdzieś podpięte SO (pin cpu)?

    Podciągnięty do plusa.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: