Screen Definitions

Each "screen" that is used is defined as follows
  • 4 bytes corresponding to one of the screen lines. A zero indicates that this line is used for the scrolling part of the message.
  • 1 byte indicating how many lines are to be rotated through the scrolling section. Must be non-zero, even if none of the lines are defined as scrolling.
  • The lines, in order, that are to be rotated through the scrolling section.
ScrnTable is a list of 2 byte pointers to the memory location of each of the above screen definitions. You specify a screen by specifying the entry number in this table.

Download:
ScreenBank: S_intro : ; Startup Screen .BYTE 00,00,00,00 ; 4 screen lines, 00 means this line scrolls ; non-zero refers to the above list .BYTE 0DH ; Number of Scrolling Line - must be at least one .BYTE 01,02,03,01,04,01,05,06,07,01,0B,01,01 ; scrolling MS_Main : ; Main menu .BYTE 08,09,0A,63 ; 4 screen lines, 00 means this line scrolls ; non-zero refers to the above list .BYTE 01H ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_Zarm: .BYTE 0C,01 Z_al4: .byte 0D,0F ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_Config: .BYTE 22,00,00,00 ; fixed lines .BYTE 05 ; Number of Scrolling Lines .BYTE 01,1E,1F,20,21 ; scrolling MS_ZConfig: .BYTE 23,00,00,00 ; fixed lines .BYTE 06 ; Number of Scrolling Lines .BYTE 01,24,25,26,27,0BF ; scrolling MS_Smoke: .BYTE 39,3A,3B,21 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_Misc: .BYTE 3C,00,00,00 ; fixed lines .BYTE 0C ; Number of Scrolling Lines .BYTE 01,3D,3E,3F,40,41,42,43,44,53,0B3,45 ; scrolling MS_WSEC: .BYTE 64,65,66,1D ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_aArm: .BYTE 28,29,2A,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_aaInterval: .BYTE 28,00,00,00 ; fixed lines .BYTE 0D ; Number of Scrolling Lines .BYTE 01,2B,2C,2D,2E,2F,30,31,32,33,34,35,21; scrolling MS_zaccess: .BYTE 36,37,38,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_dsel: .BYTE 46,01,47,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_winsel: .BYTE 4B,01,4C,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 ; scrolling MS_dc: .BYTE 48,49,4A,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_wc: .BYTE 4D,01,49,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_access: .BYTE 4E,00,00,00 ; fixed lines .BYTE 07 ; Number of Scrolling Lines .BYTE 01,4F,50,51,0B7,0B8,27 MS_panic: .BYTE 56,00,00,00 ; fixed lines .BYTE 05 ; Number of Scrolling Lines .BYTE 01,57,58,59,27 MS_intrusion: .BYTE 5A,00,00,00 ; fixed lines .BYTE 05 ; Number of Scrolling Lines .BYTE 01,57,58,59,27 MS_phone: .BYTE 5B,00,00,00 ; fixed lines .BYTE 05 ; Number of Scrolling Lines .BYTE 01,5C,5D,5E,27 MS_3times: .BYTE 60,61,62,1D ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_PWin: PWL1: .BYTE 01 PWL2: .BYTE 01 PWL3: .BYTE 01 PWL4: .BYTE 01 PScnt: .BYTE 01,01 ; Number of Scrolling Lines PSlist: .WORD 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 MS_ZA: .BYTE 0C,01,68,0B ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_ZD: .BYTE 0C,01,69,0B ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_WPW: .BYTE 01,01,70,0B ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_mnw: .BYTE 71,72,73,74 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_mxw: .BYTE 75,76,77,01 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_ctz: ; pick new door controlling zone .BYTE 48,6A,6B,6C ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_cts: ; display new door controlling zone .BYTE 48,01,6B,6D ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_cns: ; display new door connecting .BYTE 48,01,6E,6D ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_cnz: ; pick new door connecting zone .BYTE 48,6A,6E,6C ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_wcz: ; pick new window controlling zone .BYTE 4D,6A,6B,6C ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_wcs: ; pick new window controlling zone .BYTE 4D,01,6B,6D ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_pns: ; show panic mode setting .BYTE 56,6F Pan_show: .byte 01,01 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_ins: ; show intrusion alarm mode setting .BYTE 5A,6F in_show: .byte 01,01 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_ta1: ; adjust system clock .BYTE 7C,79,7A,7B ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_ta2: ; adjust auto arm times .BYTE 7D,79,7A,7B ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_aai: ; show new auto arm interval .BYTE 7E,6F a_aid: .byte 01,01 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_pha: ; .BYTE 7F,82,83,84 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_pme: ; .BYTE 01,87,88,01 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_dic: ; .BYTE 52,54,8E,84 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_diag: ; .BYTE 8F,96,97,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_ddl: ; .BYTE 08,90,91,27 ; fixed lines .BYTE 01 ; Number of Scrolling Lines .BYTE 01 MS_tau: ; .BYTE 92,00,00,00 ; fixed lines .BYTE 0A ; Number of Scrolling Lines .BYTE 01,0C3,0C4,0C5,0C6,0C7,0C8,0C9,0CA,27 MS_tbl: ; .BYTE 94,00,00,00 ; fixed lines .BYTE 0A ; Number of Scrolling Lines .BYTE 01,0CB,0CC,0CD,0CE,0CF,0D0,0D1,0D2,027 MS_sad: .BYTE 0B2,00,00,00 .BYTE 05 .BYTE 01,0B0,0B1,7B,01 MS_smd: .BYTE 0AB,0B4,0B5,0B6 .BYTE 01 .BYTE 01 MS_pad: .BYTE 0AC,01,0B4,0B5 .BYTE 01 .BYTE 01 MS_sss: .BYTE 0BB,0BC,0BD,0BE .BYTE 01,01 MS_sis: .BYTE 0C0,0C1,0C2,01D .BYTE 01,01 ScrnTable: SC_intro= 00 .WORD S_intro ; screen 00 SC_main = 01 ; constant which points to MS_main entry .WORD MS_main ; screen 01 SC_Zarm = 02 .WORD MS_Zarm ; screen 02 SC_Config = 03 .WORD MS_Config SC_ZConfig = 04 .WORD MS_ZConfig SC_smoke = 05 .WORD MS_smoke sc_MISC = 06 .WORD MS_misc sc_Wsec = 07 .WORD MS_Wsec sc_aArm = 08 .WORD MS_Aarm sc_aaInterval = 09 .WORD MS_aaInterval sc_zaccess = 0A .WORD MS_zaccess sc_dsel = 0B .WORD MS_dsel sc_winsel = 0C .WORD MS_winsel sc_dc = 0D .WORD MS_dc sc_wc = 0E .WORD MS_wc sc_access = 0F .WORD MS_access sc_panic = 10 .WORD MS_panic sc_intrusion = 11 .WORD MS_intrusion sc_phone = 12 .WORD MS_phone sc_3times = 13 .WORD MS_3times sc_pwin = 14 .WORD MS_pwin sc_za = 15 .WORD MS_za sc_zd = 16 .WORD MS_zd sc_wpw = 17 .WORD MS_wpw sc_mxw = 18 .WORD MS_mxw sc_mnw = 19 .WORD MS_mnw sc_ctz = 1A .WORD MS_ctz sc_cts = 1B .WORD MS_cts sc_cns = 1C .WORD MS_cns sc_cnz = 1D .WORD MS_cnz sc_wcz = 1E .WORD MS_wcz sc_wcs = 1F .WORD MS_wcs sc_pns = 20 .WORD MS_pns sc_ins = 21 .WORD MS_ins sc_ta1 = 22 .WORD MS_ta1 sc_ta2 = 23 .WORD MS_ta2 sc_aai = 24 .WORD MS_aai sc_pha = 25 .WORD MS_pha sc_pme = 26 .WORD MS_pme sc_dic = 27 .WORD MS_dic sc_diag = 28 .WORD MS_diag sc_ddl = 29 .WORD MS_ddl sc_tau = 2A .WORD MS_tau sc_tbl = 2B .WORD MS_tbl sc_sad = 2C .WORD MS_sad sc_smd = 2D .WORD MS_smd sc_pad = 2E .WORD MS_pad sc_sss = 2F .WORD MS_sss sc_sis = 30 .WORD MS_sis

This is page designed, maintained and
(C)opyright 1999 by Geoff Knagge