HOTAS Cougar - Creating Custom Configs, Part II

by Len "Viking1" Hjalmarson

Article Type: How-To
Article Date: May 01, 2002

Product Info

Product Name: HOTAS Cougar
Category: Controller
Developer: Thrustmaster
Release Date: Soon
Min. Spec: USB port, DirectX 8.0, Pentium (or compat.), Win98/2000/ME
Files & Links: Click Here

* * *



Back to Part 1


In Part I we talked about macro files and joystick files, and we walked through the basics of creating each file. While you can use the Cougar as a Windows device or simply download a configuration someone else has made, FOXY is designed to make your own programming relatively painless.

One of the ways that the Cougar facilitates this is by using basic text files. We open and access those files in the Editor, where we make changes by defining macros and assigning them to buttons or hats. This way your stick sends the key you want when you move a button or hat.

As we saw in Part I, the format used by the Cougar is so simple that the entire file could be created in a text editor, so long as you know the format. For example, that HAT1 and HAT2 settings in the joystick file for IL-2 Sturmovik look like this:

     BTN H2U LockEnemyAir
     BTN H2D LockFrdAir
     BTN H2L Padlock_Next
     BTN H2R Chaseview

The BTN notation at the beginning of the line simply tells the Cougar what switch or hat is the assignment. You see four button assignments for HAT2. When HAT2 is moved up (H2U) it will send LockEnemyAir (F6 I believe). You can see that with a bit of practice you could make these files by hand. Then you could use Foxy to download the file into the Cougar.

When you click the DOWNLOAD button in Foxy, it compiles the file, turning it into the format read by the Cougar, and then checks the file for errors before loading it into the HOTAS.

No problem for small changes or simple files. But creating long files by hand in a text editor is cumbersome and time consuming. There are too many commands to remember, and you would find yourself also referring constantly to the manual that came with your simulation. Hmm? does ALT SPC drop bombs or drop tanks? Whew!

That’s one reason why we create a macro file, and use the macro file to create the joystick file.

An even more important reason is that if you were to use a text editor to create your files, or to edit existing files, you would limit what you can do with this powerful system. What I want to do now is to show you how to create configuration files using Foxy. We’ll look first at Korgy and then at the main editor and composer.



Korgy

When I first loaded up a new version of Foxy two years ago, I was dismayed by the amount of information presented. “Why,” I thought to myself, “can’t I just have a virtual keyboard format where I can simply click on the key combination I want, then add a few modifiers if necessary and have the program keep track of my choices and create the file I need?” It wasn’t long before I discovered that Dr. James Hallows (creator of Foxy) had already thought of this.

In fact, Korgy and the composer are complementary graphical tools that will ease your creation of custom files.

KORGY

Korgy is one of the main modules of the Foxy suite of program interfaces. Korgy makes the creation of complex programming statements for the HOTAS Cougar as easy as using your keyboard.

There are three main areas on Korgy that you will learn. These are:
  • Controllers and macro generator—on the left hand side.
  • The virtual keyboard—the buttons of a typical US QWERTY keyboard.
  • The statement text areas—the text regions underneath the virtual keyboard.
Using a combination of all of these areas, you can:
  1. Create button statements directly in the joystick file.
  2. Create macros.
  3. Generate complex statements, including KD, KU and USB statements.
This might leave you wondering where you deal with such niceties as reassigning axes. Normally you will use the Cougar Control Panel (CCP) for that task. But you can also assign or reassign axes within your favorite simulation. We’ll leave that subject for later.



What do you do with Korgy?

The main function of Korgy is to ensure that you generate the correct key syntax for keyboard keys, as outlined in the Cougar manual. If you have the option of searching in the manual for specific modifiers, or simply pointing and clicking on a virtual keyboard, which would you choose?

To view the correct syntax for any keyboard key, you simply click on the key on the virtual keyboard, and in the ThrustMaster (TM) syntax for this key text area, you'll see the correct TM syntax for that key.

This has all kinds of applications. Let’s say that you want to know what the syntax is for the BSP key when you hold down a Shift key at the same time (this is known as a “chorded” keystroke).

Simple. You open Korgy, click on the Shift key, then click the Backspace key. In the TM syntax line SHF BSP appears. Now you know the correct symbols.

Using KORGY

Now let’s look at the basic features of Korgy and see what we can do with it.



The Statement Text Areas

The statement text areas aren’t quite as intuitive as some other features of Korgy, but they are functional and important. As we move through the use of these areas to create a joystick file, you’ll understand how quickly you can create a configuration file for your controllers.

When you first use Korgy, there are two text areas visible. The top one is the TM syntax for this key text area which shows the correct TM keyboard syntax for any key you click on the virtual keyboard. The bottom one is the statement text area, and it is area you will learn to work in.

The reason for this is that when you insert statements created from Korgy, and only complex or macro statements can be created in this area, then when you use the Insert button beside the statement text area, Foxy will colour highlight the statement and insert it into the currently selected file. Why is the line colour important? We’ll come to that a bit later.

Let’s consider how to get the same statement we had in Part I into a joystick file using Korgy. Remember that in Part I we used an example from IL-2. In IL-2 ALT SPACE tells the program to release a bomb from your aircraft, and F1 tells the program to place you in the forward cockpit view.

     Release_Bomb = ALT SPC
     Forward_view = F1

These two statements look like the above in a macro file. But how do we create them without editing a text file?

Step One
First, click on the Macro tab on the left side of the screen in Korgy. Then click on the down arrow on the right side of the macro selection box to see if the macro you want is already in the list. If it isn’t there, you simply type it into the box.

Let’s say I was creating a Macro for use in Microsoft Space Simulator. I might want a command line like “open outer door.” No problem…I select the box and type it in the space.

Since we are working with a more typical command, it is in fact already there for us and we can simply select it from the list as you see in the next image.

Select macro name

As soon as I release the mouse button Release_Bomb = appears in the statement text area at the bottom of the Korgy interface.

Step Two
I know from the IL-2 manual that ALT + SPACEBAR will result in bomb release, so I only need to input those keys on the Korgy keyboard. I click on the ALT HELD button, then on the Spacebar, and then on the Paste button and the key commands appear beside the macro in the statement text window (See Figure 1). Clicking on the INSERT button to the right of the window places the macro in the macro file window in Foxy (See Figure 2).

Figure 1



Figure 2

If we didn’t have a template to work with, and if we were not editing an existing ThrustMaster file, then we would normally repeat the above process many times to create a macro file. In this case, let’s move on to talk about a more advanced option, which is assigning modifiers to a particular command. Korgy makes this a snap.



Working with Modifiers

There are a large variety of modifiers available to the Cougar user, including command modifiers and slash modifiers. Command modifiers, like Press and Release, Hold, Auto Repeat, Toggle and more, take a keyboard command and make it function differently than a single keypress. Slash modifiers, and there are ten available, increase the number of programmable positions for each button and hat on the Cougar.

Now let’s say that you really want button S2 to function as a pickle button, so that in normal flight hitting S2 will release external ordnance. But let’s say that you also want S2 to function as your cannon. How do you choose which function to assign to S2?

Luckily, you don’t have to choose. You can have both.

The way that we do this is by using a slash modifier. The simplest way is to assign switch S3 on the joystick to work like a shift key, doubling all the key positions on both the joystick and throttle. If you assign S3 to do this work for you, then any time you hold in switch S3 while pressing another switch, you are accessing a second command level. Press S2 without pressing S3, and you get cannons; press S2 while holding S3 and you get bomb release. This is how I have my old TM F22 Pro joystick setup for IL-2 at the moment. Let’s look at how this would work with Korgy.

The modifiers are all explained in the Cougar manual. All we need to know for now is that the /O modifier tells Foxy that this command is issued normally, without S3 depressed. The /I modifier tells Foxy that this command is issued when S3 is depressed.

First, I find the Cannons macro in the list, and it pops up in the statement text area. Next, I select the /O box below the statement text area and I click the box. This causes the /O statement to appear in the window. I check my IL-2 key card and find that Backspace is the command to fire cannons, so I click on the Back button on the virtual keyboard, and it appears in the syntax key window. I use the PASTE button to insert the key into the statement text window, and the INSERT button to the right of the window records the statement in the macro file.

Adding the Cannons macro

Now let’s look at another example. The programming flexibility of the Cougar is such that you can do things with it that you can’t even do with a keyboard!

Assign a mouse button

What if I want to assign mouse functions to a key or hat on the Cougar? I simply click on the L, M and R boxes in turn and as they appear in the ThrustMaster syntax window, then I use the INSERT button to paste them into the macro file I am building. Later I can use Foxy to assign these functions to any button or hat on the Cougar. If I already know that I want HAT1 Up to be a left mouse click, I can assign it now like this:

First, I click the Controllers tab to bring up the image of the Cougar joystick. Next, I click on Hat1 and select H1U.

Then I click on the L mouse button at the right of the Korgy interface, and finally I click INSERT and the command is placed into my joystick file. Notice that we have moved from working with macros to working directly with the joystick file in this last example.

Select button assignment

After we have created our macro file, or if we are working with a macro file supplied by ThrustMaster or another user, we can move to the composer interface. The composer is a window consisting of several tabs to help you in developing your files. Although Foxy is a text editor, ThrustMaster wanted a graphical representation of the Cougar hardware that would aid users in developing files and reduce the amount of spent using the manuals.

The Composer

In the next article, we’ll look at Foxy’s composer.



Resources

Articles:

Related COMBATSIM Resources:

Files:

Official Sites:

Community Sites:


 Printer Friendly

© 2014 COMBATSIM.COM - All Rights Reserved