Plus 3 Memory Paging Control: Difference between revisions

From SpecNext Wiki
Jump to: navigation, search
Created page with "{{Port |Number=$1FFD |ShortDesc=Controls ROM paging and special paging options from the +2a/+3. |Readable=No |Writable=Yes |Subsystem=Memory Map }} Bit mapped to control pagin..."
 
Ped7g (talk | contribs)
mNo edit summary
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Port
{{Port
|Number=$1FFD
|Number=$1FFD
|NumberDec=8189
|PortMask=%0001 ---- ---- --0-
|ShortDesc=Controls ROM paging and special paging options from the +2a/+3.
|ShortDesc=Controls ROM paging and special paging options from the +2a/+3.
|Readable=No
|Readable=No
|Writable=Yes
|Writable=Yes
|Subsystem=Memory Map
|Subsystem=Memory map
}}
}}
Bit mapped to control paging options.
Bit mapped to control paging options.
Line 11: Line 13:
! Bit !! Effect  
! Bit !! Effect  
|-
|-
| 5-7 || Undocumented
| 7-3 || Unused, use 0 (Printer Port Strobe b4 and Disk motor enable b3 are not implemented in core3.0)
|-
|-
| 4 || Printer Port Strobe
| 2 || Normal mode: High bit of ROM selection. Together with bit 4 from $7FFD port:
|-
    00 = ROM0 = 128K editor and menu system
| 3 || Disk motor enable
    01 = ROM1 = 128K syntax checker
|-
    10 = ROM2 = +3DOS
| 2 || Normal mode: High bit of ROM selection.
    11 = ROM3 = 48K BASIC


Special mode: High bit of memory configuration number.
Special mode: High bit of memory configuration number (see [[Memory map]]).
|-
|-
| 1 || Special mode: Low bit of memory configuration number.
| 1 || Special mode: Low bit of memory configuration number.
Line 25: Line 27:
| 0 || Paging mode. 0=Normal, 1=Special.
| 0 || Paging mode. 0=Normal, 1=Special.
|}
|}
Any values written to this port should also be stored in $5B67 if you intend to use any OS routines.
'''NEW in core 3.0:'''
When exiting +3 special paging mode, the banks 5 and 2 are mapped back at regular place.

Latest revision as of 11:17, 4 May 2020

Number PortNumber::$1FFD
Decimal NumberDec::8189
Short desc. ShortDesc::Controls ROM paging and special paging options from the +2a/+3.
Bit Mask [[PortMask::%0001 ---- ---- --0-]]
Readable Readable::No
Writable Writable::Yes
Subsystem Subsystem::Memory map

Bit mapped to control paging options.

Bit Effect
7-3 Unused, use 0 (Printer Port Strobe b4 and Disk motor enable b3 are not implemented in core3.0)
2 Normal mode: High bit of ROM selection. Together with bit 4 from $7FFD port:
   00 = ROM0 = 128K editor and menu system
   01 = ROM1 = 128K syntax checker
   10 = ROM2 = +3DOS
   11 = ROM3 = 48K BASIC

Special mode: High bit of memory configuration number (see Memory map).

1 Special mode: Low bit of memory configuration number.
0 Paging mode. 0=Normal, 1=Special.

Any values written to this port should also be stored in $5B67 if you intend to use any OS routines.

NEW in core 3.0:

When exiting +3 special paging mode, the banks 5 and 2 are mapped back at regular place.