707
edits
m (s/SZX/ZX-State (SZX)/ and capitalisation tweaks) |
|||
Line 4: | Line 4: | ||
The ULAplus specification is an enhanced ULA for the ZX Spectrum designed by Cheveron, Nikki, CSmith and KLP2. It can be implemented as a plug-in replacement for the ULA in the 48K machines, in emulators, or in clones. It is designed to make it easy to re-colour existing software with the minimum of effort. | The ULAplus specification is an enhanced ULA for the ZX Spectrum designed by Cheveron, Nikki, CSmith and KLP2. It can be implemented as a plug-in replacement for the ULA in the 48K machines, in emulators, or in clones. It is designed to make it easy to re-colour existing software with the minimum of effort. | ||
==Colour | ==Colour modes== | ||
The current specification allows for four colour spaces: | The current specification allows for four colour spaces: | ||
Line 14: | Line 14: | ||
Any hardware implementing ULAplus must implement at least the original spectrum attributes and one other to be considered a ULAplus device. | Any hardware implementing ULAplus must implement at least the original spectrum attributes and one other to be considered a ULAplus device. | ||
==I/O | ==I/O ports== | ||
ULAplus is controlled by two ports. | ULAplus is controlled by two ports. | ||
Line 80: | Line 80: | ||
where h is the high bit, m is the middle bit, and l is the low bit of the original 3-bit value. | where h is the high bit, m is the middle bit, and l is the low bit of the original 3-bit value. | ||
=== Extension to the SZX | === Extension to the ZX-State (SZX) format === | ||
==== ZXSTPALETTE ==== | ==== ZXSTPALETTE ==== | ||
Line 113: | Line 112: | ||
<br /> '''chCurrentRegister'''<br /> The currently selected palette register (0-63).<br /> '''chPaletteRegs'''<br /> The current values of the palette registers. | <br /> '''chCurrentRegister'''<br /> The currently selected palette register (0-63).<br /> '''chPaletteRegs'''<br /> The current values of the palette registers. | ||
=== Extension to the SCR | === Extension to the SCR format === | ||
A 6912 byte .SCR file contains a standard Spectrum screen. | A 6912 byte .SCR file contains a standard Spectrum screen. | ||
Line 126: | Line 125: | ||
A 12353 byte .SCR file contains a Timex hi-res screen followed by the hi-res colour information that was dumped from port 255, followed by 64 colour registers. | A 12353 byte .SCR file contains a Timex hi-res screen followed by the hi-res colour information that was dumped from port 255, followed by 64 colour registers. | ||
=== Palette | === Palette file format === | ||
The palette format doubles as the BASIC patch loader. This enables you to edit patches produced by other people. | The palette format doubles as the BASIC patch loader. This enables you to edit patches produced by other people. |