中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] [3] »
作者:
标题: 关于UIDE.SYS驱动参数的疑问 上一主题 | 下一主题
bootable
新手上路





积分 16
发帖 6
注册 2006-6-7
状态 离线
『楼 主』:  关于UIDE.SYS驱动参数的疑问

请问大家,我在CONFIG里加载UIDE.SYS的时候,后面/Sn的参数指定XMS暂存量的时候,指定的数量和UIDE加载时显示的数量不同,例如我指定15,实际显示10MB Cache;我指定32,实际为20MB,不知何故?
UIDE加载的时候,要配合加载EMM386之类的高内存区的驱动吗?不加载的话实际效果如何?

另外哪里有下载UIDE的原文README文件,我想仔细看看说明,呵呵!多谢

2007-11-18 23:30
查看资料  发短消息 网志   编辑帖子  回复  引用回复
waitingcd
初级用户





积分 75
发帖 37
注册 2007-4-11
状态 离线
『第 2 楼』:  

/S:n
n>80时实际分配容量才会和n匹配。小于80是应该是缩小匹配。我设定成60结果是40

2007-11-19 12:46
查看资料  发短消息 网志   编辑帖子  回复  引用回复
waitingcd
初级用户





积分 75
发帖 37
注册 2007-4-11
状态 离线
『第 3 楼』:  

可以不用配合EMM386使用。不加载的话应该就是UIDE驱动被加载到常规内存中,除非你在config.sys中加载了UMBPCI驱动。

2007-11-19 12:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
waitingcd
初级用户





积分 75
发帖 37
注册 2007-4-11
状态 离线
『第 4 楼』:  

=========================================================================================


http://johnson.tmfc.net/dos/

                     XMGR and UIDE -- DOS Device Drivers
                   =======================================

1. Description
   -----------

   XMGR and UIDE are DOS device drivers.    They can be used with a system
   having an 80386+ CPU and running MS-DOS V5.0+ or equivalent.

   XMGR is a DOS driver that works as an XMS memory manager.   It supports
   V3.70+ UMBPCI by Uwe Sieber.    After UMBPCI enables upper-memory, XMGR
   can load there directly and provide both upper and XMS memory for a DOS
   system.   XMGR uses an "I-O catcher" with UMBPCI, to intercept diskette
   or hard disk I-O above 640K.   Such I-O is done thru a low memory area,
   to avoid DMA trouble in UMBPCI "Shadow RAM".   XMGR also supports V4.49
   and V4.95 EMM386 (MS-DOS V6.22 or V7.10).   With EMM386, XMGR using its
   /B switch can first "boot" into temporary space.   After EMM386 enables
   upper-memory, XMGR loads there with no /B switch, copies all its "boot"
   data, and takes-over XMS work.    Only its XMS "Handles" table stays in
   low memory, so EMM386 can always find them at fixed addresses.    For a
   small XMS-only system, XMGR can also load entirely in low memory.

   UIDE is a DOS "Universal IDE" caching driver.   It intercepts "Int 13h"
   BIOS I-O requests and can cache data for up to 32 BIOS units, including
   standard A: and B: diskettes if present, and including newer hard disks
   with over 128-GB of data.    UIDE accepts 48-bit LBA and 24-bit CHS I-O
   calls, thus it runs with new or old DOS systems.    It has internal IDE
   logic for SATA and UltraDMA hard-disks, and it handles up to 8 "Legacy"
   or "Native PCI" IDE controllers.   All possible SATA or UltraDMA I-O is
   done through its XMS cache buffers, for faster speed.    UIDE calls the
   BIOS for diskettes, SCSI, and other disk models, so it caches ALL disks
   for a DOS system!    DOS "Int 13h" drivers can load before UIDE, and it
   will intercept and cache I-O for the other drivers, as well.   (Drivers
   using "ASPI" or I-O schemes other than Int 13h are unsupported).

   UIDE also supports up to 4 CD/DVD drives, including SATA, UltraDMA, and
   older "PIO mode" drives.   After loading, it checks up to 8 "Legacy" or
   "Native PCI" IDE controllers in order from primary-master to secondary-
   slave, and it runs the first 4 CD/DVD drives found.   UIDE accepts file
   input requests from SHCDX33C or other "CD-ROM Redirector" programs like
   MSCDEX, and it caches all file data and directories for improved speed!
   It also supports DOS "audio" requests and will "play back" an audio CD.
   Data files on one drive, and "raw mode" audio/trackwriters (not cached)
   on another drive can be run by UIDE at the same time!

   UIDE uses XMS memory and caches from 5-MB to 1-Gigabyte of data!   With
   the "LZ" V7.10 MS-DOS kernel and 4DOS COMMAND.COM, UIDE loads its cache
   logic and binary-search table in HMA space unneeded by DOS, and it uses
   only 1.75K bytes of upper-memory for a cache up to 200-MB and only 3.5K
   bytes for caches of 201 to 255-MB.   For larger caches, or if HMA space
   is low, UIDE loads entirely in upper-memory.   It then uses 4.5K bytes,
   plus 32 bytes of binary-search data for each 1-Megabyte of cache.

   For "boot" diskettes or other limited DOS systems, the UIDES driver can
   be used in place of UIDE.   UIDES omits the /L switch and loads only in
   1.75K "small" form.   This reduces its logic and lets UIDES be "packed"
   into a 6K object file.    UIDES is a "conditional assembly" of the main
   UIDE source file, and it does provide all other UIDE features.   Except
   as noted below, all comments in this README about UIDE apply equally to
   the UIDES driver as well.

   The small CC.COM "Clear Cache" program can help verify files written by
   UIDE.   Entering  CC  at the DOS command-prompt sends a BIOS "reset" to
   all disks, making UIDE discard its cache.    Data on the disk (NOT data
   still in the cache!) can then be compared with the original output.


2. NO Warranties
   -------------

   XMGR and UIDE are offered as free software, as-is, and "use at your own
   risk", and with NO warranties, not even the implied warranty of FITNESS
   for ANY particular purpose nor of MERCHANTABILITY!

   Driver questions or comments may be addressed to the website of Johnson
   Lam, <johnson@tmfc.net>.


3. Revisions
   ---------

    1-Nov-07   UIDES (1.75K driver) replaces UIDEL, for "boot" diskettes.

   29-Oct-07   UIDE /N switch added.   6K-byte UIDEL included, for "boot"
                 diskettes.    UIDE/UIDEL logic improved, run-time driver
                 sizes reduced.

   18-Oct-07   UIDE now needs only 1.75K of upper-memory for caches up to
                 200 Megabytes!   /L switch added to limit HMA usage, and
                 external-drive logic reinserted.

   13-Oct-07   UIDE can now input UltraDMA CD/DVD files directly to cache
                 (faster) and now supports up to 8 IDE controllers and 32
                 BIOS drives.   Multi-controller problem corrected!

   11-Oct-07   UIDE corrected to run CD/DVD "PIO mode" drives properly.
   10-Oct-07   UIDE now runs in 3424 bytes!   External-drive code deleted
                 and made assembly-optional.   UIDE issued to the public.

    6-Oct-07   UIDE logic improved, HMA cache limit up to 255 Megabytes.
    3-Oct-07   UIDE "Universal IDE" driver supercedes both UDMA and UDVD,
                 with equal options and performance in a combined driver!


4. Switch Options
   --------------

   XMGR usually needs only its /B switch if "booting" with EMM386.    XMGR
      switch options are as follows:

      /B     Specifies "boot" mode.   XMGR loads in temporary memory until
                upper-memory is enabled by EMM386.   Without /B, XMGR will
                load stand-alone in low memory or directly in upper-memory
                with UMBPCI.   See the CONFIG.SYS examples in section 5.

      /Mn    Specifies the temporary area used to load XMGR in "boot" mode
                and used for UMBPCI upper memory I-O before DOS can post a
                "workspace" buffer.   Values are:

                    /M1 = 64K.    /M3 = 192K.   /M5 = 320K.   /M7 = 448K.
                    /M2 = 128K.   /M4 = 256K.   /M6 = 512K.   /M8 = 512K.

                Without /M, /M5 is assumed and the 320K area will be used.
                NOTE:  A DOS system often may NOT load at address 0 up and
                may leave temporary data anywhere in memory!   /Mn changes
                the temporary area to find a "safe" place for XMGR to use.
                /M is ignored if XMGR loads stand-alone.

      /Nnn   Specifies how many XMS "Handles" can be used by DOS programs.
                The value nn may be 48, 80, or 128.   If /N is omitted, 48
                "Handles" are used and work fine for most systems.   A big
                system doing much XMS work may need 80 or 128 "Handles".

      /Tn    Specifies the BIOS requests to use in getting extended memory
                as follows:

                   /T0   Neither "E820h" nor "E801h" requests.
                   /T1   Memory-list requests only (Int 15h, AX=E820h).
                   /T2   A dual-area request only  (Int 15h, AX=E801h).
                   /T3   "E820h" requests first, then an "E801h" request.

                /T can usually be omitted, which causes /T3 to be assumed.
                In addition, XMGR always uses an old 64-MB request, to get
                extended memory for /T0, or if the requests specified with
                /T1 through /T3 are unsuccessful.   Users may need to test
                /T1 and /T2 separately, to see if their BIOS accepts them.
                A pre-1994 BIOS may not "ignore" /T1 thru /T3 properly and
                may require /T0 to be used.   For compatibility with older
                QHIMEM drivers, /T4 thru /T7 may be used and work the same
                as /T0 thru /T3.

      /W     Specifies use of the DOS "workspace" buffer, for upper-memory
                I-O if loading with UMBPCI.    If /W is omitted, or if the
                DOS system does not have proper workspace logic, XMGR will
                set its own buffer in low memory.   An EDR-DOS system must
                OMIT this switch!   Without UMBPCI, /W will be ignored.

             --------------------

   UIDE usually needs only its /Sn size switch and /D: to specify a device
      name for the SHCDX33C CD-ROM Redirector.   UIDE switch options are:

      /A     Specifies use of ALTERNATE "legacy IDE" I-O addresses.    The
                first legacy controller will use alternate 01E8h/03EEh and
                0168h/036Eh addresses, and a second legacy controller will
                use normal 01F0h/03F6h and 0170h/0376h I-O addresses.   If
                /A is omitted, the first legacy controller uses normal and
                the second legacy controller uses alternate addresses, the
                usual case with most mainboards and BIOS programs.   /A is
                for "odd" cases where "legacy IDE" addresses are REVERSED.
                /A does not affect "native PCI" controllers.

      /B     Requests the "basic" stand-alone UltraDMA driver for disks or
                CD/DVD drives only (no caching or diskettes), which may be
                of help in running a diagnostic program.

      /D:    Specifies the desired device name, used by SHCDX33C to access
                the CD/DVD drives.   Example:  /D:CDROM1  /D:MYCDROM  etc.
                Device names must be from 1 to 8 bytes O.K. for use in DOS
                filenames.   If /D: is omitted, or the device name after a
                /D: is missing or invalid, UDVD1 is used as a default, for
                compatibility with CONFIG.SYS files run with the old UDVD.

      /L     Requests the "large" 3.5K upper-memory driver, even for cache
                sizes under 200-MB.    If /L is omitted, the "small" 1.75K
                upper-memory driver will be used by default for HMA caches
                less than 200-MB.   /L saves 2K of HMA space, for a system
                with limited "free HMA".    /L is ignored when /R is given
                or when the UIDES driver is used.

      /N1    Requests NO handling of any hard-disk drives.    /N1 is meant
                for diagnostics or special situations, not for normal use!

      /N2    Requests NO handling of any CD or DVD drives.    /N2 is meant
                for diagnostics or special situations, not for normal use!

      /Q     Enables awaiting "data request" before starting UltraDMA disk
                transfers.   /Q must be OMITTED with a SATA-to-IDE adapter
                by Sabrent etc., as such cards do not emulate data request
                from SATA disks!   /Q is not needed with newer controllers
                or IDE disks.   It is for "old" systems and should be used
                only if UIDE loads O.K. but seems unable to transfer data.
                /Q does not affect CD/DVD drives.

      /R     Restricts UIDE to "regular" memory and avoids the HMA for its
                binary-search table.   /R may be required with DOS systems
                that will NOT allocate memory until after CONFIG.SYS loads
                drivers!   /R is unneeded with V7.10 MS-DOS, V6.22 MS-DOS,
                V7.1 PC-DOS, PTS-DOS, or EDR-DOS.   /R is REQUIRED to work
                with ROM-DOS!   Other DOS variants should be tested first.

      /Sn    Specifies a cache size in Megabytes of XMS memory as follows:

                /S5         5-MB cache,  1280-byte table size,  8K blocks.

                /S10       10-MB cache,  2560-byte table size,  8K blocks.
                /S20       20-MB cache,  2560-byte table size, 16K blocks.
                /S40       40-MB cache,  2560-byte table size, 32K blocks.

                /S80       80-MB cache,  2560-byte table size, 64K blocks.
                  .        .              .
                  .  thru  .              . (32 bytes per MB)
                  .        .              .
                /S1023   1023-MB cache, 32736-byte table size, 64K blocks.

                Values for /S may be 5, 10, 20, 40, or a large-cache value
                from 80 thru 1023 (1023 = 1-Gigabyte!).   If /S is omitted
                or invalid, an 80-MB large cache is assumed.    Except for
                old systems with less memory, /S127 or more should be used
                with today's BIG files!   Some memory must remain free for
                other applications, thus with current system memory sizes,
                suggested UIDE /S values are:

                     256-MB memory:  /S127      1-GB memory:   /S511
                     512-MB memory:  /S255      2-GB or more:  /S1023

                For more about UIDE and cache sizes, see section 7 below.

      /UX    Disables ALL UltraDMA for CD/DVD drives, even for those which
                are capable of it.   The driver then uses PIO-mode for all
                CD/DVD I-O requests.   Except for certain "unusual" drives
                by Sony, etc. which do not follow all ATAPI standards, /UX
                is rarely needed and is intended for tests or diagnostics.
                /UX has no effect on hard-disk requests.

             --------------------

   For all switches in each driver, a dash may replace the slash and lower
   case letters may be used if desired.


5. Setup and Configuration
   -----------------------

   XMGR and UIDE are loaded through the CONFIG.SYS file.   Your CONFIG.SYS
   file should have command lines similar to:

       DEVICE [HIGH] = [path] XMGR.SYS [/B] [/Mn] [/Nnn] [/Tn] [/W]

       DEVICE [HIGH] = [path] UIDE.SYS [/A] [/B] [/D:DeviceNm] [/L] [/N1]
                                       [/N2] [/Q] [/R] [/Snnnn] [/UX]

   Examples:   DEVICE=C:\BIN\XMGR.SYS /N128 /B

               DEVICEHIGH=C:\DRIVERS\UIDE.SYS /S125 /D:MYDVD

   With V3.70+ UMBPCI and XMGR, a "boot" procedure is not needed!   UMBPCI
   loads first to enable upper-memory, then XMGR loads to offer it and XMS
   to DOS, then other drivers may load.   An example CONFIG.SYS file using
   V3.70+ UMBPCI and XMGR is as follows:

      SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P
      DEVICE=C:\BIN\UMBPCI.SYS
      DEVICE=C:\BIN\XMGR.SYS /W
      DOS=HIGH,UMB
      DEVICEHIGH=C:\BIN\UIDE.SYS /S200 /D:CDROM1        [Or UIDES]
          ..
          ..  Etc.
          ..

   XMGR can be used stand-alone, for a small XMS-only system.   It must be
   the first DOS system driver to load, and it must load in LOW memory, as
   in the following example:

      SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P
      DEVICE=C:\BIN\XMGR.SYS
      DOS=HIGH
      DEVICE=C:\BIN\UIDE.SYS /S40 /D:MYCDROM            [Or UIDES]
          ..
          ..  Etc.
          ..

   With EMM386 and XMGR, XMGR must load first in "boot" mode, then EMM386,
   and then XMGR can finally load in upper-memory.   An example CONFIG.SYS
   file using the XMGR "boot" procedure is as follows:

      SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P
      DEVICE=C:\BIN\XMGR.SYS /B                         [/B for "boot"]
      DOS=HIGH,UMB
      DEVICE=C:\DOS\EMM386.EXE I=B000-B7FF NOEMS ...
      DEVICEHIGH=C:\BIN\XMGR.SYS                        [No /B used here!]
      DEVICEHIGH=C:\BIN\UIDE.SYS /S255 /D:MYDVD         [Or UIDES]
          ..
          ..  Etc.
          ..

   When other Int 13h DOS drivers will be used, UIDE must load after them,
   so it can cache disk I-O for the other drivers.   When XMGR, other disk
   drivers, and UIDE are loaded, all other CONFIG.SYS drivers (SETVER.EXE,
   ANSI.SYS, etc.) can then load in any desired order.

   Please be sure to set each hard disk's geometry correctly in your BIOS.
   Set it to "Auto", "LBA" or "LBA Assisted", but NOT to "None", "Normal",
   "CHS", "ECHS".   "User Cylinders/Heads/Sectors", "Revised ECHS" or "Bit
   Shift" should run but are NOT preferred.   If a BIOS has a setting like
   "UDMA Capable" for a disk, enable it.   Power-saving features such as a
   "drive spin-down timeout" should be DISABLED or driver I-O requests may
   time out!   Also, be sure to use an 80-connector cable for any UltraDMA
   drive running in "mode 3" ATA-44 (44 MB/sec) or higher.    When cabling
   a single drive to an IDE channel, note that you MUST use both "ends" of
   the cable, NOT one "end" and the middle connector!   This avoids ERRORS
   as an unused cable-end can pick up "noise", like a RADIO antenna!

   Be sure to enable all CD/DVD drive(s) through the BIOS set-up routines!
   A drive that is "disabled" may cause the BIOS to clear all its UltraDMA
   flags and force the drive into "PIO mode" zero, which is terribly SLOW!


6. Error Reporting
   ---------------

   XMGR and UIDE return normal XMS or CD/DVD driver error codes if needed.
   These are shown in the V3.0 XMS Specification and the Microsoft "MS-DOS
   CD-ROM Extensions 2.1" documentation, available from Microsoft or other
   sources on the Internet.

   UIDE works as a "BIOS driver" and returns whatever codes the BIOS posts
   for its diskettes or hard-disks.   For SATA or UltraDMA disks, UIDE can
   return the following error codes:

       Code 0Fh - DMA error.           CCh - Disk is FAULTED.
            20h - Controller busy.     E0h - Hard I-O error.
            AAh - Disk not ready.      FFh - XMS memory error.

   Many DOS programs display only "Disk Error" messages with NO code, thus
   disk errors may require running a diagnostic to get better information!


7. Technical Notes
   ---------------

   UIDE handles only "Legacy" or "Native PCI" IDE controllers.   Old "RAID
   only" chipsets (Via VT6420, etc.), port-multiplier chips needing custom
   drivers, and ADMA/AHCI chipsets that offer no UltraDMA in their default
   "register mode" are all unsupported.   To use UIDE, your mainboard BIOS
   must set SATA controllers in "IDE" mode, not RAID/ADMA/AHCI!   UIDE can
   then handle SATA drives properly, at full speed.    Where no "IDE" BIOS
   setting for SATA is offered, a Sabrent converter card (or similar) will
   allow UIDE to run SATA hard-disks and CD/DVD drives from the "standard"
   UltraDMA controller channels, at full UltraDMA speeds.

   *** NOTE ***   It is now UNRECOMMENDED for UIDE to run UltraDMA or SATA
   hard-disks using BIOS I-O logic!   Many "El Cheapo" BIOS programs still
   have no DOS "Virtual DMA" support.   EMM386 puts a system in "protected
   mode".   A BIOS with no "Virtual DMA" must then use PIO-mode transfers,
   which LOSES much speed!   If needed, use a Sabrent card (as above), and
   avoid running DOS hard-disks with today's "cheap" BIOS routines!

   UIDE uses 4512 bytes for driver logic and stack, plus the binary-search
   table sizes shown above for its /S switch.   For a cache size of 200-MB
   or less, it places its search table and 2736 bytes of logic in the HMA,
   unless /R is given or the HMA has under 5296 bytes free (4016 bytes for
   /S5) in which case normal memory will be used.   For caches over 200-MB
   or when /L is given, UIDE loads its search table and 976 bytes of logic
   in the HMA, unless /R is given or the HMA has less than 3536 bytes free
   (2256 bytes for /S5), in which case normal memory will be used.

   UIDES is equivalent to UIDE for cache sizes up to 200-MB.    UIDES does
   not have a 3.5K size option and will ignore a /L "large driver" switch.
   For cache sizes over 200-MB, or if /R is given, UIDES loads entirely in
   normal memory.

   Both drivers set the largest of their 5-MB, 10-MB, 20-MB, 40-MB or user
   entered "large cache" size which will fit in available HMA or in normal
   memory.   /S sizes below 80 are "rounded down" to the nearest of 5, 10,
   20, or 40 Megabytes, which becomes the largest cache to be set.    UIDE
   and UIDES load from "packed" 6K .SYS files, thus a 5-MB cache in normal
   memory can always be set.    To avoid kernel "bugs" in V7.10 MS-DOS and
   other DOS variants, caches of over 255-MB always load in normal memory.
   When not enough XMS cache memory is free, the drivers display "XMS init
   error" and abort!   If so, a smaller /S value is needed.   For V2.0 XMS
   managers (ROM-DOS etc.), the largest cache that may be used is 40-MB.

   The CD/DVD logic in UIDE is designed for use with SHCDX33C and does not
   set a stack of its own for CD/DVD requests (cached CD/DVD input runs on
   UIDE's stack).   Users of other "CD-ROM Redirectors" (MSCDEX etc.) must
   verify that they offer adequate stack space for CD/DVD driver functions
   before running UIDE with them!

   XMGR loads in UMBPCI upper-memory BEFORE that memory is declared to the
   DOS system!   Memory displays using UMBPCI may not list XMGR, since its
   memory is not part of the DOS memory lists.   Such memory displays will
   begin with a block having a 00A7h offset, or greater if using 80 or 128
   XMS "Handles".   The upper-memory skipped by this offset contains XMGR.

   The UMBPCI upper-memory manager uses system "Shadow RAM" that CANNOT do
   DMA!   Newer BIOS programs may use UltraDMA to load programs into upper
   memory.   If this is UMBPCI "Shadow RAM", a CRASH will occur!   To stop
   this, and handle new BIOS programs, users should follow these two RULES
   for running UMBPCI together with XMGR and UIDE:

     A) The loading "order" for V3.70+ UMBPCI and XMGR, shown in section 5
        above, MUST be used!    This lets the XMGR "I-O Catcher" intercept
        and process upper memory disk I-O, until the UIDE driver loads and
        takes-over disk UltraDMA.   Older UMBPCI versions, or other UMBPCI
        loading schemes, are NOT recommended!

     B) When CHS I-O is done (MS-DOS V6.22 or older), every disk MUST have
        valid CHS parameters!   If not, UIDE and the "I-O Catcher" let the
        BIOS handle CHS I-O.   If BIOS UltraDMA is not disabled, a similar
        "Shadow RAM" CRASH will occur!

   Some "CD-ROM boot" programs handle the CD/DVD as a "fake" hard disk and
   provide incorrect EDD BIOS data for it!   In scanning for disks to use,
   UIDE may display "EDD BIOS error!  Unit ignored.", then go on searching
   for more UltraDMA disks.   Users who did NOT "boot" from CD/DVD need to
   see which disk was passed-over and why.   Users who DID "boot" from CD/
   DVD, where all SATA/UltraDMA disks were found, may IGNORE this message!
   It is caused by an ERROR in the "CD-ROM boot" program, NOT by a problem
   with UIDE or its SATA/UltraDMA disks!

   Some BIOS programs do not "configure" a mainboard controller chip if no
   user drives are found!   If the driver finds no SATA or UltraDMA units,
   UIDE runs all disks through the BIOS and uses "PIO mode" for all CD/DVD
   drives.   But it tests for controllers first.   If one is unconfigured,
   it displays "BAD controller", then continues scanning for more chips to
   use.   If this message is displayed, users should verify that each SATA
   or UltraDMA drive was made "active" thru the BIOS set-up routines.   If
   so, "BAD controller" means a chip was not set for both "Bus Master" and
   "I-O Space" modes, and the BIOS needs to be UPDATED!

2007-11-19 12:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bootable
新手上路





积分 16
发帖 6
注册 2006-6-7
状态 离线
『第 5 楼』:  

谢谢 waitingcd 兄
呵呵,总算明白了,你发的README文件我再去仔细研究一下
UIDE的确不错,我在SATA PATA光驱上试了都兼容性不错,等下我发个DELL开发的DMA光驱驱动,通吃SATA PATA USB的光驱,名字是:EXTCD.SYS

2007-11-19 19:29
查看资料  发短消息 网志   编辑帖子  回复  引用回复
johnsonlam
银牌会员

阿林


积分 1410
发帖 497
注册 2004-6-28
来自 九龍,香港
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by bootable at 2007-11-18 11:30 PM:
例如我指定15,实际显示10MB Cache;我指定32,实际为20MB,不知何故?


因 為 節 省 空 間 關 係 , UIDE 先 決 定 暫 存 列 表 用 多 少 個 byte (1280 或 2560) , 再 以 算 式 計 算 大 小 , 所 以 只 會 取 接 近 倍 數 的 數 值 ...

/S5         5-MB cache,  1280-byte table size,  8K blocks.
/S10       10-MB cache,  2560-byte table size,  8K blocks.
/S20       20-MB cache,  2560-byte table size, 16K blocks.
/S40       40-MB cache,  2560-byte table size, 32K blocks.
/S80       80-MB cache,  2560-byte table size, 64K blocks

詳 細 數 值 得 要 看 源 碼 ....




我 的 網 站 - http://optimizr.dyndns.org
2007-11-19 19:38
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
bootable
新手上路





积分 16
发帖 6
注册 2006-6-7
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by johnsonlam at 2007-11-19 19:38:



因 為 節 省 空 間 關 係 , UIDE 先 決 定 暫 存 列 表 用 多 少 個 byte (1280 或 2560) , 再 以 算 式 計 算 大 小 , 所 以 只 會 取 接 近 倍 數 的 ...

johnsonlam 兄,UIDE如果配合EMM386或UMBPCI的程式,那麽首先DEVICEHIGH加載UIDE.SYS, 那麽UIDE.SYS會不會把CACHE自動直接映射到HMA區域?還是直接將CACHE地址模塊加載到XMS區域?
我將/S:n的數值設置為32,是否合適(目的是兼容各種內存大小配置的機器),是不是數值設置越大,讀暫存的效果越好?
還有你覺得配合SMARTDRV是否有必要?
謝謝!

2007-11-19 20:38
查看资料  发短消息 网志   编辑帖子  回复  引用回复
waitingcd
初级用户





积分 75
发帖 37
注册 2007-4-11
状态 离线
『第 8 楼』:  

uide已经带有(读)缓存功能,不需要配合smartdrv使用。

2007-11-20 01:17
查看资料  发短消息 网志   编辑帖子  回复  引用回复
freeice
初级用户





积分 24
发帖 13
注册 2005-12-2
状态 离线
『第 9 楼』:  

大家 测试过 没有,phoenix bios 下分配不上盘符。

2007-12-9 15:01
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bc12060101
银牌会员





积分 1455
发帖 712
注册 2006-1-20
状态 离线
『第 10 楼』:  

嘿嘿,楼上的,偶看你在数贴上发言说“phoenix bios 下分配不上盘符、不能使用”等等,不知你是如何用滴?
为何我在phoenix bios 下使用就没有问题呢,莫非偶的人品太好了?

2007-12-11 09:10
查看资料  发短消息 网志   编辑帖子  回复  引用回复
maclover815
初级用户





积分 92
发帖 47
注册 2007-12-7
状态 离线
『第 11 楼』:  nicee

good

2007-12-13 22:09
查看资料  发短消息 网志   编辑帖子  回复  引用回复
dingamao
初级用户





积分 118
发帖 47
注册 2007-3-10
状态 离线
『第 12 楼』:  



  Quote:
Originally posted by bc12060101 at 2007-12-11 09:10 AM:
嘿嘿,楼上的,偶看你在数贴上发言说“phoenix bios 下分配不上盘符、不能使用”等等,不知你是如何用滴?
为何我在phoenix bios 下使用就没有问题呢,莫非偶的人品太好了?

我也确实没有问题……

2008-4-16 17:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
johnsonlam
银牌会员

阿林


积分 1410
发帖 497
注册 2004-6-28
来自 九龍,香港
状态 离线
『第 13 楼』:  


抱 歉 , 近 來 忙 搬 家 ...

  Quote:
我將/S:n的數值設置為32,是否合適(目的是兼容各種內存大小配置的機器),是不是數值設置越大,讀暫存的效果越好?

不 一 定 , 得 看 你 常 用 的 檔 案 是 那 一 類 , database 是 愈 大 愈 好 , 假 如 是 普 通 使 用 則 不 用 太 大 , 基 本 的 20MB 也 很 夠 用 。

  Quote:
johnsonlam 兄,UIDE如果配合EMM386或UMBPCI的程式,那麽首先DEVICEHIGH加載UIDE.SYS, 那麽UIDE.SYS會不會把CACHE自動直接映射到HMA區域?還是直接將CACHE地址模塊加載到XMS區域?

UIDE loads its cache logic and binary-search table in HMA space unneeded by DOS, and it uses only 1.75K bytes of upper-memory for a cache up to 200-MB and only 3.5K bytes for caches of 201 to 255-MB.   For larger caches, or if HMA space is low, UIDE loads entirely in upper-memory.   It then uses 4.5K bytes, plus 32 bytes of binary-search data for each 1-Megabyte of cache.

當 『 暫 存 搜 索 表 』 細 小 時 ( 200MB 或 以 下 ) , 會 存 到 DOS 有 剩 下 的 HMA 空 間

當 HMA 沒 有 足 夠 空 間 , 就 會 整 個 UIDE 都 存 到 UMB 內

CACHE 無 論 大 小 都 會 在 XMS 內



[ Last edited by johnsonlam on 2008-4-18 at 11:36 AM ]



我 的 網 站 - http://optimizr.dyndns.org
2008-4-18 11:30
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
johnsonlam
银牌会员

阿林


积分 1410
发帖 497
注册 2004-6-28
来自 九龍,香港
状态 离线
『第 14 楼』:  



  Quote:
Originally posted by bc12060101 at 2007-12-11 09:10 AM:
嘿嘿,楼上的,偶看你在数贴上发言说“phoenix bios 下分配不上盘符、不能使用”等等,不知你是如何用滴?
为何我在phoenix bios 下使用就没有问题呢,莫非偶的人品太好了?


世 上 的 BIOS 多 如 繁 星 , 偶 爾 碰 到 用 不 到 的 也 不 奇 怪 。




我 的 網 站 - http://optimizr.dyndns.org
2008-4-18 11:31
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
wyagf
初级用户





积分 22
发帖 9
注册 2008-4-18
状态 离线
『第 15 楼』:  

用这个驱动GHOST恢复的时候光驱用着用着就突然停转了然后就重启了。

2008-4-22 21:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: