; *************************************************************************** ; copyright : (C) 2025 by Martin Preuss ; email : martin@libchipcard.de ; ; *************************************************************************** ; * This file is part of the project "AqHome". * ; * Please see toplevel file COPYING of that project for license details. * ; *************************************************************************** ; *************************************************************************** ; code .cseg ; --------------------------------------------------------------------------- ; @routine initApps ; ; Call init functions of the used apps. Add your routine calls here. initApps: #ifdef APPS_NETWORK ldi yl, LOW(netInterfaceData) ldi yh, HIGH(netInterfaceData) bigcall AppNetwork_Init #endif #ifdef APPS_ROUTER bigcall AppRouter_Init #endif #ifdef APPS_HUB bigcall AppHub_Init #endif #ifdef APPS_FORWARDER bigcall AppForwarder_Init #endif #ifdef APPS_MOTION bigcall AppMotion_Init #endif #ifdef APPS_DOOR bigcall AppDoor_Init #endif #ifdef APPS_REPORTSENSORS bigcall AppReportSensors_Init #endif #ifdef APPS_STATS bigcall AppStats_Init #endif #ifdef APPS_MA_LIGHT bigcall AppMotionLight_Init #endif ; done ret ; @end ; --------------------------------------------------------------------------- ; @routine runApps ; ; Call run functions of the used modules. Add your routine calls here. ; runApps: clr r16 #ifdef APPS_ROUTER push r16 bigcall AppRouter_Run pop r16 sbci r16, 0 ; decrease r16 only if CFLAG set #endif #ifdef APPS_HUB push r16 bigcall AppHub_Run pop r16 sbci r16, 0 ; decrease r16 only if CFLAG set #endif #ifdef APPS_FORWARDER push r16 bigcall AppForwarder_Run pop r16 sbci r16, 0 ; decrease r16 only if CFLAG set #endif ; add more modules here tst r16 clc breq runApps_end sec runApps_end: ret ; @end ; --------------------------------------------------------------------------- ; @routine mainAppsOnPacketReceived ; ; Let all apps handle received message. mainAppsOnPacketReceived: #ifdef APPS_NETWORK ; handle messages ldi yl, LOW(netInterfaceData) ldi yh, HIGH(netInterfaceData) bigcall AppNetwork_HandleMsg #endif #ifdef APPS_MA_LIGHT bigcall AppMotionLight_OnPacketReceived #endif ; add more here ret ; @end