Difference between revisions of "Layer 2 RAM Page Register"

From SpecNext official Wiki
Jump to: navigation, search
m (9 revisions imported)
(core 3.0 changes/refresh)
Line 5: Line 5:
 
|ShortDesc=Sets the [[Memory map|bank]] number where Layer 2 video memory begins.
 
|ShortDesc=Sets the [[Memory map|bank]] number where Layer 2 video memory begins.
 
}}
 
}}
Bits 5-0 store the number of the "SRAM page" (ie, [[Memory map|bank]]) used for the standard Layer 2 screen. The default is 8. Because the layer 2 screen is 48k, it actually occupies 3 banks, and the number set here is the first; so by default, it occupies banks 8-10. Then later NextZXOS does reconfigure both this and shadow bank to 9 (banks 9-11).
+
Bits 6-0 store the number of the "SRAM page" (ie, [[Memory map|bank]]) used for the standard Layer 2 screen. The default is 8. Because the layer 2 screen is 48kiB, it actually occupies 3 banks, and the number set here is the first; so by default, it occupies banks 8-10. Then later NextZXOS does reconfigure both this and shadow bank to 9 (banks 9-11). (bit 7 is reserved, use always 0)
  
 
For shadow bank paging see [[Layer_2]] and {{NextRegNo|$13}}.
 
For shadow bank paging see [[Layer_2]] and {{NextRegNo|$13}}.
  
Note that this register uses the 16kb bank method, so if you set Nextreg $12,$C if you need to read the contents via 8kb banks you would need to multiply x 2 (16k bank $0C is identical to 8k pages $18 and $19).
+
Note that this register uses the 16kiB bank method, so if you set Nextreg $12,$C if you need to read the contents via 8kb banks you would need to multiply x 2 (16k bank $0C is identical to 8k pages $18 and $19).

Revision as of 14:08, 11 November 2019

Number $12
Readable Yes
Writable Yes
Short Description Sets the bank number where Layer 2 video memory begins.

Bits 6-0 store the number of the "SRAM page" (ie, bank) used for the standard Layer 2 screen. The default is 8. Because the layer 2 screen is 48kiB, it actually occupies 3 banks, and the number set here is the first; so by default, it occupies banks 8-10. Then later NextZXOS does reconfigure both this and shadow bank to 9 (banks 9-11). (bit 7 is reserved, use always 0)

For shadow bank paging see Layer_2 and Layer 2 RAM Shadow Page Register ($13).

Note that this register uses the 16kiB bank method, so if you set Nextreg $12,$C if you need to read the contents via 8kb banks you would need to multiply x 2 (16k bank $0C is identical to 8k pages $18 and $19).