gui2: use bigcall (code becomes too large for rjmp/rcall).
This commit is contained in:
@@ -284,10 +284,10 @@ imageViewGetRessource:
|
||||
|
||||
imageViewAlignContentXY:
|
||||
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 Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
||||
bigcall Widget_PackContentY ; R7:R6=Y (r17, r18, r19, r20, r21)
|
||||
ret
|
||||
; @end
|
||||
|
||||
|
||||
@@ -180,7 +180,7 @@ Label_OnGetDefaultWidth:
|
||||
; @clobbers any, !Y
|
||||
|
||||
Label_OnGetDefaultHeight:
|
||||
rcall Widget_GetCharHeight ; R16=char height
|
||||
bigcall Widget_GetCharHeight ; R16=char height
|
||||
mov r18, r16
|
||||
clr r19
|
||||
bigcall Widget_AddOuterStyleBorders ; (r20, r21)
|
||||
@@ -217,12 +217,12 @@ labelWriteText_ret:
|
||||
|
||||
labelAlignTextXY:
|
||||
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
|
||||
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
|
||||
; @end
|
||||
|
||||
@@ -245,7 +245,7 @@ labelCalcTextWidth:
|
||||
bigcall RES_GetRessource ; (r16, r17, r18)
|
||||
brcc labelCalcTextWidth_ret
|
||||
|
||||
rcall Widget_GetCharWidth ; R16=char width
|
||||
bigcall Widget_GetCharWidth ; R16=char width
|
||||
mov r18, r16
|
||||
bigcall Widget_CalcStringWidthFLASH ; r13:r12=size (r16)
|
||||
sec
|
||||
|
||||
@@ -176,7 +176,7 @@ ValueLabel_OnGetDefaultWidth:
|
||||
; @clobbers any, !Y
|
||||
|
||||
ValueLabel_OnGetDefaultHeight:
|
||||
rcall Widget_GetCharHeight ; R16=char height
|
||||
bigcall Widget_GetCharHeight ; R16=char height
|
||||
mov r18, r16
|
||||
clr r19
|
||||
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)
|
||||
push xl
|
||||
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
|
||||
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 xl
|
||||
ret
|
||||
@@ -240,7 +240,7 @@ valueLabelCalcTextWidth:
|
||||
ldd r21, Y+VLABEL_OFFS_VALUE_HI
|
||||
ldd r24, Y+VLABEL_OFFS_POSTKOMMADIGITS
|
||||
bigcall IntToAscii ; X=pointer to text
|
||||
rcall Widget_GetCharWidth ; R16=char width
|
||||
bigcall Widget_GetCharWidth ; R16=char width
|
||||
mov r18, r16
|
||||
bigcall Widget_CalcStringWidthSDRAM ; r13:r12=size (r16)
|
||||
valueLabelCalcTextWidth_ret:
|
||||
|
||||
@@ -253,7 +253,7 @@ vLayoutHorizontally_setWidth:
|
||||
ldd r17, Y+WIDGET_OFFS_PACK
|
||||
mov yl, xl ; use parent
|
||||
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 yl
|
||||
std Y+WIDGET_OFFS_X_LO, r4
|
||||
|
||||
Reference in New Issue
Block a user