Tame release 4.5
Frequently Asked Questions

Performance Problems

The application is sluggish with Tame installed

The application stalls while working, but continues if a key is pressed

Tame does not reduce CPU usage

Key repeat is slow when using the cursor keypad

A long running procedure degrades system performance

The CPU spikes briefly after each key press

Compatibility Problems

"Incorrect DOS version" error when using Tame

Some characters do not display properly

Problems related to the NumLock key or the numeric keypad

General Questions

Should Tame be installed on the workstation?

How can I change default Tame settings?

What access rights are needed to use Tame?

What does the setup program do when Tame is installed?

Special Applications

How to specify Tame settings for one application

How to enable Tame for 16 bit Windows apps

How to disable Tame for one application

WordPerfect recommendation

All available memory is used with FoxPro applications

Advanced Diagnostics

How to monitor DOS application statistics

How to produce a trace file for TameDOS analysis

How to produce a trace that includes program startup

Registration and License Issues

The demo version verses the licensed version of Tame

How to verify Tame is loaded using the console title

Performance Problems

The application is sluggish with Tame installed

The most common cause of a slowdown is the idle detection that is built into Windows.  Please make sure that Windows idle detection is disabled for the shortcut that launches a DOS app.  To do this, open the properties of the launching icon and look at the "misc" tab.   Move the idle detection slider all the way to the left.

If the shortcut does not contain a MISC tab then check to see if a batch file is being launched.  In this case, the batch file is initially launched as a 32 bit process, and the dialog does not include options applicable to a DOS application.  The following alternatives are available to handle the situation.

1.   Edit the shortcut named %SystemRoot%\_default.pif, and change its properties as described above.

2. Create a shortcut in the same folder as the DOS application, and also give it the same name.  That shortcut will be used instead of the _default.pif if it is present.

3.  Force the icon to allow setting DOS options changing the program to a DOS program.   If the batch file is necessary, it may be soecified as the startup batch file, or the existing batch file may be launched using the DOS COMMAND.COM program.  For example:

              %SystemRoot%\System32\command.exe /e:4096 /c <bat_file>

Note that this can sometimes fail if the batch file creates a lot of environment values.

The application stalls while working, but continues if a key is pressed

Tame continuously monitors the application  to detect when it is working and when it is idle.   There is a possibility of Tame treating the application as idle when it is really thinking "quietly" - working but showing no observable indication that it is working.  The following options are available in order to correct the situation.

1. Specify a watch string

A simple solution may be available if the application displays unique text string while processing  (e.g.  "Generating Report.."., or "Please Wait...").   For this case, edit the default.tam file and add up to four watch strings.  Samples are included as comments in the file.

/ConsoleWatchString "Please Wait..."

2. Restrict Adaptive Settings

If this problem may be caused by the adaptive settings feature of Tame.   Tame can dynamically alter its settings based on the behavior of the application.  This is  necessary in order to allow Tame to work "out of the box" with as many applications as possible.   This dynamic behavior can be restricted to disallow some scenarios, or can be disabled altogether in favor of fixed tuning parameters.

To change settings for all applications, edit the Settings\Default.tam file.  To change settings for a specific application, copy the Settings\Default.tam file to one named based on the application, and edit it as needed.  See the section titled "Custom Settings for a Specific Application" for more details.

For applications that always poll when idle, adaptive settings may be tuned to require polling to substantiate the release of time slices.   To see if this is the case, use the start menu shortcut to monitor all DOS applications, and make sure the adaptive settings do not normally use the "NonPoll" option.   Also verify that is the option in use when it stalls.  If this is the case, the following option may be used to correct it.

/AutoAdaptNonPoll off

Similarly, applications that always poll at a high rate, or with any other consistent pattern, Tame may be tuned to respond only to that pattern.

If this level of tuning is more than you want to get into, TameDOS suport can usually recommend the most likely parameter given a trace file (see below).  The trace should include some interaction before and after the stall.

3. Check CPU usage without Tame

Run the application without Tame, and look at CPU usage during the slow operation.  if it uses low CPU during the slowed activity, specify the following option:

/CpuIdlePercent 10

4. Use App Queue Timing

The /WatchAppQueueWork option may correct the problem.  If the application is a Clipper application, copy the C:\Tame\ClipperQ.tam file to replace the default C:\Tame\Clipper.tam file.  The replacement file uses default App Queue timing and also enables print spooler processing.

5. Raise the Boost Parameters

In some cases, the key boost and/or DOS boost may need to be raised. To do this, edit the default,tam file and change the key and DOS boost numbers to 3 and 10.  If this solves the problem, lower them to find the lowest value where the application runs well.

Tame does not reduce CPU usage

If Tame is having no effect, the first step is to verify that Tame is being loaded.

One way to verify that Tame is loaded is to use the Tame Release 4.5 start menu diagnostics item.   Select an option to monitor applications, and  the summary should list whether Tame is loaded.

If you have not yet licensed Tame, the console title will provide quick verification  of whether Tame is loaded.    If the console window  title contains the Tame version and evaluation notice, the demo version of Tame is loaded.

If Tame is not being loaded, try the following to find out why:

Check the autoexec.nt file and verify that the last line loads tame-nt.com, or add a line similar to the following one if it is not present.   Use the Tame path on your system, but be sure to use the DOS-compatible 8x3 file name.

C:\Progra~1\Tame\tame-nt.com

Open a cmd prompt in the Tame folder and run tame-nt from the command line.  Look for an error message to provide the reason why it failed.

Key repeat is slow when using the cursor keypad

Keys on the gray cursor keypad can sometimes repeat more slowly than those on the numeric keypad.  This occurs with or without Tame.   The key repeat rate can sometimes be improved by toggling num-lock.

A long running procedure degrades system performance

Long running processes such as report printing or database maintenance can consume 100% of the CPU and slow performance for interactive users.   This is especially noticeable with a single-CPU system, but can happen on a system of any size.  Tame is normally tuned to lower CPU while the application is idle, while getting out of the way when the application is busy.    For cases where this creates a performance problem for other users, Tame provides the following options to deal with the situation.

1.  For cases where a specific application demands high CPU when running, that application may be restricted to use a subset of the available CPUs.  This ensures that   the problem application will have limited opportunity to slow users of other applications.   Of course, a machine with multiple CPUs is needed in order to use this option.  Note that some applications transparently spawn a separate executable to perform long running operations (e.g. printing reports).   For those applications, Tame an be configured with different parameters for interactive use verses while the report is running.

2.  Tame can lower the priority of the procedure after it has been running for longer than a specified threshold (usually a couple of seconds).  This allows the procedure to still use 100% of the CPU when no one else needs it, but release the CPU to quickly service other users when needed.   To enable this option, edit the Default.tam file and add the following line.

/WorkPriorityTicks 20

Note that this will not necessarily reduce CPU usage, but it can improve interactive response for other users.

The CPU spikes briefly after each key press

If the CPU spikes briefly with each key press then this can be normal.  Tame provides a brief boost when a key is pressed, and if that key causes any DOS activity, the boost is further increased.  Normally, the key boost is too brief to show up in performance monitor, so if a spike is seen, it is likely due to DOS activity.

A new Key Spike Optimization feature is available in Tame release 4.5.  This feature should reduce the CPU spike to minimal levels during most keyboard typing situations,

If you want to further reduce the spike, set this option:

/BoostKeyRead 0

Afterwards, test the application to make sure that it does not run more slowly.   If the system appears to hang, then Tame probably began a task switch while the application was still working.  Press the right shift key and Tame will provide a key boost to continue processing, and adjust the parameters upward until the hang disappears.

Compatibility Problems

"Incorrect DOS version" error when using Tame

The incorrect DOS version message can happen if the environment is full. Try adding this to the autoexec.NT:

Set comspec=c:\windows\system32\command.com

Of course, it can also happen if a file from a different version of NT or DOS is present.

Some characters do not display properly

Many problems related to character display may be solved by switching between Raster and Truetype fonts for the console.

If changing the font does not correct the situation,  there re some Tame options that may help.   Edit the Default.tam file and try the following, one at a time, to see what the problem may be.  Note that each of these is contained in the file, and the existing entry may be uncommented if desired.

/FoxVideo off

/WatchVideo off

/KeyResponseOptimize off

/KeySpikeOptimize off

Problems related to the NumLock key or the numeric keypad

By default, Tame does toggle numlock in order to correct a problem with Windows handling of the numlock.  This feature may be disabled by setting a registry value.

Registry values can be effective system-wide, or only for specific users.  The key named HKLM\Software\TameDOS contains system wide values, and HKCU\Software\TameDOS contains user overrides.

To disable the numlock toggle, select the user key or the system key, create a REG_DWORD value named ResetNumlock and set it to 0.

General Questions

Should Tame be installed on the workstation?

Tame may be used on whatever machine is used to run DOS applications.

If the workstation is acting as a terminal client, and the application runs on the server, Tame should be installed on the server.   This ensures that the maximum number of users my run on that server without an necessary performance problems.

However, if the workstation is used to run DOS applications Tame should be installed on the workstation.  Without Tame, other applications run slowly while a DOS program is open.  Performance may be restored without Tame by configuring the program to not run in the background, but there are undesirable side effects to this approach.   For example, the user may switch to a different application while waiting for a process to complete.  What if a record happens to be locked at the time of the switch?  With the application set to not run in the background, that record will remain locked until the user switches back, and other users may be impacted.  With Tame, you may allow the application to run in the background.  The application will continue processing in the background, and still release the CPU when it is done processing.

How can I change default Tame settings?

Default settings stored in the default.tam file, which is located in the Settings folder inside the Tame folder.  The easiest way to edit the file is to use the shortcut that is provided in the start menu:

      Start, Tame, Admin Tools, Edit Default.Tam

Comments are included in the file to provide help with common settings.   Inactive alternatives are also present in the file, and they may be easily activated by removing the comment prefix from the line.  For example, The following line is in the file::

;*  /ConWatchString "Please Wait..."

To activate, remove the comment prefix, and correct the setting (in this case, a text string) if necessary.

/ConWatchString "Please feel free to get a cup of coffee - this may be a while..."

What access rights are needed to use Tame?

Users need Read rights to the Tame folder, and may need read/write to the Tame Logs folder.

If you have logging enabled for some or all users, those users will need read/write access to the log folder.  The default is "Program Files\Tame\Logfiles", so Tame will not be able to log activities of non-administrative users unless either the permissions are changed, or Tame is directed to use a different folder.

To change the log folder, change the registry value named HKLM\Software\TameDOS\LogPath to specify the desired location .

What does the setup program do when Tame is installed?

Setup does the following:

(1) Copy the files to C:\Program Files\Tame

(2) update the autoexec.nt file so that Tame is loaded whenever a DOS program is run.  This is done with the following command line:

TameView /xa

(3) Adds shortcuts to the start menu for diagnostics and administration

Special Applications

How to specify Tame settings for one application

Tame settings may be customized for a specific application by creating a settings file and either place it is the same folder as the application, or place it in the Tame folder with a file named based on the application.   To simplify editing, the default.tam file should be used as a template when creating a new settings file.

For an application C:\MYFOLDER\MYAPP.EXE, Tame searches for settings in the following order:

C:\MYFOLDER\MYAPP.EXE.TAM

C:\MYFOLDER\MYAPP.TAM

C:\Program Files\Tame\Settings\MYAPP.EXE.TAM

C:\Program Files\Tame\Settings\MYAPP.TAM

C:\Program Files\Tame\DefaultSettings\MYAPP.EXE.TAM

C:\Program Files\Tame\DefaultSettings\MYAPP.TAM

C:\MYFOLDER\DEFAULT.TAM

C:\Program Files\Tame\Settings\DEFAULT.TAM

C:\Program Files\Tame\DefaultSettings\DEFAULT.TAM

How to enable Tame for 16 bit Windows apps

Many Windows applications were designed for multi-tasking and do not require Tame.   Tame is normally disabled for 16 bit Windows applications, but it may be enabled to help with troublesome windows applications if necessary.    Note that Tame can reduce CPU used by Windows applications , but the results are not as dramatic as with  DOS applications.  In some cases, the responsiveness of the application may be reduced, or the application may not operate correctly.

To enable the use of Tame for Windows applications, copy the Settings\Default.tam file to a file named KRNL386.EXE.TAM in that same folder.  This will override the default settings for the KRNL386.EXE program which is used to run Windows applications.  .

Note that the new settings may not take effect until all users log off or the system is re-booted because KRNL386.exe process remains in memory.

How to disable Tame for one application

Tame settings may be customized for a specific application by creating a settings file.

By default, Tame is disabled for KRNL386.EXE by including a file named KRNL386.EXE.TAM  in the Tame\DefaultSettings folder, and placing appropriate options in that file.  To disable Tame for another application, copy the KRNL386.EXE.TAM file to a new file with a base name that matches the application.

For example, to disable Tame for an application named UNTAMED.EXE, Copy KRNL386.EXE.TAM to UNTAMED.EXE.TAM.   The new .TAM file may be saved into the Tame\Settings folder, or if you prefer, save it to the same folder that contains UNTAMED.EXE.

WordPerfect recommendation

If macros run slowly in Word Perfect, edit the default.tam file and specify the following option:

/wxvideo

All available memory is used with FoxPro applications

By default, a FoxPro app will use all the memory it can get.   Memory utilization may be limited by changing the FoxPro config file.  Change or add a MEMLIMIT= statement.

Advanced Diagnostics

How to monitor DOS application statistics

The Tame Start Menu includes diagnostic and monitoring selections that allow monitoring selected or all applications.  See information on the TameView program for additional options that are not provided in the menus.

How to produce a trace file for TameDOS analysis

A trace file and/or snapshot image file may be requested in order to resolve issues, or answer technical questions about use of Tame with your application.

To produce a diagnostic trace or image file, select the following start menu items

Start

      Programs

           Tame Release 4.5

                Diagnostics

                      Trace Recent Process

Run the app and make sure it is being identified in the trace window.

To produce a trace, bring the application to the point where the trace should begin.  Then switch to the trace window and press "T" to start the trace.

Work in the application to exhibit the problem.

To end the trace, press "T" again or exit the app.   Look in the trace path for the new file named TameDosTrace.<app>.<pid>.tdt, where <app> is the name of the program and <pid> is the process id.   The default trace path is C:\Tame\LogFiles.  Compress the trace file using WinZip or another compression tool, and send it to trace@tamedos.com

.

To produce a snapshot image, use the same menu selection, but press 'I' instead of 'T".   Both files may be produced if desired.

How to produce a trace that includes program startup

In order to trace an entire run, following these steps.

1.   Set the following registry value.

HKCU\SOFTWARE\TameDOS\DosTraceEnable = T

Note that the HKCU registry key is normally used so that you will not inadvertently start a trace for another user.  If the intent is to trace other users, the HKLM key can be used instead.

2.   Run the application

3.   Use the application as normal

4.   Exit the application

5.   Look in the trace path for the new file.   If the trace file is not huge (say less than 20 megabytes), compress it using WinZip or another compression tool, and send it to Tame support.

Registration and License Issues

The demo version verses the licensed version of Tame

The demo version of Tame is fully functional.  The only changes that the registered version provide are as follows:

1. The console title is updated for the demo in order to remind you that this is a demo - the registered version does not alter the console title by default.

2. After a long program run, the demo displays a screen to boast about how much processing time it has saved during that run.  The registered version does not display that screen.

3. The demo is only valid for 30 days - the registered version is perpetual.

How to verify Tame is loaded using the console title

The registration reminder is not added to the title after Tame has been licensed.  If you prefer an altered title, perhaps to confirm whether Tame is (or is not) loaded in a process, set the following registry value.

HKLM\Software\TameDOS\ConsoleTitle

The value should be the text of the title that you want.

This may contain environment variable references to be expanded at run time.  The following environment values are set by Tame so that you may include them in the title.

TameVersion

TameFolder

TameProcessId

TameDosAppName

TameDosAppFolder

TameDosAppExt

TameDosAppPath

TameDosAppArgs

For example, the following title may be used:

"Running %TameDosAppName% (Tame v%TameVersion% in use)"