.include "4433def.inc" ; bzw. 2333def.inc

ldi R16, 0xff

ldi R16, RAMEND ; Stackpointer initialisieren
out SPL, R16

ldi R16, 0xFF
out DDRB, R16 ; Port B = Ausgang

ldi R17, 0b10101010 ; einen Wert ins Register R17 laden

rcall sub1 ; Unterprogramm "sub" aufrufen

out PORTB, R17 ; Wert von R17 an den Port B ausgeben

loop: rjmp loop ; Endlosschleife


sub1:
push R17 ; Inhalt von R17 auf dem Stack speichern

; hier kann nach belieben mit R17 gearbeitet werden,
; als Beispiel wird es hier auf 0 gesetzt

ldi R17, 0

pop R17 ; R17 zurückholen
ret ; wieder zurück zum Hauptprogramm

wenn ich es simulieren will, dann geht dass nicht. Der assembler schreit eine fehlermeldung, "undefinied symbol: SPL"
plz help

mfg
mike