Difference between revisions of "Plus 3 Memory Paging Control"

From SpecNext official Wiki
Jump to: navigation, search
m
 
(6 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.
|PortMask=%0001----ccc---0c
 
 
|Readable=No
 
|Readable=No
 
|Writable=Yes
 
|Writable=Yes
Line 12: Line 13:
 
! Bit !! Effect  
 
! Bit !! Effect  
 
|-
 
|-
| 5-7 || Undocumented, may be used for extra bits of slot 4 bank select (see {{PortNo|$7FFD}})
+
| 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 (see [[Memory map]]).
 
Special mode: High bit of memory configuration number (see [[Memory map]]).
Line 28: Line 29:
  
 
Any values written to this port should also be stored in $5B67 if you intend to use any OS routines.
 
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 $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.