introduce macros bigjmp and bigcall for intermodule calls/jmps

translates to rjmp/rcall on MCUs with up to 8K flash and to jmp/call
on others.
This commit is contained in:
Martin Preuss
2025-06-01 19:18:25 +02:00
parent 188e7da379
commit bb14dd4c22
11 changed files with 128 additions and 96 deletions

View File

@@ -164,7 +164,7 @@ appNetworkHandleRebootRequest:
brcc appNetworkHandleRebootRequest_end
; reboot
cli
rjmp BOOTLOADER_ADDR
bigjmp BOOTLOADER_ADDR
appNetworkHandleRebootRequest_end:
ret
; @end
@@ -249,7 +249,7 @@ appNetworkHandleStateHaveAddress2:
cli
ldi xl, LOW(EEPROM_OFFS_COMADDR)
ldi xh, HIGH(EEPROM_OFFS_COMADDR)
rcall Utils_WriteEepromIncr ; write address to EEPROM
bigcall Utils_WriteEepromIncr ; write address to EEPROM
out SREG, r15
pop r15
appNetworkHandleStateHaveAddress2_end:
@@ -451,7 +451,7 @@ appNetworkGetAddressFromEeprom:
cli
ldi xl, LOW(EEPROM_OFFS_COMADDR)
ldi xh, HIGH(EEPROM_OFFS_COMADDR)
rcall Utils_ReadEepromIncr ; (R16)
bigcall Utils_ReadEepromIncr ; (R16)
out SREG, r15
pop r15
ret

View File

@@ -162,7 +162,7 @@ appStatsSend16BitValue:
ldi r20, 1
clr r21
ldi r22, AQHOME_VALUETYPE_STATS
rjmp Main_SendValueReport
bigjmp Main_SendValueReport
; @end