org 30000
ld a,120
ld (kolor),a
ld a,31
ld (il_k),a
ld a,11
ld (il_w),a
ld a,32
ld (licznik),a
ld de,$5801
ld (pocz),de
call procedura
ld a,80
ld (kolor),a
ld a,31
ld (il_k),a
ld a,11
ld (il_w),a
ld a,32
ld (licznik),a
ld de,$5961
ld (pocz),de
call procedura
ret
org 30070
ld a,80
ld (kolor),a
ld a,31
ld (il_k),a
ld a,11
ld (il_w),a
ld a,32
ld (licznik),a
ld de,$5801
ld (pocz),de
call procedura
ld a,120
ld (kolor),a
ld a,31
ld (il_k),a
ld a,11
ld (il_w),a
ld a,32
ld (licznik),a
ld de,$5961
ld (pocz),de
call procedura
ret
org 60000
procedura:
ld hl,(pocz) ;adres poczatkowy atrbutow
ld a,(il_k)
ld e,a ;ilosc kolumn
looppolbi11:
push hl ;zachowanie adresu atrybutow
ld a,(il_w)
ld b,a ;ilosc wierszy
looppolbi12:
ld a,(kolor)
ld (hl),a ;wyswietlenie koloru white-bright w adres atrybutu
ld d,b
ld a,(licznik) ;zachowanie pozycji ilosci wierszy
ld b,a ;licznik petli do djnz
loophlpolbi11:
inc hl ;zwiekszanie adresu atrybutu o 1
djnz loophlpolbi11
ld b,d ;wystawienie licznika petli do djnz
djnz looppolbi12
pop hl ;wstawienie adresu atrybutow
inc hl
ld b,e
dec b
ld e,b
djnz looppolbi11
ret
kolor db 0
il_k db 0
il_w db 0
licznik db 0
pocz db 0
To działa ale myślałem, że można prościej
Bo nie działa mi:
ld (zmienne),wartość
i
ld e,(il_k)
Na przemian flaga polski flaga monako w ramach testów czy nie rozjedzie się.
Jak będę w domu to podeślę stary program.