U23 2005/Firmware-Makros

From C4 Wiki
< U23 2005
Revision as of 12:59, 4 November 2005 by Pylon (talk | contribs)
Jump to: navigation, search

Die Datei script_macros.inc enthält einige Makros mit denen sehr schnell statische Skripts für die Firmware erstellt werden können.

MACRO_NOP

Argumente: (keine)

Funktion: Tut nichts.

MACRO_FADE_CHANNEL

Argumente: Channel TargetBrightness Delay AddBrightness

Channel: Gibt den Farbkanal an. Mögliche Werte sind ChannelR (Rot), ChannelG (Grün) und ChannelB (Blau).
TargetBrightness: Gibt die Helligkeit des Kanals an. Wertebereich 0 (aus) bis 255 (volle Helligkeit).
Delay: ?
AddBrightness: ?

Funktion: Fadet einen gegebenen Farbkanal in einer gegebenen Zeit auf eine gegebene Helligkeit.

MACRO_FADE_CHANNELS

Argumente: BrightnessR BrightnessG BrightnessB

Brightness{R,G,B}: Die Helligkeit des {roten, grünen, blauen} Channels (0-255).

Funktion: Setzt alle Farbkanäle direkt auf die jeweils angegebenen Helligkeitswerte.

MACRO_JUMP

Argumente: RelativeInstructionCount

RelativeInstructionCount: Anzahl der Instruktionen.

Funktion: Springt um eine gewisse Anzahl an Instruktionen zurück. Zu beachten: Die JUMP-Instruktion muss auch übersprungen werden! Beispiel:

1: MACRO_NOP
2: MACRO_JUMP -2  ; springt zu Zeile 1

MACRO_SET_CHANNEL

Argumente: Channel TargetBrightness

Channel: Gibt den Farbkanal an. Mögliche Werte sind ChannelR (Rot), ChannelG (Grün) und ChannelB (Blau).
TargetBrightness: Die Helligkeit (0-255).

Funktion: Setzt den angegebenen Channel auf die angegebene Helligkeit.

MACRO_SLEEP

Argumente: Delay

Delay: Verzögerung in 1/120 sec als 16bit-Zahl (also max. 65535).

Funktion: Wartet die angegebene Zeit.

MACRO_WAIT

Argumente: Bitmask

Bitmask: Bitmaske des Kanals.
Rot: (1<<ChannelR)
Grün: (1<<ChannelG)
Blau: (1<<ChannelB)

Funktion: Wartet, bis ein Kanal die gewünschte Helligkeit erreicht hat.

1: MACRO_FADE_CHANNEL ChannelR, 255, 35, 0
2: MACRO_WAIT (1<<ChannelR)

MACRO_CLEAR

Argumente: (keine)

Funktion: Setzt alle Kanäle auf Helligkeit 0 zurück.


-- manuke & Diozaka