avr: make climate page the main page, added eeprom browser.
This commit is contained in:
@@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
.equ APPC03_SEL_BUTTON_CLIMATE = 1
|
.equ APPC03_SEL_BUTTON_CLIMATE = 1
|
||||||
.equ APPC03_SEL_BUTTON_NETWORK = 2
|
.equ APPC03_SEL_BUTTON_NETWORK = 2
|
||||||
|
.equ APPC03_SEL_BUTTON_EEDUMP = 3
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -61,6 +62,7 @@ appC03_signalmap:
|
|||||||
.db 0, OBJECT_SIGNAL_CREATE, LOW(GuiApp_OnCreate), HIGH(GuiApp_OnCreate)
|
.db 0, OBJECT_SIGNAL_CREATE, LOW(GuiApp_OnCreate), HIGH(GuiApp_OnCreate)
|
||||||
.db APPC03_SEL_BUTTON_NETWORK, WIDGET_SIGNAL_CLICKED, LOW(AppC03_OnClickedNetwork), HIGH(AppC03_OnClickedNetwork)
|
.db APPC03_SEL_BUTTON_NETWORK, WIDGET_SIGNAL_CLICKED, LOW(AppC03_OnClickedNetwork), HIGH(AppC03_OnClickedNetwork)
|
||||||
.db APPC03_SEL_BUTTON_CLIMATE, WIDGET_SIGNAL_CLICKED, LOW(AppC03_OnClickedClimate), HIGH(AppC03_OnClickedClimate)
|
.db APPC03_SEL_BUTTON_CLIMATE, WIDGET_SIGNAL_CLICKED, LOW(AppC03_OnClickedClimate), HIGH(AppC03_OnClickedClimate)
|
||||||
|
.db APPC03_SEL_BUTTON_EEDUMP, WIDGET_SIGNAL_CLICKED, LOW(AppC03_OnClickedEeDump), HIGH(AppC03_OnClickedEeDump)
|
||||||
.db 0, 0, 0, 0 ; end of table
|
.db 0, 0, 0, 0 ; end of table
|
||||||
|
|
||||||
|
|
||||||
@@ -114,6 +116,14 @@ AppC03_OnClickedClimate:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
AppC03_OnClickedEeDump:
|
||||||
|
ldi xl, LOW(winEepromDump*2)
|
||||||
|
ldi xh, HIGH(winEepromDump*2)
|
||||||
|
bigcall GuiApp_ShowView
|
||||||
|
sec
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -66,6 +66,9 @@ winClimateSensor3Value_ramdata:
|
|||||||
buttonClimateNetwork_ramdata:
|
buttonClimateNetwork_ramdata:
|
||||||
.byte IMGVIEW_SD_SIZE
|
.byte IMGVIEW_SD_SIZE
|
||||||
|
|
||||||
|
buttonEepromDump_ramdata:
|
||||||
|
.byte IMGVIEW_SD_SIZE
|
||||||
|
|
||||||
debugValue1_ramdata:
|
debugValue1_ramdata:
|
||||||
.byte VLABEL_SD_SIZE
|
.byte VLABEL_SD_SIZE
|
||||||
|
|
||||||
@@ -458,16 +461,15 @@ winClimate_signalmap:
|
|||||||
buttonClimateNetwork:
|
buttonClimateNetwork:
|
||||||
; OBJECT
|
; OBJECT
|
||||||
.db 0x55, 0xaa ; magic
|
.db 0x55, 0xaa ; magic
|
||||||
; .dw debugValue1*2 ; next
|
.dw buttonEepromDump*2 ; next
|
||||||
.dw 0 ; next
|
|
||||||
.dw winClimateBody*2 ; parent
|
.dw winClimateBody*2 ; parent
|
||||||
.dw 0 ; first child
|
.dw 0 ; first child
|
||||||
.dw appC03*2 ; target
|
.dw appC03*2 ; target
|
||||||
.dw APPC03_SEL_BUTTON_NETWORK ; selector (ony lower 8 bits used)
|
.dw APPC03_SEL_BUTTON_NETWORK ; selector (ony lower 8 bits used)
|
||||||
.dw buttonNetwork_signalmap*2 ; signal map
|
.dw Button_DefaultSignalmap*2 ; signal map
|
||||||
; WIDGET
|
; WIDGET
|
||||||
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
||||||
.dw DISPLAY_WIDTH-56 ; X
|
.dw 2 ; X
|
||||||
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT-56 ; Y
|
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT-56 ; Y
|
||||||
.dw 52 ; W
|
.dw 52 ; W
|
||||||
.dw 52 ; H
|
.dw 52 ; H
|
||||||
@@ -478,12 +480,29 @@ winClimate_signalmap:
|
|||||||
; IMGVIEW
|
; IMGVIEW
|
||||||
.dw RESSSOURCE_IMG_NETWORK ; ressource id
|
.dw RESSSOURCE_IMG_NETWORK ; ressource id
|
||||||
|
|
||||||
buttonNetwork_signalmap:
|
|
||||||
.db 0, WIDGET_SIGNAL_TOUCH, LOW(Button_OnTouch), HIGH(Button_OnTouch)
|
|
||||||
.db 0, WIDGET_SIGNAL_DRAW, LOW(ImageView_OnDraw), HIGH(ImageView_OnDraw)
|
buttonEepromDump:
|
||||||
.db 0, IMGVIEW_SIGNAL_SETBGCOL, LOW(ImageView_OnSetBgCol), HIGH(ImageView_OnSetBgCol)
|
; OBJECT
|
||||||
.db 0, OBJECT_SIGNAL_CREATE, LOW(ImageView_OnCreate), HIGH(ImageView_OnCreate)
|
.db 0x55, 0xaa ; magic
|
||||||
.db 0, 0, 0, 0 ; end of table
|
.dw 0 ; next
|
||||||
|
.dw winClimateBody*2 ; parent
|
||||||
|
.dw 0 ; first child
|
||||||
|
.dw appC03*2 ; target
|
||||||
|
.dw APPC03_SEL_BUTTON_EEDUMP ; selector (ony lower 8 bits used)
|
||||||
|
.dw Button_DefaultSignalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
||||||
|
.dw 2+(1*54) ; X
|
||||||
|
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT-56 ; Y
|
||||||
|
.dw 52 ; W
|
||||||
|
.dw 52 ; H
|
||||||
|
.dw STYLE_BUTTON_COL_FG_NORM ; front color
|
||||||
|
.dw STYLE_BUTTON_COL_BG_NORM ; back color
|
||||||
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw buttonEepromDump_ramdata ; ptr to SDRAM
|
||||||
|
; IMGVIEW
|
||||||
|
.dw RESSSOURCE_IMG_WINOPEN ; ressource id
|
||||||
|
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
|
|||||||
252
avr/devices/c03/main/g_win_eepromdump.asm
Normal file
252
avr/devices/c03/main/g_win_eepromdump.asm
Normal file
@@ -0,0 +1,252 @@
|
|||||||
|
; ***************************************************************************
|
||||||
|
; 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_DEVICE_C03_WIN_EEPROMDUMP_ASM
|
||||||
|
#define AQH_AVR_DEVICE_C03_WIN_EEPROMDUMP_ASM
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ***************************************************************************
|
||||||
|
; defines
|
||||||
|
|
||||||
|
|
||||||
|
; SDRAM data for WINEEPROMDUMP
|
||||||
|
.equ WINEEPROMDUMP_SD_OFFS_BEGIN = WIDGET_SD_SIZE
|
||||||
|
.equ WINEEPROMDUMP_SD_SIZE = WINEEPROMDUMP_SD_OFFS_BEGIN+0
|
||||||
|
|
||||||
|
|
||||||
|
.equ WINEEPROMDUMP_SEL_UP = 1
|
||||||
|
.equ WINEEPROMDUMP_SEL_DOWN = 2
|
||||||
|
|
||||||
|
|
||||||
|
; ***************************************************************************
|
||||||
|
; data
|
||||||
|
|
||||||
|
.dseg
|
||||||
|
|
||||||
|
|
||||||
|
winEepromDump_ramdata:
|
||||||
|
.byte WINEEPROMDUMP_SD_SIZE
|
||||||
|
|
||||||
|
winEepromDumpHeader_ramdata:
|
||||||
|
.byte WIDGET_SD_SIZE
|
||||||
|
|
||||||
|
winEepromDumpBody_ramdata:
|
||||||
|
.byte WIDGET_SD_SIZE
|
||||||
|
|
||||||
|
winEepromDumpView_ramdata:
|
||||||
|
.byte EEPROMDUMP_SD_SIZE
|
||||||
|
|
||||||
|
buttonEepromDumpBack_ramdata:
|
||||||
|
.byte IMGVIEW_SD_SIZE
|
||||||
|
|
||||||
|
|
||||||
|
buttonEepromDumpUp_ramdata:
|
||||||
|
.byte IMGVIEW_SD_SIZE
|
||||||
|
|
||||||
|
buttonEepromDumpDown_ramdata:
|
||||||
|
.byte IMGVIEW_SD_SIZE
|
||||||
|
|
||||||
|
|
||||||
|
; ***************************************************************************
|
||||||
|
; code
|
||||||
|
|
||||||
|
.cseg
|
||||||
|
|
||||||
|
|
||||||
|
winEepromDump:
|
||||||
|
; OBJECT
|
||||||
|
.db 0x55, 0xaa ; magic
|
||||||
|
.dw 0 ; next
|
||||||
|
.dw winRoot*2 ; parent
|
||||||
|
.dw winEepromDumpHeader*2 ; first child
|
||||||
|
.dw 0 ; target
|
||||||
|
.dw 0 ; selector (ony lower 8 bits used)
|
||||||
|
.dw winEepromDump_signalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db (1<<WIDGET_OPTSLO_TIMER_BIT), 0 ; opts lo, hi
|
||||||
|
.dw 0 ; X
|
||||||
|
.dw 0 ; Y
|
||||||
|
.dw DISPLAY_WIDTH ; W
|
||||||
|
.dw DISPLAY_HEIGHT ; H
|
||||||
|
.dw STYLE_WIN_FOREGROUND ; front color
|
||||||
|
.dw STYLE_WIN_BACKGROUND ; back color
|
||||||
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw winEepromDump_ramdata ; ptr to SDRAM
|
||||||
|
|
||||||
|
winEepromDump_signalmap:
|
||||||
|
.db 0, OBJECT_SIGNAL_CREATE, LOW(Widget_OnCreate), HIGH(Widget_OnCreate)
|
||||||
|
.db 0, WIDGET_SIGNAL_DRAW, LOW(Widget_OnDrawNop), HIGH(Widget_OnDrawNop)
|
||||||
|
.db 0, 0, 0, 0 ; end of table
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
winEepromDumpHeader:
|
||||||
|
; OBJECT
|
||||||
|
.db 0x55, 0xaa ; magic
|
||||||
|
.dw winEepromDumpBody*2 ; next
|
||||||
|
.dw winEepromDump*2 ; parent
|
||||||
|
.dw 0 ; first child
|
||||||
|
.dw 0 ; target
|
||||||
|
.dw 0 ; selector (ony lower 8 bits used)
|
||||||
|
.dw Label_DefaultSignalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db 0, 0 ; opts lo, hi
|
||||||
|
.dw 0 ; X
|
||||||
|
.dw 0 ; Y
|
||||||
|
.dw DISPLAY_WIDTH ; W
|
||||||
|
.dw STYLE_WIN_TITLE_HEIGHT ; H
|
||||||
|
.dw STYLE_WIN_TITLE_FOREGROUND ; front color
|
||||||
|
.dw STYLE_WIN_TITLE_BACKGROUND ; back color
|
||||||
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw winEepromDumpHeader_ramdata ; ptr to SDRAM
|
||||||
|
; LABEL
|
||||||
|
.dw winEepromDumpHeader_text*2 ; text
|
||||||
|
|
||||||
|
winEepromDumpHeader_text:
|
||||||
|
.db "EEPROM", 0, 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
winEepromDumpBody:
|
||||||
|
; OBJECT
|
||||||
|
.db 0x55, 0xaa ; magic
|
||||||
|
.dw 0 ; next
|
||||||
|
.dw winEepromDump*2 ; parent
|
||||||
|
.dw winEepromDumpView*2 ; first child
|
||||||
|
.dw 0 ; target
|
||||||
|
.dw 0 ; selector (ony lower 8 bits used)
|
||||||
|
.dw winEepromDumpBody_signalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db 0, 0 ; opts lo, hi
|
||||||
|
.dw 0 ; X
|
||||||
|
.dw STYLE_WIN_TITLE_HEIGHT ; Y
|
||||||
|
.dw DISPLAY_WIDTH ; W
|
||||||
|
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT ; H
|
||||||
|
.dw STYLE_WIN_FOREGROUND ; front color
|
||||||
|
.dw STYLE_WIN_BACKGROUND ; back color
|
||||||
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw winEepromDumpBody_ramdata ; ptr to SDRAM
|
||||||
|
|
||||||
|
winEepromDumpBody_signalmap:
|
||||||
|
.db 0, OBJECT_SIGNAL_CREATE, LOW(Widget_OnCreate), HIGH(Widget_OnCreate)
|
||||||
|
.db 0, WIDGET_SIGNAL_DRAW, LOW(Widget_OnDraw), HIGH(Widget_OnDraw)
|
||||||
|
.db 0, 0, 0, 0 ; end of table
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
winEepromDumpView:
|
||||||
|
; OBJECT
|
||||||
|
.db 0x55, 0xaa ; magic
|
||||||
|
.dw buttonEepromDumpUp*2 ; next
|
||||||
|
.dw winEepromDumpBody*2 ; parent
|
||||||
|
.dw 0 ; first child
|
||||||
|
.dw 0 ; target
|
||||||
|
.dw 0 ; selector (ony lower 8 bits used)
|
||||||
|
.dw winEepromDumpView_signalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db 0, 0 ; opts lo, hi
|
||||||
|
.dw 0 ; X
|
||||||
|
.dw 0 ; Y
|
||||||
|
.dw DISPLAY_WIDTH ; W
|
||||||
|
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT-58 ; H
|
||||||
|
.dw STYLE_WIN_FOREGROUND ; front color
|
||||||
|
.dw STYLE_WIN_BACKGROUND ; back color
|
||||||
|
; .dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw ili9341Font6x8_1*2
|
||||||
|
.dw winEepromDumpView_ramdata ; ptr to SDRAM
|
||||||
|
|
||||||
|
winEepromDumpView_signalmap:
|
||||||
|
.db 0, OBJECT_SIGNAL_CREATE, LOW(EepromDump_OnCreate), HIGH(EepromDump_OnCreate)
|
||||||
|
.db 0, WIDGET_SIGNAL_DRAW, LOW(EepromDump_OnDraw), HIGH(EepromDump_OnDraw)
|
||||||
|
.db WINEEPROMDUMP_SEL_UP, WIDGET_SIGNAL_CLICKED, LOW(EepromDump_OnUp), HIGH(EepromDump_OnUp)
|
||||||
|
.db WINEEPROMDUMP_SEL_DOWN, WIDGET_SIGNAL_CLICKED, LOW(EepromDump_OnDown), HIGH(EepromDump_OnDown)
|
||||||
|
.db 0, 0, 0, 0 ; end of table
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
buttonEepromDumpUp:
|
||||||
|
; OBJECT
|
||||||
|
.db 0x55, 0xaa ; magic
|
||||||
|
.dw buttonEepromDumpDown*2 ; next
|
||||||
|
.dw winEepromDumpBody*2 ; parent
|
||||||
|
.dw 0 ; first child
|
||||||
|
.dw winEepromDumpView*2 ; target
|
||||||
|
.dw WINEEPROMDUMP_SEL_UP ; selector (ony lower 8 bits used)
|
||||||
|
.dw Button_DefaultSignalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
||||||
|
.dw 2 ; X
|
||||||
|
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT-56 ; Y
|
||||||
|
.dw 52 ; W
|
||||||
|
.dw 52 ; H
|
||||||
|
.dw STYLE_BUTTON_COL_FG_NORM ; front color
|
||||||
|
.dw STYLE_BUTTON_COL_BG_NORM ; back color
|
||||||
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw buttonEepromDumpUp_ramdata ; ptr to SDRAM
|
||||||
|
; IMGVIEW
|
||||||
|
.dw RESSSOURCE_IMG_ARROWUP ; ressource id
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
buttonEepromDumpDown:
|
||||||
|
; OBJECT
|
||||||
|
.db 0x55, 0xaa ; magic
|
||||||
|
.dw buttonEepromDumpBack*2 ; next
|
||||||
|
.dw winEepromDumpBody*2 ; parent
|
||||||
|
.dw 0 ; first child
|
||||||
|
.dw winEepromDumpView*2 ; target
|
||||||
|
.dw WINEEPROMDUMP_SEL_DOWN ; selector (ony lower 8 bits used)
|
||||||
|
.dw Button_DefaultSignalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
||||||
|
.dw 2+(1*58) ; X
|
||||||
|
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT-56 ; Y
|
||||||
|
.dw 52 ; W
|
||||||
|
.dw 52 ; H
|
||||||
|
.dw STYLE_BUTTON_COL_FG_NORM ; front color
|
||||||
|
.dw STYLE_BUTTON_COL_BG_NORM ; back color
|
||||||
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw buttonEepromDumpDown_ramdata ; ptr to SDRAM
|
||||||
|
; IMGVIEW
|
||||||
|
.dw RESSSOURCE_IMG_ARROWDOWN ; ressource id
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
buttonEepromDumpBack:
|
||||||
|
; OBJECT
|
||||||
|
.db 0x55, 0xaa ; magic
|
||||||
|
.dw 0 ; next
|
||||||
|
.dw winEepromDumpBody*2 ; parent
|
||||||
|
.dw 0 ; first child
|
||||||
|
.dw appC03*2 ; target
|
||||||
|
.dw APPC03_SEL_BUTTON_CLIMATE ; selector (ony lower 8 bits used)
|
||||||
|
.dw Button_DefaultSignalmap*2 ; signal map
|
||||||
|
; WIDGET
|
||||||
|
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
||||||
|
.dw DISPLAY_WIDTH-56 ; X
|
||||||
|
.dw DISPLAY_HEIGHT-STYLE_WIN_TITLE_HEIGHT-56 ; Y
|
||||||
|
.dw 52 ; W
|
||||||
|
.dw 52 ; H
|
||||||
|
.dw STYLE_BUTTON_COL_FG_NORM ; front color
|
||||||
|
.dw STYLE_BUTTON_COL_BG_NORM ; back color
|
||||||
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
|
.dw buttonEepromDumpBack_ramdata ; ptr to SDRAM
|
||||||
|
; IMGVIEW
|
||||||
|
.dw RESSSOURCE_IMG_ARROWBACK ; ressource id
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -70,7 +70,7 @@ winNetworkValue4_ramdata:
|
|||||||
winNetworkValue5_ramdata:
|
winNetworkValue5_ramdata:
|
||||||
.byte VLABEL_SD_SIZE
|
.byte VLABEL_SD_SIZE
|
||||||
|
|
||||||
buttonNetworkClimate_ramdata:
|
buttonNetworkBack_ramdata:
|
||||||
.byte IMGVIEW_SD_SIZE
|
.byte IMGVIEW_SD_SIZE
|
||||||
|
|
||||||
|
|
||||||
@@ -84,7 +84,7 @@ buttonNetworkClimate_ramdata:
|
|||||||
winNetwork:
|
winNetwork:
|
||||||
; OBJECT
|
; OBJECT
|
||||||
.db 0x55, 0xaa ; magic
|
.db 0x55, 0xaa ; magic
|
||||||
.dw 0 ; next
|
.dw winEepromDump*2 ; next
|
||||||
.dw winRoot*2 ; parent
|
.dw winRoot*2 ; parent
|
||||||
.dw winNetworkHeader*2 ; first child
|
.dw winNetworkHeader*2 ; first child
|
||||||
.dw 0 ; target
|
.dw 0 ; target
|
||||||
@@ -397,7 +397,7 @@ winNetwork_signalmap:
|
|||||||
winNetworkValue5:
|
winNetworkValue5:
|
||||||
; OBJECT
|
; OBJECT
|
||||||
.db 0x55, 0xaa ; magic
|
.db 0x55, 0xaa ; magic
|
||||||
.dw buttonNetworkClimate*2 ; next
|
.dw buttonNetworkBack*2 ; next
|
||||||
.dw winNetworkBody*2 ; parent
|
.dw winNetworkBody*2 ; parent
|
||||||
.dw 0 ; first child
|
.dw 0 ; first child
|
||||||
.dw 0 ; target
|
.dw 0 ; target
|
||||||
@@ -419,7 +419,7 @@ winNetwork_signalmap:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
buttonNetworkClimate:
|
buttonNetworkBack:
|
||||||
; OBJECT
|
; OBJECT
|
||||||
.db 0x55, 0xaa ; magic
|
.db 0x55, 0xaa ; magic
|
||||||
.dw 0 ; next
|
.dw 0 ; next
|
||||||
@@ -427,7 +427,7 @@ winNetwork_signalmap:
|
|||||||
.dw 0 ; first child
|
.dw 0 ; first child
|
||||||
.dw appC03*2 ; target
|
.dw appC03*2 ; target
|
||||||
.dw APPC03_SEL_BUTTON_CLIMATE ; selector (ony lower 8 bits used)
|
.dw APPC03_SEL_BUTTON_CLIMATE ; selector (ony lower 8 bits used)
|
||||||
.dw buttonNetworkClimate_signalmap*2 ; signal map
|
.dw Button_DefaultSignalmap*2 ; signal map
|
||||||
; WIDGET
|
; WIDGET
|
||||||
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
.db (1<<WIDGET_OPTSLO_INPUT_BIT) | (1<<WIDGET_OPTSLO_BORDER_BIT), 0 ; opts lo, hi
|
||||||
.dw DISPLAY_WIDTH-56 ; X
|
.dw DISPLAY_WIDTH-56 ; X
|
||||||
@@ -439,14 +439,8 @@ winNetwork_signalmap:
|
|||||||
.dw STYLE_WIN_FONT*2 ; font
|
.dw STYLE_WIN_FONT*2 ; font
|
||||||
.dw buttonClimateNetwork_ramdata ; ptr to SDRAM
|
.dw buttonClimateNetwork_ramdata ; ptr to SDRAM
|
||||||
; IMGVIEW
|
; IMGVIEW
|
||||||
.dw RESSSOURCE_IMG_TEMP ; ressource id
|
.dw RESSSOURCE_IMG_ARROWBACK ; ressource id
|
||||||
|
|
||||||
buttonNetworkClimate_signalmap:
|
|
||||||
.db 0, WIDGET_SIGNAL_TOUCH, LOW(Button_OnTouch), HIGH(Button_OnTouch)
|
|
||||||
.db 0, WIDGET_SIGNAL_DRAW, LOW(ImageView_OnDraw), HIGH(ImageView_OnDraw)
|
|
||||||
.db 0, IMGVIEW_SIGNAL_SETBGCOL, LOW(ImageView_OnSetBgCol), HIGH(ImageView_OnSetBgCol)
|
|
||||||
.db 0, OBJECT_SIGNAL_CREATE, LOW(ImageView_OnCreate), HIGH(ImageView_OnCreate)
|
|
||||||
.db 0, 0, 0, 0 ; end of table
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -324,6 +324,9 @@ eeloop_end:
|
|||||||
.include "modules/lcd2/ili9341/font12x16.asm"
|
.include "modules/lcd2/ili9341/font12x16.asm"
|
||||||
.include "modules/lcd2/ili9341/font12x16_1.asm"
|
.include "modules/lcd2/ili9341/font12x16_1.asm"
|
||||||
|
|
||||||
|
.include "modules/lcd2/ili9341/font6x8.asm"
|
||||||
|
.include "modules/lcd2/ili9341/font6x8_1.asm"
|
||||||
|
|
||||||
;.include "modules/lcd2/ili9341/font12x20.asm"
|
;.include "modules/lcd2/ili9341/font12x20.asm"
|
||||||
;.include "modules/lcd2/ili9341/font12x20_1.asm"
|
;.include "modules/lcd2/ili9341/font12x20_1.asm"
|
||||||
;.include "common/list_t.asm"
|
;.include "common/list_t.asm"
|
||||||
@@ -347,10 +350,12 @@ eeloop_end:
|
|||||||
.include "modules/lcd2/gui2/generic/valuelabel.asm"
|
.include "modules/lcd2/gui2/generic/valuelabel.asm"
|
||||||
.include "modules/lcd2/gui2/generic/guiapp.asm"
|
.include "modules/lcd2/gui2/generic/guiapp.asm"
|
||||||
.include "modules/lcd2/gui2/sensorwatch.asm"
|
.include "modules/lcd2/gui2/sensorwatch.asm"
|
||||||
|
.include "modules/lcd2/gui2/eepromdump.asm"
|
||||||
|
|
||||||
.include "g_app.asm"
|
.include "g_app.asm"
|
||||||
.include "g_win_climate.asm"
|
.include "g_win_climate.asm"
|
||||||
.include "g_win_network.asm"
|
.include "g_win_network.asm"
|
||||||
|
.include "g_win_eepromdump.asm"
|
||||||
|
|
||||||
.include "ressources.inc"
|
.include "ressources.inc"
|
||||||
|
|
||||||
|
|||||||
316
avr/modules/lcd2/gui2/eepromdump.asm
Normal file
316
avr/modules/lcd2/gui2/eepromdump.asm
Normal file
@@ -0,0 +1,316 @@
|
|||||||
|
; ***************************************************************************
|
||||||
|
; 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_EEPROMDUMP_ASM
|
||||||
|
#define AQH_AVR_GUI2_EEPROMDUMP_ASM
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ***************************************************************************
|
||||||
|
; defines
|
||||||
|
|
||||||
|
|
||||||
|
.equ EEPROMDUMP_FONT = ili9341Font6x8_1
|
||||||
|
.equ EEPROMDUMP_FONT_WIDTH = 6
|
||||||
|
.equ EEPROMDUMP_FONT_HEIGHT = 8
|
||||||
|
|
||||||
|
.equ EEPROMDUMP_BYTESPERLINE = 8
|
||||||
|
.equ EEPROMDUMP_LINESPERPAGE = 14
|
||||||
|
|
||||||
|
; SDRAM data for EepromDump
|
||||||
|
.equ EEPROMDUMP_SD_OFFS_BEGIN = WIDGET_SD_SIZE
|
||||||
|
.equ EEPROMDUMP_SD_OFFS_STARTADDR_LO = EEPROMDUMP_SD_OFFS_BEGIN+0
|
||||||
|
.equ EEPROMDUMP_SD_OFFS_STARTADDR_HI = EEPROMDUMP_SD_OFFS_BEGIN+1
|
||||||
|
.equ EEPROMDUMP_SD_SIZE = EEPROMDUMP_SD_OFFS_BEGIN+2
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ***************************************************************************
|
||||||
|
; code
|
||||||
|
|
||||||
|
.cseg
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ---------------------------------------------------------------------------
|
||||||
|
; @routine SensorWatch_OnCreate @global
|
||||||
|
;
|
||||||
|
; @param Z byte address of widget object (for LPM!)
|
||||||
|
; @param XL node addr
|
||||||
|
; @param XH value id
|
||||||
|
; @return CFLAG set if signal handled
|
||||||
|
; @clobbers any, !Z
|
||||||
|
|
||||||
|
EepromDump_OnCreate:
|
||||||
|
bigcall OBJ_IsObject ; (none)
|
||||||
|
brcc EepromDump_OnCreate_ret
|
||||||
|
|
||||||
|
; preset SDRAM
|
||||||
|
bigcall Widget_GetSdramPtr ; (none)
|
||||||
|
clr r16
|
||||||
|
ldi r17, EEPROMDUMP_SD_SIZE
|
||||||
|
push yl
|
||||||
|
push yh
|
||||||
|
EepromDump_OnCreate_loop:
|
||||||
|
st Y+, r16
|
||||||
|
dec r17
|
||||||
|
brne EepromDump_OnCreate_loop
|
||||||
|
pop yh
|
||||||
|
pop yl
|
||||||
|
|
||||||
|
bigcall Widget_OnCreate
|
||||||
|
|
||||||
|
EepromDump_OnCreate_ret:
|
||||||
|
sec
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ---------------------------------------------------------------------------
|
||||||
|
; @routine EepromDump_OnUp @global
|
||||||
|
;
|
||||||
|
; @param Z byte address of object (for LPM!)
|
||||||
|
|
||||||
|
EepromDump_OnUp:
|
||||||
|
bigcall Widget_GetSdramPtr ; (none)
|
||||||
|
ldd xl, Y+EEPROMDUMP_SD_OFFS_STARTADDR_LO
|
||||||
|
ldd xh, Y+EEPROMDUMP_SD_OFFS_STARTADDR_HI
|
||||||
|
ldi r16, LOW(EEPROMDUMP_BYTESPERLINE*EEPROMDUMP_LINESPERPAGE)
|
||||||
|
ldi r17, HIGH(EEPROMDUMP_BYTESPERLINE*EEPROMDUMP_LINESPERPAGE)
|
||||||
|
sub xl, r16
|
||||||
|
sbc xh, r17
|
||||||
|
brcc EepromDump_OnUp_set
|
||||||
|
clr xl
|
||||||
|
clr xh
|
||||||
|
EepromDump_OnUp_set:
|
||||||
|
std Y+EEPROMDUMP_SD_OFFS_STARTADDR_LO, xl
|
||||||
|
std Y+EEPROMDUMP_SD_OFFS_STARTADDR_HI, xh
|
||||||
|
|
||||||
|
ldd r17, Y+WIDGET_SD_OFFS_FLAGS
|
||||||
|
ori r17, (1<<WIDGET_FLAGS_DIRTY_BIT)
|
||||||
|
std Y+WIDGET_SD_OFFS_FLAGS, r17
|
||||||
|
sec
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
EepromDump_OnDown:
|
||||||
|
bigcall Widget_GetSdramPtr ; (none)
|
||||||
|
ldd xl, Y+EEPROMDUMP_SD_OFFS_STARTADDR_LO
|
||||||
|
ldd xh, Y+EEPROMDUMP_SD_OFFS_STARTADDR_HI
|
||||||
|
ldi r16, LOW(EEPROMDUMP_BYTESPERLINE*EEPROMDUMP_LINESPERPAGE)
|
||||||
|
ldi r17, HIGH(EEPROMDUMP_BYTESPERLINE*EEPROMDUMP_LINESPERPAGE)
|
||||||
|
add xl, r16
|
||||||
|
adc xh, r17
|
||||||
|
brcs EepromDump_OnDown_tooHigh
|
||||||
|
ldi r16, LOW(EEPROMEND)
|
||||||
|
ldi r17, HIGH(EEPROMEND)
|
||||||
|
cp xl, r16
|
||||||
|
cpc xh, r17
|
||||||
|
brcs EepromDump_OnDown_set
|
||||||
|
EepromDump_OnDown_tooHigh:
|
||||||
|
ldi xl, LOW(EEPROMEND-EEPROMDUMP_BYTESPERLINE)
|
||||||
|
ldi xh, HIGH(EEPROMEND-EEPROMDUMP_BYTESPERLINE)
|
||||||
|
EepromDump_OnDown_set:
|
||||||
|
std Y+EEPROMDUMP_SD_OFFS_STARTADDR_LO, xl
|
||||||
|
std Y+EEPROMDUMP_SD_OFFS_STARTADDR_HI, xh
|
||||||
|
|
||||||
|
ldd r17, Y+WIDGET_SD_OFFS_FLAGS
|
||||||
|
ori r17, (1<<WIDGET_FLAGS_DIRTY_BIT)
|
||||||
|
std Y+WIDGET_SD_OFFS_FLAGS, r17
|
||||||
|
sec
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ---------------------------------------------------------------------------
|
||||||
|
; @routine EepromDump_OnDraw @global
|
||||||
|
;
|
||||||
|
; @param Z byte address of object (for LPM!)
|
||||||
|
; @param xl param1
|
||||||
|
; @param xh param2
|
||||||
|
; @clobbers any, !Z
|
||||||
|
|
||||||
|
EepromDump_OnDraw:
|
||||||
|
bigcall Widget_GetSdramPtr ; (none)
|
||||||
|
ldd r16, Y+WIDGET_SD_OFFS_FLAGS
|
||||||
|
andi r16, (1<<WIDGET_FLAGS_DIRTY_BIT)
|
||||||
|
breq EepromDump_OnDraw_ret
|
||||||
|
|
||||||
|
rcall Widget_Clear
|
||||||
|
|
||||||
|
bigcall Widget_GetSdramPtr ; (none)
|
||||||
|
ldd xl, Y+EEPROMDUMP_SD_OFFS_STARTADDR_LO
|
||||||
|
ldd xh, Y+EEPROMDUMP_SD_OFFS_STARTADDR_HI
|
||||||
|
ldi r16, 2
|
||||||
|
mov r4, r16
|
||||||
|
clr r5
|
||||||
|
mov r6, r16
|
||||||
|
clr r7
|
||||||
|
rcall eepromDumpDrawBlock
|
||||||
|
|
||||||
|
bigcall Widget_GetSdramPtr ; (none)
|
||||||
|
ldd r16, Y+WIDGET_SD_OFFS_FLAGS
|
||||||
|
cbr r16, (1<<WIDGET_FLAGS_DIRTY_BIT)
|
||||||
|
std Y+WIDGET_SD_OFFS_FLAGS, r16
|
||||||
|
|
||||||
|
EepromDump_OnDraw_ret:
|
||||||
|
sec
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ---------------------------------------------------------------------------
|
||||||
|
; @routine eepromDumpDrawBlock
|
||||||
|
;
|
||||||
|
; @param Z byte address of widget object (for LPM!)
|
||||||
|
; @param R5:R4 X relative to widget
|
||||||
|
; @param R7:R6 Y relative to widget
|
||||||
|
; @param X current start address
|
||||||
|
; @param R18 number of bytes to print as hex bytes
|
||||||
|
|
||||||
|
eepromDumpDrawBlock:
|
||||||
|
ldi r18, EEPROMDUMP_LINESPERPAGE
|
||||||
|
eepromDumpDrawBlock_loop:
|
||||||
|
push r18
|
||||||
|
push r4
|
||||||
|
push r5
|
||||||
|
rcall eepromDumpDrawLine
|
||||||
|
pop r5
|
||||||
|
pop r4
|
||||||
|
ldi r16, LOW(EEPROMDUMP_FONT_HEIGHT)
|
||||||
|
ldi r17, HIGH(EEPROMDUMP_FONT_HEIGHT)
|
||||||
|
add r6, r16
|
||||||
|
adc r7, r17
|
||||||
|
pop r18
|
||||||
|
dec r18
|
||||||
|
brne eepromDumpDrawBlock_loop
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ---------------------------------------------------------------------------
|
||||||
|
; @routine eepromDumpDrawLine
|
||||||
|
;
|
||||||
|
; @param Z byte address of widget object (for LPM!)
|
||||||
|
; @param R5:R4 X relative to widget
|
||||||
|
; @param R7:R6 Y relative to widget
|
||||||
|
; @param X current start address
|
||||||
|
; @param R18 number of bytes to print as hex bytes
|
||||||
|
; @return X pointer to next byte to write
|
||||||
|
; @clobbers any, !Z, !R6, !R7
|
||||||
|
|
||||||
|
eepromDumpDrawLine:
|
||||||
|
push xl
|
||||||
|
push xh
|
||||||
|
mov r20, xl
|
||||||
|
mov r21, xh
|
||||||
|
bigcall HexWordToAscii ; X=ptr to addr (R16, R17)
|
||||||
|
rcall eepromDumpDrawText
|
||||||
|
ldi r16, LOW(EEPROMDUMP_FONT_WIDTH*4)
|
||||||
|
ldi r17, HIGH(EEPROMDUMP_FONT_WIDTH*4)
|
||||||
|
add r4, r16
|
||||||
|
adc r5, r17
|
||||||
|
|
||||||
|
ldi r16, ':'
|
||||||
|
rcall eepromDumpDrawChar
|
||||||
|
|
||||||
|
ldi r16, ' '
|
||||||
|
rcall eepromDumpDrawChar
|
||||||
|
pop xh
|
||||||
|
pop xl
|
||||||
|
|
||||||
|
ldi r18, EEPROMDUMP_BYTESPERLINE
|
||||||
|
eepromDumpDrawLine_loop:
|
||||||
|
push r18
|
||||||
|
bigcall Eeprom_ReadByte ; R16=byte read
|
||||||
|
brcc eepromDumpDrawLine_ret
|
||||||
|
adiw xh:xl, 1
|
||||||
|
push xl
|
||||||
|
push xh
|
||||||
|
bigcall HexByteToAscii ; X=ptr to addr (R16, R17)
|
||||||
|
rcall eepromDumpDrawText
|
||||||
|
ldi r16, LOW(EEPROMDUMP_FONT_WIDTH*2)
|
||||||
|
ldi r17, HIGH(EEPROMDUMP_FONT_WIDTH*2)
|
||||||
|
add r4, r16
|
||||||
|
adc r5, r17
|
||||||
|
ldi r16, ' '
|
||||||
|
rcall eepromDumpDrawChar
|
||||||
|
pop xh
|
||||||
|
pop xl
|
||||||
|
pop r18
|
||||||
|
dec r18
|
||||||
|
brne eepromDumpDrawLine_loop
|
||||||
|
eepromDumpDrawLine_ret:
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ---------------------------------------------------------------------------
|
||||||
|
; @routine eepromDumpDrawLine
|
||||||
|
;
|
||||||
|
; @param Z byte address of widget object (for LPM!)
|
||||||
|
; @param R5:R4 X relative to widget
|
||||||
|
; @param R7:R6 Y relative to widget
|
||||||
|
; @param X address of text to write
|
||||||
|
; @clobbers any, !Z, !(r4-r7)
|
||||||
|
|
||||||
|
eepromDumpDrawText:
|
||||||
|
push r4
|
||||||
|
push r5
|
||||||
|
push r6
|
||||||
|
push r7
|
||||||
|
bigcall Widget_DrawTextSDRAM ; (any, !Z)
|
||||||
|
pop r7
|
||||||
|
pop r6
|
||||||
|
pop r5
|
||||||
|
pop r4
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ---------------------------------------------------------------------------
|
||||||
|
; @routine eepromDumpDrawChar
|
||||||
|
;
|
||||||
|
; @param Z byte address of widget object (for LPM!)
|
||||||
|
; @param R5:R4 X relative to widget
|
||||||
|
; @param R7:R6 Y relative to widget
|
||||||
|
; @param R16 byte to write
|
||||||
|
; @clobbers any, !Z, !(r4-r7)
|
||||||
|
|
||||||
|
eepromDumpDrawChar:
|
||||||
|
push r4
|
||||||
|
push r5
|
||||||
|
push r6
|
||||||
|
push r7
|
||||||
|
bigcall Widget_DrawCharAt ; (any, !Z)
|
||||||
|
pop r7
|
||||||
|
pop r6
|
||||||
|
pop r5
|
||||||
|
pop r4
|
||||||
|
ldi r16, LOW(EEPROMDUMP_FONT_WIDTH)
|
||||||
|
ldi r17, HIGH(EEPROMDUMP_FONT_WIDTH)
|
||||||
|
add r4, r16
|
||||||
|
adc r5, r17
|
||||||
|
ret
|
||||||
|
; @end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
Reference in New Issue
Block a user