; *************************************************************************** ; 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_GUI2_IMAGEVIEW_ASM #define AQH_AVR_GUI2_IMAGEVIEW_ASM ; *************************************************************************** ; defines ; IMGVIEW in flash .equ IMGVIEW_OFFS_IMGVIEW = WIDGET_SIZE .equ IMGVIEW_OFFS_RESSOURCEID_LO = IMGVIEW_OFFS_IMGVIEW+0 .equ IMGVIEW_OFFS_RESSOURCEID_HI = IMGVIEW_OFFS_IMGVIEW+1 .equ IMGVIEW_SIZE = IMGVIEW_OFFS_IMGVIEW+2 ; SDRAM data for IMGVIEW .equ IMGVIEW_SD_OFFS_IMGVIEW = WIDGET_SD_SIZE .equ IMGVIEW_SD_OFFS_BGCOL_LO = IMGVIEW_SD_OFFS_IMGVIEW+0 .equ IMGVIEW_SD_OFFS_BGCOL_HI = IMGVIEW_SD_OFFS_IMGVIEW+1 .equ IMGVIEW_SD_SIZE = IMGVIEW_SD_OFFS_IMGVIEW+2 ; *************************************************************************** ; code .cseg ; --------------------------------------------------------------------------- ; @routine ImageView_OnCreate @global ; ; @param Z byte address of widget object (for LPM!) ; @return CFLAG set if signal handled ; @clobbers any, !Z ImageView_OnCreate: bigcall Widget_OnCreate bigcall Widget_GetSdramPtr ; (none) ldi r16, LOW(STYLE_WIN_BACKGROUND) ldi r17, HIGH(STYLE_WIN_BACKGROUND) std Y+IMGVIEW_SD_OFFS_BGCOL_LO, r16 std Y+IMGVIEW_SD_OFFS_BGCOL_HI, r17 sec ret ; @end ; --------------------------------------------------------------------------- ; @routine Widget_OnDraw @global ; ; @param Z byte address of widget object (for LPM!) ; @return CFLAG set if signal handled ; @clobbers any, !Z ImageView_OnDraw: bigcall Widget_GetSdramPtr ; (none) ldd r16, Y+WIDGET_SD_OFFS_FLAGS andi r16, (1<