Assembler

Hilfe, wer kann mir helfen ?
Im folgenden Ablauf soll gehe 100 mal durchlaufen werden und dann soll start wieder aufgerufen werden.
P4 .equ 0E8H ;DOUT
P1 .equ 090H ;DIN
b .equ 0f0H
.org 8100H
start mov A,#0H
mov A,P1 ;Byte 1
mov P4,#0H
jz start
;mov b,#3
sjmp setze ;Zum Anfang

setze
mov b,10
gehe:
mov P4,#9H
acall warte
mov P4,#5H
acall warte
mov P4,#6
acall warte
mov P4,#10
acall warte
dec b
jnz gehe
sjmp start ;Return

warte mov R7,#100
l1 mov R6,#100
l2 djnz R6,l2
djnz R7,l1
ret
.end

Soweit mir meine Assembler-Kenntnisse nichts vorlügen müsstest du den Hilfsakku auf 100 setzen (mov b,100) und mit ‚djnz b, gehe‘ dann 100 mal durch gehe laufen bis dann start aufgerufen wird.

P4 .equ 0E8H ;DOUT
P1 .equ 090H ;DIN
b .equ 0f0H
.org 8100H
start mov A,#0H
mov A,P1 ;Byte 1
mov P4,#0H
jz start
;mov b,#3
sjmp setze ;Zum Anfang

setze
mov b,100 ;Schleifendurchläufe
gehe:
mov P4,#9H
acall warte
mov P4,#5H
acall warte
mov P4,#6
acall warte
mov P4,#10
acall warte
djnz b, gehe ;decrement jump not zero
sjmp start ;Return

warte mov R7,#100
l1 mov R6,#100
l2 djnz R6,l2
djnz R7,l1
ret
.end

Hallo neophyte !
Erstmal schönen Dank für Deinen Tip.
Irgendwie war ich wohl auf den Falschen Dampfer denn djnz hatte ich schon mehrmals ohne erfolg getestet, jedoch es funktioniert.
Ich versuche für das SIOS Interface einen Aufzug mit Assemler (Tasm)
zu schreiben und werde bestimmt noch einige Fehler bekommen.
Dennoch vielen Dank für Deinen Tipp.
Gruß mike58