📄 psocconfig.lis
字号:
; Nothing to do
ENDIF ; RAM_USE_CLASS_1
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_2 )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_11b
ENDIF
ENDIF ; PGMODE LOCKED
IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_10b
ENDIF
ENDIF ; PGMODE FREE
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF ; RAM_USE_CLASS_2
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_3 )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_11b
ENDIF
ENDIF ; PGMODE LOCKED
IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_10b
ENDIF
ENDIF ; PGMODE FREE
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF ; RAM_USE_CLASS_3
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_4 )
; Nothing to do
ENDIF ; RAM_USE_CLASS_4
0018 7F ret
0019
0019 ;---------------------------------------------------------------------------
0019 ; Load Configuration hbtouchkey
0019 ;
0019 ; Load configuration registers for hbtouchkey.
0019 ; IO Bank 0 registers a loaded first,then those in IO Bank 1.
0019 ;
0019 ; INPUTS: None.
0019 ; RETURNS: Nothing.
0019 ; SIDE EFFECTS: Registers are volatile: the CPU A and X registers may be
0019 ; modified as may the Page Pointer registers!
0019 ; In the large memory model currently only the page
0019 ; pointer registers listed below are modified. This does
0019 ; not guarantee that in future implementations of this
0019 ; function other page pointer registers will not be
0019 ; modified.
0019 ;
0019 ; Page Pointer Registers Modified:
0019 ; CUR_PP
0019 ;
0019 _LoadConfig_hbtouchkey:
0019 LoadConfig_hbtouchkey:
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_1 )
; Nothing to do
ENDIF ; RAM_USE_CLASS_1
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_2 )
IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
or F, FLAG_PGMODE_01b
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF
ENDIF ; RAM_USE_CLASS_2
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_3 )
IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_01b
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF
ENDIF ; RAM_USE_CLASS_3
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_4 )
; Nothing to do
ENDIF ; RAM_USE_CLASS_4
0019 7110 or F, FLAG_XIO_MASK
001B
001B 10 push x
001C 70EF and F, ~FLAG_XIO_MASK
001E 5000 mov a, 0 ; Specify bank 0
0020 67 asr a ; Store in carry flag
0021 ; Load bank 0 table:
0021 5000 mov A, >LoadConfigTBL_hbtouchkey_Bank0
0023 5700 mov X, <LoadConfigTBL_hbtouchkey_Bank0
0025 7C0113 lcall LoadConfig ; Load the bank 0 values
0028
0028 5001 mov a, 1 ; Specify bank 1
002A 67 asr a ; Store in carry flag
002B ; Load bank 1 table:
002B 5000 mov A, >LoadConfigTBL_hbtouchkey_Bank1
002D 5700 mov X, <LoadConfigTBL_hbtouchkey_Bank1
002F 7C0113 lcall LoadConfig ; Load the bank 1 values
0032
IF ( SYSTEM_LARGE_MEMORY_MODEL )
0032 62D000 mov reg[CUR_PP], >ACTIVE_CONFIG_STATUS
ENDIF
; set config active bit
0035 2E0001 or [ACTIVE_CONFIG_STATUS+hbtouchkey_ADDR_OFF], hbtouchkey_BIT
0038 70EF and F, ~FLAG_XIO_MASK
003A 20 pop x
003B
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_1 )
; Nothing to do
ENDIF ; RAM_USE_CLASS_1
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_2 )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_11b
ENDIF
ENDIF ; PGMODE LOCKED
IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_10b
ENDIF
ENDIF ; PGMODE FREE
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF ; RAM_USE_CLASS_2
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_3 )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_11b
ENDIF
ENDIF ; PGMODE LOCKED
IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_MASK ; NOTE: transition thru 00b state
or F, FLAG_PGMODE_MASK & FLAG_PGMODE_10b
ENDIF
ENDIF ; PGMODE FREE
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF ; RAM_USE_CLASS_3
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_4 )
; Nothing to do
ENDIF ; RAM_USE_CLASS_4
003B 7F ret
003C
003C ;---------------------------------------------------------------------------
003C ; Reload Configuration hbtouchkey
003C ;
003C ; Reload configuration registers for hbtouchkey.
003C ; IO Bank 0 registers a loaded first,then those in IO Bank 1.
003C ;
003C ; INPUTS: None.
003C ; RETURNS: Nothing.
003C ; SIDE EFFECTS: Registers are volatile: the CPU A and X registers may be
003C ; modified as may the Page Pointer registers!
003C ; In the large memory model currently only the page
003C ; pointer registers listed below are modified. This does
003C ; not guarantee that in future implementations of this
003C ; function other page pointer registers will not be
003C ; modified.
003C ;
003C ; Page Pointer Registers Modified:
003C ; CUR_PP
003C ;
003C _ReloadConfig_hbtouchkey:
003C ReloadConfig_hbtouchkey:
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_1 )
; Nothing to do
ENDIF ; RAM_USE_CLASS_1
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_2 )
IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
or F, FLAG_PGMODE_01b
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF
ENDIF ; RAM_USE_CLASS_2
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_3 )
IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
IF ( SYSTEM_LARGE_MEMORY_MODEL )
and F, ~FLAG_PGMODE_01b
ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
ENDIF
ENDIF ; RAM_USE_CLASS_3
IF ( RAM_USE_CLASS_4 & RAM_USE_CLASS_4 )
; Nothing to do
ENDIF ; RAM_USE_CLASS_4
003C 10 push x
003D 70EF and F, ~FLAG_XIO_MASK
003F 5000 mov a, 0 ; Specify bank 0
0041 67 asr a ; Store in carry flag
0042 ; Bank 0 table address:
0042 5000 mov A, >ReloadConfigTBL_hbtouchkey_Bank0
0044 5700 mov X, <ReloadConfigTBL_hbtouchkey_Bank0
0046 7C0113 lcall LoadConfig ; Reload the bank 0 values
0049
0049 5001 mov a, 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -