(This txt file is part of the ThrustMaster Mark II WCS Command and Control Center (C&CC) help file.) TMSA is a diagnostic program that allows you to verify the operation of your Thrustmaster FCS/RCS/ACM system. It works by looking at the data from the ACM card in exactly the same way as a game program would and then showing you what that data looks like. It is very useful for verifying hardware operation and for troubleshooting joystick related problems. TMSA Display: The main feature of the program display is the graphical display in the lower right corner. It gives a visual indication of the values being returned from the X and Y inputs from the FCS as well as the input which is used for the RCS. The FCS position is traced in BLUE, while the RCS position is traced in RED. Directly above the graphical display is the button state readout. This shows the current state of the 4 analog button inputs. A '1' indicates that the button is ON, and '0' indicates that it is OFF. Above the button display in the upper right corner of the screen is a digital display of the analog values which TMSA is reading from the ACM card. Values are displayed for all four analog inputs. The 'X' and 'Y' values are associated with the normal FCS joystick functions. The 'HAT' value shows the value being seen for the 'hat switch' on the Thrustmaster FCS. Finally, the values for the 'RUDDER'input show the values for the RCS. If you aren't using a Thrustmaster FCS or Rudder Pedals, then these last two inputs may be disconnected or they may connect to a second joystick or other device. The values displayed are still valuable for analysis, no matter what is currently connected to the game card. For each of the inputs, there are four values displayed. The uppermost value is the 'CENTER' value, and is the value which the input was returning when the display was last cleared. Below that are the 'MAX' and 'MIN' values. These show the highest and lowest values that have been returned from the input since the TMSA program was started. Finally, the 'RAW DATA' values are shown. These values track the current values being returned from the input. Using TMSA: Whenever you start TMSA, the first thing you should do is to center the FCS and RCS, then press a key or pull the trigger on the FCS. This will clear and center the graphical display and set things up for further operation. You may need to do this twice to get the display totally cleared. ACM Calibration: The next step is to adjust the ACM card to it's normal 'calibration' setting. First you must place the Mark II mode switches to the proper position. Place the RED mode switch in the DIGITAL position and the BLACK mode switch in the ANALOG position. If you have an FCS connected, simply release the hat switch so it goes to the center position, then adjust the knob on the ACM card to give a RAW DATA value for the HAT of 82. If you are not using an FCS, then you should adjust the ACM card until the values for the 'X' and 'Y'axes are about 100 with the stick centered. This 'calibration' position has been found to work well with many pieces of software, and is a good first try when you are attempting to get a new piece of software to work. Unfortunately, there is no absolute 'best' position, since every program uses a slightly different method to read the joystick. For any particular program, some experimentation may be necessary before optimum performance is realized. Once you have adjusted the ACM card to the calibration position, press a key or pull the FCS trigger to recenter the graphical display. The system is now ready for check out. Testing the FCS X and Y Axes: The FCS X and Y axes are the ones that transmit stick position information to the ACM card and thus to the game software. The first test is to verify that both axes are basically operational, Move the stick through the full range of its travel in all directions. The graphical display should respond by drawing a blue 'fan' pattern around the center of the display in response to stick movement. While you are doing the above, watch the display for any erratic operation. The fan should be generated smoothly. While there is always a little 'noise' on any joystick system, the fan should not jump wildly around from point to point on the screen. Position should be easily controllable. If this is not the case, the most likely culprits are dirty pots in the FCS, a loose connection somewhere in the system, or a broken wire in the FCS or its associated cabling. If you only get a horizontal or vertical line on the screen, then one of the FCS axes or one of the ACM inputs is not functioning. If you've got another joystick handy, you can plug it in instead of the FCS. If the problem persists, it would indicate a malfunction in the ACM card. If the problem disappears, then the FCS is the likely place to look. Check the connections to the ACM card to make sure they are secure. If those are okay, then the problem may be in the FCS itself. If everything seems to be working, center the FCS again and clear the display screen by pressing a key. The next thing to check for is the symmetry of joystick values around the center stick position. The value at center is displayed at the top of the screen and is set when you clear the display. Move the stick full left and full right, noting the maximum and minimum values which are returned. Repeat the test using the 'Y' axis values and moving the stick fully forward and fully back, again noting the minimum and maximum RAW DATA values obtained. These values should be about equally distant from the center value for the 'X' axis. For instance with a center value of 100, you might see a minimum of 10 and a maximum of 190. The difference between minimum and center and the difference between maximum and center are both 90 so the stick is 'symmetrical' around the center position. These difference values are never perfectly equal, and this doesn't normally impact too seriously on game play. If they differ by more than 30% or so, though, it can result in poor control response, usually indicated by more control movement in one direction than in the other. There are other possible causes for this type of behavior, though, most of them are related to the game software. If the values in TMSA are symmetrical, then the problem lies elsewhere. If the values in TMSA are not symmetrical, it usually indicates that the pots in the FCS have shifted and may need readjustment. Another important thing to check for is the relationship between the center value and the minimum value for each axis. For the 'X' and 'Y' axes, the minimum value should be about 10% of the center value. If it is much greater than this, it indicates that the pots in the FCS have slipped and require readjustment. One final thing to check for is that the center values of both 'X' and 'Y' values are approximately equal. Again, they will never be identical, but the difference should be no more than 10% or so of the average center value for the axes. This again would indicate that the pots in the FCS require some adjustment. Testing the Hat Switch: Testing the Hat Switch is very easily accomplished. First, be sure to set the switches on the Mark II to the correct position. Place the RED Mode Switch in the DIGITAL position and the BLACK Hat Mode Switch in the ANALOG position as described under ACM adjustment. Next check the ACM adjustment to be sure the RAW DATA value for the HAT is set at 82. Readjust the ACM if necessary. Next, move the Hat Switch to the 3 o'clock, 6 o'clock, 9 o'clock, and 12 o'clock positions, noting the RAW DATA value for the HAT at each. The values you read should be: center position - adjusted to 82 12 O'clock position - approximately 2 3 O'clock position - approximately 20 6 O'clock position - approximately 40 9 O'clock position - approximately 60 Be careful to get the Hat Switch to EXACTLY the 12, 3, 6, or 9 O'clock positions. If you move a little off the position in either direction, you may contact two positions at once. This will cause an erroneous reading. It is usually very easy to tell if you've got the right position or not by watching the numbers in the RAW DATA column. You can usually 'feel' your way into it. The values should be within a few counts of those specified if the ACM has been properly calibrated. If they are significantly different, then a problem with the Hat Switch is indicated. Testing the FCS Buttons: To check the operation of the FCS buttons, first set the RED switch on the Mark II to ANALOG position, then switch the RED switch to CALIBRATE position. If this procedure is not followed, you may disable the PC keyboard. If this happens, then put the RED switch back in the DIGITAL position and press Button #1 on the Mark II. Once the Mark II has been placed in calibrate mode, press the four buttons on the FCS one at a time. Each button should cause one of the indicators in the Button Display to change from a '0' to a '1'. The trigger is on the left, UB is next, then MB and LB. If any of the indicators fail to change, first go back and check that you have followed the above directions to get the Mark II into calibrate mode. If the problem persists, it may be a bad connection to the ACM card, or a bad button in the FCS. When the test is complete, be sure to return the RED mode switch to the DIGITAL position. Failure to do this may result in the keyboard becoming disabled. If this happens, place the RED switch in the DIGITAL position and press Button #1 on the Mark II a few times to restore normal operation. Testing the RCS: The RCS looks much like a joystick with only an 'X' axis, and the testing procedure for it is essentially the same as for the FCS 'X' and 'Y' axes. The graphical display traces RCS position in red, and since there is only one axes involved, moving the pedals normally results in a horizontal red line, providing that the joystick is not moved at the same time. The tests for the RCS should include testing on the graphical display to verify basic operation, and a check to see that the minimum and maximum values are approximately symmetrical around the center point. The RCS should also be checked to see that the minimum value is less than one-third of the center value. If either the symmetry or minimum value checks indicates a problem, readjustment of the pot in the RCS is probably needed. As with the 'X' and 'Y' axes, if the values are symmetrical in TMSA, then the RCS is okay insofar as providing equal control movement in both directions. Testing the Mark II Throttle: You can test the throttle handle on the Mark II using TMSA also. First, place the RED Mark II switch in the ANALOG position and place the BLACK switch in the DIGITAL position. This places the Mark II in analog throttle mode. The value for the throttle will be shown in the HAT column of the TMSA display. The values displayed should be minimum with the handle full forward and maximum with the handle full back. Values should change smoothly. The range will be something less than the 'X' and 'Y' axes show, and are generally not particularly critical. Using TMSA with Non-Thrustmaster Equipment: TMSA can also be used to check equipment not manufactured by Thrustmaster. In general the ACM adjustment procedure can be done with most adjustable game cards. If you're using a non-adjustable card or built-in game port, then you will not be able to set the range of values that TMSA will display, but the tests for general operation,symmetry, and minimum value can still be performed in essentially the manner described. Testing the Hat Switch is a little more difficult, but basically the values for the hat positions should be near 0 at 12 o'clock and about 25%, 50% and 75% of the value at hat center for the 3, 6, and 9 o'clock positions respectively. Troubleshooting Control Problems: Whenever a control problem is encountered, there are several possible causes. Determining where the problem lies can be done most easily by approaching it in a logical manner. By far the majority of control problems are not caused by the failure of a piece of hardware, but rather by some interaction between the hardware and the software, or between two pieces of hardware. Hardware Problems: The largest single cause of control problems is that of having two or more game ports in the computer which are active at the same time. This most frequently happens when a new game card is installed and the existing game port is not disabled. It can also happen when something like a sound card, which has a game port on it, is installed without first disabling the port. There is usually a jumper someplace which can be removed to disable the port. Check the manuals that came with your equipment for the location of the jumper. You must have only one port enabled for the control system to function properly. Ports are usually found on multi-io cards, sound cards, some motherboards, and of course game cards. Look on the back of the computer for the tell-tale 15-pin joystick connectors. Also carefully check any multi-io cards, since they frequently have ports which are connected via ribbon cable to a 15-pin connector. Even if the connector is not installed, the port may be active and can cause problems. Looking for more than one active game card: (NOTE: Since you k this documenet froma BBS, then your GAMEPORT.EXE and TESTCARD.BAT files may be in different locations than described here. Further, you may need to edit TESTCARD.BAT for it to call GAMEPORT.EXE.) We have included a software program named gameport.exe that will test any 15-pin connector that you plug a joystick into to determine whether the card this connector is on is disabled or active. To use this program, simply plug your MARK II WCS 15-pin game card cable into each 15-pin connector you find located at the back of your computer and run the program C:\MARK2\REMAP\TESTCARD.BAT from the option K. Run Program section of the Miscellaneous Main Menu Screen. When you run this program, make absolutely certain that you have unplugged all other joysticks, or rudder pedals from all 15-pin connectors located on the back of your computer that you are not testing at that time. Test each 15-pin connector you find - one at a time and make sure your FCS or PFCS or other joystick is plugged into the 15-pin connector on the Mark II WCS. The program will tell you if the 15-pin connector you are currently testing by the above means is active. If you find more than one 15-pin connector located at the back of your computer that is active, and the two 15-pin connectors are NOT located on the same card, then the card that you do not intend to use MUST be disabled. Look at the documentation for that card for the means to accomplish this. Sound cards almost all have 15-pin connectors on them and they can all be disabled without diabling the sound card portion of the card. Their manual will instruct you on how to accomplish this either by pulling a jumper on the card itself, or by a software code you enter in either your CONFIG.SYS or AUTOEXEC.BAT files. One common example would be the Pro-Audio Spectrum (tm) 16 card. It has a line you enter into your CONFIG.SYS file that looks like this: C:\PROAUDIO\MVSOUND.SYS D:3 Q:5 J:0 The J:0 will disable the joystick port on this card and you will still be able to enjoy all the sound generating capability of the sound card. If, on the other hand, a J:1 appears on this line and you normally operate your Mark II WCS and FCS(PFCS) from a different game card, then you have a second active game card (the PAS-16 joystick connector) which is sure to cause you some problems in some software programs. The SoundBlaster (tm) sound cards use a jumper located on the card itself that must be pulled off in order to disable the game card portion of the sound card. Checking the Hardware Itself: The next thing to check is the hardware itself, not because it is the most likely suspect, but because the TMSA program makes it easy to quickly verify that the hardware is working and eliminates that from the equation. Look at the procedures above and check things out as they describe. Remember, if TMSA can read and respond correctly to your hardware, then the game program should be able to do that too. In fact, if any game program will work with the hardware, then the hardware must be good. If it was broken, it would be broken everywhere. If there is something wrong with the hardware, TMSA will show you that. If the testing indicates that the hardware is good, then it is good, and you must look elsewhere for the culprit. Software Problems: Where else can you look? Well, the only place is in the software itself. Unfortunately, many game programs do not do a very good job of reading joysticks and devices connected to the game port. The programmers frequently don't leave enough margin to allow for the variations that occur with different game ports and input hardware, and with the speed of the CPU. The result is poor to useless control response. Outside of a few basic problems like thermal drift or the lack of support for both sets of joystick inputs, most joystick/game card combinations actually 'work' just fine. Most Common Software Problem: The most common problem encountered in software is caused by the faster CPU speeds that are prevalent today. The basic joystick is used to control a timer, the position of the stick determining how long the timer runs. The software must start the timer, then measure the time period to determine what the current joystick position is. Most programs do this by simply starting at 0 and counting up until the timer runs out. The problem is that how fast the software counts is determined by CPU speed, whereas the timer itself is completely independent of CPU speed. It only depends on the stick position. When the CPU speed goes up, the software counts faster, producing a larger number for the same time period. These speed-related problems frequently occur when a user upgrades his system. A shiny new '486 is used to replace a dusty old '286 and suddenly the joystick doesn't work. This is almost invariably caused not by the joystick, but by the software not being able to deal with the increased machine speed. In many programs, there is a maximum value which the software is allowed to count to. Once that value is reached, the software stops counting, whether the timer is done or not. This can cause problems of various types. One frequently noted is that you have more control to the left and forward of center than you do to the right or back of center. The software has reached its maximum value and simply can't count to a high enough value to represent the stick position. In extreme cases, the high value will be seen as an open stick, and the joystick will be disabled. Zero Time Timeouts: A second area that creates problems in the software is that on some game cards the timer times out in zero time when the stick is hard left or full forward. Many programs see the zero width pulse as a disconnected stick and will disable it. There is nothing inherently wrong with the zero time. It is consistent with acceptable joystick operation, but the software will not deal with it correctly. Delayed Timer Starts: Some game ports have timers which don't start right away. There can be a very brief delay before timing begins. Some programs see the timer as finished, because they look at it before it gets started. This generally results in total loss of control. All of these problems can be dealt with by properly written joystick routines. If you encounter some of these problems and your hardware checks out okay, you should contact the people that wrote the software and let them know about the problem. If enough people complain, perhaps they will do a better job in the future with their joystick routines. ThrustMaster's Speed-Adjustable ACM Game Card: The Thrustmaster ACM card is designed to avoid as many of these problems as possible. It provides an adjustment which lets you speed up the timer to compensate for routines which count too fast. It includes circuitry to ensure that a zero- length timer period does not occur. It uses fast, high- quality components to avoid the problems with the timer starting late. And it uses very stable timing components to avoid heat-induced drift. It will solve most of the problems that software can create, but not all of them. Some problems simply cannot be dealt with in the hardware. Patch Programs: The software distributed with the distribution diskette includes a number of patches for various programs to cure joystick related software problems. They are located in the C:\MARK2\MK2UTILS directory. If you are having trouble with a particular program, check here for any patches which may be available.