Difference between revisions of "Peripheral 3 Register"

From SpecNext official Wiki
Jump to: navigation, search
(added bit information from specnext site.)
m
 
(12 intermediate revisions by 4 users not shown)
Line 3: Line 3:
 
|Readable=Yes
 
|Readable=Yes
 
|Writable=Yes
 
|Writable=Yes
|ShortDesc=Enables [[Stereo]], Internal Speaker, [[SpecDrum]], [[Enhanced ULA|Timex Video Modes]], [[Turbo Sound Next]] and NTSC/PAL selection.
+
|ShortDesc=ABC/ACB [[Stereo]], Internal Speaker, [[SpecDrum]], [[Enhanced ULA|Timex Video Modes]], [[Turbo Sound Next]], RAM contention and [un]lock 128k paging.
 
}}
 
}}
 +
(R/W) 0x08 (08) => Peripheral 3 setting:
 +
  bit 7 = Unlock(1)/lock(0) port $7FFD paging (read 1 indicates port $7FFD is not locked)
 +
  bit 6 = 1 to disable RAM and I/O port contention (soft reset = 0)
 +
  bit 5 = AY stereo mode (0 = ABC, 1 = ACB) (hard reset = 0)
 +
  bit 4 = Enable internal speaker (hard reset = 1)
 +
  bit 3 = Enable 8-bit DACs (A,B,C,D) (hard reset = 0)
 +
  bit 2 = Enable port $FF Timex video mode *read* (hides floating bus on 0xff) (hard reset = 0)
 +
  bit 1 = Enable Turbosound (currently selected AY is frozen when disabled) (hard reset = 0)
 +
  bit 0 = Implement Issue 2 keyboard (port $FE reads as early ZX boards) (hard reset = 0)
  
  (R/W) 0x08 (08) => Peripheral 3 setting:
+
The Timex modes are operational even when bit 2 is set to zero, you can still write to port $FF with desired mode changes. Bit 2 does only enable readability of port $FF.
  bit 7 = 128K paging enable (inverse of port 0x7ffd, bit 5)
 
          Unlike the paging lock in port 0x7ffd,
 
          this may be enabled or disabled at any time.
 
          Use "1" to disable the locked paging.
 
  bit 6 = "1" to disable RAM contention. (0 after a reset)
 
  bit 5 = Stereo mode (0 = ABC, 1 = ACB)(0 after a PoR or Hard-reset)
 
  bit 4 = Enable internal speaker (1 = enabled)(1 after a PoR or Hard-reset)
 
  bit 3 = Enable Specdrum/Covox (1 = enabled)(0 after a PoR or Hard-reset)
 
  bit 2 = Enable Timex modes (1 = enabled)(0 after a PoR or Hard-reset)
 
  bit 1 = Enable TurboSound (1 = enabled)(0 after a PoR or Hard-reset)
 
  bit 0 = Reserved, must be 0
 
  
https://www.specnext.com/tbblue-io-port-system/
+
When loading 48k SNA files through NextZXOS, be aware it does lock down many features of Next to better simulate ZX48 machine, including lock of {{PortNo|$7FFD}} paging feature. If you are using 48k SNA file for convenience, but you are actually using full ZX Next features, make sure you enable/unlock all relevant bits, before using the particular feature.

Latest revision as of 01:05, 16 April 2020

Number $08
Readable Yes
Writable Yes
Short Description ABC/ACB Stereo, Internal Speaker, SpecDrum, Timex Video Modes, Turbo Sound Next, RAM contention and [un]lock 128k paging.

(R/W) 0x08 (08) => Peripheral 3 setting:

 bit 7 = Unlock(1)/lock(0) port $7FFD paging (read 1 indicates port $7FFD is not locked)
 bit 6 = 1 to disable RAM and I/O port contention (soft reset = 0)
 bit 5 = AY stereo mode (0 = ABC, 1 = ACB) (hard reset = 0)
 bit 4 = Enable internal speaker (hard reset = 1)
 bit 3 = Enable 8-bit DACs (A,B,C,D) (hard reset = 0)
 bit 2 = Enable port $FF Timex video mode *read* (hides floating bus on 0xff) (hard reset = 0)
 bit 1 = Enable Turbosound (currently selected AY is frozen when disabled) (hard reset = 0)
 bit 0 = Implement Issue 2 keyboard (port $FE reads as early ZX boards) (hard reset = 0)

The Timex modes are operational even when bit 2 is set to zero, you can still write to port $FF with desired mode changes. Bit 2 does only enable readability of port $FF.

When loading 48k SNA files through NextZXOS, be aware it does lock down many features of Next to better simulate ZX48 machine, including lock of Memory Paging Control ($7FFD / 32765) paging feature. If you are using 48k SNA file for convenience, but you are actually using full ZX Next features, make sure you enable/unlock all relevant bits, before using the particular feature.