; ***************************************************************************
; copyright   : (C) 2026 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.   *
; ***************************************************************************

#ifndef AQH_AVR_DEVICES_ALL_APPS_INCLUDE_ASM
#define AQH_AVR_DEVICES_ALL_APPS_INCLUDE_ASM



#ifdef APPS_MOTION
.include "modules/f_keepup/main.asm"
.include "modules/valsched/main.asm"
.include "apps/motion/main.asm"
#endif

#ifdef APPS_CO2WATCH
.include "apps/co2_watch/main.asm"
#endif


#ifdef APPS_DOOR
#ifndef APPS_MOTION
.include "modules/f_keepup/main.asm"
.include "modules/valsched/main.asm"
#endif
.include "apps/door/main.asm"
#endif

#ifdef APPS_NETWORK
APP_BEGIN_NETWORK:
.include "apps/network/main.asm"
.include "modules/network/msg/reboot-d.asm"
.include "modules/network/msg/reboot-r.asm"
.include "modules/network/msg/pong-w.asm"
.include "modules/network/msg/range-d.asm"
.include "modules/network/msg/range-r.asm"
APP_END_NETWORK:
.equ APP_SIZE_NETWORK = APP_END_NETWORK-APP_BEGIN_NETWORK
#endif

#ifdef APPS_ROUTER
.include "apps/router/main.asm"
.include "modules/network/msg/reboot-d.asm"
.include "modules/network/msg/reboot-r.asm"
.include "modules/network/msg/pong-w.asm"
.include "modules/network/msg/range-d.asm"
.include "modules/network/msg/range-r.asm"
.include "modules/network/msg/range-w.asm"
#endif

#ifdef APPS_HUB
.include "apps/hub/main.asm"
.include "modules/network/msg/reboot-d.asm"
.include "modules/network/msg/reboot-r.asm"
.include "modules/network/msg/pong-w.asm"
.include "modules/network/msg/range-d.asm"
.include "modules/network/msg/range-r.asm"
.include "modules/network/msg/range-w.asm"
#endif

#ifdef APPS_FORWARDER
.include "apps/forwarder/main.asm"
.include "modules/network/msg/reboot-r.asm"
.include "modules/network/msg/reboot-d.asm"
.include "modules/network/msg/pong-w.asm"
#endif


#if defined(APPS_REPORTSENSORS) || defined(APPS_STATS)
.include "common/walktable.asm"
#endif


#ifdef APPS_REPORTSENSORS
.include "apps/reportsensors/data.asm"
.include "apps/reportsensors/main.asm"
#endif

#ifdef APPS_STATS
;.include "common/walktable.asm"
.include "apps/stats/data.asm"
.include "apps/stats/main.asm"
.include "apps/network/stats.asm"
.include "modules/network/msg/sendstats-w.asm"
.include "modules/network/msg/recvstats-w.asm"
.include "modules/network/msg/memstats-d.asm"
.include "modules/network/msg/memstats-w.asm"
.include "modules/network/msg/device-w.asm"
#endif

#ifdef APPS_MA_LIGHT
.include "apps/ma_light/defs.asm"
.include "apps/ma_light/data.asm"
.include "apps/ma_light/main.asm"
.include "apps/ma_light/recv.asm"
#endif


#ifdef APPS_FANCONTROL
.include "modules/holdtimer/defs.asm"
.include "modules/holdtimer/main.asm"
.include "modules/triggeractor/defs.asm"
.include "modules/triggeractor/main.asm"
  #ifdef MODULES_NETWORK
    .include "modules/triggeractor/recv.asm"
  #endif

.include "apps/fan_control/defs.asm"
.include "apps/fan_control/main.asm"
  #ifdef MODULES_NETWORK
    .include "apps/fan_control/recv.asm"
    .include "apps/fan_control/send.asm"
  #endif

#endif


#ifdef APPS_LIGHTCONTROL
.include "modules/holdtimer/defs.asm"
.include "modules/holdtimer/main.asm"
.include "modules/triggeractor/defs.asm"
.include "modules/triggeractor/main.asm"
.include "modules/triggeractor/recv.asm"

.include "apps/light_control/defs.asm"
.include "apps/light_control/main.asm"

  #ifdef MODULES_NETWORK
  .include "devices/all/handlevaluemsg.asm"
  .include "apps/light_control/recv.asm"
  .include "apps/light_control/send.asm"
  #endif

#endif


#endif


