add ressources, use signals for GuiApp.

makes it easier to extend.
This commit is contained in:
Martin Preuss
2026-01-14 21:19:46 +01:00
parent 10c3f3c40d
commit 99c58d13e2
9 changed files with 398 additions and 87 deletions

View File

@@ -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