|
Tutorial for GFDisplay GFDisplay works by reading memory locations which we call "offsets". You could think of this as tracks on a CD. Track 0 is the starting track and Track 10 would be the last track. Each track or offset, could be a different size. For example, 8bits, 16bits or 32bits and sometimes even 64bits. What is a bit? a bit is ONE piece of data. It is either off "0" or on "1". When you put 8 bits together, it is called a "byte" of information. When two bytes are put together, we call it a "word". When two words are put together we call it a Double Word. When two double words are put together, it's not a quaduple word... its called a Value. Offsets can either be Signed or Unsigned. There's also a 32bit Single Floating point and 64bit Double Floating point. Yeah, it gets complicated. There's a nifty utility called FSInterrogate2std (which I will call FSI for short). This lists all the memory locations of FS and their size. In this tutorial, I'm not going to get into the operation of FSInterrogate2std. It has it's own Help and is simple enough to figure out. GFDisplay works by checking a "condition" to see if it's TRUE or FALSE. The only way to create the GFDisplay.ini file is to use a text editor. I recommend using Notepad.exe. The ini file is broken down into several sections as listed below. They must be in the correct order. [GF Connections] [Conditions] The various GF modules depends on what you have installed.
These sections have no required order. So lets start with something simple like the Master Battery. You probably have a Master Battery switch on a GFT8 module, right? How many GFT8 units do you have? Probably more than one. Using the modules sections you need to specify which module you want that section to affect. For our example we will assume you have 1 module. Looking at FSI's Variable page, we can sort the Field-Name column and then look for Master Battery Switch. You may find two addresses. My FSI lists "281C" and "3102" The "Addr" column is the memory Offset "3102" and the "Var Type" shows it's "U8" (Unsigned 8bit). So now we can write our first line. Each line in a module section refers to the LED number. L0 in this example is the first LED. [GFT8.0] It looks at memory offset "X3102". The "X" tells GFDisplay it's a hexadecimal number. The offset "3102" is the memory location. "U8" means the memory size is "8" bits and the "U" means it's "Unsigned". GFDisplay will examine the line. It calculates the value of X3102. If it's not "0" or False then GFDisplay will consider the line TRUE and turn on the LED. Simple enough, right? Well how about the Avionics switch... That switch won't work if the Master battery is off. Again we go look at FSI and find the Avionics Switch. We find it at offset 3103 and it's too as U8 (Unsigned 8bit) We'll add this line to our GFT8.0 section L2=X3103 U8 ; AVIONICS SWITCH Keep in mind L2 is the third LED on the GFT8 module. So how do we get GFDisplay to consider the state of the Master switch when looking at the Avionics switch? With the [Conditions] section. Each condition needs it's own unique line number, starting with 0(zero) Let's add a condition... 0=X3102 U8 ; Master Battery That's it. All GFDisplay does is look at the condition and determine if it's true or false OR is the switch on or off. Now lets go back to our module section [GFT8.0] We are going to change our L2 line as follows... L2=C0 X3103 U8 ; AVIONICS SWITCH We added "C0" to the line. "C" means to look at the Condition. In this case Condition #0. So GFDisplay will process the line as... If the Condition C0 is true and if the Avionics switch is on then it will turn on the third LED or L2. If the Master switch is turned off then the condition is not true therefore the L2 line cannot be true. So the L2 LED gets turned off.
Click HERE to download my GFDisplay.ini file. |