home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / UTILS1 / DOSVER.ZIP / DOSVER.TXT < prev    next >
Text File  |  1994-02-10  |  6KB  |  119 lines

  1.  
  2.                             ┌──────────────
  3.                             │  DOSVER.TXT  █
  4.                              ▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
  5.  
  6.                         Thu  02-10-1994  10:30:10
  7.  
  8.      ┌──────────────────────────────────────────────────────────────────
  9.      │                          DOSVER.BAS                              █
  10.      │                                                                  █
  11.      │               WARNING      WARNING      WARNING                  █
  12.      │ ──────────────────────────────────────────────────────────────── █
  13.      │                                                                  █
  14.      │       Do =NOT= run DOSVER.BAS inside the QuickBASIC              █
  15.      │       Environment or you will be very, very sorry.               █
  16.      │                                                                  █
  17.      │       The command that sets the ERRORLEVEL also will close       █
  18.      │       QuickBASIC, start your printer, and overwrite your ROM!    █
  19.      │                                                                  █
  20.      │       It also will probably lock your front door, step on your   █
  21.      │       cat's tail -and- hide all your matching argyle socks!      █
  22.      │                                                                  █
  23.      │       SO DON'T DO IT!!!                                          █
  24.      │                                                                  █
  25.       ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
  26.  
  27.  
  28.      Well.... Hi there... Yep, I'm still playing with Assembly and
  29.      having a high old time. Have been rebooting my computer about once
  30.      an hour for several days now.... lot'sa fun, lot'sa fun....
  31.  
  32.      As a matter of fact code for rebooting computers looks like my next
  33.      project. Would you believe a -2- byte (Microsoft recommended, but
  34.      only works in some computers) program that  reboots your computer?
  35.      Or a 5 byte program that seems to cold boot -all- computers? Or the
  36.      pie`ce de re'sistance a "HUGE" 30 byte program that resets your
  37.      SMARTDRV.EXE (so it writes it cache to your disk files) then yells
  38.      "Yoo hoo!" to your EMM386.EXE so -it- shuts down, then =warm boots=
  39.      your machine???!!!!
  40.  
  41.      I'm sure you remember when DOS 6.0 first came out and some big
  42.      smart companies back East were yelling that DBLSPACE.EXE didn't
  43.      work and was corrupting files. Well they shut up after grousing
  44.      about it for months while printing bad news about a good program,
  45.      DBLSPACE.EXE.
  46.  
  47.      What you probably -don't- know is that it wasn't DBLSPACE.EXE that
  48.      was the problem. Nope, it was some software they were using to
  49.      reboot that didn't permit SMARTDRV.EXE to write its cache to disk.
  50.      I believe that they didn't set the ALTBOOT switch on EMM386.EXE,
  51.      either... as that would give them grief if they used Ctrl+Alt+Del
  52.      to reboot but not sure.
  53.  
  54.      No... didn't think you heard them apologize, never hear the
  55.      retractions, just the alarming stuff seems to sink in. So a "smart"
  56.      warm boot program is a good idea, and that's what I'm working on.
  57.      But that's next week's project.
  58.  
  59.      Let's talk about "getting small."
  60.  
  61.      Can see how those PC Magazine programmer meowers who wrote all those
  62.      tiny *.COM "DOS Utility Programs" in the late '80s got hooked on
  63.      this stuff.
  64.  
  65.      You know those *.COM programs don't you? Hundreds of eight to a few
  66.      hundred byte programs that they -still- give out for renewing your
  67.      magazine subscription. Little *.COM files that don't tell you what
  68.      they do.... sometimes load as TSRs and lock your keyboard and
  69.      almost always require a five pound reference book to explain
  70.      them....
  71.  
  72.      You know those don't you? "Getting small" as far as the final file
  73.      size in programming is an obsession... probably a dumb one in this
  74.      day and age of the gigabyte hard drive for home and small business
  75.      Windows programs.
  76.  
  77.      Anyways... found I needed a batch file to sense what Version DOS
  78.      some of these little assembly programs need in order not to lock
  79.      the keyboard and cause you (and me) endless irritation. Found I
  80.      could write (copy) an assembly program to get the DOS Version, but
  81.      just didn't know how to print that text to the screen. I'm sure
  82.      it's "easy" if you know how.... Since I really, really dislike
  83.      (hate) little programs which have no internal help instructions
  84.      like the ones described above.... had to make a better DOS Version
  85.      mouse trap.
  86.  
  87.      I was sitting here wondering how to do that while reading from the
  88.      four or five volumes of hieroglyphics that are laughingly called
  89.      "Assembly Programming" when a thunderbolt of thought hit.
  90.  
  91.      "Why not do it in QuickBASIC 4.5!"
  92.  
  93.      So that's what I did. It's well known that "you can't" end a
  94.      QuickBASIC 4.5 program with an Exit Code (aka a Return Code or
  95.      ERRORLEVEL number). But for you denizens of the deep who have been
  96.      following this unfolding drama... you -know- that I found the
  97.      secret to make such a QuickBASIC 4.5 program a couple of weeks ago.
  98.  
  99.      So made DOSVER.COM, a QuickBASIC 4.5 program and this batch file
  100.      to get an ERRORLEVEL of the DOS Version. Since we can only get an
  101.      ERRORLEVEL from 0 to 255, only gets the "Major" portion of the DOS
  102.      Version. If the DOS Version is 6.2, all you get is the six (6). But
  103.      since I didn't want to mislead anyone what it prints to the screen
  104.      is:
  105.      ──────────────────────────────────────────────────────────────────
  106.  
  107.                           DOS Version < 6.x >
  108.  
  109.      ──────────────────────────────────────────────────────────────────
  110.  
  111.      If you just run DOSVER.COM, it prints the DOS Version to the
  112.      screen... Ah... just what I wanted...
  113.  
  114.      Oh... sorry have to go... have to reboot the computer again...
  115.  
  116.      Bye...
  117.  
  118.      John De Palma on CompuServe 76076,571
  119.