Hallo.

Ich habe ein Problem, an dem ich schon seit ein paar Stunden
sitze. Wenn ich folgenden Code für den Mega32 im AVR Studio simuliere
(Compiliere mit F7, dann auf "Play" klicke und denn F5), macht
der Simu garnichts, ausser mir ewige Fehlermeldungen der Bauart
"AVR Simulator: Invalid opcode 0xffff at address 0x003f01" auszuspucken.
Wenn ich mich mit F11 durch das Programm tickere, klappt das wunderbar,
ebenso das automatische durchspringen mit Alt+F5).

Das Programm ist noch in den Anfängen und im Moment so geschrieben, um die Taktzyklen der einzelnen Pausen zu zählen.

Warum hängt AVR Studio immer beim "Run"?

Das Programm:

Code:
.NOLIST
.INCLUDE "E:\Programme\Atmel\AVR Tools\AvrAssembler2\Appnotes\M32def.inc"
.LIST
.CSEG

.DEF dot = R20
.DEF hsync = R21
.DEF vsync = R22
.DEF hvsync = R23
.DEF off = R24

reset: RJMP main

main:	

	LDI dot,0b00100000
	LDI hsync,0b00001000
	LDI vsync,0b00000100
	LDI off,0b00000000


	LDI R16,0xFF
	OUT DDRB,R16
	OUT DDRD,R16

rjmp pause16320

ende: rjmp ende
;----------------------------------------
pause960:

	ldi r16,255
loopXA:
 	dec r16
	brne loopXA
	ldi r16,63
loopXB:
 	dec r16
	brne loopXB

	ret
;........................................
pause16320:

	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960
	rjmp pause960

	ldi r16,255
loopXC:
 	dec r16

	brne loopXC
	ldi r16,63
loopXD:
 	dec r16
	brne loopXD


	ret
;........................................