-
Data: 2021-08-06 10:24:34
Temat: Re: Asembler 8080 - przerwania i zrzucanie stanu rejestrów na stos
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 06.08.2021 09:39, Janusz wrote:
> A 8080 nie ma czasami banków rejestrów jak 51?
Wydaje mi się, że nie. Pod tym względem 8080 to taki uproszczony Z80.
Posiada tylko akumulator, rejestr flag oraz pary rejestrów, które można
traktować jako rejestr szesnastobitowe rejestry do wykonywania
niektórych instrukcji, albo dwa ośmiobitowe, niezależne rejestry: BC, DE
oraz HL. Ten ostatni jest wykorzystywany przez niektóre instrukcje jaki
wskaźnik na określoną lokalizację w pamięci. No i oczywiście jest
jeszcze SP oraz wskaźnik stosu.
> Masz gdzieś błąd.
Pytanie tylko gdzie... Poza hipotezą z przerwaniami nie przychodzi mi
nic innego do głowy.
Funkcje do operacji na VRAM-ie wyglądają następująco:
;RAM ADDRES IN BC, VRAM ADDRES IN DE, DATA LENGTH IN HL
VDPRVRAM:
MOV A, E
OUT VDP_MODE
NOP
NOP
MOV A, D
OUT VDP_MODE
NOP
NOP
VDPRVRAML:
IN VDP_DATA
NOP
NOP
STAX B
INX B
DCX H
MOV A, H
ORA L
JNZ VDPRVRAML
RET
;RAM ADDRESS IN BC, VRAM ADDRES IN DE, DATA LENGTH IN HL
VDPWVRAM:
MOV A, E
OUT VDP_MODE
NOP
NOP
MOV A, D
ORI 40H
OUT VDP_MODE
NOP
NOP
VDPWVRAML:
LDAX B
OUT VDP_DATA
NOP
NOP
INX B
DCX H
MOV A, H
ORA L
JNZ VDPWVRAML
RET
;VRAM ADDRES IN DE, DATA LENGTH IN HL
VDPZEROVRAM:
MOV A, E
OUT VDP_MODE
NOP
NOP
MOV A, D
ORI 40H
OUT VDP_MODE
NOP
NOP
VDPZEROVRAML:
MVI A, 00H
OUT VDP_DATA
NOP
NOP
DCX H
MOV A, H
ORA L
JNZ VDPZEROVRAML
RET
Instrukcje NOP umieszczone testowo, docelowo raczej nie będą potrzebne.
Kod instrukcji do przewijania ekranu zamieściłem w poprzedniej
wiadomości. Zawarte w niej adresy lokalizacji w VRAM-ie oraz długości
odczytywanych/zapisywanych ciągów danych raczej są prawidłowe -
przewijanie potrafi zachowywać się prawidłowo przez całe minuty, pomimo
dużej ilości tekstu przelatującego przez ekran. Gdyby tam była pomyłka,
to błędy bardzo szybko by się nawarstwiły i obraz zacząłby się
rozjeżdżać już po pierwszym przewinięciu o linię do góry.
Następne wpisy z tego wątku
- 06.08.21 10:27 Janusz
- 06.08.21 10:30 Janusz
- 06.08.21 11:23 Atlantis
- 06.08.21 11:41 Atlantis
- 06.08.21 12:06 Atlantis
- 06.08.21 14:47 RoMan Mandziejewicz
- 06.08.21 15:00 Atlantis
- 06.08.21 15:14 Zbych
- 06.08.21 15:16 Janusz
- 07.08.21 11:25 Atlantis
- 09.08.21 10:54 J.F
Najnowsze wątki z tej grupy
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
Najnowsze wątki
- 2025-07-14 granice
- 2025-07-14 Awaria VM?
- 2025-07-14 Gdańsk => Programista Kotlin <=
- 2025-07-14 Warszawa => Junior Rekruter <=
- 2025-07-14 Warszawa => Specjalista rekrutacji IT <=
- 2025-07-14 Wkłady do zniczy...
- 2025-07-14 Warszawa => Specjalista ds. Sprzętu Komputerowego <=
- 2025-07-14 Re: PO chroniło i chroni policyjnych bandziorów [zawiasy za katowanie obywatela (Poznań czerwiec 2012)]
- 2025-07-14 Warszawa => International Freight Forwarder <=
- 2025-07-14 Warszawa => Recruiter 360 <=
- 2025-07-14 Re: Rz?Âd ZAKAZUJE magazyn?Â?w energii ?!! Nowe prawo od 14 lipca to SZOK! ??Â
- 2025-07-14 Warszawa => Sales Assistant <=
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek