Layer 2 Active RAM Bank Register: Difference between revisions
From SpecNext Wiki
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 | 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 | 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 13:08, 11 November 2019
| Number | TBRegisterNumber::$12 |
|---|---|
| Readable | TBRegisterReadable::Yes |
| Writable | TBRegisterWritable::Yes |
| Short Description | [[ShortDesc::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 {{#ask: TBRegisterNumber::$13 }} ($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).