-
Data: 2021-08-28 19:14:58
Temat: Re: Program monitora (albo Basic) do 6800
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Kolejne pytanie w tym temacie.
Mianowicie czy ktoś z was wie/pamięta jak w asemblerze zapisywało się
kompletny stan systemu na stosie? Chodzi mi o zapisanie wszystkich
rejestrów, wliczając w to rejestr flag.
Kontekst:
Przenoszę właśnie swój kod obsługi ekranu CRT (za pomocą układu TMS9918)
z innego projektu, opartego na 6502. Na chwilę obecną kod działa
prawidłowo, gdy załaduję go z pliku S19 i uruchomię z RAM-u. Podstawową
rolę w tym kodzie pełni procedura VDPPUTC, która po wywołaniu wrzuca na
ekran znak ASCII, którego kod znajduje się w rejestrze A. Jednocześnie
pilnuje lokalizacji kursora, realizuje przewijanie ekranu itp.
Procedura działa poprawnie z RAM-u. Problem zaczął się, gdy chciałem
przenieść ją do EPROM-u i wywołać z wnętrza monitora, aby znaki wysyłane
przez RS232 (główny interfejs użytkownika) były jednocześnie wysyłane na
ekran.
Niestety, po dodaniu tego kawałka kodu monitor przestaje działać
stabilnie - wysyła echo na RS232, znaki pojawiają się też na ekranie,
ale nie ma żadnej reakcji na komendy. Po jakimś czasie wpada zresztą w
nieskończoną pętlę...
Pierwsza teoria o jakiej pomyślałem to myśl, że coś wewnątrz VDPPUTC
nadpisuje któryś z rejestrów lub którąś z flag, potrzebnych w dalszej
części kodu. Próbuję zrzucać na stos rejestr B oraz zapisywać X do
osobnej lokalizacji w pamięci (nie widzę opcji wysłania go na stos) ale
nigdzie nie widzę opcji zrobienia tego z rejestrem flag.
Następne wpisy z tego wątku
- 28.08.21 19:22 Mateusz Viste
- 29.08.21 16:40 Atlantis
- 30.08.21 09:14 Mateusz Viste
- 30.08.21 09:25 J.F
- 30.08.21 09:56 Atlantis
Najnowsze wątki z tej grupy
- SFP, 10G, simplex sc/apc
- [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- NxtPaper
- Programiści nie przestają zadziwiać świat
- Długi kabel zasilający a na końcu procek
- Dlaczego nam nie idzie
- Co czujnik to inna temperatura
- Jak naprawić pilota
- Dlaczego TMP wer. 2.0 nie może być sprzedawany jako patyk USB lub karta PCIe 1x?!?
- produkcja w UE
- Pamięć SRAM nie działa z Z80182
- plyta indukcyjna - naprawa
- założyłem kamerę
- syrenki alarmów
- Czym obecnie programuje się EPROM-y?
Najnowsze wątki
- 2025-09-13 Korea Południowa odpowie za niewolnictwo seksualne armii USA
- 2025-09-13 Zatrzymano zabójcę Charliego Kirka
- 2025-09-13 Wrześniowe promocje na ładowarkach
- 2025-09-13 Warszawa => BI Developer <=
- 2025-09-13 Warszawa => Sales Assistant <=
- 2025-09-13 Warszawa => Lead SAP PP Consultant <=
- 2025-09-13 Jestem pod wrażeniem. Komputery bankowe w łikendy nie odpoczywają ;-)
- 2025-09-13 Lublin => Delphi Programmer <=
- 2025-09-13 Lublin => Programista Delphi <=
- 2025-09-13 SFP, 10G, simplex sc/apc
- 2025-09-13 KIA 2025r
- 2025-09-12 Rejestracja godna elektryka
- 2025-09-12 Koniec dopłat
- 2025-09-12 Odszkodowanie
- 2025-09-12 Warszawa => Senior SAP Consultant - PP area <=