; *************************************************************************** ; 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_GUI_BASE_D_NUMINPUT_ASM #define AQH_AVR_GUI_BASE_D_NUMINPUT_ASM ; *************************************************************************** ; defines .equ DLGNUMINPUT_OFFS_BEGIN = MAINWINDOW_SIZE .equ DLGNUMINPUT_SIZE = DLGNUMINPUT_OFFS_BEGIN+0 ; *************************************************************************** ; code .cseg ; --------------------------------------------------------------------------- ; @routine DlgNumInput_new @global ; ; @param Y pointer to GUIAPP ; @param r21:r20 ressource id for title ; @return CFLAG set of okay, cleared otherwise ; @return Y address of newly created object DlgNumInput_new: bigcall GuiApp_GetRootWindow brcc DlgNumInput_new_ret push r20 push r21 mov xl, r18 ; use root window as parent for main window mov xh, r19 ldi r24, LOW(DLGNUMINPUT_SIZE) ldi r25, HIGH(DLGNUMINPUT_SIZE) bigcall Object_Alloc ; Y=space (!r16, !r17, !X) pop r21 pop r20 brcc DlgNumInput_new_ret rcall DlgNumInput_Init DlgNumInput_new_ret: ret ; @end ; --------------------------------------------------------------------------- ; @routine DlgNumInput_Init @global ; ; @param Y pointer to newly allocated widget data ; @param X pointer to root window ; @param r21:r20 ressource id for title ; @return CFLAG set of okay, cleared otherwise ; @clobbers any, !Y DlgNumInput_Init: ldi r16, 0 ; OPTS ldi r17, (WIDGET_PACK_FILLED<