Difference between revisions of "Plus 3 Memory Paging Control"

From SpecNext official Wiki
Jump to: navigation, search
m
 
(One intermediate revision by the same user 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
|PortMask=%0001 ---- ---- --0-
 
 
}}
 
}}
 
Bit mapped to control paging options.
 
Bit mapped to control paging options.
Line 14: Line 15:
 
| 7-3 || Unused, use 0 (Printer Port Strobe b4 and Disk motor enable b3 are not implemented in core3.0)
 
| 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.
+
| 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]]).
 
Special mode: High bit of memory configuration number (see [[Memory map]]).

Latest revision as of 11:17, 4 May 2020

Number $1FFD
Decimal 8189
Short desc. Controls ROM paging and special paging options from the +2a/+3.
Bit Mask %0001 ---- ---- --0-
Readable No
Writable Yes
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.