
Сообщение от
anarchyman
Ну где то так :-)
у тебя главный цикл какой-то не правильный - call loop вызывает гурбо говоря саму себя, в следствии чего происходит переполнение стека и сброс. И djnz хрен знает куда прыгает. В теории вот так должно быть:
Код:
halt
ld ix,a1
call play
ld ix,a2
call play
ld B,#10
mloop1
push bc
halt ; для синхронизации
call aaa ;или что ты тут собрался в цикле вызывать
pop bc
djnz mloop1
ret
если надо, что бы
Код:
ld ix,a1
call play
ld ix,a2
call play
тоже в этом же цикле выполнялись - переносишь вот этот
Код:
ld B,#10
mloop1
push bc
участок кода в начало перед первым halt.
дальше твой код пока не смотрел, виснет явно на этом участке.
и вот это:
Код:
hframeaddr
defw s1
defw s2
тоже в начале кода хранить не следует, перенеси в конец программы, что бы не путаться.