MS-DOS Internet, games, and general purpose applications

MS-DOS Software Applications

Table of Contents:

 Internet Applications
 General purpose apps
 Converting and reformatting text documents
 Batch file programming
 New! Using a Soundblaster card
 Using Slow-down programs
 Running MS-DOS programs under Win 9x
 mIRC scripts
 Miscellaneous
 Credits

These pages are hosted at 2 sites:
http://mywebpage.netscape.com/baldwinwh/DOSPgms/DOSPgms.html, and
http://members.fortunecity.com/whb1/DOSPgms/DOSPgms.html

If your browser has problems with one site, please try the other, and if both sites cause you problems, please email me at baldwinwh (at) netscape (dot) net.  Given the transient nature of free web hosts these days, it's probably best for you to bookmark both of them.
I apologize for the advertising, but that's an unavoidable part of using free web hosts.



Internet applications:

Many people, either for fun, or out of necessity, still use MS-DOS programs to connect to, and utilize, the Internet.  DOS Internet applications include email, FTP, usenet, telnet, Gopher, IRC, MICQ, web browsing, and more.  Here are some links to some DOS Internet sites:

Start at TVDog's archive: http://www.oldskool.org/~tvdog/ ,also available by FTP, at:  ftp://ftp.oldskool.org/pub/tvdog/ .  In either case, click to get to the DOS Internet folder.  Then, read the introduction, or, download the file available by FTP, with the unassuming title of 'README'.  It is an excellent tutorial about how to install and run DOS internet applications.  Here are some other DOS Internet links: www.fdisk.com & www.nettamer.net .

DialPC is a free MS-DOS modem software tool.  It is a replacement for the Chat dialer program that is included with DOSPPP06.  It works better, for some people, and especially those with XT computers, than Chat.  For more information about DialPC, click  here.

Return to top of page



General purpose applications:

The Variable Investment Analyst v.6.00 is an Investment Portfolio Manager for MS-DOS.  It calculates profit, capital gain, total return, internal rate of return (IRR), buy/sell prices. 12 types of charts.  Import/export data.  Especially useful for investments with variable cash flows, such as mutual funds, 401k plans, annuities, and partnerships.  No hard drive required.  Pull-down menus, dialog boxes, mouse control.  Click here for a screen shot.  News! (06/2003) New version 6.00 changes 'Combined IRR' to include total portfolio value and other P/L statistics.  News! (12/2002) Version 5.99 fixes a nasty bug that caused the program to crash when you changed a transaction record, & adds new Printer/page setup options, error checking, explanation of 'How date ranges affect calculations', bug fixes, and many other improvements.  See Readme.doc for details.  The Variable Investment Analyst and Horizon Investment Analyst can also now share the same data files.  Note: Click here for a Windows 9x version of The Variable Investment Analyst, but renamed as Horizon Investment Analyst.  It has a very slick interface and enhanced features.

If the above links don't work, try here, instead.

Personal Schedule is a Calendar, Schedule, Project Manager, PIM for MS-DOS.  Among other things, it features the ability to automatically calculate due dates for recurring tasks.  It features the same user interface as The Variable Investment Analyst. Note: Click here for a Windows 9x version of Personal Schedule, with a very slick interface and enhanced features.

If the above links don't work, try here, instead.

Are you one of those who *still* don't back up your hard disk regularly?  Would you like to find a freeware program that is easy to use?  Then, here is a backup program for you.  It is called  WBackup.zip .  It allows you to define multiple drives, directories, and files that you want to back up on a regular basis, and cycles between a user definable # of different 'grandfathered' backup media sets.  It always knows what the previous backup set was, and what will be the next set to use.  It requires the use of PKZip, or another compression program.

PCBackup is another freeware backup program, but, instead of using PKZip, it operates as a shell over the existing MS-DOS program Backup.com, enhancing, and extending its functionality and usefulness.  Like WBackup, PCBackup allows the user to dynamically and selectively backup multiple drives, directories, and files, and manage multiple backup media sets, and history logs.  Semi-automatic operation after initial setup.

PCMenu is a nice, simple, customizable freeware menu/program launcher, that uses very little RAM.  Note (2/2004): Version 1.07 adds a new optional parameter '-C' which forces PCMenu to *always* shell your command strings to DOS, rather than call any programs directly. This feature was added to help users get around the 80 character command string limitation, and may also help eliminate other problems, for instance, problems when loading PCMenu in high memory, e.g. 'Loadhigh PCMenu -C'.  Also, the program now traps invalid drive or directory changes, either entered interactively or thru menu options, and lets you correct them rather than simply exiting as it did before.

ZipMake.Bat and  ZipMakeExp.bat make it easier to use PKZip to make a .zip file with the same name as the source file.  They are especially handy when you are zipping long file names, and you want to preserve the long file names within the .zip file.  ZipMake.bat is the DOS command line version, and ZipMakeExp.bat is the Microsoft Explorer version, which allows you to easily create .zip files by simply dragging and dropping.  For a .zip package that includes both *freeware* programs, click  here.

Multi-Compare v.1.3 lets you compare multiple files in one drive/directory with another drive/directory.  It's great for someone who needs to roll out multiple diskette copies of an application or any set of files.  It operates as a shell over your existing single file compare program, such as FC.exe, or Comp.exe.  Supports wildcard, and multiple directory comparisons.  Note (7/2001): new version 1.3 adds some new options and enhancements, including long file name support.  Now, it's even more flexible than before!  Be sure to download and check out all the new features!

Multi-Find v 1.1 is used to search multiple disk files for a specific character string. Operates as a shell over your existing file search program (e.g. Find.exe), adding wildcard support, allowing you to search multiple files with one sweep.  Note (5/2001): new version 1.1 adds some new options and enhancements.  Now, it's even more flexible than before!  Be sure to download and check out all the new features!

Time-It  lets you track the time spent on computer tasks, automatically, both for the current session, and cumulative for the month.  Before running a task, just type 'Time-It /S'.  When finished, type 'Time-It /E', and it will tell you the time spent in the session, and the cumulative time for the month.  Time-It can also be used in batch files, to make the whole process automatic.  I use it to track the time that I'm connected to my ISP, so I can compare it with my ISP's records at the end of each month.

Environment-Copy copies an environment variable to all higher levels.  When you call a 'child' program, only a copy of the previous ('parent') level's environment is passed.  If you change a variable, then exit back to the previous level ('parent'), any new variables are discarded, and old ones return to their previous values.  Env-Copy lets you preserve their new values by copying them from the 'child' process to the 'parent' process, and all other higher environment blocks (levels).

New! Coming from a minicomputer background, I was disappointed when I first started using PC's, that printing couldn't be done in the background; instead you had to twiddle your thumbs until your application finished printing.  Fortunately, I soon found a software that would run in the background and intercept printer data from the cpu, spool it and send it to the printer, allowing your application to be released back to you much sooner.  This is better than MS-DOS's Print.exe command because this Spooler package automatically spools printer output from every application, but Print doesn't.   Click here to download the print spooler package.

Here are 2 programs, which were written by others, but are hard to find on the internet.   DiskClean is a handy utility to help you clean your diskette drives.  What you do is insert a cleaning diskette in the drive, then run DiskClean.  DiskClean then moves the diskette heads around random places on the cleaning diskette.  ScreenSaver 3 is the best CGA screen saver I found.  It takes very little memory, and works great for both text and graphics screens.

Return to top of page


Converting and re-formatting text documents:

Here are a couple of tricks to convert text documents from one word processor or operating system to another:

One common situation is where you need to edit or browse a document, on an MS-DOS or Windows system, that was originally created on a Unix system.  Usually, these documents only have a line feed (chr$(10)) at the end of each line, but MS-DOS and Windows expect a CRLF (chr$(13) + LF) combination.  One way to convert a document like this, is to load it into Wordpad, then re-save it, and Wordpad adds a CR to each line.   I don't know a way to do it in MS-DOS, but a utility to accomplish it should be fairly simple to make.

Another situation is where you want to modify a document that has hard CRLF's at the end of each line, and you need to either edit a paragraph, or change the margins throughout the document.  Without a utility, this task can be tedious, because you would have to cursor to the end of each line, and hit Delete, to join it with the next line, etc.  To simplify this task, I wrote a utility, StripCRLF .  StripCRLF strips all CRLF's from a document, except at the beginning of paragraphs.  After running it, the document can then be loaded into your word processor and edited, or the margins changed, without any extra work.

Return to top of page



MS-DOS batch file programming:

To get the most out of MS-DOS, you should learn how to write .bat files.  You can find books about MS-DOS at the library and bookstores.  Two that I've found helpful recently were the Waite Group and Peter Norton books.  Also, you can ask questions on the MS-DOS Usenet newsgroups, like alt.msdos, alt.msdos.batch, and comp.os.msdos.misc.
Also, check Tom Lavedas' site for advanced batch programming techniques.

Return to top of page



Using a Soundblaster in DOS:

Maybe some notes I took will help others.  Mine is a SB16 PCI PNP.

  1. First, go to Creative lab's site, and download and install the DOS device drivers.
  2. You might need to install ctcmbbs.exe, if your soundblaster is plug and play.  It is designed to be able to configure and use a PNP sound card in a non-PNP environment, like DOS or Win 3.1.  But if your computer BIOS is a PNP BIOS, you may not need it, even if you run in DOS.  I didn't need to install it, even though I run in DOS, and I guess it's because my PNP BIOS takes care of it.
  3. When I first ran diagnose.exe, it didn't correctly place the drivers in config.sys.  I had to rerun it with the '/a' option, and I may have also had to change diagnose.exe's prompt for where I wanted to put the drivers, to 'C:\SB16\DRV\', *with* the ending slash.
  4. It's probably worth while to change the device driver statements in config.sys to say 'DEVICEHIGH'.
  5. To be able to play .mid files, I had to change the name of CTMidi-S.drv to CTMidi.drv.
  6. I eventually basically understood (I think), the fields in Mixerset.exe.  Voice = .wav's.  3DSE = 3D Stereo enhancement.  Unfortunately, mixerset /p doesn't work correctly, because it stops on an /IPL instruction.  That can be fixed, though, by editing CTMix.cfg (the default mixer settings), and removing the AUXR- and AUXL- phrases from the /IPL and /IPR lines.  But, you always have to remember to edit this file every time you change the mixer controls.
  7. Here are the relevant Config.sys and Autoexec.bat entries for when I boot to DOS:

    Config.sys:
    DOS=HIGH,UMB,NOAUTO
    DEVICEHIGH=C:\WINDOWS\HIMEM.SYS
    DEVICEHIGH=C:\WINDOWS\EMM386.EXE NOEMS
    DEVICEHIGH=C:\SB16\DRV\\CTSB16.SYS /UNIT=0 /BLASTER=A:220 I:5 D:1 H:1
    DEVICEHIGH=C:\SB16\DRV\\CTMMSYS.SYS

    Autoexec.bat:
    SET BLASTER=A220 I5 D1 H1 P330 T6
    set SOUND=C:\SB16
    c:\sb16\diagnose /s
    c:\sb16\mixerset /p
    c:\sb16\ct3dse ON
    set MIDI=SYNTH:1 MAP:G

    ***Here's the syntax for the prior setting:
    SYNTH:x
    x = 1 specifies internal synthesizer (default).
    x = 2 specifies MIDI port.
    MAP:y
    y = G specifies General MIDI file format.
    y = E specifies Extended MIDI file format (default).
    y = B specifies Basic MIDI file format.
    MODE:z
    z = 0 supports General MIDI (default).
    z = 1 supports Roland Sound Canvas GS.
    z = 2 supports Roland MT32.
    MODE: z only applies to Sound Blaster AWE32

Return to top of page



Running MS-DOS programs under Windows 9x:

Setting up and running MS-DOS programs in Windows is sadly under-documented by Microsoft, but there is really a lot you can do, and, once you understand the concepts, it's fairly easy.  Click here for a thorough discussion of everything you need to know to get you started, including .Pif & .bat files, real mode vs. virtual mode drivers, how to run virtually any MS-DOS program using a simple mouse click from Explorer or your Desktop, how to drag and drop files onto MS-DOS programs in Explorer, and how to add MS-DOS programs to Explorer's right-click 'Send To' menu.

Return to top of page



MS-DOS & Windows slow-down programs:

Many MS-DOS applications were originally written during a time when most consumer personal computers ran at much slower speeds than today.  For games especially, many times the programmer went beyond the more traditional means of doing things in software, and instead, did things at a much lower, hardware level, in order to extract the fastest speed possible.  Usually, the designer did not allow for the fact that the game or app might eventually be run on faster computers, and so, today, some of the best games and other apps from the 80's and 90's run too fast on today's computers.  For this reason, we now have 'Slow-down' programs.  These programs slow down the cpu through various means, so that the game or app can be run at closer to the speed for which it was originally written.  Click here for a thorough discussion, tips, techniques, and links .

There is a related issue, involving apps (not just games) that were compiled under older versions of Borland Pascal.  If you try to run these apps on newer computers, you might get an error message, 'Runtime error 200', caused by a timing problem.  Sometimes slowdown programs will solve the problem, but there are better, more specific, fixes available on the internet.  One solution that works for some is BPPatch.zip .

Return to top of page



mIRC scripts:

IMPORTANT NEWS: These pages are now hosted at 2 sites:
http://mywebpage.netscape.com/baldwinwh/DOSPgms/DOSPgms.html#Scripts, and
http://members.fortunecity.com/whb1/DOSPgms/DOSPgms.html#Scripts

Given the transient nature of free web hosts these days, it's probably best that you bookmark both of them.

Essential.mrc v7.5 is a collection of short aliases and event scripts that perform 21 of the most asked-for functions in mIRC.  You can load the whole script, or just copy and paste individual aliases into your own Remotes.  Comprehensive instructions are included if you want to customize them for your own use.

News (8/2002): Enhancements in Version 7.5:

1) Added a setting to enable or disable broadcasting your Away status and message to open windows. If you enable it, the script will send your Away message to all your channels, queries, and dcc chats when you are set 'Away', and when you return, a message is sent saying that you're 'Back'. If you disable it, no messages will be sent.
2) Added a setting to enable or disable full time message trapping. If you enable it, message trapping will be set on all the time, whether you are 'Away' or not.
3) Added a setting to let you set your own nick 'Away' suffix, so, if you don't like '-afk', you can pick something else.
4) Enhanced message trapping of messages that contain words in your highlight list, so that it will now also trap messages with words that are variables or identifiers (% or $), and words that contain wildcard characters (* or ?). This enhancement requires that you be using mIRC version 5.9 or higher.
5) Added a comprehensive Network services menu, to work with Chanserv, Nickserv, and Memoserv.
6) Added code to automatically list new Memoserv memos as they are received.
7) Fixed a problem that occurred when Khaled changed the way the $script identifier works in mIRC 6.03.

Past news: Version 7.1 added an auto-minimize when 'Away' option, so you can use mIRC's 'Line Marker' feature to easily see all messages that occurred after you set yourself 'Away'.

Essential.mrc features:

    1) A comprehensive 'Away' system, including commands to set yourself 'Away' and 'Back',
        an option to set yourself 'Away' automatically if you're idle for a certain length
        of time, an option to 'listen' to private and channel messages, while you're 'Away',
        and log any messages that might interest you, for easy viewing upon your return.
    2) /emoticons - displays a handy window of emoticons.
    3) /acronyms - displays a handy list of acronyms to the current window.
    4) /cntrycode - displays a handy window of country codes, to help you decipher the 2 letter suffixes on
        email, web, and /whois user@host URL's.
    5) a /msg open event, to notify you audibly when someone sends a private message to you.
    6) a /dcc chat event,   "      "       "        "         "          "           "     " /dcc chat request to you.
    7) a Join event, to notify you audibly when someone enters your channel.
    8) a CTCP event, to send a funny message when someone Pings you.
    9) a CTCPREPLY event, to send information when you Ping someone.
  10) a NOTIFY event, which will play a .wav whenever someone on your Notify list
        logs on, if a .wav is not already defined for them.
  11) a Kick event, to notify you audibly when someone is kicked from a channel.
  12) a Ban  event,  "    "    "      "     "     "     " banned   "  "    "
  13) a Quit event, to notify you when a Net split is occuring.
  14) a Notice event, to automatically send your password whenever Nickserv asks you to
        identify. Also see #15 and #22, below.
  15) a Notice event, to automatically list new Memoserv memos as they are received.
  16) an OP event, to notify you audibly when you become opped in a channel.
  17) a NICK event, to notify you audibly when someone changes their nick.
  18) a Centigrade to Fahrenheit converter.
  19) a Fahrenheit to Centigrade converter.
  20) a handy function to search for text in Status, Channel, and Query windows.
  21) a very fast method to search for channels on a network by keyword.
  22) A popup Network services menu to make it easy to work with Chanserv, Nickserv,
        and Memoserv. Also see #14 and #15 above.

Essential-Away.mrc v1.2 is a comprehensive 'Away' add-on script for mIRC.  Included are commands to set yourself 'Away' and 'Back', an option to set yourself 'Away' automatically if you're idle for a certain length of time, and an option to 'listen' to private and channel messages while you're 'Away', and log any messages that might interest you, for easy viewing upon your return.  It is also a part of Essential.mrc, above, but packaged here as a stand-alone add-on script, for those who don't want or need all the other bells and whistles in the other script.  Essential-Away.mrc was specifically designed to be easy to use and understand, and require minimal computer overhead.

News (8/2002): Enhancements in Version 1.2:

1) Added a setting to enable or disable broadcasting your Away status and message to open windows. If you enable it, the script will send your Away message to all your channels, queries, and dcc chats when you are set 'Away', and when you return, a message is sent saying that you're 'Back'. If you disable it, no messages will be sent.
2) Added a setting to let you set your own nick 'Away' suffix, so, if you don't like '-afk', you can pick something else.
3) Enhanced message trapping of messages that contain words in your highlight list, so that it will now also trap messages with words that are variables or identifiers (% or $), and words that contain wildcard characters (* or ?). This enhancement requires that you be using mIRC version 5.9 or higher.
4) Fixed a problem that occurred when Khaled changed the way the $script identifier works in mIRC 6.03.

Past news: Version 1.1 added an auto-minimize when 'Away' option, so you can use mIRC's 'Line Marker' feature to easily see all messages that occurred after you set yourself 'Away'.

NickChange.mrc v1.8 is a fun add-on that plays a few bars of Shirley Ellis' song, 'The Name Game', or any another .wav, if you prefer, in the channel when someone changes their nick.

Channel Ping v2.1 is a fun add-on that provides extended functions for channel pings.  It calculates average, low, and high response times, and optionally sends a warning to users who are pinged, if their response time exceeds certain limits, so they can try a different server.  Easy, comprehensive configuration. Note (5/2001): ChannelPing.mrc has recently been rewritten from the ground up, with lots of new enhancements and flexibility.  Be sure to download and check out all the new features.

Quote Message Manager v2.3 is an add-on that allows you to easily pick emoticons and quotes, or any 1-line messages from text files, and then paste them in a channel, or any other application.  You can pick messages manually, using a popup menu, randomly, or search for specific messages using wildcards.  Also included is a handy /bye alias that lets you pick a new random quit message each time you log off.  Included are text files with emoticons and humorous messages, to which you can add your own.  This script replaces and enhances QuitMessagePicker.

MSChatCoffeeCupAway.mrc v1.6 is an add-on script that simulates the MS Chat Coffee Cup Away algorithms.  In MS Chat, when someone sets themselves Away, control codes are sent that make a coffee cup appear next to their name on the screens of  anyone who is using MS Chat.  When they set themselves as Back, the coffee cup disappears.

MSChatCoffeeCupAway simulates that for mIRC.  It sends the correct codes to make the coffee cup appear and disappear on the screens of users who are using MS Chat.  Likewise, it responds to the same codes from others.  The difference is that since it is impossible to display a coffee cup in mIRC, instead, their name is shaded on the channel nicklist when they are Away, then unshaded when they return.

Return to top of page



Miscellaneous:

When you look at WWW and email URL's, do you ever wonder what those 2 letter suffixes that appear on some of them mean?  They represent the country where the URL is located.   Here is a list of them, nicely formatted into 4 columns, so they can fit on one sheet of paper.  It is best to change your printer to 17 characters/inch before printing it.  If you have Q&A,  here  is the same list of codes in Q&A format.

Throughout the internet, especially in email, Usenet, and IRC, the use of acronyms (LOL, etc.) and emoticons (smiley faces, etc.) is common.  To understand them, you should search the web for a good reference.
Check these out:  Acronyms  &  Emoticons

Here are some other computer and internet related tips:

 Usenet tips

 PC Audio Tips

 IRC Tips

Return to top of page



Disclaimer: It is believed, at the time of this writing, that the copyright limitations of all the 3rd party resources mentioned, allow their inclusion on this site.  If you believe you see an error, please let me know.


Comments?  Email to baldwinwh (at) netscape (dot) net

Thanks for visiting!

Return to top of page


Add Me!

Viewable With Any Browser

This site is a member of WebRing.
To browse visit Here.

© W. Baldwin, 2000. All rights reserved