# file opened: sj_sysvars.asm
 1    0000                  INCLUDE "sj_sysvars.i.asm"
# file opened: sj_sysvars.i.asm
 1+   0000              ; zx48 system variables
 2+   0000                  STRUCT ZX48_VARS
 3+   0000 ~            KSTATE      BLOCK   8
 4+   0000 ~            LAST_K      BYTE
 5+   0000 ~            REPDEL      BYTE
 6+   0000 ~            REPPER      BYTE
 7+   0000 ~            DEFADD      WORD
 8+   0000 ~            K_DATA      BYTE
 9+   0000 ~            TVDATA      WORD
10+   0000 ~            STRMS       BLOCK   38
11+   0000 ~            CHARS       WORD
12+   0000 ~            RASP        BYTE
13+   0000 ~            PIP         BYTE
14+   0000 ~            ERRNR       BYTE
15+   0000 ~            FLAGS       BYTE
16+   0000 ~            TVFLAG      BYTE
17+   0000 ~            ERR_SP      WORD
18+   0000 ~            LIST_SP     WORD
19+   0000 ~            MODE        BYTE
20+   0000 ~            NEWPPC      WORD
21+   0000 ~            NSPPC       BYTE
22+   0000 ~            PPC         WORD
23+   0000 ~            SUBPPC      BYTE
24+   0000 ~            BORDCR      BYTE
25+   0000 ~            E_PPC       WORD
26+   0000 ~            VARS        WORD
27+   0000 ~            DEST        WORD
28+   0000 ~            CHANS       WORD
29+   0000 ~            CURCHL      WORD
30+   0000 ~            PROG        WORD
31+   0000 ~            NXTLIN      WORD
32+   0000 ~            DATADD      WORD
33+   0000 ~            E_LINE      WORD
34+   0000 ~            K_CUR       WORD
35+   0000 ~            CH_ADD      WORD
36+   0000 ~            X_PTR       WORD
37+   0000 ~            WORKSP      WORD
38+   0000 ~            STKBOT      WORD
39+   0000 ~            STKEND      WORD
40+   0000 ~            BREG        BYTE
41+   0000 ~            MEM         WORD
42+   0000 ~            FLAGS2      BYTE
43+   0000 ~            DF_SZ       BYTE
44+   0000 ~            S_TOP       WORD
45+   0000 ~            OLDPPC      WORD
46+   0000 ~            OSPPC       BYTE
47+   0000 ~            FLAGX       BYTE
48+   0000 ~            STRLEN      WORD
49+   0000 ~            T_ADDR      WORD
50+   0000 ~            SEED        WORD
51+   0000 ~            FRAMES      BLOCK   3
52+   0000 ~            UDG         WORD
53+   0000 ~            COORDS      BLOCK   2
54+   0000 ~            P_POSN      BYTE
55+   0000 ~            PRCC        WORD
56+   0000 ~            ECHO_E      WORD
57+   0000 ~            DF_CC       WORD
58+   0000 ~            DF_CCL      WORD
59+   0000 ~            S_POSN      BLOCK   2
60+   0000 ~            SPOSNL      BLOCK   2
61+   0000 ~            SCR_CT      BYTE
62+   0000 ~            ATTR_P      BYTE
63+   0000 ~            MASK_P      BYTE
64+   0000 ~            ATTR_T      BYTE
65+   0000 ~            MASK_T      BYTE
66+   0000 ~            P_FLAG      BYTE
67+   0000 ~            MEMBOT      BLOCK   30
68+   0000 ~            NMIADD      WORD
69+   0000 ~            RAMTOP      WORD
70+   0000 ~            P_RAMT      WORD
71+   0000 ~            CHANNEL_INF BLOCK   21
72+   0000                  ENDS
73+   0000
74+   0000              SYSVARS     ZX48_VARS = $5C00
75+   0000              IY_VARS     ZX48_VARS = SYSVARS - SYSVARS.ERRNR
76+   0000
# file closed: sj_sysvars.i.asm
 2    0000
 3    0000                  ORG     $8000
 4    8000                  ; direct access to sysvar
 5    8000 3A 08 5C         ld      a,(SYSVARS.LAST_K)
 6    8003 2A 4D 5C         ld      hl,(SYSVARS.DEST)
 7    8006                  ; IY access to sysvar
 8    8006 FD 7E CE         ld      a,(iy+IY_VARS.LAST_K)
 9    8009 FD 6E 13 FD      ld      hl,(iy+IY_VARS.DEST)    ; fake instruction
 9    800D 66 14
10    800F
# file closed: sj_sysvars.asm

Value    Label
------ - -----------------------------------------------------------
0xFFFFFFC6 X IY_VARS
0x0053 X IY_VARS.ATTR_P
0x0055 X IY_VARS.ATTR_T
0x000E X IY_VARS.BORDCR
0x002D X IY_VARS.BREG
0x0023 X IY_VARS.CH_ADD
0x007C X IY_VARS.CHANNEL_INF
0x0015 X IY_VARS.CHANS
0xFFFFFFFC X IY_VARS.CHARS
0x0043 X IY_VARS.COORDS
0x0017 X IY_VARS.CURCHL
0x001D X IY_VARS.DATADD
0xFFFFFFD1 X IY_VARS.DEFADD
0x0013   IY_VARS.DEST
0x004A X IY_VARS.DF_CC
0x004C X IY_VARS.DF_CCL
0x0031 X IY_VARS.DF_SZ
0x001F X IY_VARS.E_LINE
0x000F X IY_VARS.E_PPC
0x0048 X IY_VARS.ECHO_E
0x0003 X IY_VARS.ERR_SP
0x0000 X IY_VARS.ERRNR
0x0001 X IY_VARS.FLAGS
0x0030 X IY_VARS.FLAGS2
0x0037 X IY_VARS.FLAGX
0x003E X IY_VARS.FRAMES
0x0021 X IY_VARS.K_CUR
0xFFFFFFD3 X IY_VARS.K_DATA
0xFFFFFFC6 X IY_VARS.KSTATE
0xFFFFFFCE   IY_VARS.LAST_K
0x0005 X IY_VARS.LIST_SP
0x0054 X IY_VARS.MASK_P
0x0056 X IY_VARS.MASK_T
0x002E X IY_VARS.MEM
0x0058 X IY_VARS.MEMBOT
0x0007 X IY_VARS.MODE
0x0008 X IY_VARS.NEWPPC
0x0076 X IY_VARS.NMIADD
0x000A X IY_VARS.NSPPC
0x001B X IY_VARS.NXTLIN
0x0034 X IY_VARS.OLDPPC
0x0036 X IY_VARS.OSPPC
0x0057 X IY_VARS.P_FLAG
0x0045 X IY_VARS.P_POSN
0x007A X IY_VARS.P_RAMT
0xFFFFFFFF X IY_VARS.PIP
0x000B X IY_VARS.PPC
0x0046 X IY_VARS.PRCC
0x0019 X IY_VARS.PROG
0x0078 X IY_VARS.RAMTOP
0xFFFFFFFE X IY_VARS.RASP
0xFFFFFFCF X IY_VARS.REPDEL
0xFFFFFFD0 X IY_VARS.REPPER
0x004E X IY_VARS.S_POSN
0x0032 X IY_VARS.S_TOP
0x0052 X IY_VARS.SCR_CT
0x003C X IY_VARS.SEED
0x0050 X IY_VARS.SPOSNL
0x0029 X IY_VARS.STKBOT
0x002B X IY_VARS.STKEND
0x0038 X IY_VARS.STRLEN
0xFFFFFFD6 X IY_VARS.STRMS
0x000D X IY_VARS.SUBPPC
0x003A X IY_VARS.T_ADDR
0xFFFFFFD4 X IY_VARS.TVDATA
0x0002 X IY_VARS.TVFLAG
0x0041 X IY_VARS.UDG
0x0011 X IY_VARS.VARS
0x0027 X IY_VARS.WORKSP
0x0025 X IY_VARS.X_PTR
0x5C00   SYSVARS
0x5C8D X SYSVARS.ATTR_P
0x5C8F X SYSVARS.ATTR_T
0x5C48 X SYSVARS.BORDCR
0x5C67 X SYSVARS.BREG
0x5C5D X SYSVARS.CH_ADD
0x5CB6 X SYSVARS.CHANNEL_INF
0x5C4F X SYSVARS.CHANS
0x5C36 X SYSVARS.CHARS
0x5C7D X SYSVARS.COORDS
0x5C51 X SYSVARS.CURCHL
0x5C57 X SYSVARS.DATADD
0x5C0B X SYSVARS.DEFADD
0x5C4D   SYSVARS.DEST
0x5C84 X SYSVARS.DF_CC
0x5C86 X SYSVARS.DF_CCL
0x5C6B X SYSVARS.DF_SZ
0x5C59 X SYSVARS.E_LINE
0x5C49 X SYSVARS.E_PPC
0x5C82 X SYSVARS.ECHO_E
0x5C3D X SYSVARS.ERR_SP
0x5C3A   SYSVARS.ERRNR
0x5C3B X SYSVARS.FLAGS
0x5C6A X SYSVARS.FLAGS2
0x5C71 X SYSVARS.FLAGX
0x5C78 X SYSVARS.FRAMES
0x5C5B X SYSVARS.K_CUR
0x5C0D X SYSVARS.K_DATA
0x5C00 X SYSVARS.KSTATE
0x5C08   SYSVARS.LAST_K
0x5C3F X SYSVARS.LIST_SP
0x5C8E X SYSVARS.MASK_P
0x5C90 X SYSVARS.MASK_T
0x5C68 X SYSVARS.MEM
0x5C92 X SYSVARS.MEMBOT
0x5C41 X SYSVARS.MODE
0x5C42 X SYSVARS.NEWPPC
0x5CB0 X SYSVARS.NMIADD
0x5C44 X SYSVARS.NSPPC
0x5C55 X SYSVARS.NXTLIN
0x5C6E X SYSVARS.OLDPPC
0x5C70 X SYSVARS.OSPPC
0x5C91 X SYSVARS.P_FLAG
0x5C7F X SYSVARS.P_POSN
0x5CB4 X SYSVARS.P_RAMT
0x5C39 X SYSVARS.PIP
0x5C45 X SYSVARS.PPC
0x5C80 X SYSVARS.PRCC
0x5C53 X SYSVARS.PROG
0x5CB2 X SYSVARS.RAMTOP
0x5C38 X SYSVARS.RASP
0x5C09 X SYSVARS.REPDEL
0x5C0A X SYSVARS.REPPER
0x5C88 X SYSVARS.S_POSN
0x5C6C X SYSVARS.S_TOP
0x5C8C X SYSVARS.SCR_CT
0x5C76 X SYSVARS.SEED
0x5C8A X SYSVARS.SPOSNL
0x5C63 X SYSVARS.STKBOT
0x5C65 X SYSVARS.STKEND
0x5C72 X SYSVARS.STRLEN
0x5C10 X SYSVARS.STRMS
0x5C47 X SYSVARS.SUBPPC
0x5C74 X SYSVARS.T_ADDR
0x5C0E X SYSVARS.TVDATA
0x5C3C X SYSVARS.TVFLAG
0x5C7B X SYSVARS.UDG
0x5C4B X SYSVARS.VARS
0x5C61 X SYSVARS.WORKSP
0x5C5F X SYSVARS.X_PTR
0x00CB X ZX48_VARS
0x008D X ZX48_VARS.ATTR_P
0x008F X ZX48_VARS.ATTR_T
0x0048 X ZX48_VARS.BORDCR
0x0067 X ZX48_VARS.BREG
0x005D X ZX48_VARS.CH_ADD
0x00B6 X ZX48_VARS.CHANNEL_INF
0x004F X ZX48_VARS.CHANS
0x0036 X ZX48_VARS.CHARS
0x007D X ZX48_VARS.COORDS
0x0051 X ZX48_VARS.CURCHL
0x0057 X ZX48_VARS.DATADD
0x000B X ZX48_VARS.DEFADD
0x004D X ZX48_VARS.DEST
0x0084 X ZX48_VARS.DF_CC
0x0086 X ZX48_VARS.DF_CCL
0x006B X ZX48_VARS.DF_SZ
0x0059 X ZX48_VARS.E_LINE
0x0049 X ZX48_VARS.E_PPC
0x0082 X ZX48_VARS.ECHO_E
0x003D X ZX48_VARS.ERR_SP
0x003A X ZX48_VARS.ERRNR
0x003B X ZX48_VARS.FLAGS
0x006A X ZX48_VARS.FLAGS2
0x0071 X ZX48_VARS.FLAGX
0x0078 X ZX48_VARS.FRAMES
0x005B X ZX48_VARS.K_CUR
0x000D X ZX48_VARS.K_DATA
0x0000 X ZX48_VARS.KSTATE
0x0008 X ZX48_VARS.LAST_K
0x003F X ZX48_VARS.LIST_SP
0x008E X ZX48_VARS.MASK_P
0x0090 X ZX48_VARS.MASK_T
0x0068 X ZX48_VARS.MEM
0x0092 X ZX48_VARS.MEMBOT
0x0041 X ZX48_VARS.MODE
0x0042 X ZX48_VARS.NEWPPC
0x00B0 X ZX48_VARS.NMIADD
0x0044 X ZX48_VARS.NSPPC
0x0055 X ZX48_VARS.NXTLIN
0x006E X ZX48_VARS.OLDPPC
0x0070 X ZX48_VARS.OSPPC
0x0091 X ZX48_VARS.P_FLAG
0x007F X ZX48_VARS.P_POSN
0x00B4 X ZX48_VARS.P_RAMT
0x0039 X ZX48_VARS.PIP
0x0045 X ZX48_VARS.PPC
0x0080 X ZX48_VARS.PRCC
0x0053 X ZX48_VARS.PROG
0x00B2 X ZX48_VARS.RAMTOP
0x0038 X ZX48_VARS.RASP
0x0009 X ZX48_VARS.REPDEL
0x000A X ZX48_VARS.REPPER
0x0088 X ZX48_VARS.S_POSN
0x006C X ZX48_VARS.S_TOP
0x008C X ZX48_VARS.SCR_CT
0x0076 X ZX48_VARS.SEED
0x008A X ZX48_VARS.SPOSNL
0x0063 X ZX48_VARS.STKBOT
0x0065 X ZX48_VARS.STKEND
0x0072 X ZX48_VARS.STRLEN
0x0010 X ZX48_VARS.STRMS
0x0047 X ZX48_VARS.SUBPPC
0x0074 X ZX48_VARS.T_ADDR
0x000E X ZX48_VARS.TVDATA
0x003C X ZX48_VARS.TVFLAG
0x007B X ZX48_VARS.UDG
0x004B X ZX48_VARS.VARS
0x0061 X ZX48_VARS.WORKSP
0x005F X ZX48_VARS.X_PTR
