home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 24 / CD_ASCQ_24_0995.iso / dos / tools / icach111 / i_cache.doc next >
Text File  |  1995-07-31  |  73KB  |  1,801 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.        IIIIII         CCCCCC      AAA      CCCCCC   HH    HH   EEEEEE
  24.          II          CC    CC    AA AA    CC    CC  HH    HH  EE    EE
  25.          II          CC         AA   AA   CC        HH    HH  EE
  26.          II          CC        AA     AA  CC        HHHHHHHH  EEEEE
  27.          II          CC        AAAAAAAAA  CC        HH    HH  EE
  28.          II          CC        AA     AA  CC        HH    HH  EE
  29.          II          CC    CC  AA     AA  CC    CC  HH    HH  EE    EE
  30.        IIIIII 111111  CCCCCC   AA     AA   CCCCCC   HH    HH   EEEEEE
  31.  
  32.  
  33.  
  34.  
  35.  
  36.                                 Version 1.11
  37.  
  38.  
  39.  
  40.                           The I_Cache Device Driver
  41.  
  42.                      XMS disk and CD-ROM caching system
  43.  
  44.  
  45.  
  46.                    Developed and written by Miles Pawski
  47.                             Copyright 1994,1995
  48.                             All Rights Reserved
  49.  
  50.  
  51.  
  52.  
  53.                          Code: MicroSoft MASM 6.10
  54.  
  55.  
  56.  
  57.  
  58.  
  59.                                                               Page  1
  60.          ------------------------------------------------------------
  61.                            TABLE OF CONTENTS
  62.  
  63.          Introduction...........................................  3
  64.          Acknowledgements.......................................  3
  65.          Requirements
  66.             System..............................................  4
  67.             Configuration.......................................  4
  68.          Specifications
  69.             Disk Caching Specifications.........................  5
  70.             CD-ROM Specifications...............................  6
  71.          Installation
  72.             Format & Requirements...............................  7  
  73.             Basic...............................................  8
  74.             Advanced (parameters)...............................  8
  75.               /i /d ............................................  8
  76.               /t /c /m .........................................  9
  77.               /q /w /s ......................................... 10 
  78.               /b /f /a ......................................... 11
  79.               /L ............................................... 12
  80.               /e /r ............................................ 13
  81.             CD-ROM Installation................................. 13
  82.             CD Installation Notes............................... 14
  83.             Compatible Installation Parameters.................. 15
  84.             Installation and Configuration Examples............. 15
  85.          Using The CD Audio Player
  86.             CD Player Usage..................................... 17
  87.          Hot Keys............................................... 19
  88.          Error Messages
  89.             I_Cache Error Messages.............................. 19
  90.             Disk Error messages................................. 21
  91.             CD-ROM Error Messages............................... 22
  92.          Software Compatability
  93.             DOS................................................. 22
  94.             Windows............................................. 23
  95.             Video (CD-i)........................................ 24
  96.             DESQview & QEMM..................................... 24
  97.             Other disk caches................................... 24
  98.             CAM drivers......................................... 24
  99.          Hardware Compatability
  100.             SCSI controllers and Virtual DMA.................... 24
  101.             Solutions (Ic_low.sys).............................. 25
  102.             Tape drives......................................... 25
  103.             Magneto-Optical drives.............................. 25
  104.             Compressed drives (Stacker, Dblspace)............... 26
  105.          System Optimization
  106.             Batch file use...................................... 27
  107.          The I_Cache API
  108.             Int 2fh............................................. 28
  109.          Precautions & Suggestions
  110.             Precautions......................................... 28
  111.             Suggestions......................................... 28
  112.             Disclaimer.......................................... 30
  113.          Customer Service
  114.             Technical Support................................... 30
  115.          Shareware Notes
  116.             Shareware terms..................................... 30
  117.             Registered user's privileges........................ 30
  118.  
  119.                                                               Page   2
  120.          -------------------------------------------------------------
  121.  
  122.                                 INTRODUCTION
  123.  
  124.  
  125.          I_Cache was first developed as an answer to Computer User's
  126.          needs for faster disk access.  It was designed to work with
  127.          all disks, whether they are IDE's, SCSI's, CD-ROMs, floppy
  128.          disks or other external drives.  It is universal in its
  129.          design and was meant to be a "set it and forget it" utility.
  130.          It is designed to be used under the DOS operating system.
  131.          This Shareware release is the culmination of over a year of
  132.          development and subsequent Beta testing.
  133.  
  134.          Users will find that, with I_Cache, their PC's run faster and
  135.          more efficiently due to the memory caching of frequently used
  136.          disk data sectors.  As with all disk caches, when DOS
  137.          requests a cerain disk sector(s), I_Cache will check to see
  138.          if it has the requested sector(s) in memory and, if so, will
  139.          provide them to the application directly from memory rather
  140.          than reading the disk.  This saves wear and tear on your disk
  141.          drives and speeds up the application.
  142.  
  143.          I_Cache has been extensively tested and is completely safe to
  144.          use.  It is especially suited for PENTIUM processors.  I_Cache
  145.          also features a sophisticated, self-contained CD audio player
  146.          for your convenience.
  147.  
  148.  
  149.  
  150.                            ACKNOWLEDGEMENTS
  151.  
  152.  
  153.          I would like to thank all of my Beta testers, with special
  154.          consideration for the following three individuals, who hung
  155.          in there all the way and provided valuable input for the final
  156.          post-Beta release of I_CACHE:
  157.  
  158.          Johnny Chu        -  Hong Kong
  159.  
  160.          August C. Quint   -  Germany
  161.  
  162.          Ryan O'Connell    -  United Kingdom
  163.  
  164.                       Thanks for all the reboots !!
  165.  
  166.  
  167.  
  168.          Books that I found of great value:
  169.               
  170.          Undocumented DOS  (Second Edition) 
  171.              A Programmers Guide to reserved MS-DOS functions and
  172.              Data Structures. (C) Copyright 1994  A. Shulman, R. Brown,
  173.              D. Maxey, R. Michels, J. Kyle  Publisher: Addison-Wesley
  174.  
  175.          PCintern
  176.              System Programming.  (C) Copyright 1992  Abacus/DATA BECKER
  177.              Author: Michael Tischer
  178.  
  179.                                                               Page   3
  180.          -------------------------------------------------------------
  181.  
  182.  
  183.  
  184.  
  185.  
  186.                           SYSTEM REQUIREMENTS
  187.  
  188.  
  189.          DOS:         4.0+ or DRDOS 6.00+
  190.  
  191.          COMPUTER:    386+
  192.  
  193.          XMS driver:  REQUIRED.  For example: Himem.sys, Qemm,
  194.                       Qext.sys......
  195.  
  196.          XMS memory:  At least 1 megabyte.  XMS memory is also
  197.                       referred to as eXtended memory and is the memory
  198.                       which is above the 1 megabyte limit on your
  199.                       computer.  It is suggested that you have a cache
  200.                       size of at least 1 megabyte for efficient
  201.                       operation.
  202.  
  203.          EXTENSIONS:  Microsoft's MSCDEX if CD-ROMs are to be cached.
  204.                       MSCDEX is usually supplied with your CD-ROM
  205.                       software.  It is also supplied with DOS Version
  206.                       6.xx.
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.                       CONFIGURATION REQUIREMENTS
  215.  
  216.  
  217.          Autoexec.bat file -
  218.  
  219.                      VERIFY OFF
  220.  
  221.          Config.sys file   -
  222.  
  223.                      buffers=1
  224.  
  225.                Hardware stack recommendations:
  226.  
  227.                      stacks=9,256   (non-DESQview users)
  228.                      stacks=0,0     (DESQview users non-STEALTH)
  229.  
  230.  
  231.  
  232.          Windows System.ini file  -
  233.  
  234.                  [386Enh]
  235.  
  236.                     InDosPolling=1   (Windows users only)
  237.  
  238.  
  239.                                                               Page   4
  240.          -------------------------------------------------------------
  241.  
  242.  
  243.                             SPECIFICATIONS
  244.  
  245.                          I_Cache  Version 1.11
  246.  
  247.  
  248.  
  249.          DISK CACHING SPECIFICTIONS
  250.  
  251.          Buffer (track) size  -
  252.  
  253.                            4 (2048 bytes), 8 (4096 bytes), 16 (8092 bytes),
  254.                            32 (16384 bytes), 64 (32768 bytes) sectors.
  255.                            Auto or manually selected.
  256.  
  257.          Cache memory  -
  258.                            XMS in an UNLOCKed block.
  259.  
  260.          Cache size   -
  261.                            100k to 16000k.  Can be automatically
  262.                            reduced to a value suitable for Windows on
  263.                            entry (to Windows).  Can also be
  264.                            dynamically resized from the command line.
  265.  
  266.          Change line  -
  267.                            Supports external drives that support the
  268.                            media change line.  Also supports external
  269.                            drives that don't support the change line
  270.                            with the /L+ parameter.  Can force a media
  271.                            change with hot-keys.
  272.  
  273.          Device Name  -
  274.                            $I_CACHE$
  275.  
  276.          Disk Sector Size  -
  277.  
  278.                            512, 1024, 2048, bytes per sector.
  279.  
  280.          Disks -
  281.                           IDE, SCSI hard or external disks of any
  282.                           track configuration, sector translation
  283.                           or size.  Can cache up to 26 drives totally
  284.                           including CD-ROMs.  Up to 20 CD-ROMs can be
  285.                           cached.  Can cache DoubleSpace compressed drives.
  286.  
  287.          I/O memory    -
  288.                            Regular or "high" memory or split loading with
  289.                            the IC_LOW.SYS i/o driver.
  290.  
  291.          Initial Load  -
  292.                            Either loaded low into regular memory or
  293.                            loaded "high" with the usual methods.  Can
  294.                            be loaded either as a visible device driver
  295.                            from the config.sys file or from the
  296.                            autoexec.bat file.  (If you are using QEMM 7.5,
  297.                            see page 24, "Software Compatibility").
  298.  
  299.                                                               Page   5
  300.          -------------------------------------------------------------
  301.  
  302.          Initial Size  -
  303.                            I_Cache requires 48.7k to initially load.        
  304.  
  305.          Maximum Size  -
  306.                            53.5k (with /t:64 & 16MB cache)
  307.  
  308.          Read Caching  -
  309.                            Available for ALL disks.  Utilizes LRU
  310.                            (Least Recently Used) queue to prevent
  311.                            cache "thrashing".
  312.  
  313.          Write Caching -
  314.                            Available for Hard disks and Magneto-Optical
  315.                            drives only.  Can be defeated with -w parameter.
  316.                            Disks are written a track at a time.  The track
  317.                            queue is sorted before they are written.  The
  318.                            track queue is written to disk when the computer
  319.                            is idle, that is, no keyboard or mouse activity.
  320.                            (Preemptive multitasking)
  321.  
  322.          XMS Transfer -
  323.                            XMS servor API interface.
  324.  
  325.  
  326.  
  327.          CD-ROM SPECIFICATIONS
  328.  
  329.  
  330.          Audio player -
  331.                            Will play ALL CD-DA RedBook disks.
  332.  
  333.                            Supports software manipulated incremental
  334.                            volume control for drives that support this
  335.                            feature.
  336.  
  337.                            Ejects disk and closes tray with drives that
  338.                            supprort these features.
  339.  
  340.                            All calls are routed through MSCDEX.
  341.  
  342.          Audio/Video format  -
  343.  
  344.                            All formats.
  345.  
  346.  
  347.          Data format -
  348.                            High Sierra
  349.                            ISO 9660
  350.  
  351.          Disks  -
  352.                            CD-ROM
  353.                            CD-DA
  354.                            CD-XA
  355.                            PHOTO-CD
  356.                            CD-I
  357.  
  358.  
  359.                                                               Page   6
  360.          -------------------------------------------------------------
  361.  
  362.  
  363.  
  364.          Supported Cached addressing modes -
  365.  
  366.                            HSG
  367.  
  368.  
  369.          Supported Cached data read modes  -
  370.  
  371.                            Cooked mode only - 2048 byte sectors
  372.                            Interleaved mode
  373.  
  374.  
  375.                  ** Raw data requests are passed through the driver
  376.                     and NOT cached by I_cache.
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.                              INSTALLATION
  387.  
  388.                         I_Cache  Version 1.11
  389.  
  390.  
  391.          FORMAT:   I_CACHE [/i] [/c:xxxx[.xxxx]] [/s] [/w] [/f] [/d]
  392.                            [/a:xx[+-]xx[+-]..] [/t:xx(4,8,16,32,64)]
  393.                            [/b:xx[+-]] [/r:(Devicename,Devicename)]
  394.                            [/L[+-]] [/p] [/e[r+-][w+-]] [/q+-] [/?]
  395.                            [/m+-]
  396.  
  397.  
  398.  
  399.          I_Cache is a Device Driver which can be installed either from
  400.          the config.sys or autoexec.bat files.
  401.  
  402.  
  403.          I_Cache needs to be installed AFTER the following:
  404.  
  405.                            XMS and EMS drivers
  406.                            CD-ROM dedicated device drivers
  407.                            All BLOCK drivers (including driver.sys)
  408.                               that are to be cached by I_Cache.
  409.                            IC_LOW.SYS
  410.                            ALL ASPI drivers (SCSI-based drivers)
  411.                            DLBSPACE.SYS /MOVE
  412.                            DRVSPACE.SYS /MOVE
  413.  
  414.          I_Cache needs to be installed BEFORE the following:
  415.  
  416.                            MSCDEX
  417.  
  418.  
  419.                                                               Page   7
  420.          -------------------------------------------------------------
  421.  
  422.          BASIC INSTALLATION:
  423.  
  424.          There are 2 parameters required for basic installation of
  425.          I_Cache:  /i  & /c
  426.  
  427.          /i  -  Install I_Cache.  Installation parameter only.
  428.  
  429.          The other parameters (besides /c) are optional and will be dis-
  430.          cussed later.  The /c parameter has two parts.  It must be in the
  431.          following format /c:xxxx[.xxxx].  The first number is
  432.          required and specifies the size of the XMS cache in K.  The
  433.          second value, which contains a decimal point and a number, is
  434.          optional, and specifies the size of the cache inside WINDOWS.
  435.          THIS VALUE MUST BE SMALLER THAN THE FIRST VALUE.  On entering
  436.          WINDOWS, the cache will resize itself to this value.  You may
  437.          install I_CACHE from either the config.sys or autoexec.bat files.
  438.  
  439.            EXAMPLES (from autoexec.bat file):
  440.  
  441.                     I_CACHE.EXE /i /c:3000.2000
  442.                           This installs I_CACHE with a cache
  443.                           size of 3000K (XMS).  It will resize itself
  444.                           to 2000K on entering WINDOWS.  It will
  445.                           return to 3000k on leaving WINDOWS.
  446.  
  447.                     I_CACHE.EXE /i /c:4000
  448.                           This installs I_CACHE with a cache
  449.                           size of 4000K (XMS).  It will be the same
  450.                           size inside and outside of WINDOWS.
  451.  
  452.          If you wish to install I_CACHE from the config.sys file, you
  453.          need only add device= to the above examples:
  454.  
  455.                     device=I_CACHE.EXE /i /c:3000.2000
  456.  
  457.          Please consult your DOS manual for techniques on customizing your
  458.          config.sys and autoexec.bat files. 
  459.  
  460.  
  461.  
  462.         ADVANCED INSTALLATION:
  463.         Other parameters
  464.  
  465.         /d
  466.  
  467.                STAGED-WRITE DELAY.             Default
  468.  
  469.                This parameter turns on the staged-write delay feature.
  470.                The delay timing is not adjustable, but it is
  471.                dynamically computed to catch most same-track writes.
  472.                Updates to the disk with this feature are performed
  473.                when the computer is idle, that is, when keyboard or mouse
  474.                activity is not detected (preemptive multitasking).
  475.                Staged-write affects hard disks and Magneto-Optical drives
  476.                only.  All other drives are in write_through mode regard-
  477.                less of this parameter.  Can be defeated with -w.
  478.  
  479.                                                               Page   8
  480.          -------------------------------------------------------------
  481.  
  482.         /m+ /m-
  483.  
  484.                MAGNETO-OPTICAL STAGED WRITE        DEFAULT: /m+ (ON)
  485.  
  486.                Normally, when staged-write is activated, it affects hard
  487.                disks and Magneto-Optical drives only.  Since Magneto-Optical
  488.                drives incorporate removable media, /m- can be used to defeat
  489.                the staged-write feature for these drives while leaving
  490.                staged-write activated for hard disks.
  491.  
  492.         /t:xx
  493.  
  494.                SPECIFY LOGICAL TRACK SIZE.  Default: Auto selection
  495.                ** INSTALLATION ONLY         Valid values: 4,8,16,32,64
  496.  
  497.                This parameter specifies the logical track size in
  498.                sectors.  If you don't specify this parameter, track
  499.                size is determined automatically from the longest track
  500.                size of all cached hard disks.  I_Cache assigns the
  501.                closest value to 8, 16 or 32.  4 and 64 can only be specified
  502.                with this parameter.  If your system has no hard disk,
  503.                then I_CACHE defaults to a 16 sector track size.  You
  504.                may change that with this parameter.  THIS OPTION CAN
  505.                ONLY BE USED AT INSTALLATION.
  506.  
  507.                Larger buffer sizes my not provide the most efficient
  508.                operation.  Even if your hard disk has a track size of
  509.                63 sectors, I_Cache may work better if you specify a
  510.                track size of 16 with this parameter.
  511.  
  512.                Best performance: /t:16     Worst performance: /t:4
  513.  
  514.         /c:xxxx.xxxx
  515.  
  516.                SPECIFY/RESIZE CACHE SIZE.  Valid range: 100k-16000K
  517.  
  518.                This parameter can be used to resize the cache after it
  519.                has been installed.  You cannot resize the cache to a
  520.                value (in K) larger than originally specified on
  521.                installation.  You may add a WINDOWS value to this but
  522.                it won't resize to that value, it will only store the
  523.                WINDOWS value and will resize to the first value given
  524.                after the colon.   You cannot resize the cache once
  525.                inside Windows.
  526.  
  527.                           I_CACHE /c:2000
  528.  
  529.                                   This will resize the cache to 2000K
  530.                                   (provided the initial size was not
  531.                                   smaller than this amount).
  532.  
  533.                           I_CACHE /c:2000.1000
  534.                                   This will resize the cache to 2000K
  535.                                   (provided the initial size was not
  536.                                   smaller than this amount).   It will
  537.                                   also store a new WINDOWS value of
  538.                                   1000K.
  539.                                                               Page   9
  540.          -------------------------------------------------------------
  541.  
  542.                I_CACHE is reset when it is resized and all modified
  543.                buffers are written to disk before it is resized.  You
  544.                cannot use this parameter with any others when you
  545.                resize the cache. I_CACHE may have trouble resizing up
  546.                to its maximum allowable size due to various XMS
  547.                allocations with software programs.  If it can't, it
  548.                will beep and try a smaller size than specified, or
  549.                return to its value before the /c parameter was
  550.                specified.  The cache can be manually reset by naming
  551.                an amount which is identical to the current cache size.
  552.  
  553.         /q- /q+
  554.  
  555.                /q- TURNS OFF INT 13 traps.      DEFAULT: /q+ (Traps ON)
  556.  
  557.                This parameter turns off int 13 detection traps.  These
  558.                traps are essential for programs which bypass DOS and
  559.                access the disk directly through int 13.  The traps maintain
  560.                the integrity of the cache buffers.  Turning off this feature
  561.                may cause a compromise in data integrity with programs that
  562.                write to the disk directly.   It is included only for special
  563.                circumstances in which I_CACHE has int 13 detection problems
  564.                or with applications that aren't compatible with I_CACHE's
  565.                int 13 detection.  YOU SHOULD NOT NORMALLY USE THIS PARAMETER.
  566.                (See Software Compatibility: Page 23)
  567.  
  568.         /w
  569.  
  570.                WRITE-THROUGH hard disk & magneto-optical drives
  571.  
  572.                This switches off the staged-write feature for all disks.
  573.                With the exception of Magneto-Optical drives, all floppy
  574.                and external drives are always in write-through mode.
  575.  
  576.         /s
  577.                STATUS DISPLAY.
  578.  
  579.                This brings up the cache status display.  It won't work if
  580.                cache isn't installed.
  581.  
  582.                The first screen indicates general information about I_CACHE
  583.                and its performance on your system.  It shows read and write
  584.                hit percentages, where I_CACHE is loaded into memory, its
  585.                resident size, which drives are cached, etc.
  586.  
  587.                The second screen indicates which block drivers have been
  588.                detected on your system and their place in memory.  It shows
  589.                the names of any CD drivers detected and certain funtions that
  590.                the physical CD drive may support (by checkmarks).
  591.  
  592.                Raw       The CD-ROM drive is capable of reading full 2352
  593.                          byte sectors as well as standard 2048 byte
  594.                          sectors.
  595.  
  596.                Write     The CD-ROM drive is capable of writing to CD-ROM
  597.                          disks.
  598.  
  599.                                                               Page  10
  600.          -------------------------------------------------------------
  601.  
  602.                Play      The CD-ROM drive can play audio disks.
  603.  
  604.                Intlv     The CD-ROM drive is capable of reading data
  605.                          written in interleaved mode.
  606.  
  607.                Pref      The CD-ROM drive can take prefetch requests.
  608.  
  609.                Redbk     The CD-ROM drive can read data addressed in
  610.                          RedBook mode (MIN:SEC:FRAME).
  611.  
  612.                The third screen indicates the percentage of the cache that
  613.                each drive is using.
  614.  
  615.  
  616.  
  617.         /b+ /b- /b:xx
  618.  
  619.                BELL TONE during disk updates.  Default: OFF.
  620.                                                Valid range: 5-100
  621.                                                (clock ticks)
  622.  
  623.                I_CACHE will produce a beep every xx clock ticks during
  624.                staged-write activity.  If a disk-write takes
  625.                less than xx ticks, I_CACHE will not produce a beep.
  626.  
  627.                You may turn this feature on by either specifying a
  628.                value with /b:xx (5-100) or with /b+, which uses the
  629.                previously defined value or the default value (15).
  630.                You may turn off this feature with /b-.
  631.  
  632.                If this feature is activated, it also causes the system
  633.                to beep when a media change is detected.  If you what a
  634.                media change beep, but do disk beep, place a very high
  635.                value with the /b parameter.   There are about 18 clock
  636.                ticks per second.
  637.  
  638.         /f
  639.  
  640.                FLUSH THE CACHE.
  641.  
  642.                This flushes the cache if there are modified buffers
  643.                waiting to be written to disk.  If there aren't, it
  644.                does nothing.  You can also flush the cache with the hot-key
  645.                combination:
  646.                                  LSHIFT+ALT+F
  647.         /?
  648.  
  649.                Parameters information.
  650.  
  651.         /a:x[+-]x[+-]...
  652.  
  653.                DRIVE SPECIFICATION         Default:  All drives
  654.                                                      cached.
  655.  
  656.                This specification indicates which drives to cache and
  657.                which drives not to cache, including CD_ROM drives.
  658.  
  659.                                                               Page  11
  660.          -------------------------------------------------------------
  661.  
  662.                If I_CACHE detects a drive as being a RAM disk, then it
  663.                will turn off caching functions to that drive, since
  664.                caching RAM drives is a waste of resources and is
  665.                inefficient.  If you have a RAM drive on your system
  666.                and I_CACHE did not detect it as being such, then caching
  667.                for that drive should be turned off.
  668.  
  669.                    EXAMPLE:
  670.                                 I_Cache /a:A+B-C+D-E+D+F+G-
  671.  
  672.                Since all detected drives are automatically cached, you
  673.                need only specify which drives are NOT to be cached on
  674.                initialization of I_CACHE.
  675.  
  676.                                 I_Cache  /a:B-D-G-
  677.  
  678.                accomplishes the same thing as the previous example.
  679.  
  680.                After I_CACHE is installed, you may turn on and off
  681.                drives from the DOS command line.
  682.  
  683.                                 I_Cache /a:a+d-
  684.  
  685.  
  686.         /L+-
  687.  
  688.                DISK CHANGE-LINE SUPPORT
  689.  
  690.                I_Cache needs to detect disk changes in order to clear its
  691.                buffers so corruption of data on the external disk doesn't 
  692.                occur.  This parameter is for external drives that don't
  693.                support the media change line.  I_cache treats these
  694.                devices differently when this parameter is activated.
  695.                It checks the serial number I_cache has stored
  696.                for the external disk against the number which the DOS
  697.                kernel has stored for it.  Disks without serial numbers
  698.                or non-DOS formatted disks are checked for last-access-
  699.                time.  If the last time the disk was accessed is
  700.                greater than 2.5 seconds, then I_Cache treats it as being
  701.                changed.
  702.  
  703.                If you are working with a drive with no change-line
  704.                support (or you have specified the drivparm= parameter
  705.                in the config.sys file and didn't use the /c
  706.                parameter), and you are working with disks with no
  707.                serial number (or non-DOS formatted disks), then, for
  708.                performance reasons, it may well serve to remove this
  709.                drive from being cached by I_Cache, rather than specify
  710.                this parameter.
  711.  
  712.                /L affects ALL external drives.  /L- is the default
  713.                (change-line supported).  Use /L+ for drives that don't
  714.                support the disk change line or if you use drvparm= in
  715.                your config.sys file without the /c parameter.
  716.  
  717.  
  718.  
  719.                                                               Page  12
  720.          -------------------------------------------------------------
  721.  
  722.         /er+-w+-                                      DEFAULT /er-w-
  723.  
  724.                I_Cache can report advanced information for errors
  725.                detected during disk reads or writes.   The information is
  726.                is for diagnotstic purposes and is written in the upper left
  727.                hand corner of your screen in the following format:
  728.  
  729.                  I_CACHE detects READ/WRITE ERROR
  730.                  Drive x  Sector: 0x000000h   (x)
  731.  
  732.                Values above are reported in 32-bit hex.
  733.  
  734.                The default for this information reporting is OFF.  If
  735.                you wish I_Cache to display this information on read
  736.                errors only, specify /er+ on the command line.  If you
  737.                wish I_Cache to display this information on write errors
  738.                only, specify /ew+ on the command line.  Or, if wish the
  739.                information panel to be displayed on both read and write
  740.                errors, specify /er+w+.  You can defeat the information
  741.                panel in the same way: /er-w- or use any combination of r
  742.                and w: /er+w-
  743.  
  744.                When I_Cache overwrites the screen, the screen is refreshed
  745.                and restored to it's original look in TEXT MODE. In GRAPHICS
  746.                MODES, I_CACHE will attempt to restore the screen in 16 COLOR
  747.                MODES (or less).  Whether it is successufl or not depends upon
  748.                the SIZE of I_CACHE's I/O BUFFER and the pixel distribution  
  749.                on the screen.   I_CACHE uses its I/O buffer as a temporary
  750.                storage area for RLE compressed pixel data.   Therefore, the
  751.                size of the buffer and the gradient pattern of the screen
  752.                pixels determine the amount of screen restoration possible.
  753.                The error panel will be displayed for three (3) seconds.
  754.  
  755.                This parameter does NOT apply to CD-ROMs.
  756.  
  757.  
  758.         CD-ROM INSTALLATION:
  759.         Required parameters and configuration
  760.  
  761.         I_Cache can be installed either as a device driver from the
  762.         config.sys file or from the autoexec.bat file.  Either way, in
  763.         order for CD-ROM drives to be cached, Microsoft's MSCDEX must be
  764.         installed AFTER I_Cache.  The /r parameter is used on the I_Cache
  765.         installation line to specify individual CD-ROM device names which
  766.         are to be cached by I_Cache.  The format for this parameter is as
  767.         follows:
  768.                    /r:(devicename,devicename....)
  769.  
  770.         All CD-ROM device drivers which are to be cached by I_CACHE
  771.         should be specified with the /r parameter and NOT on the
  772.         MSCDEX command line (/d switch).  I_CACHE will sort them out
  773.         and redirect all calls as necessary.  These are the steps you
  774.         should go through in order for I_CACHE to cache CD-ROMS with
  775.         MSCDEX.
  776.  
  777.                      1.)  Insure that I_CACHE is loaded AFTER
  778.                           all CD-ROM device drivers.
  779.                                                               Page  13
  780.          -------------------------------------------------------------
  781.  
  782.                      2.)  Insure that MSCDEX is loaded AFTER I_CACHE.
  783.                           If I_CACHE is installed from config.sys, then
  784.                           this is automatic since MSCDEX is a TSR and
  785.                           loaded in the autoexec.bat file.
  786.  
  787.                      3.)  If I_CACHE is to be loaded in the autoexec.bat
  788.                           file, ensure that it is loaded BEFORE MSCDEX.
  789.  
  790.                      4.)  Enter the device names of the CD-ROM device
  791.                           driver(s) to be cached by I_CACHE in the /r
  792.                           parameter:
  793.  
  794.  
  795.                  [device=]i_cache /i /c:3000 /r:(MSC001,MSC002,SONY03)
  796.  
  797.                           Parenthesis are required!!
  798.  
  799.                           The names of the device drivers are
  800.                           contained in your manual for the CD-ROM
  801.                           setup but will be along the lines of the
  802.                           ones mentioned above.  They are never
  803.                           longer than 8 characters.
  804.  
  805.                      5.)  Enter I_CACHE's device name with the /d
  806.                           parameter for MSCDEX:
  807.  
  808.                           MSCDEX /V /E /M:0 /D:$ICACHE$
  809.  
  810.                           MSCDEDX will now direct all calls for
  811.                           devices named in the /r parameter through
  812.                           I_CACHE.
  813.  
  814.                           $ICACHE$ is the device name for I_CACHE.
  815.  
  816.  
  817.                       *** DO NOT DUPLICATE THE NAMES ON THE MSCDEX /d
  818.                           PARAMETER WITH THOSE LISTED ON THE I_CACHE
  819.                           /r parameter.
  820.  
  821.                          Any device names named on the MSCDEX /d
  822.                          parameter line and NOT mentioned on the
  823.                          I_CACHE /r parameter line will NOT be cached
  824.                          by I_CACHE.
  825.  
  826.  
  827.  
  828.         CD-Installation notes -
  829.  
  830.               It is preferable that you specify /M:0 on the MSCDEX
  831.               installation line.  This allocates 0 buffers for MSCDEX
  832.               and makes the MSCDEX program smaller.  It also allows
  833.               I_Cache to handle all sector buffering, which is
  834.               preferable.  It is also preferable to specify as few
  835.               buffers as possible on your CD-ROM device driver
  836.               installation line, although most drivers won't let you
  837.               specify 0.
  838.  
  839.                                                               Page  14
  840.          -------------------------------------------------------------
  841.  
  842.  
  843.         COMPATIBLE INSTALLATION PARAMETERS
  844.  
  845.  
  846.                     /i /c /t /r (/d or /w) /b /L /a /e /m
  847.  
  848.     **********   -  can be used in place of / for parameter designation.
  849.                     i.e.: -w
  850.  
  851.  
  852.  
  853.                  INSTALLATION AND CONFIGURATION EXAMPLES
  854.  
  855.  
  856.  
  857.     device=i_cache.exe /i /c:4000.2500 /d /b:9 /ew+
  858.  
  859.           This entry would be found in the config.sys file.  This
  860.           installs I_CACHE as a device driver with a main
  861.           XMS cache size of 4000K.  The cache size in WINDOWS will be
  862.           2500K.  Staged-write delay is ON.  The update bell will be
  863.           sounded every 9 clock ticks during staged disk updates.  Buffer
  864.           size will be auto-selected.  Advanced information will be
  865.           displayed on disk write errors only.
  866.  
  867.           This line must come AFTER all block drivers.
  868.  
  869.     i_cache.exe /i /c:3000
  870.  
  871.           This installs I_CACHE as a TSR (autoexec.bat file) with
  872.           an XMS cache size of 3000K.  Staged-write will be ON by
  873.           default.  The update bell will be OFF by default.  Track size
  874.           will be auto-selected.
  875.  
  876.  
  877.     device=i_cache.exe /i /c:6000.3000 /w /t:32
  878.  
  879.           This entry would be found in the config.sys file.  This
  880.           installs I_CACHE as a device driver with a main XMS
  881.           cache size of 6000K.  The cache size in WINDOWS will be 3000K.
  882.           Staged-write delay will be OFF and all disk-writes will be
  883.           written-through (/w).  The track size will be 32 sectors.
  884.  
  885.           This line must come AFTER all block drivers.
  886.  
  887.     device=i_cache.exe /i /c:6000.3000 /d /b- /a:D-F- /r:(SONY01,SONY02)
  888.  
  889.          This installs I_CACHE as a device driver with a main
  890.          XMS cache size of 6000K.  The cache size in WINDOWS will be
  891.          3000K.  Staged-write delay is ON.  The update bell will be OFF.
  892.          The buffer size will be auto-seclected.  Drives D and F will not
  893.          be cached although all other detected drives will be (cached).
  894.          CD-ROM devices drivers SONY01 and SONY02 will be cached provided
  895.          that MSCDEX is loaded in the autoexec.bat file and the name
  896.          $ICACHE$ is specified with its /d parameter.  (MSCDEX /V /E
  897.          /D:$ICACHE$).
  898.  
  899.                                                               Page  15
  900.          -------------------------------------------------------------
  901.  
  902.  
  903.  
  904.          This line must come AFTER all block drivers and CD-ROM drivers.
  905.  
  906.          Lets say that you want to put I_CACHE into upper memory with the
  907.          tools provided with DOS and you want to load I_CACHE in the
  908.          autoexec.bat file.  You also want to load the I/O buffer into low
  909.          memory and specify a track size of 32 sectors.  You want to cache
  910.          CD-ROM device SONY01.
  911.  
  912.          config.sys file:
  913.                 buffers=1
  914.                    .
  915.                    .
  916.                    .
  917.                 device=sony01.sys
  918.                 device=ic_low.sys -32   (See Solutions, page 24)
  919.                    .
  920.                    .
  921.  
  922.         autoexec.bat file:
  923.                 PATH=.....
  924.                    .
  925.                 loadhigh i_cache.exe /i /c:4000 /r:(SONY01)
  926.                    .
  927.                 MSCDEX /V /E /M:0 /D:$ICACHE$
  928.  
  929.            With this example:
  930.                 Cache size will be 4000k.
  931.                 I/O buffer is in low memory.  Track size is 32 sectors.
  932.                 Staged write is ON by default.
  933.                 Update bell is OFF by default.
  934.                 CD-ROM device driver SONY01 is cached.
  935.                        This driver may operate more than one CD-ROM
  936.                        device.  More than one drive letter may be
  937.                        assigned.  Check the status with the /s parameter
  938.                        to see what drive letters are assigned to each
  939.                        device driver.  MSCDEX is loaded AFTER I_CACHE and
  940.                        names $ICACHE$ as the device name.
  941.  
  942.  
  943.  
  944.           Now lets say that you have QEMM loaded and you want to load
  945.           I_CACHE in the config.sys file (into upper memory).  You want to
  946.           cache CD-ROM device SONY01.
  947.  
  948.         config.sys file:
  949.              buffers=1
  950.                .
  951.                .
  952.              device=qemm386.sys .......
  953.              device=sony01.sys
  954.        device=c:\qemm\loadhi.sys /L c:\i_cache.exe /i /c:3000 /r:(SONY01)
  955.                .
  956.                .
  957.              autoexec.bat file:
  958.              PATH=.....
  959.                                                               Page  16
  960.          -------------------------------------------------------------
  961.                .
  962.              MSCDEX /V /E /D:$ICACHE$
  963.                .
  964.                .
  965.  
  966.  
  967.  
  968.            With this example:
  969.                    I_CACHE is loaded high into the largest space
  970.                       that QEMM can find.
  971.                    Cache size will be 3000k
  972.                    Staged write is ON by default.
  973.                    Update bell is OFF by default.
  974.                    CD-ROM device driver SONY01 is cached.
  975.                        This driver may operate more than one CD-ROM
  976.                        device.  More than one drive letter may be
  977.                        assigned.  Check the status with the /s parameter
  978.                        to see what drive letters are assigned to each
  979.                        device driver.
  980.  
  981.  
  982.  
  983.         USING THE CD AUDIO PLAYER
  984.         The /p parameter
  985.         (NOT available in unregistered versions)
  986.  
  987.         I_Cache contains a built-in CD audio player for your convenience.
  988.         It is sophisticated in its design and can handle up to 20
  989.         separate CD drives.  I_Cache needs to be loaded for this option
  990.         to work.  This feature is activated with the /p parameter:
  991.  
  992.                                 I_Cache /p
  993.  
  994.          ┌────────────────┐ ╔════════════════════════════════════════╗
  995.          │    I_Cache     │ ║                             ┌────────┐ ║
  996.          │   CD-Player    │ ║        Running Time on Disk │12:34.56│ ║
  997.          │  Version 1.0   │ ║                             └────────┘ ║
  998.          ├────────────────┤ ║      Play    Stop             ┌──┐ ┌─┐ ║
  999.          │ CTRL+P - Play  │ ║      ┌──┐    ┌──┐       Track │01│ │█│ ║
  1000.          │ CTRL+S - Stop  │ ║      │  │    │██│             └──┘ │ │ ║
  1001.          │ CTRL+R - Reset │ ║      └──┘    └──┘             ┌─┐  │ │ ║
  1002.          │ CTRL+C - Close │ ║                         Drive │E│  │ │ ║
  1003.          │ CTRL+E - Eject │ ║  Reset   Close   Eject        └─┘  │ │ ║
  1004.          │                │ ║  ┌──┐    ┌──┐    ┌──┐              │ │ ║
  1005.          │ CTRL+T - Track │ ║  │  │    │  │    │  │              │ │ ║
  1006.          │ CTRL+D - Drive │ ║  └──┘    └──┘    └──┘              │ │ ║
  1007.          │                │ ║                                    │ │ ║
  1008.          │ CTRL+[  ] Seek │ ║            Message                 │ │ ║
  1009.          │      - Volume  │ ║  ┌───────────────────────┐  Volume │ │ ║
  1010.          │                │ ║  │                       │  [    ] │ │ ║
  1011.          │   ESC - Quit   │ ║  └───────────────────────┘         └─┘ ║
  1012.          └────────────────┘ ╚════════════════════════════════════════╝
  1013.  
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.                                                               Page  17
  1020.          -------------------------------------------------------------
  1021.  
  1022.  
  1023.                      Minutes   Seconds   Frames
  1024.                            \      |      /
  1025.                             \     |     /
  1026.                               \───|────/
  1027.     Running Time on Disk      │12:34.56│
  1028.                               └────────┘
  1029.                        Running time is in Minutes, Seconds and Frames.
  1030.                        This is the amount of playing time into the disk
  1031.                        where the cd play head is located.  There are 75
  1032.                        frames per second.  Dynamically changes while
  1033.                        playing or seeking tracks.
  1034.  
  1035.  
  1036.     Volume control     Not all CD players support software manipulated
  1037.                        incremental volume control.  Up-arrow raises the
  1038.                        volume; Down-arrow lowers it.  If you find that
  1039.                        this adjustment does nothing to your volume, then
  1040.                        it means that software manipulated volume control
  1041.                        is not available on your CD.  You must rely on the
  1042.                        volume control knob.  Whether volume control is
  1043.                        supported or not, this feature can turn off and on
  1044.                        your volume.  The volume factor in the CD driver
  1045.                        will be displayed.  Values are from 0-255.  255 is
  1046.                        usually the default set by the dedicated CD
  1047.                        driver.
  1048.  
  1049.                        For CD players that DON'T support software
  1050.                        manipulated volume control, values are treated as
  1051.                        follows:
  1052.  
  1053.                              0   =   OFF
  1054.                            1-255 =   ON
  1055.  
  1056.                        For CD players that DO support software
  1057.                        manipulated volume control, values are treated as
  1058.                        follows:
  1059.  
  1060.                              0   =   OFF
  1061.                            1-255 =   volume increments
  1062.  
  1063.                        I_CACHE will increment or decrement your volume by
  1064.                        8.
  1065.  
  1066.     Other keys:        Except for the UP-ARROW and DOWN-ARROW volume
  1067.                        keys, all other keys must be used in conjuction
  1068.                        withe the CONTROL key.  The funtion will not
  1069.                        activate until the CONTROL key is released.
  1070.  
  1071.        CTRL+D          Toggles the drive.  While holding down the CONTROL
  1072.                        key, you can keep pressing D to find the drive
  1073.                        which you want to play.
  1074.  
  1075.        CTRL+T          Toggles the CD track.  While holding down the
  1076.                        CONTROL key, you can keep pressing T in order to
  1077.                        find the track you want.
  1078.  
  1079.                                                               Page  18
  1080.          -------------------------------------------------------------
  1081.  
  1082.        CTRL+L-ARROW    Shuttle seek forward and reverse.  While holding
  1083.        CTRL+R-ARROW    down the CONTROL key, you can keep pressing either
  1084.                        RIGHT-ARROW or LEFT-ARROW in order to seek to the
  1085.                        spot on the disk which you want.  The Running Time
  1086.                        display will change with your selection.  Each
  1087.                        key press makes the CD seek position in +-1 second
  1088.                        increments.   On release of the CONTROL key, the
  1089.                        seek will be accomplished.
  1090.  
  1091.        CTRL+P          Will start playing the CD from the CD head's
  1092.                        current position and will play until CTRL+S is
  1093.                        pushed, or to the end of the disk.
  1094.  
  1095.        CTRL+R          Resets the disk.
  1096.  
  1097.        CTRL+E          Ejects the disk if this command is supported by
  1098.                        your CD player.
  1099.  
  1100.        CTRL+C          Closes the CD tray if this command is supported by
  1101.                        your CD player.
  1102.  
  1103.        CTRL+S          Stops play.
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.                                  HOT KEYS
  1110.  
  1111.         I_CACHE has two hot-key combinations:
  1112.  
  1113.                    LSHIFT+ALT+F will flush the cache.
  1114.  
  1115.                    LSHIFT+ALT+M will force a media change.
  1116.                        A forced media change will make I_cache invalidate
  1117.                        all buffers allocated for external/floppy drives
  1118.                        including CD-ROMs.
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.                                ERROR MESSAGES
  1125.  
  1126.                             I_Cache  Version 1.11
  1127.  
  1128.  
  1129.         I_CACHE PRODUCED ERROR MESSAGES
  1130.         -------------------------------
  1131.  
  1132.         !! ACCESS DENIED !!
  1133.         You cannot access I_Cache Ver x.x with I_Cache Ver x.x
  1134.         You cannot mix versions of I_Cache.
  1135.  
  1136.               If a certain version of I_Cache is installed on your computer,
  1137.               you can't access I_Cache with a different version.
  1138.  
  1139.                                                               Page  19
  1140.          -------------------------------------------------------------
  1141.  
  1142.  
  1143.  
  1144.         Can't install I_Cache: 386+ processor required...
  1145.  
  1146.               This message is displayed if you do not have a 386+
  1147.               computer processor.  I_cache can only be used with
  1148.               computers containing at least a 386 chip.
  1149.  
  1150.         Can't install I_Cache: XMS ERROR
  1151.  
  1152.               This message is displayed if I_cache experiences problems
  1153.               in allocating XMS.  It is fatal and will cause I_Cache
  1154.               to stop installing itself.
  1155.  
  1156.         I_CACHE: Can't load WINDOWS at this time...try again
  1157.  
  1158.               I_Cache has detected an error while trying to initialize
  1159.               Windows enhanced mode.  Wait a few seconds, then try again.
  1160.  
  1161.         I_CACHE: Can't load Windows at this time...Please flush cache
  1162.                  first
  1163.  
  1164.               I_Cache has detected that the write cache had unwritten
  1165.               buffers waiting.  The cache must be flushed prior to
  1166.               entering Windows enhanced mode.  Use hot keys LSHIFT+ALT+F
  1167.               or, from the command line, use I_Cache /f.  Then try to
  1168.               load Windows again.
  1169.  
  1170.         I_Cache Not Installed
  1171.  
  1172.               I_Cache is not installed on your system.  You will get this
  1173.               message if you try one of the I_Cache command-line options
  1174.               when I_Cache has not been installed.
  1175.  
  1176.         I_Cache already installed
  1177.  
  1178.               I_cache is presently running on your system.  You will get
  1179.               this message if you try to install I_Cache while it is
  1180.               already running.
  1181.  
  1182.         Installation option only...
  1183.  
  1184.               You will get this message if you try to use an
  1185.               INSTALLATION-ONLY option from the command line, for example
  1186.               /t, /r, /i, etc.
  1187.  
  1188.         Invalid cache size - Must be 100 - 16000
  1189.  
  1190.               Valid Cache sizes are in k (1000 bytes).  Valid values are
  1191.               100 to 16000(k).
  1192.  
  1193.         Invalid parameter combination
  1194.  
  1195.               Certain parameter combinations aren't allowed.  This
  1196.               message will appear if you use an invalid combenation from
  1197.               the command line.
  1198.  
  1199.                                                               Page  20
  1200.          -------------------------------------------------------------
  1201.  
  1202.         Need cache buffers specified: /c:xxxx
  1203.  
  1204.               This message will appear if you tried to install I_Cache
  1205.               without specifying a cache size.
  1206.  
  1207.         No ID numbers available
  1208.  
  1209.               This message will appear if, for some reason, your system
  1210.               is already maxed-out with TSRs and device drivers and
  1211.               I_Cache wouldn't install.  Try de-installing a few, then
  1212.               try installing I_Cache.
  1213.  
  1214.         Requires MS-DOS 4.0 or later
  1215.  
  1216.               I_Cache will only install if your computer has DOS Version
  1217.               4.0 or later.
  1218.  
  1219.         Sorry, can't resize cache from within Windows...
  1220.  
  1221.               You can't manually resize the cache (with the /c parameter)
  1222.               while operating inside of the Windows operating system.
  1223.               Windows will automatically resize itself on entry and exit
  1224.               from Windows if you have a Windows cache size specified on
  1225.               installation.  You may resize the cache while outside of
  1226.               the Windows operating system.
  1227.  
  1228.         Too many buffers - reduce memory request
  1229.  
  1230.               This message appears on installation if your specified
  1231.               track size is too small and your memory request is very
  1232.               high.  Try increasing your track size or reducing your
  1233.               XMS memory request.
  1234.  
  1235.         Too many devices named...20 maximum
  1236.  
  1237.               You can only cache a maximum of 20 CD-ROM drives.
  1238.  
  1239.         Unknown Command
  1240.  
  1241.               Generated by CD audio player, usually if your player does
  1242.               not support Eject Tray or Close Tray commands.
  1243.  
  1244.         Unrecognized option
  1245.  
  1246.               This message appears if you specify an unsupported
  1247.               parameter.
  1248.  
  1249.  
  1250.  
  1251.         DISK ERROR MESSAGES
  1252.         -------------------
  1253.         Common Critical Errors Generated by DOS
  1254.  
  1255.         Drive Not Ready
  1256.  
  1257.               You attempted to access a drive with no disk in it or with
  1258.  
  1259.                                                               Page  21
  1260.          -------------------------------------------------------------
  1261.  
  1262.               the drive door open.   This usually occurs on external
  1263.               drives.   Also generated by the CD Audio Player when a disk
  1264.               is not in the drive.
  1265.  
  1266.         General Failure
  1267.  
  1268.               The drive did not respond.
  1269.  
  1270.         Sector Not Found
  1271.  
  1272.               This is a critical error which will appear under DOS if
  1273.               your disk could not find a sector in a file.  The sector
  1274.               may be damaged or your FAT may be invalid.  I_Cache will
  1275.               display an informative display prior to this if you have
  1276.               used the /e parameter.
  1277.  
  1278.               After this error, you usually get (A)bort, (R)etry,
  1279.               (F)ail...
  1280.  
  1281.         Unknown Media
  1282.  
  1283.               DOS did not recognize your disk.  This can happen with old
  1284.               floppy disks, formatted under obsolete versions of DOS,
  1285.               with non-DOS formatted disks, and with damaged disks.
  1286.  
  1287.         Write Violation
  1288.  
  1289.               This error occurs if you tried to write to a write-
  1290.               protected (read-only) disk.  It also occurs if you try to
  1291.               write to a CD-ROM.
  1292.  
  1293.  
  1294.  
  1295.  
  1296.         CD-ROM ERROR MESSAGES
  1297.         ---------------------
  1298.         Common Error Messages Generated by MSCDEX or CD-ROM Drivers
  1299.  
  1300.               Please consult your CD-ROM manual for error messages by the
  1301.               CD-ROM dedicated driver or by MSCDEX.
  1302.  
  1303.  
  1304.  
  1305.  
  1306.                              SOFTWARE COMPATIBILITY
  1307.  
  1308.         DOS
  1309.         ---
  1310.         Norton Backup    -  Norton does not recommend the use of disk
  1311.                             caches with their backup programs, especially
  1312.                             with the use of Norton's proprietary disk
  1313.                             format.  Although no errors have been
  1314.                             detected with Norton Backup, use I_Cache at
  1315.                             your own risk.
  1316.  
  1317.  
  1318.  
  1319.                                                               Page  22
  1320.          -------------------------------------------------------------
  1321.  
  1322.                             If you wish to use I_CACHE with Norton Backup
  1323.                             programs, it is recommended that, if you are
  1324.                             backing up to an external/floppy drive, you
  1325.                             turn the external drive off with the /a:
  1326.                             parameter so that I_CACHE will not manage
  1327.                             that drive.
  1328.  
  1329.         Norton AntiVirus -  Please load any special drivers for this program
  1330.                             BEFORE I_Cache.
  1331.  
  1332.         Defragmentation  -  Please turn all drives OFF with the /a
  1333.         utilities           parameter prior to using these utilities.
  1334.                             If you experience difficulty, use the /q-
  1335.                             parameter also.  Remember to use /q+ when you
  1336.                             are finished with the program.  This can
  1337.                             be accomplished in a batch file, which could
  1338.                             also start your program.
  1339.  
  1340.         Norton Calibration- See above requirements for Defragmentation utils.
  1341.         fix-it utilities    If you experience problems with erroneous error
  1342.         MS Scandisk         displays for Norton Disk Doctor, try resetting
  1343.                             the cache.  (See /c parameter).
  1344.  
  1345.         MS Antivirus        If you experience problems with this program,
  1346.                             then turn the appropriate drives OFF with the
  1347.                             /a: parameter.
  1348.  
  1349.  
  1350.         ****   (See System Optimization - Batch File Use..Pg. 27)
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.         WINDOWS
  1359.         -------
  1360.         Windows-for-Work-Groups -
  1361.  
  1362.                             I_CACHE is NOT compatible with 32BitFileAccess 
  1363.                             or its various components such as VCACHE and
  1364.                             VFAT.  You should disable 32BitFileAccess and its
  1365.                             various components in the Windows system.ini
  1366.                             file if you wish to use I_CACHE for the par-    
  1367.                             ticular drive in question.  I_CACHE may provide
  1368.                             better performance than 32BitFileAccess anyway.
  1369.  
  1370.                             Conversely, if you wish to use 32BitFileAccess
  1371.                             and its various components (mentioned above) 
  1372.                             instead of I_CACHE, then turn off the appropriate
  1373.                             drive with the /a: parameter.   I_CACHE should
  1374.                             not service the same drive as 32BitFileAccess.
  1375.                             For example, if the components of 32BitFileAccess
  1376.                             are managing drive C, then use I_CACHE /a:c- to
  1377.                             turn off I_CACHE's management of the drive.
  1378.  
  1379.                                                               Page  23
  1380.          -------------------------------------------------------------
  1381.  
  1382.         Video (CD-i and others)
  1383.         -----------------------
  1384.         If you experience problems with laser video playback, use the /a:
  1385.         parameter to uncache the drive.  For instance, if you are
  1386.         experiencing problems with CD drive F, then use: I_cache /a:f-
  1387.         from the command line.  Be sure to turn the drive back on for
  1388.         data caching functions (I_cache /a:f+).  Believe it or not,
  1389.         CD-i video data can be cached.
  1390.  
  1391.  
  1392.         DESQview and QEMM
  1393.         -----------------
  1394.         QEMM's /GETSIZE parameter may provide a false reading.  If you
  1395.         have problems loading I_Cache into upper memory with QEMM
  1396.         and /GETSIZE indicates that I_Cache needs 60k+, then install
  1397.         I_Cache with the /SIZE parameter:  loadhi /size:49k I_Cache.exe...
  1398.         QEMM 7.5 also has trouble loading I_CACHE high without the /SIZE
  1399.         parameter.
  1400.  
  1401.  
  1402.         Other Disk Caches
  1403.         -----------------
  1404.         I_CACHE is compatible with NO other disk caches.  Please do not
  1405.         install other disk caches with I_CACHE.  If you are using VCACHE,
  1406.         then I_CACHE must not service the same drive (as VCACHE).
  1407.  
  1408.  
  1409.         CAM (Common Access Method) Drivers
  1410.         ----------------------------------
  1411.         Use CAM drivers at your own risk.  Some appear to be incompatible 
  1412.         with I_CACHE.
  1413.  
  1414.  
  1415.                           HARDWARE COMPATIBILITY
  1416.  
  1417.         SCSI controllers and Virtual DMA
  1418.         --------------------------------
  1419.         Certain disk controllers support a concept called bus mastering.
  1420.         This is where the actual disk controller takes over the bus in
  1421.         order to transfer data to or from system RAM. Some SCSI
  1422.         controllers have this feature. A problem occurs when running in
  1423.         the virtual 8086 mode that Windows, DESQview and other virtual
  1424.         machines provide.  Memory managers such as QEMM and EMM386.EXE
  1425.         also use virtual 8086 mode. The read or write address that is
  1426.         passed to MS-DOS is often not the same as the actual physical
  1427.         memory address. This can cause data to be read from the wrong
  1428.         location or cause data to be written to the wrong address, which
  1429.         in turn can cause erratic system behavior, general protection
  1430.         faults, and the system to stop responding (hang).
  1431.  
  1432.         Microsoft created a standard called Virtual DMA Services, which
  1433.         provides an interface that allows these bus-master controllers to
  1434.         get the correct address and avoid the problems mentioned above.
  1435.         However, some older bus-master controller cards do not support
  1436.         this standard.  Most disk controllers do support this standard
  1437.         however, and this includes all MFM, RLL, and IDE controllers as
  1438.         well as many ESDI and SCSI devices.
  1439.                                                               Page  24
  1440.          -------------------------------------------------------------
  1441.  
  1442.  
  1443.   --->  Use the enclosed utility VDMA.EXE to determine if Virtual DMA
  1444.         Services are available on your computer.  This utility will
  1445.         notify you if VDS services are available on your computer and
  1446.         if your controller card supports VDS services.  You can also
  1447.         determine this from the VDS category on the first I_CACHE
  1448.         status panel (I_cache -s).  If the VDS category indicates -none
  1449.         detected- or the Support [ ] category is not checked, then you
  1450.         may need to install IC_LOW.SYS.
  1451.  
  1452.  
  1453.  
  1454.         Solutions
  1455.         ---------
  1456.         There are two ways in which I_Cache can deal with non-compliant
  1457.         VDS controller cards.  This first way is to simply load I_CACHE
  1458.         into low memory.  This will supply the disk controller with the
  1459.         same physical and virtual memory address.
  1460.  
  1461.         The second way is, if you want to load I_CACHE into high memory,
  1462.         to load the i/o buffer low: "split load".  This can be done very
  1463.         simply by using the separate i/o buffer IC_LOW.SYS.  This is
  1464.         loaded in the config.sys file (loaded low) prior to I_CACHE.  The
  1465.         format is as follows:
  1466.  
  1467.                 device=IC_LOW.SYS [-4][-8][-16][-32][-64]
  1468.  
  1469.                 This loads the i/o buffer.  You then load I_cache
  1470.                 high anywhere AFTER ic_low.sys with any of the
  1471.                 memory managers, either in config.sys or autoexec.bat.
  1472.                 DO NOT LOAD IC_LOW.SYS INTO UPPER MEMORY.  This defeats
  1473.                 the purpose of the driver.
  1474.  
  1475.         Please note that you specify the track size on the IC_LOW.SYS
  1476.         command line.  If you don't specify anything, it defaults to 16
  1477.         sectors.  If you use this driver, I_cache won't autoselect track
  1478.         size and the /t: parameter won't work.  IC_LOW.SYS dictates the
  1479.         buffer size.  IC_LOW.SYS is NOT needed if you load I_CACHE low.
  1480.  
  1481.  
  1482.          Tape Drives
  1483.          -----------
  1484.  
  1485.          I_CACHE was not designed to cache or manage tape drives.  The
  1486.          particular tape drive should be turned OFF with the /a:
  1487.          parameter.  Users who wish to configure I_CACHE for their tape
  1488.          drive do so at their own risk.
  1489.  
  1490.  
  1491.          Magneto-Optical Drives
  1492.          ----------------------
  1493.  
  1494.          I_Cache will be compatible with these disks only if they are
  1495.          formatted with a standard DOS boot sector.  I_Cache will handle
  1496.          media configured in 512, 1024, and 2048 bytes-per-sector.
  1497.  
  1498.  
  1499.                                                               Page  25
  1500.          -------------------------------------------------------------
  1501.  
  1502.          Compressed drives
  1503.          -----------------
  1504.  
  1505.          I_CACHE can manage and cache DoubleSpace drives and their host(s).
  1506.          If your DoubleSpace drives are mounted during system initialization,
  1507.          then I_CACHE will detect these drives and manage them accordingly.
  1508.          You may use the /a: parameter on your I_CACHE initialization line
  1509.          to indicate any compressed drives which you may not want cached.
  1510.          I_CACHE wil detect all compressed drives which are activated prior 
  1511.          to the installation of I_CACHE.  To do this, I_Cache MUST be
  1512.          installed AFTER this line in your Config.sys file:
  1513.  
  1514.  
  1515.                        device=DrvSpace /MOVE
  1516.                    
  1517.                                or
  1518.  
  1519.                        device=DblSpace /MOVE
  1520.  
  1521.  
  1522.          Caching for DoubleSpace drives may be removed or asserted with
  1523.          the usual I_Cache /a: parameter:
  1524.  
  1525.                          I_Cache /a:d-e+
  1526.  
  1527.  
  1528.          If you wish to service a drive from the command line with any of 
  1529.          the following DoubleSpace commands, then you should turn OFF the
  1530.          appropriate drive with the /a: parameter, then reboot your
  1531.          computer when you are finished (if DoubleSpace doesn't auto-
  1532.          matically do it for you:
  1533.  
  1534.  
  1535.                          * DBLSPACE /DELETE
  1536.                          * DBLSPACE /CREAT
  1537.                          * DBLSPACE /COMPRESS
  1538.                          * DBLSPACE /MOUNT
  1539.                          * DBLSPACE /UNMOUNT
  1540.                          * DBLSPACE /UNCOMPRESS
  1541.  
  1542.                          * DRVSPACE can be substituted for DBLSPACE 
  1543.  
  1544.          You should also turn OFF any drive which is to be defragmented.
  1545.          You do this with the /a: parameter prior to defragmentation.  You
  1546.          may re-assert the drive when you are finished.
  1547.  
  1548.          The I_Cache status display (I_Cache -s) codes DoubleSpace drives
  1549.          as follows:
  1550.  
  1551.                          Dsp Comp   -   Compressed DoubleSpace drive
  1552.  
  1553.                          Dsp Drive  -   Drive available for DoubleSpace or
  1554.                                         Host drive
  1555.  
  1556.          I_Cache treats compressed DoubleSpace drives like any other 
  1557.          drive on your system.
  1558.  
  1559.                                                               Page  26
  1560.          -------------------------------------------------------------
  1561.  
  1562.                               SYSTEM OPTIMIZATION
  1563.  
  1564.          Batch File Use
  1565.          --------------
  1566.  
  1567.          Batch Files (files with .bat extentions) can be an invaluable tool
  1568.          in optimizing your system.  These files can automatically setup
  1569.          I_CACHE with important parameters prior to launching certain             
  1570.          applications.
  1571.  
  1572.          For instance, if you wish to use the 32BitFileAccess feature of
  1573.          Windows-for-Work-Groups to cache your hard disks instead of using
  1574.          I_CACHE for this purpose, then you can start WFWG from a batch file.
  1575.          As stated on page 23, I_CACHE cannot manage the same drives as
  1576.          WFWG.  For instance, if you have four drives: A,B,C, and D, and
  1577.          you wanted 32BitFileAccess to manage drives C and D, then you could
  1578.          start up WFWG with the following batch file, which would turn OFF
  1579.          hard disks C & D (for I_CACHE) before starting up WFWG, then
  1580.          reasserting the drives when you left WFWG.  Redirecting to NUL
  1581.          will eliminate any display by I_CACHE.
  1582.  
  1583.                          I_CACHE /a:c-d- > NUL
  1584.                          Win /3
  1585.                          I_CACHE /a:c+d+ > NUL 
  1586.  
  1587.          While in WFWG, I_CACHE would still manage your floppy drives (A & B).
  1588.          To make I_CACHE work even better with WFWG, you could initially
  1589.          install I_CACHE with a Windows value of 128 or so:
  1590.  
  1591.                          I_CACHE /i /c:4096.128 
  1592.  
  1593.          In this example, when I_CACHE enters Windows, it will free up most
  1594.          of its XMS memory and keep only 128k for the floppy drives.  This
  1595.          will leave the rest of the XMS memory for 32BitFileAccess.
  1596.  
  1597.          Defragmentation utilities like DOS's DEFRAG.EXE and Norton's
  1598.          Speedisk should have all I_CACHE drives turned OFF prior to
  1599.          the startup of these applications.  Norton's utility should also
  1600.          use the /q parameter.  A batch file could assert the proper 
  1601.          parameters automatically prior to starting the application and
  1602.          restore I_CACHE's parameters afterwards.  For example, your batch
  1603.          file could use these three lines only (assuming that your system
  1604.          has four drives A,B,C, & D): 
  1605.  
  1606.                         I_CACHE /a:a-b-c-d- /q- > NUL
  1607.                         SPEEDISK [parameters]
  1608.                         I_CACHE /a:a+b+c+d+ /q+ > NUL
  1609.  
  1610.          Please see your DOS manual for more information on batch files
  1611.          and their use.
  1612.  
  1613.          Remember, if you put "> NUL" on the I_CACHE command line as shown
  1614.          above, you will prevent I_CACHE from displaying results to the     
  1615.          screen.  A "quiet" display as shown above is favorable in batch
  1616.          files.
  1617.  
  1618.  
  1619.                                                               Page  27
  1620.          -------------------------------------------------------------
  1621.  
  1622.  
  1623.                              THE I_CACHE API
  1624.  
  1625.  
  1626.         Int 2fh
  1627.         -------
  1628.  
  1629.         I_CACHE uses four (4) calls from the Smartdrv API:
  1630.  
  1631.         1.) Installation check -
  1632.  
  1633.                   AX = 4A10h
  1634.                   BX = 0000h
  1635.                   CX = EBABh
  1636.  
  1637.                 Return:
  1638.  
  1639.                   AX    = 1CACh   if I_cache is installed
  1640.                   DX:BX = cache hits
  1641.                   DI:SI = cache misses
  1642.                   BP    = version in BCD (01.10 = 0110h)
  1643.  
  1644.         2.) Flush buffers -
  1645.  
  1646.                   AX = 4A10h
  1647.                   BX = 0001h
  1648.  
  1649.         3.) Get device driver for drive -
  1650.  
  1651.                   AX = 4A10h
  1652.                   BX = 0007h
  1653.                   BP = drive number (0 = A, 1 = B, etc.)
  1654.  
  1655.                 Return:
  1656.  
  1657.                   ES:DI = address of device driver header for drive
  1658.                           (stored info from original drive DPB)
  1659.                   DL    = subunit number for drive
  1660.  
  1661.         4.) Reset cache -
  1662.  
  1663.                   AX = 4A10h
  1664.                   BX = 0002h
  1665.  
  1666.  
  1667.  
  1668.  
  1669.                            PRECAUTIONS & SUGGESTIONS
  1670.  
  1671.  
  1672.         Precautions
  1673.         -----------
  1674.  
  1675.         1.)   As with all disks and disk caches, you should take time to
  1676.               perform daily full or incremental backups to safeguard your
  1677.               data.  Computer failure can't be predicted.
  1678.  
  1679.                                                               Page  28
  1680.          -------------------------------------------------------------
  1681.  
  1682.  
  1683.         2.)   Use the DOS MIRROR command faithfully to save your data
  1684.               FATs.  This is especially important when you start to use a
  1685.               new disk cache.
  1686.  
  1687.         3.)   Use the DOS MIRROR command with the /partn parameter to
  1688.               save your partition table entries.
  1689.  
  1690.  
  1691.         4.)   Do NOT load I_CACHE from a command shell.  When you exit
  1692.               the shell, your computer will probably hang.  Install
  1693.               I_CACHE from the root shell only (config.sys or
  1694.               autoexec.bat files).
  1695.  
  1696.         5.)   Check the status display or use the hot key combination
  1697.               LSHIFT+ALT+F, or I_cache /f from the command line to ensure
  1698.               that the cache is flushed of all written buffers prior to
  1699.               turning off your computer.   If you experience a power
  1700.               failure, you may lose data that hasn't yet been written to
  1701.               disk.
  1702.  
  1703.         6.)   See the Software Compatibilities section prior to using any
  1704.               disk calibration, defragmenting or disk fix-it utilities.
  1705.  
  1706.  
  1707.  
  1708.  
  1709.         Suggestions
  1710.         -----------
  1711.  
  1712.         1.)   Don't allocate all of your memory for disk caches.  Make
  1713.               sure to leave some for programs that require DOS extenders,
  1714.               etc., such as programming utilities like Codeview, MASM and
  1715.               the like.   Cache values for use within the Windows
  1716.               operating system should be somewhat less than the main
  1717.               cache value.    The following are some recommended cache
  1718.               values:
  1719.  
  1720.               Total XMS memory       I_cache size       Windows size **
  1721.               ----------------       ------------       ------------
  1722.  
  1723.                  1000k                 1000k                -
  1724.  
  1725.                  2000k                 1000k                -  
  1726.  
  1727.                  4000k                 2048k              1000k
  1728.  
  1729.                  8000k                 3072k              2048k
  1730.  
  1731.                 16000k                 4096k              2048k
  1732.  
  1733.                 32000k                 8000k              6000k
  1734.  
  1735.                                                      ** optional
  1736.  
  1737.  
  1738.  
  1739.                                                               Page  29
  1740.          -------------------------------------------------------------
  1741.  
  1742.  
  1743.         Disclaimer
  1744.         ----------
  1745.  
  1746.               The makers and developers of I_CACHE make no represent-
  1747.               ation, warranty, assurance or inducement, express or
  1748.               implied, as to its adequacy, sufficiency or freedom from
  1749.               defect of any kind.   Neither the makers or developers
  1750.               will have any liability to any user resulting from the
  1751.               use of it nor are they responsible for any data loss or
  1752.               computer failure resulting from any inherent incompat-
  1753.               ibilities with any other software or hardware.
  1754.  
  1755.  
  1756.  
  1757.                              CUSTOMER SERVICE
  1758.  
  1759.  
  1760.         For technical problems or questions, contact Miles Pawski.
  1761.  
  1762.         COMPUSERVE:   70473,527
  1763.         FAX:          415-626-9539  (USA)
  1764.         VOICE:        415-626-1759  (USA)
  1765.         INTERNET:     70473.527@compuserve.com
  1766.  
  1767.         MAIL: P.O. Box 170448, San Francisco, California  94117  USA
  1768.  
  1769.  
  1770.  
  1771.                              SHAREWARE NOTES
  1772.  
  1773.  
  1774.         Shareware terms:
  1775.  
  1776.         This is a user-supported program distributed as SHAREWARE! You
  1777.         are entitled to use it for a trial period of 30 days. After that,
  1778.         you must REGISTER for use.  BBS operators, and users are
  1779.         encouraged to distribute this trial-program, as long as no
  1780.         charges other than the BBS connection or media fees are charged.
  1781.         For business, education and government agencies, this program
  1782.         should not be operated without an on site licence for daily use.
  1783.  
  1784.         Registration through COMPUSERVE:
  1785.         Program Title: I_CACHE 1.11     Registration ID: 6971  (GO SWREG)
  1786.         Author: Miles Pawski
  1787.  
  1788.  
  1789.  
  1790.         Registered user's privileges:
  1791.  
  1792.             ■ Technical support for this program and related problems.
  1793.             ■ Mailed notice of new versions and products available!
  1794.             ■ The next upgrade at no more than media and processing fees.
  1795.               Please indicate which version you are using now.
  1796.             ■ Inclusion of the CD-AUDIO player. 
  1797.  
  1798.  
  1799.                                                               Page 30
  1800.          ------------------------------------------------------------
  1801.