add ressources, use signals for GuiApp.
makes it easier to extend.
This commit is contained in:
@@ -171,7 +171,7 @@ OBJ_EmitSignal_savedZ:
|
||||
lpm r23, Z+
|
||||
lpm zh, Z
|
||||
mov zl, r23
|
||||
rjmp objHandleSignal ; (any, !Z)
|
||||
rjmp OBJ_HandleSignal ; (any, !Z)
|
||||
|
||||
OBJ_EmitSignal_ret:
|
||||
ret
|
||||
@@ -271,7 +271,7 @@ objectHandleSignalSaveInRegs:
|
||||
push r17
|
||||
push xl
|
||||
push xh
|
||||
rcall objHandleSignal
|
||||
rcall OBJ_HandleSignal
|
||||
pop xh
|
||||
pop xl
|
||||
pop r17
|
||||
@@ -282,7 +282,7 @@ objectHandleSignalSaveInRegs:
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine objHandleSignal
|
||||
; @routine OBJ_HandleSignal
|
||||
;
|
||||
; @param Z byte address of object (for LPM!)
|
||||
; @param R16 signal number
|
||||
@@ -292,17 +292,17 @@ objectHandleSignalSaveInRegs:
|
||||
; @return CFLAG set if handled, cleared otherwise
|
||||
; @clobbers any, !Z
|
||||
|
||||
objHandleSignal:
|
||||
OBJ_HandleSignal:
|
||||
push zl
|
||||
push zh
|
||||
rcall objGetHandlerFromSignalMap
|
||||
brcc objHandleSignal_done
|
||||
rcall objHandleSignal_jmpR19R18
|
||||
objHandleSignal_done:
|
||||
brcc OBJ_HandleSignal_done
|
||||
rcall OBJ_HandleSignal_jmpR19R18
|
||||
OBJ_HandleSignal_done:
|
||||
pop zh
|
||||
pop zl
|
||||
ret
|
||||
objHandleSignal_jmpR19R18:
|
||||
OBJ_HandleSignal_jmpR19R18:
|
||||
; jmp to r19:r18 via stack
|
||||
push r18
|
||||
push r19
|
||||
|
||||
Reference in New Issue
Block a user