mirror of
https://github.com/QB64Official/qb64.git
synced 2024-08-22 00:55:09 +00:00
45 lines
2 KiB
Text
45 lines
2 KiB
Text
The [[PALETTE]] statement can swap color settings, set colors to default or set the red, green and blue color components of palette colors.
|
|
|
|
|
|
{{PageSyntax}}
|
|
|
|
: [[PALETTE]] [{{Parameter|attribute%}}, ''red%'' + (''green%'' * 256) + (''blue%'' * 65536)]
|
|
: [[PALETTE]] [{{Parameter|existingAttribute%}}, {{Parameter|newAttribute%}}]
|
|
|
|
|
|
{{PageDescription}}
|
|
* {{Parameter|red%}}, {{Parameter|green%}} and {{Parameter|blue%}} values can range from 0 to 63. Many color shades are possible in non-[[DAC]] color attributes.
|
|
* If the {{Parameter|red%}}, {{Parameter|green%}} and {{Parameter|blue%}} color intensity settings are all the same value the resulting color is a shade of grey.
|
|
* A swap is often used with [[DAC]] color attributes that cannot change RGB settings. Only the RGB color settings are swapped from original {{Parameter|existingAttribute%}} to {{Parameter|newAttribute%}}. Screens 0 thru 9 support swaps. Screen 10 supports up to attribute 8 only.
|
|
* PALETTE without any value sets any changed RGB settings back to the default color settings, including [[DAC]] colors.
|
|
* [[PALETTE USING]] can be used when color intensity values are stored in an [[Arrays|array]].
|
|
* QB64 implements the [[_PALETTECOLOR]] statement to provide extended palette functionality.
|
|
|
|
|
|
{{PageQBasic}}
|
|
* Screens 0, 7 and 9 ([[DAC]]) colors could not be changed using the first syntax, but the program could use [[OUT]] to change intensity settings of attributes 1 thru 5.
|
|
|
|
|
|
{{PageExamples}}
|
|
''Example:'' Displaying all 64 DAC color hues as backgrounds in SCREEN 9 using a PALETTE swap.
|
|
|
|
{{CodeStart}} '' ''
|
|
{{Cl|SCREEN (statement)|SCREEN}} 9 ' background is default black
|
|
{{Cl|LOCATE}} 20, 33: {{Cl|PRINT}} "Press any Key!"
|
|
{{Cl|FOR...NEXT|FOR}} i = 1 {{Cl|TO}} 64
|
|
a$ = {{Cl|INPUT$}}(1) ' wait for a keypress
|
|
{{Cl|PALETTE}} 0, i
|
|
{{Cl|NEXT}} '' ''
|
|
{{CodeEnd}}
|
|
:''Note:'' Other attributes (1 to 15) can also be swapped for DAC foreground colors.
|
|
|
|
|
|
{{PageSeeAlso}}
|
|
* [[_PALETTECOLOR]]
|
|
* [[PALETTE USING]]
|
|
* [[COLOR]]
|
|
* [[OUT]], [[INP]]
|
|
* [[SCREEN]]
|
|
|
|
|
|
{{PageNavigation}}
|