   ͻ
    SETTINGS.TXT - A guide to getting the most performance from OS/2! 
   ͼ
                            Revision 2.20 
                           ;
(Revised 12-22-94)

Hello, and welcome to the world of OS/2!


These are the Settings I use to run 3 dial-in lines and one local
node under OS/2 Warp 3.0 for Windows. I have posted comments throughout
this file to help you along the way. Extensive testing has been done
with these settings on my system as well as a number of others to ensure
you get the most performance out of OS/2. Let me know if these settings
help you! These settings have been proven to work well under OS/2 2.1,
2.11, 2.1 for Windows, 2.11 for Windows, and Warp 3.0 for Windows.

The first thing you will need to get is the current version of SIO,
Ray Gwinn's replacement for OS/2's COM drivers. You will see SIO
referenced throughout this text, and as of now, SIO is a NECESSITY
if you want to run any kind of a BBS under OS/2. The current version
of SIO is SIO140.ZIP. The number of Ray's BBS is 1-703-494-0098.
Credit card registration online is available.

The next thing you will need is for DOS timeslicing. It's a freeware
program called OSTSR. This small TSR will convert Desqview aware
programs' PAUSE commands  to OS/2 DOSSLEEP commands. If you currently
use TAME and OS2SPEED, switch to OSTSR. You'll notice quite a
performance increase. The current version of OSTSR is OSTSR11.ZIP.
OSTSR is available for FREQ off of 1:2210/9639 by using the
filename OSTSR11.ZIP.

If your are planning on running multinode Wildcat 4.x under OS/2 Warp,
you will also need to download WCOS2FIX.ZIP, which patches Wildcat's
files to work around a bug in OS/2. This is only necessary if you are
trying to run more than one NODE under Wildcat. If you are receiving
"Unable to initialize network 10310" errors, you need this fix. This
file can also be FREQ'ed from 1:2210/9639.

IBM will be releasing a fix for the problem shortly.

ͻ
 Please note that if you choose to use these settings for OS/2, you are  
 STRONGLY urged to use these settings for ALL of your OS/2 DOS sessions, 
 both VDM, WIN-OS2 and native. Doing this will assure you are getting    
 the most performance possible under OS/2.                               
ͼ

Also note that even though this text file contains items that will likely
generate a considerable performance boost for your system, I do not
recommend any settings that would put the stability of OS/2 at risk. I do
not use any undocumented commands, and none of my modifications pose any
risk to system stability whatsoever. You can be assured that testing these
settings will pose no threat to OS/2's stability. Extensive testing has been
done to assure stability, no matter what type of DOS-Based BBS software you
run.

Well...here they are! Good luck!

DOS_AUTOEXEC                x:\AUTOEXEC.BAT

NOTES: With OS/2 you are allowed to have a different AUTOEXEC.BAT for each
DOS session you have. This is an excellent feature for multi-line BBS's.
Please note it does not have to be named AUTOEXEC.BAT, it can be named
anything you wish. For example, NODE1.BAT, etc.

DOS_BACKGROUND_EXECUTION    ON

NOTES: Necessary for multitasking ANY communications program.

DOS BREAK                   ON

NOTES: Turn on to Allow CTRL-Break in the DOS session.

DOS_DEVICE                  x:\OS2\MDOS\ANSI.SYS
                            x:\xxx\VX00.SYS

NOTES: ANSI.SYS is necessary to load if you wish to be able to view callers
activity while they are in a door.

VX00.SYS is OS/2's FOSSIL driver, and is included with the SIO package.
If you use doors that require a FOSSIL driver, VX00 is the one you need
to load. (Do NOT use DOS fossil drivers such as X00 or BNU) Substitute
the "x"'s above with the appropriate paths.

DOS_FCBS                    16

DOS_FCBS_KEEP               8

DOS_FILES                   40

DOS_HIGH                    ON

DOS_LASTDRIVE               Z

DOS_RMSIZE                  640

DOS_SHELL                   x:\OS2\MDOS\COMMAND.COM x:\OS2\MDOS

DOS_STARTUP_DRIVE           (Blank)

DOS_UMB                     ON

NOTES: This is up to your individual preference. For Sysop's who use
Livecat door monitor program under OS/2 this setting as well as DOS_HIGH
must be turned OFF for that program to work properly.

DOS_VERSION                 (Too Numerous To List)

NOTES: This setting is only for programs that require a specific DOS
version. 90% of the time this will never need to be touched.

DPMI_DOS_API                AUTO

DPMI_MEMORY_LIMIT           16

NOTES: Increasing this from the default of 4 will cause your DOS-based
programs to load up faster.

DPMI_NETWORK_BUFF_SIZE      8

EMS_FRAME_LOCATION          AUTO

EMS_HIGH_OS_MAP_REGION      32

NOTES: This is different from the default of 0. Some programs that use EMS
encounter problems if this is not set to 32.

EMS_LOW_OS_MAP_REGION       384

EMS_MEMORY_LIMIT            1024

NOTES: See notes under XMS_MEMORY_LIMIT

HW_NOSOUND                  OFF

HW_ROM_TO_RAM               ON

HW_TIMER                    OFF

NOTES: Some people were having difficulty getting system sounds to
generate from the PC Speaker when this was turned on. If you are having
this problem, turn this option OFF. If you are not experiencing this
problem, you can turn it ON. However, the performance improvement is
hardly noticeable under most cases.

IDLE_SECONDS                60

NOTES: Necessary at 60 for 14.4+ modems. Improves CPS rates dramatically
(as opposed to the default of 0)

IDLE_SENSITIVITY            38

NOTES: If using OSTSR - Set to 38, otherwise, set it to 100 (Disable it)
OSTSR needs IDLE_SENSITIVITY enabled for it to work properly.

INT_DURING_IO               OFF

NOTES: LEAVE IT OFF! Under NO circumstances should this be turned on unless
it is specifically needed for a particular DOS session. Your CPU will take
a serious performance hit with this turned ON.

KBD_ALTHOME_BYPASS          OFF

NOTES: Setting this to ON prevents you from using Alt-Home to toggle
between DOS full screen and DOS Window.

KBD_BUFFER_EXTEND           ON

KBD_CTRL_BYPASS             NONE

KBD_RATE_LOCK               OFF

MEM_EXCLUDE-REGIONS         (Blank)

MEM_INCLUDE_REGIONS         (Blank)

MOUSE_EXCLUSIVE_ACCESS      OFF

PRINT_SEPERATE_OUTPUT       ON

PRINT_TIMEOUT               15

NOTES: This setting is up to you. It adjusts the amount of time, in
seconds, that the system waits before forcing a print job to the printer.
The default of 15 seems to work fine for me.

SESSION_PRIORITY            1

NOTES: This setting is OS/2 3.0 specific. It works best at the default
of 1.

SIO_ALLOW_ACCESS_COM1       See Notes
SIO_ALLOW_ACCESS_COM2       "   "
SIO_ALLOW_ACCESS_COM3       "   "
SIO_ALLOW_ACCESS_COM4       "   "

NOTES: Only allow access to the one COM port you are using for this
session.

SIO_IDLE_SENSITIVITY        32

SIO_MODE_DTR                No Change at Open or Close

NOTES: Some people were reporting drop carriers if this option was set to
"On at open, off at close" using SIO 1.32 with a front-end mailer. Setting
this to the default cures that problem.

SIO_MODE_FIFO_LOAD_COUNT    16

SIO_MODE_IDSR               Ignore DSR during receive

SIO_MODE_OCTS               HandShake signal, as in RTS/CTS

SIO_MODE_ODSR               Ignore DSR during transmit.

SIO_MODE_RTS                HandShake signal, as in RTS/CTS

SIO_MODE_XON/XOFF           No XON/XOFF Flow Control by SIO

SIO_SCREEN_SUNC_KLUDGE      ON

NOTES: Test this on your particular system. It seems to have different
results depending on the system. It improves performance for me when it is
ON, however it may not for you. Test and set accordingly.

SIO_SHARE_ACCESS_WITH_OS/2  ON

SIO_VIRTUALIZE_16550A       ON

SIO_VIRTUALIZE_COM_PORTS    ON

VIDEO_8514A_XGA_IOTRAP      OFF

NOTES: Some people were having problems when switching from full screen
graphical programs (such as Ripterm) to something else and then back again.
Their video would become corrupted and their screen would go blank or turn
a different color. Setting this to OFF cures that problem.

VIDEO_FASTPASTE             OFF

VIDEO_MODE_RESTRICTION      NONE

VIDEO_ONDEMAND_MEMORY       ON

VIDEO_RETRACE_EMULATION     ON

VIDEO_ROM_EMULATION         ON

VIDEO_SWITCH_NOTIFICATION   OFF

VIDEO_WINDOW_REFRESH        1

XMS_HANDLES                 32

XMS_MEMORY_LIMIT            0

NOTES: Either use EMS or XMS. (Whatever the particular program that you are
running wants).  Otherwise you are starving OS/2 of the one thing it likes
most...LOTS of RAM. You're consuming half of your total 8 meg for this
DOS session alone. 1 meg EMS is adequate. That way you get two DOS sessions
for the price of one. You can always increase the EMS limit if you need
more EMS for your program.

SUGGESTION: If you run Windows programs under OS/2, allocate XMS memory to
the WIN-OS2 sessions, not EMS. Why? Windows does not use EMS, it only uses
XMS, thus allocating any EMS memory to WIN-OS2 sessions is unnecessary.

XMS_MINIMUM_HMA            0

ADDITIONAL NOTES:

My best suggestion is if you have the means to do so...get yourself some
more RAM.. I have 16 meg on my machine...and it's enough to handle 4 DOS
sessions open at once with 2 meg allocated to each window. This leaves
8 meg left for OS/2...Memory is more important to OS/2 than processor.
It knows how to multitask, it just needs the memory to do it effectively..
OSTSR is also an excellent idea...I use OSTSR with a timeslice value of 3.

  ͻ
   NOTE: If you use OSTSR, you do NOT need Tame or OS2SPEED any more. 
  ͼ

If you run Wildcat, load it with the /T parameter so it can release
timeslices...(although it seems to do it without the /T <g>)

Hopefully you are using 16550 UART's as well..definitely a MUST with
high speed communications...

ͻ
 IMPORTANT: If you are running Wildcat! 4.x under OS/2, you will need to   
 make a change to your modem's MDM file that Wildcat! uses. You will need  
 to set the transmit AND receive FIFO levels to 14 each. This will         
 allow WC! to run as efficiently as possible under OS/2. If you are running
 other DOS BBS software, and you also have the ability to modify a setting 
 similar to this, please do so. The HIGHER the number, the better in most  
 cases. If you discover that this is not true in your case, please let     
 me know and I will note that in the next revision of SETTINGS.            
ͼ

Since OS/2 news is always changing, and more new tips and tricks become
available all of the time, I do update this file on a regular basis.
PLEASE keep this in mind. When you make a change to any DOS setting,
make the appropriate canges to ALL of your DOS sessions. While this is
time-consuming, it will result in a far-more stable and higher
performance system. Please take the time to have all of your settings
for all of your DOS sessions  reflect what I have listed.

Many of you have also questioned the fact that on certain systems ANSI
displays seem slow. Let me try to explain why this may APPEAR to be the
case, but is not usually. SIO allocates a 4k buffer for incoming and
outgoing data. Since it does this, screens may appear choppy on the
SYSOP side because it's sending the information in large "chunks".
However, for the caller, the screens will display smooth. The "chunky"
screens are a characteristic of the settings I recommend, since I
feel sending it to the buffer as fast as possible and subsequently
sending it to the remote caller as fast as possible is by far the way
to go. Processor speed is also a factor. SIO will send output to the COM
ports faster with a faster CPU. The increase in speed from a 386 to a 486,
or from a 486 to a Pentium is very noticeable.

Also, if you still seem to be having problems with slow display speeds,
you could also try disabling your modem's compression. Many people have
stated that this does help.

A note about Uploads. Many of you have probably noticed that your system
slows down a bit when a caller is uploading a file on systems that do not
communicate directly with the COM ports (such as Wildcat, RA, TriBBS, etc.)
My settings will try to minimize that effect as much as possible, but it
will still be noticeable to a point. Just remember that system stability
is far more important then a temporary decrease in computer speed.

Now on to that killer of a file they call CONFIG.SYS<G>
-
IFS=x:\OS2\HPFS.IFS  /CACHE:2048 /CRECL:16 /AUTOCHECK:CD <-EXAMPLE see notes

NOTES: This Line is only necessary if you use HPFS drives. If you have 4-8
MEG RAM, change the cache parameter to /CACHE:1024; 9-15 MEG - /CACHE:1536;
16+ - /CACHE:2048. CRECL defines the size of the maximum record size that
will be cached. Valid ranges are 2K to 64K with 4K as the default. I have
found that 16K works well for me, but you can experiment with that
if you like. AUTOCHECK is important because if OS/2 crashes, AUTOCHECK
tells OS/2 which drives to CHKDSK for errors. As you can see I have OS/2
check my D and E drives if the system crashes. Change this to your drive
letters so it will work properly. (OS/2 SHOULD have done this for you when
you installed it. Remember if you do NOT use HPFS drives, REM this line OUT.

Since HPFS is an Installable file system (i.e. a portion of it is memory
resident) many have asked how much memory HPFS consumes. Using HPFS
instead of FAT requires approximately 130k of RAM. This is a small price
to pay for the vastly increased performance of HPFS'd drives. If you are
considering switching from FAT to HPFS, you MUST have an OS/2 backup
program to do so. Fastback Plus for OS/2, as well as IBM's tape backup
software are excellent choices. I personally use Fastback/2, and I
highly recommend it. It supports nearly every SCSI and QIC tape drive
out there, as well as removable drives such as Bernoulli drives.

PRIORITY_DISK_IO=NO

REM PRIORITY=DYNAMIC
^^^^^^^^^^^^^^^^^^^^
NOTES: One of the WORST things to do...REM this command OUT if you have it.

REM TIMESLICE=50

NOTES: REM this command while you're at it..with this command you are
telling OS/2 to multitask like Desqview. You don't WANT OS/2 to multitask
like DV, you want OS/2 to multitask like OS/2...and your crippling that
ability with that line...

FILES=40

BUFFERS=40

NOTES: OS/2 Warp defaults this to a value of 90. During testing I found
having it set that high seems to decrease performance slightly. I still
recommend a value of 40, not the default of 90.

IOPL=YES

NOTES: IOPL= Input/Output Privilege Level. Simply tells OS/2 what privilege
level to assign to programs. Leave this at the default of YES which allows
programs that wish to access different levels of I/O to do so.

DISKCACHE=512,LW,AC:C  <-- EXAMPLE - see notes.

NOTES: This statement tells OS/2 how to cache your FAT drives ONLY. HPFS
drive caching is controlled by the HPFS IFS statement above.

If you do not use FAT drives, REM the above line out. A DISKCACHE of 1024
is good for systems with 4-8 meg RAM, for 9-15 MEG, use a DISKCACHE of 1536,
and 16+ use a DISKCACHE of 2048. The LW command turns on lazy-writes, and
is recommended. The AC command is the same as the AUTOCHECK command for
HPFS drives.

You may notice that while I allocated a 2 MEG cache for HPFS, I only
allocated 512K for FAT, even though I have 16 MEG of RAM. Remember, if I
allocated 2 MEG for BOTH FAT and HPFS, there goes 4 MEG of precious RAM
that OS/2 COULD have been using. Since my system is primarily HPFS drives,
I use the full 2 MEG cache for HPFS, and use 512K for FAT because I
rarely access my FAT drive. Use this same principle based on your situation.
If you primarily use FAT instead of HPFS, allocate more cache to FAT than
to HPFS.

MAXWAIT=1

NOTES: Sets the amount of time the system waits before assigning a waiting
thread a higher priority. For communications programs, the sooner, the
better. I recommend a value of 1.

SWAPPATH=x:\ 10248 10248

NOTES: Increase your SWAP file to 10 MEG (Something like 10248 10248)..
that will definitely give you a slight perf. boost. Heck if it wants
to swap to disk...LET IT!<G>

You will notice a slight performance increase my moving the swapfile
from the default location (x:\OS2\SYSTEM) to the root directory of
your least-frequently accessed physical hard drive. If you only have one
hard drive, move the swapfile to the root directory of that drive.

Remember, In my case, I have 16 MEG of RAM, I usually have 4 DOS sessions
open at once, consuming approx 8 MEG RAM total. I also allocate approx.
2.5 MEG RAM to disk caching. That leaves 5.5 MEG for OS/2 to use, and some
of that holds TSR's, system DEVICE's, etc., (not a whole lot of RAM left!)
so I give OS/2 a large swap file (10 MEG). And now you can see the reason
why I do so. It gives OS/2 the breathing room it needs, and improves
performance noticeably.

THREADS=256

PRINTMONBUFSIZE=1024,134,134

NOTES: This value sets the buffers for each of your LPT (printer) ports.
As you can see I have LPT1 set wih a buffer size of 1024, and LPT2 and LPT3
at their minimum defaults of 134 (they are not used). This results in a
noticeable printer performance boost.

FCBS=16,8
DOS=HIGH,UMB

DEVICE=x:\xxx\SIO.SYS

NOTES: Want to lock the com ports?...to do that..change that line to this:

DEVICE=x:\xxx\SIO.SYS (1:38400) (2:38400)

NOTES: The above line locks COM1 and COM2 at 38.4. Also, any parameters
for SIO MUST be specified on the DEVICE=SIO.SYS line, NOT the VSIO.SYS
line.

DEVICE=VSIO.SYS

NOTES: This is the system file DOS uses. SIO.SYS is used by OS/2.

SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS,LAUNCHPAD

NOTES: This SET statement determines what items to start automatically at
bootup. I recommend leaving this alone, unless you would like to disable
the automatic startup of the launchpad. If you would like to disable
automatic launchpad startup, remove ",LAUNCHPAD" from the above line.

SET RESTARTOBJECTS=NO/STARTUPFOLDERSONLY=YES

NOTES: This is an extremely useful option to place in your CONFIG.SYS to
control which applications are re-started when the system is rebooted.
By default, OS/2 will load up any applications that were running the last
time you turned your computer off (or rebooted). This presents a problem
when the reason you had to reboot was because of a program that was not
working properly, as OS/2 will try to load it again. Placing the above
line in your CONFIG.SYS forces OS/2 to only start programs that are in
the startup folder on the Desktop. For example, if you had shadow's of
your BBS nodes in the startup folder, and the system rebooted, your BBS
nodes would automatically be restarted for you since they were in the
startup folder.

SET PROMPT=$p$g
SET DIRCMD=/o/p

NOTES: Some SET statements, like the ones above, may look out of place in
a CONFIG.SYS file, but they actually are the SET statements that are
enabled when you load an OS/2 session. These SET statements in the
CONFIG.SYS do not apply to OS/2 DOS VDM's. You will need to place similar
statements in your DOS AUTOEXEC.BAT for them to be recognized. Just think
of OS/2's CONFIG.SYS as a MS-DOS CONFIG.SYS and AUTOEXEC.BAT combined.

RUN=x:\OS2\CACHE.EXE /MAXAGE:7500 /DISKIDLE:60000 /BUFFERIDLE:60000

NOTES: this command is specific to HPFS only. If you have FAT drives,
ignore this line. This line specifies the parameters that HPFS uses to write
information to disk. This command is specified as a RUN= statement in the
CONFIG.SYS (as above), or it can also be entered at the command prompt.
(Yes you can actually change the disk cache parameters on the fly!).

The /MAXAGE parameter specifies the maximum amount of time (in milliseconds)
before frequently written data is transferred to disk.

The /DISKIDLE parameter sets the amount of time the disk must be idle
before it can accept data from cache memory.

The /BUFFERIDLE parameter specifies the amount of time (in milliseconds)
that the cache buffer can be idle before the data it contains must be
written to disk.

Using this line enables your system to use its memory in the most
efficient way possible.


Hope these help you as well as others... feel free to log on to my BBS,
and you can see how these settings effect performance! (815-622-9639)
Do a message search...anything...it just humms right along...stable as
anything too... Try saying THAT with Desqview <UGH!><G>

If you have any other questions, please let me know! I'll help if I can.

If these settings do help you, let me know! Comments are always
appreciated, positive or negative.If you notice anything I may have left
out, or something you would like to see added to SETTINGS, please let me
know!

I can be reached at:

FIDO - 1:2210/9639
InterMailNet 211:211/11350
Internet - sysop@shadow.org
Wildnet - OS/2 conference
FIDOnet - Wildcat Sysops conference or any OS/2 conference.
MSINet - Wildcat Conference
MSI HQ BBS - OS/2 Conference
CompuServe - 73053,732

Good Luck!
Tony Harrison, Sysop
Shadowgate BBS
BBS (815) 622-9639
