avr: added netstats window
There seems to be a problem with MLayout (writes imaginary row at screen Y position 0 for unknown reasons).
This commit is contained in:
@@ -14,27 +14,30 @@
|
||||
; ***************************************************************************
|
||||
; defines
|
||||
|
||||
.equ C03APP_OFFS_BEGIN = GUIAPP_SIZE
|
||||
.equ C03APP_OFFS_WMENU_LO = C03APP_OFFS_BEGIN+0
|
||||
.equ C03APP_OFFS_WMENU_HI = C03APP_OFFS_BEGIN+1
|
||||
.equ C03APP_OFFS_WCLIMATE_LO = C03APP_OFFS_BEGIN+2
|
||||
.equ C03APP_OFFS_WCLIMATE_HI = C03APP_OFFS_BEGIN+3
|
||||
.equ C03APP_OFFS_WLIGHT_LO = C03APP_OFFS_BEGIN+4
|
||||
.equ C03APP_OFFS_WLIGHT_HI = C03APP_OFFS_BEGIN+5
|
||||
.equ C03APP_OFFS_WWINDOWS_LO = C03APP_OFFS_BEGIN+6
|
||||
.equ C03APP_OFFS_WWINDOWS_HI = C03APP_OFFS_BEGIN+7
|
||||
.equ C03APP_OFFS_WDEBUG_LO = C03APP_OFFS_BEGIN+8
|
||||
.equ C03APP_OFFS_WDEBUG_HI = C03APP_OFFS_BEGIN+9
|
||||
.equ C03APP_SIZE = C03APP_OFFS_BEGIN+10
|
||||
.equ C03APP_OFFS_BEGIN = GUIAPP_SIZE
|
||||
.equ C03APP_OFFS_WMENU_LO = C03APP_OFFS_BEGIN+0
|
||||
.equ C03APP_OFFS_WMENU_HI = C03APP_OFFS_BEGIN+1
|
||||
.equ C03APP_OFFS_WCLIMATE_LO = C03APP_OFFS_BEGIN+2
|
||||
.equ C03APP_OFFS_WCLIMATE_HI = C03APP_OFFS_BEGIN+3
|
||||
.equ C03APP_OFFS_WLIGHT_LO = C03APP_OFFS_BEGIN+4
|
||||
.equ C03APP_OFFS_WLIGHT_HI = C03APP_OFFS_BEGIN+5
|
||||
.equ C03APP_OFFS_WWINDOWS_LO = C03APP_OFFS_BEGIN+6
|
||||
.equ C03APP_OFFS_WWINDOWS_HI = C03APP_OFFS_BEGIN+7
|
||||
.equ C03APP_OFFS_WDEBUG_LO = C03APP_OFFS_BEGIN+8
|
||||
.equ C03APP_OFFS_WDEBUG_HI = C03APP_OFFS_BEGIN+9
|
||||
.equ C03APP_OFFS_WNETSTATS_LO = C03APP_OFFS_BEGIN+10
|
||||
.equ C03APP_OFFS_WNETSTATS_HI = C03APP_OFFS_BEGIN+11
|
||||
.equ C03APP_SIZE = C03APP_OFFS_BEGIN+12
|
||||
|
||||
|
||||
; selectors for main windows
|
||||
.equ C03APP_SEL_BACK = 1
|
||||
.equ C03APP_SEL_MENU = 2
|
||||
.equ C03APP_SEL_CLIMATE = 3
|
||||
.equ C03APP_SEL_LIGHT = 4
|
||||
.equ C03APP_SEL_WINDOWS = 5
|
||||
.equ C03APP_SEL_DEBUG = 6
|
||||
.equ C03APP_SEL_BACK = 1
|
||||
.equ C03APP_SEL_MENU = 2
|
||||
.equ C03APP_SEL_CLIMATE = 3
|
||||
.equ C03APP_SEL_LIGHT = 4
|
||||
.equ C03APP_SEL_WINDOWS = 5
|
||||
.equ C03APP_SEL_DEBUG = 6
|
||||
.equ C03APP_SEL_NETSTATS = 7
|
||||
|
||||
|
||||
|
||||
@@ -91,8 +94,9 @@ C03App_Init:
|
||||
std Y+OBJECT_OFFS_SIGNALMAP_HI, r16
|
||||
|
||||
; create main windows
|
||||
rcall c03AppCreateWinMenu ; (!Y)
|
||||
rcall c03AppCreateWinClimate ; (!Y)
|
||||
rcall c03AppCreateWinMenu ; (any, !Y)
|
||||
rcall c03AppCreateWinClimate ; (any, !Y)
|
||||
rcall c03AppCreateWinNetStats ; (any, !Y)
|
||||
|
||||
; enter menu window
|
||||
rcall C03App_EnterMenuWin
|
||||
@@ -152,6 +156,31 @@ c03AppCreateWinClimate_ret:
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine c03AppCreateWinNetStats
|
||||
;
|
||||
; @clobbers !X
|
||||
|
||||
c03AppCreateWinNetStats:
|
||||
push yl
|
||||
push yh
|
||||
bigcall NetStatWin_new
|
||||
mov xl, yl
|
||||
mov xh, yh
|
||||
pop yh
|
||||
pop yl
|
||||
brcc c03AppCreateWinNetStats_ret
|
||||
std Y+C03APP_OFFS_WNETSTATS_LO, xl
|
||||
std Y+C03APP_OFFS_WNETSTATS_HI, xh
|
||||
ldi r16, C03APP_SEL_NETSTATS
|
||||
rcall c03AppSetTargetAndSelector
|
||||
sec
|
||||
c03AppCreateWinNetStats_ret:
|
||||
ret
|
||||
; @end
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine c03AppSetTargetAndSelector
|
||||
;
|
||||
@@ -268,6 +297,25 @@ C03App_OnCmdDebug_ret:
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine C03App_OnCmdNetStats
|
||||
;
|
||||
; @param Y ptr to this guiapp
|
||||
|
||||
C03App_OnCmdNetStats:
|
||||
ldd xl, Y+C03APP_OFFS_WNETSTATS_LO
|
||||
ldd xh, Y+C03APP_OFFS_WNETSTATS_HI
|
||||
mov r16, xl ; was window created?
|
||||
or r16, xh
|
||||
breq C03App_OnCmdNetStats_ret ; nope, ignore this signal
|
||||
bigcall GuiApp_EnterWindow
|
||||
C03App_OnCmdNetStats_ret:
|
||||
sec
|
||||
ret
|
||||
; @end
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; @routine C03App_OnCmdBack
|
||||
;
|
||||
@@ -370,11 +418,13 @@ C03App_DefaultSignalmap:
|
||||
; header
|
||||
.dw GuiApp_DefaultSignalmap*2 ; next table to use
|
||||
; entries
|
||||
.db C03APP_SEL_BACK, WIDGET_SIGNAL_COMMAND, LOW(C03App_OnCmdBack), HIGH(C03App_OnCmdBack)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_CLIMATE, LOW(C03App_OnCmdClimate), HIGH(C03App_OnCmdClimate)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_LIGHT, LOW(C03App_OnCmdLight), HIGH(C03App_OnCmdLight)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_WINDOWS, LOW(C03App_OnCmdWindows), HIGH(C03App_OnCmdWindows)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_DEBUG, LOW(C03App_OnCmdDebug), HIGH(C03App_OnCmdDebug)
|
||||
.db C03APP_SEL_BACK, WIDGET_SIGNAL_COMMAND, LOW(C03App_OnCmdBack), HIGH(C03App_OnCmdBack)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_CLIMATE, LOW(C03App_OnCmdClimate), HIGH(C03App_OnCmdClimate)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_LIGHT, LOW(C03App_OnCmdLight), HIGH(C03App_OnCmdLight)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_WINDOWS, LOW(C03App_OnCmdWindows), HIGH(C03App_OnCmdWindows)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_DEBUG, LOW(C03App_OnCmdDebug), HIGH(C03App_OnCmdDebug)
|
||||
.db C03APP_SEL_MENU, MENUWIN_SIGNAL_NETSTATS, LOW(C03App_OnCmdNetStats), HIGH(C03App_OnCmdNetStats)
|
||||
|
||||
.db 0, 0, 0, 0 ; end of table
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user