gui2: use bigcall (code becomes too large for rjmp/rcall).
This commit is contained in:
@@ -284,10 +284,10 @@ imageViewGetRessource:
|
|||||||
|
|
||||||
imageViewAlignContentXY:
|
imageViewAlignContentXY:
|
||||||
rcall imageViewGetImageWidth ; R13:R12=width (r16, r17, r18, Z)
|
rcall imageViewGetImageWidth ; R13:R12=width (r16, r17, r18, Z)
|
||||||
rcall Widget_PackContentX ; R5:R4=X (r17, r18, r19, r20, r21)
|
bigcall Widget_PackContentX ; R5:R4=X (r17, r18, r19, r20, r21)
|
||||||
|
|
||||||
rcall imageViewGetImageHeight ; R13:R12=height (r16, r17, r18, Z)
|
rcall imageViewGetImageHeight ; R13:R12=height (r16, r17, r18, Z)
|
||||||
rcall Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
bigcall Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
||||||
ret
|
ret
|
||||||
; @end
|
; @end
|
||||||
|
|
||||||
|
|||||||
@@ -180,7 +180,7 @@ Label_OnGetDefaultWidth:
|
|||||||
; @clobbers any, !Y
|
; @clobbers any, !Y
|
||||||
|
|
||||||
Label_OnGetDefaultHeight:
|
Label_OnGetDefaultHeight:
|
||||||
rcall Widget_GetCharHeight ; R16=char height
|
bigcall Widget_GetCharHeight ; R16=char height
|
||||||
mov r18, r16
|
mov r18, r16
|
||||||
clr r19
|
clr r19
|
||||||
bigcall Widget_AddOuterStyleBorders ; (r20, r21)
|
bigcall Widget_AddOuterStyleBorders ; (r20, r21)
|
||||||
@@ -217,12 +217,12 @@ labelWriteText_ret:
|
|||||||
|
|
||||||
labelAlignTextXY:
|
labelAlignTextXY:
|
||||||
rcall labelCalcTextWidth ; Z=text, R13:R12=text width (r16, r17, r18)
|
rcall labelCalcTextWidth ; Z=text, R13:R12=text width (r16, r17, r18)
|
||||||
rcall Widget_PackContentX ; R5:R4=X (r17, r18, r19, r20, r21)
|
bigcall Widget_PackContentX ; R5:R4=X (r17, r18, r19, r20, r21)
|
||||||
|
|
||||||
rcall Widget_GetCharHeight ; R16=char height
|
bigcall Widget_GetCharHeight ; R16=char height
|
||||||
mov r12, r16
|
mov r12, r16
|
||||||
clr r13
|
clr r13
|
||||||
rcall Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
bigcall Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
||||||
ret
|
ret
|
||||||
; @end
|
; @end
|
||||||
|
|
||||||
@@ -245,7 +245,7 @@ labelCalcTextWidth:
|
|||||||
bigcall RES_GetRessource ; (r16, r17, r18)
|
bigcall RES_GetRessource ; (r16, r17, r18)
|
||||||
brcc labelCalcTextWidth_ret
|
brcc labelCalcTextWidth_ret
|
||||||
|
|
||||||
rcall Widget_GetCharWidth ; R16=char width
|
bigcall Widget_GetCharWidth ; R16=char width
|
||||||
mov r18, r16
|
mov r18, r16
|
||||||
bigcall Widget_CalcStringWidthFLASH ; r13:r12=size (r16)
|
bigcall Widget_CalcStringWidthFLASH ; r13:r12=size (r16)
|
||||||
sec
|
sec
|
||||||
|
|||||||
@@ -176,7 +176,7 @@ ValueLabel_OnGetDefaultWidth:
|
|||||||
; @clobbers any, !Y
|
; @clobbers any, !Y
|
||||||
|
|
||||||
ValueLabel_OnGetDefaultHeight:
|
ValueLabel_OnGetDefaultHeight:
|
||||||
rcall Widget_GetCharHeight ; R16=char height
|
bigcall Widget_GetCharHeight ; R16=char height
|
||||||
mov r18, r16
|
mov r18, r16
|
||||||
clr r19
|
clr r19
|
||||||
bigcall Widget_AddOuterStyleBorders ; (r20, r21)
|
bigcall Widget_AddOuterStyleBorders ; (r20, r21)
|
||||||
@@ -214,12 +214,12 @@ valueLabelAlignTextXY:
|
|||||||
rcall valueLabelCalcTextWidth ; X=ptr to text in SDRAM, R13:R12=text width (r16, r17, r18)
|
rcall valueLabelCalcTextWidth ; X=ptr to text in SDRAM, R13:R12=text width (r16, r17, r18)
|
||||||
push xl
|
push xl
|
||||||
push xh
|
push xh
|
||||||
rcall Widget_PackContentX ; R5:R4=X (r17, r18, r19, r20, r21)
|
bigcall Widget_PackContentX ; R5:R4=X (r17, r18, r19, r20, r21)
|
||||||
|
|
||||||
rcall Widget_GetCharHeight ; R16=char height
|
bigcall Widget_GetCharHeight ; R16=char height
|
||||||
mov r12, r16
|
mov r12, r16
|
||||||
clr r13
|
clr r13
|
||||||
rcall Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
bigcall Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
||||||
pop xh
|
pop xh
|
||||||
pop xl
|
pop xl
|
||||||
ret
|
ret
|
||||||
@@ -240,7 +240,7 @@ valueLabelCalcTextWidth:
|
|||||||
ldd r21, Y+VLABEL_OFFS_VALUE_HI
|
ldd r21, Y+VLABEL_OFFS_VALUE_HI
|
||||||
ldd r24, Y+VLABEL_OFFS_POSTKOMMADIGITS
|
ldd r24, Y+VLABEL_OFFS_POSTKOMMADIGITS
|
||||||
bigcall IntToAscii ; X=pointer to text
|
bigcall IntToAscii ; X=pointer to text
|
||||||
rcall Widget_GetCharWidth ; R16=char width
|
bigcall Widget_GetCharWidth ; R16=char width
|
||||||
mov r18, r16
|
mov r18, r16
|
||||||
bigcall Widget_CalcStringWidthSDRAM ; r13:r12=size (r16)
|
bigcall Widget_CalcStringWidthSDRAM ; r13:r12=size (r16)
|
||||||
valueLabelCalcTextWidth_ret:
|
valueLabelCalcTextWidth_ret:
|
||||||
|
|||||||
@@ -253,7 +253,7 @@ vLayoutHorizontally_setWidth:
|
|||||||
ldd r17, Y+WIDGET_OFFS_PACK
|
ldd r17, Y+WIDGET_OFFS_PACK
|
||||||
mov yl, xl ; use parent
|
mov yl, xl ; use parent
|
||||||
mov yh, xh
|
mov yh, xh
|
||||||
rcall Widget_PackSelfX ; R5:R4=new pos (r17, r18, r19, r20, r21) !! TODO: ERROR when FILLED !!
|
bigcall Widget_PackSelfX ; R5:R4=new pos (r17, r18, r19, r20, r21) !! TODO: ERROR when FILLED !!
|
||||||
pop yh
|
pop yh
|
||||||
pop yl
|
pop yl
|
||||||
std Y+WIDGET_OFFS_X_LO, r4
|
std Y+WIDGET_OFFS_X_LO, r4
|
||||||
|
|||||||
Reference in New Issue
Block a user