вот моя подпрограмма готова, но работает она не так как хотелось бы, а как всегда.
Почему-то за каждый её вызов картинка вырисовывается дважды и итерация номеров картинки соответственно. То есть проскакивает каждую вторую (отрисовывает мельком, за считанные микросекунды)
MY_CODE
LD (QNT_VAL + 2),A
push bc
push de
ld hl,(59900)
ld b, (hl)
inc hl
ld (59900),hl
ld hl, 40000
ld de, 768
LL1 add hl, de
djnz LL1
ld de,22528 ; êóäà
ld bc,768; ñêîêà
ldir
pop de
pop bc
RET
59900 - временное хранение на адрес указателя на номер картинки.
ldir один и inc один , но почему-то они дважды срабатывают... Видать в эту подпрограмму каждый канал по отдельности обращается. Как игнорировать вызов одного из них ?
---------- Post added at 01:00 ---------- Previous post was at 00:59 ----------
что ли создать некий флаг , по которому бы определялась чётность.
---------- Post added at 01:25 ---------- Previous post was at 01:00 ----------
Код:
MY_CODE
LD (QNT_VAL + 2),A
push bc
push de
ld hl,59950
ld a,(hl)
CP 1
jp nz , ziga
ld a,1
ld (hl),a
ld hl,(59900)
ld b, (hl)
inc hl
ld (59900),hl
ld hl, 40000
ld de, 768
LL1 add hl, de
djnz LL1
ld de,22528 ; êóäà
ld bc,768; ñêîêà
ldir
ziga:
ld (hl),0
pop de
pop bc
RET
попытался добавить проверку флага (при старте программы 59950 равно 1). Не работает.
Где тут может быть ошибка?