/* mozliwe jest podanie parametru przez uzytkownika po .EXIT pierwszy parametr :1 podaje MADS, reszte opcjonalnie uzytkownik, tylko musi je oprogramowac mozna tez przekazac wartosc akumulatora przez stos sprzetowy, wystarczy tylko odremowac linie z 'pha' i 'pla', wowczas przekazywanie parametrow przez .EXIT staje sie uzyteczne tylko w przypadku gdy chemy przekazac wiecej niz jeden dodatkowy parametr */ @ExitProc .macro ' ' ; pha .if :1<>0 lda @stack_pointer tax sec sbc #:1 sta @stack_pointer .if :0>1 lda :2 ; ldx :3 ; ldy :4 .endif .endif ; pla rts .endm end ; --- wersja ktora zaoszczedzi bajty, ale nie cykle ; --- jesli chcesz uzyc tej wersji, zaremuj wczesniejsza deklaracje makra .EXITPROC ; --- i rozkaz END @ExitProc .macro lda #:1 jmp ExitProc .endm ExitProc sta _exitproc lda @stack_pointer sec sbc #0 _exitproc equ *-1 sta @stack_pointer rts