Return to previous page | Return to menu | Next page


2. WORK RAM-H memory map

Figure 2-1 Memory map of WORK RAM-H

System variable list

The system variables shown below are saved in the System Work area (060FFC00 and later) and can be read from the C program with the same name.

Note) “Offset” indicates the offset value from the start address (060FFC00) of the System Work area.
TR> TR> TR> TR> TD>
Offset Name Type Content
000 (EventTop) (EVENT *) First registered event
004 (EventLast) (EVENT *) Event registered at the end
008 (EventNow) (EVENT *) Current event
00C (EventCount) (Uint16) Remaining number of events
00E (WorkCount) (Uint16) Number of remaining work
010 (MainMode) (Uint8) Main sequence mode
011 (SubMode) (Uint8) Subsequence mode
012 (SynchConst) (Sint8) Video Sync Count
013 (SynchCount) (Sint8) Video Sync Count
014 (UserFunction) (void (*) ()) User function to execute during blanking
018 (TransCount) (Uint16) Number of entries transferred during blanking
01A (TransRequest) (Uint8) Transfer request during blanking
01C (mtptr) (MATRIX *) Current matrix pointer
020 (MatrixCount) (Uint16) Nested count of matrix
022 (IntCount) (Uint16) Interrupt count
024 (MsPbufPtr) (Uint32 *) Vertex coordinate operation buffer pointer (Master)
028 (SlPbufPtr) (Uint32 *) Vertex coordinate operation buffer pointer (Slave)
02C (SpritePtr) (Uint16 *) Sprite data transfer pointer
030 (MsSdataPtr) (Uint16 *) Sprite Data Set Pointer (Master)
034 (SlSdataPtr) (Uint16 *) Sprite Data Set Pointer (Master)
038 (ZbufPtr) (void **) Z buffer pointer
03C (FormTbl) (TEXTURE *) Texture Data Table
040 (SprbufBias) (Uint32) Sprite data buffer switching
044 (ComRdPtr) (Uint32 *) Command read pointer
048 (ComWrPtr) (Uint32 *) Command Set Pointer
04C (MsLight) (VECTOR) Light Source Vector (Master)
058 (SlLight) (VECTOR) Light Source Vector (Master)
064 (ColorOffset) (Uint8 *) Color offset table pointer
068 (MsScreenDist) (FIXED) Screen position (Master)
06C (SlScreenDist) (FIXED) Screen Position (Slave)
070 (MsZlimit) (Sint16) Display limit Z position (Master)
072 (WindowNumber) (Uint8) Number of windows used
073 (WinUseFlag) (Uint8) Window usage flag
074 (TotalPolygons) (Uint16) Number of computed polygons
076 (TotalVertices) (Uint16) Number of vertices
078 (MsScreenLeft) (Sint16) Left screen position (Master)
07A (MsScreenTop) (Sint16) Position on screen (Master)
07C (MsScreenRight) (Sint16) Screen right position (Master)
07E (MsScreenBottom) (Sint16) Bottom screen position (Master)
080 (MsScreenSizeX) (Uint16) Horizontal screen size (Master)
082 (MsScreenSizeY) (Uint16) Vertical screen size (Master)
084 (MsScreenHalfX) (Uint16) Horizontal screen size / 2 (Master)
086 (MsScreenHalfY) (Uint16) Vertical screen size / 2 (Master)
088 (SlScreenLeft) (Sint16) Left screen position (Slave)
08A (SlScreenTop) (Sint16) Slave Top
08C (SlScreenRight) (Sint16) Screen right position (Slave)
08E (SlScreenBottom) (Sint16) Screen Bottom (Slave)
090 (SlScreenSizeX) (Uint16) Screen horizontal size (Slave)
092 (SlScreenSizeY) (Uint16) Vertical screen size (Slave)
094 (SlScreenHalfX) (Uint16) Screen width / 2 (Slave)
096 (SlScreenHalfY) (Uint16) Vertical screen size / 2 (Slave)
098 (MsClipXAdder) (Sint16) Additional data for clipping (horizontal) (Master)
09A (MsClipYAdder) (Sint16) Additional data for clipping (vertical) (Master)
09C (SlClipXAdder) (Sint16) Additional data for clipping (Slave)
09E (SlClipYadder) (Sint16) Additional data for clipping (vertical) (Slave)
0A0 (SlZlimit) (Sint16) Display limit Z position (Slave)
0A2 (WinPtr) (Uint16) Window Dataset Offset
0A4 (DispPolygons) (Uint16) Number of display polygons
0A6 (DMAEndFlag) (Uint8) DMA transfer end flag (unused)
0A8 (DMASetFlag) (Uint8) DMA table set flag
0AA (PutCount) (Uint16) slPutPolygon (), sl ... Sprite () calls count
0AC (MsZdpsftcnt) (Uint8) Screen display limit shift count (Master)
0AD (SlZdpsftcnt) (Uint8) Screen display limit shift count (Slave)
0B0 (Randwork) (Uint32) Random number generation work
0C0 (VDP2_TVMD) (Uint16) TV screen mode
0C2 (VDP2_EXTEN) (Uint16) External signal enable
0C4 (VDP2_TVSTAT) (Uint16) Screen status
0C6 (VDP2_VRSIZE) (Uint16) VRAM size
0C8 (VDP2_HCNT) (Uint16) H Counter
0CA (VDP2_VCNT) (Uint16) V Counter
0CE (VDP2_RAMCTL) (Uint16) RAM control
0D0 (VDP2_CYCA0L) (Uint16) VRAM cycle pattern (Bank A0, T0-3)
0D2 (VDP2_CYCA0U) (Uint16) VRAM cycle pattern (Bank A0, T4-7)
0D4 (VDP2_CYCA1L) (Uint16) VRAM cycle pattern (Bank A1, T0-3)
0D6 (VDP2_CYCA1U) (Uint16) VRAM cycle pattern (Bank A1, T4 ~ 7)
0D8 (VDP2_CYCB0L) (Uint16) VRAM cycle pattern (bank B0, T0-3)
0DA (VDP2_CYCB0U) (Uint16) VRAM cycle pattern (Bank B0, T4-7)
0DC (VDP2_CYCB1L) (Uint16) VRAM cycle pattern (Bank B1, T0-3)
0DE (VDP2_CYCB1U) (Uint16) VRAM cycle pattern (Bank B1, T4 ~ 7)
0E0 (VDP2_BGON) (Uint16) Screen display enable
0E2 (VDP2_MZCTL) (Uint16) Mosaic Control
0E4 (VDP2_SFSEL) (Uint16) Special Function Code Select
0E6 (VDP2_SFCODE) (Uint16) Special function code
0E8 (VDP2_CHCTLA) (Uint16) Character control (NBG0, NBG1)
0EA (VDP2_CHCTLB) (Uint16) Character control (NBG2, NBG3, RBG0)
0EC (VDP2_BMPNA) (Uint16) Bitmap palette number (NBG0, 1)
0EE (VDP2_BMPNB) (Uint16) Bitmap palette number (RBG0)
0F0 (VDP2_PNCN0) (Uint16) Pattern name control (NBG0)
0F2 (VDP2_PNCN1) (Uint16) Pattern name control (NBG1)
0F4 (VDP2_PNCN2) (Uint16) Pattern name control (NBG2)
0F6 (VDP2_PNCN3) (Uint16) Pattern name control (NBG3)
0F8 (VDP2_PNCR) (Uint16) Pattern name control (RBG0)
0FA (VDP2_PLSZ) (Uint16) Plane size
0FC (VDP2_MPOFN) (Uint16) Map offset (NBG0-3)
0FE (VDP2_MPOFR) (Uint16) Map offset (rotation parameters A, B)
100 (VDP2_MPABN0) (Uint16) Map (NBG0 plane A, B)
102 (VDP2_MPCDN0) (Uint16) Map (NBG0 plane C, D)
104 (VDP2_MPABN1) (Uint16) Map (NBG1 plane A, B)
106 (VDP2_MPCDN1) (Uint16) Map (NBG1 plane C, D)
108 (VDP2_MPABN2) (Uint16) Map (NBG2 plane A, B)
10A (VDP2_MPCDN2) (Uint16) Map (NBG2 plane C, D)
10C (VDP2_MPABN3) (Uint16) Map (NBG3 plane A, B)
10E (VDP2_MPCDN3) (Uint16) Map (NBG3 plane C, D)
110 (VDP2_MPABRA) (Uint16) Map (Rotation parameter A plane A, B)
112 (VDP2_MPCDRA) (Uint16) Map (Rotation parameter A plane C, D)
114 (VDP2_MPEFRA) (Uint16) Map (Rotation parameter A plane E, F)
116 (VDP2_MPGHRA) (Uint16) Map (Rotation parameter A plane G, H)
118 (VDP2_MPIJRA) (Uint16) Map (Rotation parameter A plane I, J)
11A (VDP2_MPKLRA) (Uint16) Map (Rotation parameter A plane K, L)
11C (VDP2_MPMNRA) (Uint16) Map (Rotation parameter A plane M, N)
11E (VDP2_MPOPRA) (Uint16) Map (Rotation parameter A plane O, P)
120 (VDP2_MPABRB) (Uint16) Map (Rotation parameter B plane A, B)
122 (VDP2_MPCDRB) (Uint16) Map (Rotation parameter B plane C, D)
124 (VDP2_MPEFRB) (Uint16) Map (rotation parameter B plane E, F)
126 (VDP2_MPGHRB) (Uint16) Map (Rotation parameter B plane G, H)
128 (VDP2_MPIJRB) (Uint16) Map (Rotation parameter B plane I, J)
12A (VDP2_MPKLRB) (Uint16) Map (Rotation parameter B plane K, L)
12C (VDP2_MPMNRB) (Uint16) Map (Rotation parameter B plane M, N)
12E (VDP2_MPOPRB) (Uint16) Map (Rotation parameter B plane O, P)
130 (VDP2_SCXN0) (FIXED) Screen scroll value (NBG0, horizontal fixed decimal)
130 (VDP2_SCXIN0) (Sint16) Screen scroll value (NBG0, horizontal integer part)
132 (VDP2_SCXDN0) (Uint16) Screen scroll value (NBG0, horizontal fractional part)
134 (VDP2_SCYN0) (FIXED) Screen scroll value (NBG0, vertical fixed decimal)
134 (VDP2_SCYIN0) (Uint16) Screen scroll value (NBG0, vertical integer part)
136 (VDP2_SCYDN0) (Uint16) Screen scroll value (NBG0, vertical fraction)
138 (VDP2_ZMXN0) (FIXED) Coordinate increment (NBG0, horizontal fixed decimal)
138 (VDP2_ZMXIN0) (Uint16) Coordinate increment (NBG0, horizontal integer part)
13A (VDP2_ZMXDN0) (Uint16) Coordinate increment (NBG0, horizontal fractional part)
13C (VDP2_ZMYN0) (FIXED) Coordinate increment (NBG0, vertical fixed decimal)
13C (VDP2_ZMYIN0) (Uint16) Coordinate increment (NBG0, vertical integer part)
13E (VDP2_ZMYDN0) (Uint16) Coordinate increment (NBG0, vertical fraction)
140 (VDP2_SCXN1) (FIXED) Screen scroll value (NBG1, horizontal fixed decimal)
140 (VDP2_SCXIN1) (Uint16) Screen scroll value (NBG1, horizontal integer part)
142 (VDP2_SCXDN1) (Uint16) Screen scroll value (NBG1, horizontal fractional part)
144 (VDP2_SCYN1) (FIXED) Screen scroll value (NBG1, vertical fixed decimal)
144 (VDP2_SCYIN1) (Uint16) Screen scroll value (NBG1, vertical integer part)
146 (VDP2_SCYDN1) (Uint16) Screen scroll value (NBG1, vertical fraction)
148 (VDP2_ZMXN1) (FIXED) Coordinate increment (NBG1, horizontal fixed decimal)
148 (VDP2_ZMXIN1) (Uint16) Coordinate increment (NBG1, horizontal integer part)
14A (VDP2_ZMXDN1) (Uint16) Coordinate increment (NBG1, horizontal fractional part)
14C (VDP2_ZMYN1) (FIXED) Coordinate increment (NBG1, vertical fixed decimal)
14C (VDP2_ZMYIN1) (Uint16) Coordinate increment (NBG1, vertical integer part)
14E (VDP2_ZMYDN1) (Uint16) Coordinate increment (NBG1, vertical fraction)
150 (VDP2_SCXN2) (Uint16) Screen scroll value (NBG2, horizontal)
152 (VDP2_SCYN2) (Uint16) Screen scroll value (NBG2, vertical)
154 (VDP2_SCXN3) (Uint16) Screen scroll value (NBG3, horizontal direction)
156 (VDP2_SCYN3) (Uint16) Screen scroll value (NBG3, vertical direction)
158 (VDP2_ZMCTL) (Uint16) Reduce Enable
15A (VDP2_SCRCTL) (Uint16) Line & Vertical Cell Scroll Control
15C (VDP2_VCSTA) (Uint16 *) Vertical cell scroll table address
160 (VDP2_LSTA0) (Sint16 *) Line scroll table address for NBG0
164 (VDP2_LSTA1) (Sint16 *) Line scroll table address for NBG1
168 (VDP2_LCTA) (Uint16 *) Line color screen table address
16C (VDP2_BKTA) (Uint16 *) Back screen table address
170 (VDP2_RPMD) (Uint16) Rotation parameter mode
172 (VDP2_RPRCTL) (Uint16) Rotation parameter read control
174 (VDP2_KTCTL) (Uint16) Coefficient Table Control
176 (VDP2_KTAOF) (Uint16) Coefficient table address offset
178 (VDP2_OVPNRA) (Uint16) Screen Over Pattern Name A
17A (VDP2_OVPNRB) (Uint16) Screen Over Pattern Name B
17C (VDP2_RPTA) (Sint32 *) Rotation parameter table address
180 (VDP2_WPSX0) (Uint16) Window position 0 (Hstart)
182 (VDP2_WPSY0) (Uint16) Window position 0 (Vstart)
184 (VDP2_WPEX0) (Uint16) Window position 0 (Hstop)
186 (VDP2_WPEY0) (Uint16) Window position 0 (Vstop)
188 (VDP2_WPSX1) (Uint16) Window position 1 (Hstart)
18A (VDP2_WPSY1) (Uint16) Window position 1 (Vstart)
18C (VDP2_WPEX1) (Uint16) Window position 1 (Hstop)
18E (VDP2_WPEY1) (Uint16) Window position 1 (Vstop)
190 (VDP2_WCTLA) (Uint16) Window control A
192 (VDP2_WCTLB) (Uint16) Window control B
194 (VDP2_WCTLC) (Uint16) Window control C
196 (VDP2_WCTLD) (Uint16) Window control D
198 (VDP2_LWTA0) (Uint16 *) Line window table address 0
19C (VDP2_LWTA1) (Uint16 *) Line window table address 1
1A0 (VDP2_SPCTL) (Uint16) Sprite control
1A2 (VDPS_SDCTL) (Uint16) Shadow Control
1A4 (VDP2_CRAOFA) (Uint16) Color RAM address offset (NBG0-3)
1A6 (VDP2_CRAOFB) (Uint16) Color RAM address offset (RBG0, sprite)
1A8 (VDP2_LNCLEN) (Uint16) Line color screen enable
1AA (VDP2_SFPRMD) (Uint16) Special priority mode
1AC (VDP2_CCCTL) (Uint16) Color arithmetic control
1AE (VDP2_SFCCMD) (Uint16) Special color operation mode
1B0 (VDP2_PRISA) (Uint16) Priority number (sprite 0, 1)
1B2 (VDP2_PRISB) (Uint16) Priority number (sprite 2, 3)
1B4 (VDP2_PRISC) (Uint16) Priority number (Sprite 4, 5)
1B6 (VDP2_PRISD) (Uint16) Priority number (Sprite 6, 7)
1B8 (VDP2_PRINA) (Uint16) Priority number (NBG0, 1)
1BA (VDP2_PRINB) (Uint16) Priority number (NBG2, 3)
1BC (VDP2_PRIR) (Uint16) Priority number (RBG0)
1C0 (VDP2_CCRSA) (Uint16) Color calculation ratio (Sprite 0, 1)
1C2 (VDP2_CCRSB) (Uint16) Color calculation ratio (Sprite 2, 3)
1C4 (VDP2_CCRSC) (Uint16) Color calculation ratio (Sprite 4, 5)
1C6 (VDP2_CCRSD) (Uint16) Color calculation ratio (Sprite 6, 7)
1C8 (VDP2_CCRNA) (Uint16) Color calculation ratio (NBG0, 1)
1CA (VDP2_CCRNB) (Uint16) Color calculation ratio (NBG2, 3)
1CC (VDP2_CCRR) (Uint16) Color calculation ratio (RBG0)
1CE (VDP2_CCRLB) (Uint16) Color calculation ratio (line color screen, back screen)
1D0 (VDP2_CLOFEN) (Uint16) Color offset enable
1D2 (VDP2_CLOFSL) (Uint16) Color offset select
1D4 (VDP2_COAR) (Uint16) Color offset A (Red)
1D6 (VDP2_COAG) (Uint16) Color Offset A (Green)
1D8 (VDP2_COAB) (Uint16) Color offset A (Blue)
1DA (VDP2_COBR) (Uint16) Color Offset B (Red)
1DC (VDP2_COBG) (Uint16) Color Offset B (Green)
1DE (VDP2_COBB) (Uint16) Color Offset B (Blue)
1E0 (ScrRotPtr) (ROTSCROLL *) Address of rotation parameter to be operated
1E4 (nbg0_char_adr) (void *) CG address for NBG0
1E8 (nbg1_char_adr) (void *) CG address for NBG1
1EC (nbg2_char_adr) (void *) CG address for NBG2
1F0 (nbg3_char_adr) (void *) CG address for NBG3
1F4 (ra_char adr) (void *) CG address for rotating scroll (parameter A)
1F8 (rb_char_adr) (void *) CG address for rotating scroll (parameter B)
1FC (nbg0_page_adr) (void *) NBG0 pattern name address
200 (nbg1_page_adr) (void *) NBG1 pattern name address
204 (nbg2_page_adr) (void *) NBG2 pattern name address
208 (nbg3_page_adr) (void *) NBG3 pattern name address
20C (ra_page_adr) (void *) Pattern name address for rotating scroll (parameter A)
210 (rb_page_adr) (void *) Pattern name address for rotating scroll (parameter B)
214 (rpara_vram_adr) (void *) Rotation parameter set address
218 (k_table_adr) (FIXED *) Coefficient table set address
21C (scr_work) (Uint8 [60]) work for slAutoDisp
278 (RotScrParA) (ROTSCROLL) Rotation parameter A
2E0 (RotScrParB) (ROTSCROLL) Rotation parameter B
348 (Window_data) (Uint16 [18])) Window control data buffer (for two)
36C (Center_data) (Uint16 [10])) Window center control data buffer (for two)

Return to previous page | Return to menu | Next page