home *** CD-ROM | disk | FTP | other *** search
/ Win 3.11 Apps / win311aps.iso / DOSIDLE / DOSIDLE.TXT < prev    next >
Text File  |  1998-05-07  |  28KB  |  760 lines

  1.                          +=========================+
  2.                          | E-Mail: dosidle@usa.net |
  3.                          +=========================+
  4.  
  5.  
  6.  
  7.  
  8.                          DOSidle: FULL Documentation
  9.                       ---------------------------------
  10.                            Written by Marton Balog
  11.                           Version 2.10 [Build 0077]
  12.  
  13.  
  14.  
  15.  
  16.                      Copyright (C) by Marton Balog, 1998.
  17.                              All rights reserved.
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.     TABLE OF CONTENTS
  25. =========================
  26.  
  27.     1  - DESCRIPTION.
  28.          1.1  - What is DOSidle?
  29.          1.2  - DOSidle highlights.
  30.          1.3  - Usage.
  31.          1.4  - Installation.
  32.  
  33.     2  - DOSidle FEATURES.
  34.          2.1  - DOSidle features.
  35.          2.2  - Command-line options.
  36.  
  37.     3  - PROCESSORS.
  38.          3.1  - CPU detection.
  39.          3.2  - CPU features.
  40.          3.3  - CPU optimization.
  41.  
  42.     4  - HISTORY.
  43.          4.1  - DOSidle V2.10
  44.          4.2  - DOSidle V2.00
  45.          4.3  - DOSidle V1.32 [Beta]
  46.  
  47.     5  - MISCELLANEOUS.
  48.          5.1  - Frequently Asked Questions.
  49.          5.2  - Final words.
  50.          5.3  - Legal and Disclaimer.
  51.  
  52.  
  53.  
  54. ------------------------------------------------------------------------------
  55. 1   - DESCRIPTION.
  56. ======================
  57.  
  58.  
  59. 1.1 - What is DOSidle?
  60. ----------------------
  61.  
  62.     CPUidle for DOS (nicknamed DOSidle) is an MS-DOS based program that will
  63. take advantage of the integrated power saving features of the microprocessor
  64. and create an idle cycle in order to LOWER CPU TEMPERATURE CONSIDERABLY!
  65.  
  66.     DOSidle will also detect and enable integrated fine tuning features of
  67. the processor to enhance the cache policy, enable 32-bit memory access where
  68. possible, unlock some bus cycles, and more, so as to ACHIEVE HIGHER PROCESSOR
  69. EXECUTION SPEED!
  70.  
  71.     The above are achieved by programming the microprocessor at register
  72. level, accessing special internal configuration registers of the CPU. These
  73. registers can be set up for very efficient power saving and execution speed.
  74. This should be done by the BIOS of the computer, but unfortunately, most BIOS
  75. vendors do a poor job in optimizing CPUs. Therefore, an external program
  76. like DOSidle CAN actually cause a big change.
  77.     DOSidle will also put the CPU in suspend mode when it is in an "idle"
  78. state. Waiting for user input via the keyboard/mouse is a typical idle
  79. situation and this is true about 95% of the time.
  80.     In suspend mode, the CPU consumes A LOT LESS power than it normally would.
  81. What is more, the processor returns from suspend mode automatically, by
  82. hardware, thus the whole switch to and from suspend mode does not have an
  83. impact on performance.
  84.     Placing the processor in suspend mode is achieved by eighter executing
  85. the HLT machine instruction or by calling the APM BIOS of the system. Of
  86. course, accessing the APM BIOS is only possible when it exists...
  87.     Again, this whole thing is TOTALLY HARMLESS as it executes instructions
  88. that any other software can and does!
  89.  
  90.  
  91.  
  92. ------------------------------------------------------------------------------
  93. 1.2 - DOSidle highlights.
  94. -------------------------
  95.  
  96.     - Automatically detects processors from Cyrix, IBM, SGS Thomson, Intel,
  97.       AMD, IDT, UMC and NexGen.
  98.  
  99.     - Optimizes and automatically enables special power saving features of
  100.       the Pentium, Pentium-MMX, Pentium II, 5x86, 6x86, 6x86L, 6x86MX, K5,
  101.       K6-MMX, K6-3D, K6-Plus, WinChip C6, WinChip C6-Plus.
  102.  
  103.       For a complete list of supported processors, please refer to section 3
  104.       of this document.
  105.  
  106.     - 100% ASSEMBLY coded, therefore program should be both fast and small
  107.       (the resident part of DOSidle is less than 3K).
  108.  
  109.     - Supports the Advanced Power Management specification V1.00 and above.
  110.  
  111.     - Powerful and flexible command-line interface allowing control of many
  112.       features of DOSidle, including more aggressive cooling routines,
  113.       self-debugging routines and more...
  114.  
  115.     - Can be suspended and activated any time after installation for maximum
  116.       compatibility with other software.
  117.  
  118.     - Works with a wide range of program's and thus it cools the CPU reliably.
  119.       This results in a more stable system and it expands CPU lifetime.
  120.  
  121.     - It's A MUST HAVE for overclockers! Stop thinking big fans, huge heat
  122.       sinks and Peltiers, just think DOSidle! ;-)
  123.  
  124.  
  125.     * To find out more about the differences between V2.10 and V2.00, please
  126.       read the History section (and then the whole file :-).
  127.  
  128.  
  129.  
  130. ------------------------------------------------------------------------------
  131. 1.3 - Usage.
  132. ------------
  133.  
  134.     DOSidle is a memory resident (TSR, for short) program, which needs to be
  135. started only once, each time you restart your computer. Therefore, starting
  136. DOSidle from AUTOEXEC.BAT is the preferred and recommended method. This has
  137. the following advantages:
  138.  
  139.     - It is done automatically, so you won't ever have to bother with it once
  140.       you installed DOSidle.
  141.  
  142.     - Upon startup, only a limited number of drivers are installed (I am
  143.       mainly talking about protected mode drivers) and DOSidle has better
  144.       access to the CPU registers.
  145.  
  146.     DOSidle is designed to operate under MS-DOS. Since Windows95 appeared,
  147. the term "DOS" became a bit confusing. I will try to make this more clear now.
  148. Basically, Windows95/98 uses MS-DOS pretty much the same way Windows 3.1 did.
  149. The difference is that Windows95/98 starts up automatically, hiding the good
  150. old MS-DOS interface from the user. But if you examine your C:\ directory you
  151. will find that Windows95/98 also has its AUTOEXEC.BAT and CONFIG.SYS, in fact,
  152. the whole MS-DOS kernel exists (often referred to as MS-DOS 7.00) and loads
  153. BEFORE Windows95/98 does.
  154.     So the term "DOS" can be used whenever the following situations are in
  155. effect:
  156.  
  157.     - MS-DOS 6.22 and earlier.
  158.       Even if you have Windows 3.1 installed over it.
  159.  
  160.     - MS-DOS 7.00 and later.
  161.       This is the DOS that Windows95/98 is built upon. It loads automatically
  162.       before Windows does and it is there the whole time Windows runs!
  163.  
  164.       You can exclusively enter into this MS-DOS mode by eighter opening an
  165.       MS-DOS Box from Windows95/98 or by restarting your computer in MS-DOS
  166.       mode from the Start menu.
  167.  
  168.     DOSidle should be used in all of the above cases. Since Windows95/98 sits
  169. on top of MS-DOS 7.00 (or later), it is NOT ENOUGH to use Andreas Goetz's
  170. CpuIdle (unless you never-ever open an MS-DOS Box or restart in MS-DOS mode)!
  171.     DOSidle will NOT conflict with CpuIdle, so if you have CpuIdle loaded in
  172. Windows95/98 and open an MS-DOS Box with DOSidle loaded, you are doing
  173. exactly what you should do!!
  174.  
  175. NOTE:   DOSidle will perform best under Real-mode CPU operation, or in other
  176.         words, when no Memory Manager (such as EMM386) is active. But V86-mode
  177.         (with EMM386) should be about as good...
  178.  
  179.  
  180.  
  181. ------------------------------------------------------------------------------
  182. 1.4 - Installation.
  183. -------------------
  184.  
  185. Setup:  Unzip the DOSIDLE.ZIP package into a directory of your choice. Place
  186.         a line in the AUTOEXEC.BAT file that will load DOSidle with the
  187.         switches you prefer and reboot your computer.
  188.  
  189.         If you have multiple Operating Systems installed (Windows 3.1,
  190.         Windows95/98, Windows NT, MS-DOS), then make sure the above line is
  191.         placed in ALL AUTOEXEC files.
  192.  
  193.         If you are not exactly sure what the paragraph above means, please
  194.         read on...
  195.  
  196.  
  197. Step 1: Unzip the DOSIDLE.ZIP package into a directory you prefer. In the
  198.         later examples, I will assume you have chosen the C:\DOSIDLE
  199.         directory.
  200.  
  201. Step 2: If you know DOSidle well and/or decided to use it regularly, please
  202.         go to Step 4.
  203.  
  204.         If you are completely new to DOSidle and haven't read this document
  205.         then I strongly suggest doing so. Once you are finished, come back
  206.         here.
  207.  
  208. Step 3: You are new to DOSidle. Experiment with it. You can install DOSidle
  209.         anytime by typing "DOSidle" at the DOS command prompt (even in a
  210.         Windows MS-DOS Box).
  211.  
  212.         NOTE: If you try to load DOSidle from a Windows95/98 DOS Box, then
  213.         Windows95/98 displays a warning message saying that DOSidle may not
  214.         run well, unless in MS-DOS mode. Answer NO to the question and you
  215.         are done.
  216.  
  217. Step 4: You have decided to use DOSidle regularly. DOSidle should be loaded
  218.         from your AUTOEXEC.BAT, this way, you won't have to bother with it
  219.         each time you restart your computer.
  220.  
  221.         Windows95/98 has it's own AUTOEXEC.BAT file. Also, MS-DOS 6.22 (and
  222.         earlier) has it's AUTOEXEC.BAT. If you have BOTH of these Operating
  223.         Systems installed, then you will need to include a line in both of
  224.         the AUTOEXEC.BAT files that will load DOSidle
  225.         (later example: C:\DOSIDLE\DOSIDLE).
  226.  
  227. Step 5: If you are using some sort of a boot manager (like System Commander),
  228.         I assume you know how to find and edit your AUTOEXEC.BAT file(s) - 
  229.         please go to Step 7.
  230.  
  231.         If you are unsure about these files, I would suggest the following
  232.         steps:
  233.  
  234. Step 6: Locate the AUTOEXEC.BAT file(s). They should reside in the root
  235.         directory of drive C. That is C:\
  236.  
  237.         Look for the following files: AUTOEXEC.BAT, AUTOEXEC.DOS,
  238.         AUTOEXEC.W40, AUTOEXEC.W41  If you find any of these files, just
  239.         include a line somewhere at the end like this (Optionally specifying
  240.         command-line parameters. They are described in detail in the next
  241.         section.):
  242.  
  243.         C:\DOSIDLE\DOSIDLE
  244.  
  245. Step 7: Restart your computer, and voila:
  246.         DOSidle is resident now. You can check it to make sure using the
  247.         "mem /c /p" command at the DOS prompt. If you find DOSidle in the
  248.         list of resident drivers, it's installed!
  249.  
  250.  
  251.  
  252. ------------------------------------------------------------------------------
  253. 2   - DOSidle FEATURES.
  254. ===========================
  255.  
  256.  
  257. 2.1 - DOSidle features.
  258. -----------------------
  259.  
  260. Cooling methods:
  261. ----------------
  262.  
  263.     DOSidle supports two ways of processor power management (later referred
  264. to as cooling methods): through the HLT instruction or through APM BIOS calls.
  265.  
  266.     The HLT method means executing the HLT opcode each time DOSidle detects
  267. that the system is idle. Since most processor enter suspend mode after a HLT
  268. is executed, this method is very useful for power management.
  269.  
  270.     The APM BIOS calls method means invoking the "CPU idle" APM call each
  271. time the system is detected idle. It is then up to the APM BIOS vendor how
  272. efficient this call will be.
  273.  
  274.  
  275.  
  276. Cooling strategies:
  277. -------------------
  278.  
  279.     Both power management methods can use three "strategies" to achieve
  280. cooling: Strong Force mode, Normal Force mode and No Force mode.
  281.  
  282.     Strong Force mode is the most aggressive method, which can cause some
  283. incompatibilities, but it is also by far the most efficient method. Running
  284. in this mode, DOSidle intercepts more system calls as "idle", and it issues
  285. multiple power saving calls (HLT or APM BIOS calls) from each idle cycle.
  286.  
  287.     Normal Force mode behaves pretty much the same way as Strong Force mode,
  288. except that only 1 power saving call will be executed from each idle cycle,
  289. so the cooling ratio is 1:1.
  290.  
  291.     No Force mode disabled forcing of power saving calls, only the most
  292. obvious system functions (like Read Key or similar) will be intercepted and
  293. treated as idle. The cooling ratio is the worst, but this mode should be very
  294. compatible. Anyway, I am definately against using this strategy.
  295.  
  296.  
  297.  
  298. CPU optimization:
  299. -----------------
  300.  
  301.     DOSidle will optimize the Central Processing Unit of the system if it is
  302. requested. To find out more about optimizations, please read the Processors
  303. section.
  304.  
  305.  
  306.  
  307. Command-line:
  308. -------------
  309.  
  310.     DOSidle is configured from the command-line. All characteristics of
  311. DOSidle can be controlled this way. To find out more about the command-line
  312. switches, please read the next section.
  313.  
  314.  
  315.  
  316. ------------------------------------------------------------------------------
  317. 2.2 - Command-line options.
  318. ---------------------------
  319.  
  320.     DOSidle supports various command-line switches that control how the
  321. program behaves. All switches are case-insensitive (so "-cpu" = "-Cpu") and
  322. they are as follows:
  323.  
  324. Switches:
  325. ---------
  326.  
  327. -H, -?:
  328. Displays a help message about command-line options, as well as some examples.
  329.  
  330. -U:
  331. Uninstalls DOSidle (removes it from memory).
  332. Of course, this is only possible, if it has been installed already. If not,
  333. DOSidle will fail with an error message. Also, if some other program altered
  334. the interrupt vectors that DOSidle uses it won't be able to uninstall.
  335.  
  336. NOTE:   The changing of critical interrupt vectors is a problem for any
  337.         memory resident program that wants to uninstall. Therefore, the
  338.         higher number of programs you use after DOSidle has been loaded, the
  339.         higher the chances that DOSidle won't be able to uninstall (else the
  340.         system would crash). In this case, use the -Off switch.
  341.  
  342. -Off:
  343. Suspends DOSidle.
  344. Use this switch if DOSidle conflicts with a certain application you are using.
  345. All features of DOSidle will be turned off as well as the program itself, but
  346. it will remain installed (in memory). Then when you finish using that
  347. application you can reactivate DOSidle with the -On switch.
  348.  
  349. -On:
  350. Reactivates DOSidle after it has been suspended with the -Off switch.
  351. Read the paragraph above to find out why this is useful.
  352.  
  353. -Cpu:
  354. Detects and optimizes the processor in the system.
  355. Currently, processors from Cyrix/IBM/SGS Thomson are optimized, but AMD, IDT
  356. and Intel processors will be supported in the near future as well. Please
  357. read the CPU Optimization section for more information.
  358.  
  359. -Hlt:
  360. Selects cooling method: HLT instructions.
  361. This switch causes DOSidle to execute HLT instructions every time it detects
  362. that the system is idle. Since most processors have a "Suspend on HLT"
  363. feature, this instruction places them in suspend mode, thus saving energy and
  364. achieving very good cooling.
  365. This switch is enabled by default.
  366.  
  367. -Apm:
  368. Selects cooling method: APM V1.00+ BIOS calls.
  369. This switch makes DOSidle use the Advanced Power Management (APM) BIOS in the
  370. system for cooling. That is, APM calls (to put the CPU in suspend mode) will
  371. be executed every time DOSidle detects that the system is idle. This yields
  372. to superb cooling.
  373.  
  374. NOTE:   DOSidle will automatically switch to HLT cooling method (-Hlt) if the
  375.         APM BIOS is somehow inaccessible (disabled or disengaged). It will
  376.         not turn on power management, that should be done by the user from
  377.         the system setup.
  378.  
  379. -Fm2:
  380. Selects cooling strategy: Strong Force mode.
  381. This switch makes DOSidle perform the most aggressive cooling strategy, which
  382. means better cooling ratio (several HLTs / APM calls will be made from each
  383. idle cycle). On the other hand, this might cause some incompatibilities, but
  384. it is highly unlikely.
  385. This switch is enabled by default and I definately recommend using it!
  386.  
  387. -Fm1:
  388. Selects cooling strategy: Normal Force mode.
  389. This switch makes DOSidle use the cooling strategy that was introduced in
  390. DOSidle V1.32 [Beta]. The cooling ratio is 1:1, which means that exactly one
  391. HLT instruction / APM call will be made from each idle cycle. This means
  392. worse cooling than Strong Force mode (above paragraph), but should be more
  393. compatible.
  394. This switch is disabled by default, and it should only be enabled if Strong
  395. Force mode is causing strange behaviour.
  396.  
  397. -Fm0:
  398. Selects cooling strategy: No Force mode.
  399. This switch disables any type of HLT / APM call forcing from idle cycles and
  400. therefore performance is very little. On the other hand, No Force mode should
  401. be compatible with every program.
  402. For the sake of performance, do not select this strategy for cooling!! Only
  403. use this switch if everything else fails.
  404.  
  405. -Tm:
  406. Enables Test Mode. REMOVED!
  407. The -Tm switch is removed from DOSidle V2.10 and later! It was used to
  408. display information about the cooling ratio and the number of HLTs / APM calls
  409. executed, mainly for Beta testers.
  410.  
  411.  
  412.  
  413. Examples:
  414. ---------
  415.  
  416. DOSidle
  417. Installs and activates DOSidle. Selects HLT cooling method with Strong Force
  418. mode (-Fm2) strategy. This means that the following switches are enabled by
  419. default: -On, -Hlt, -Fm2.
  420.  
  421.  
  422. DOSidle -cpu
  423. Installs and activates DOSidle. Selects HLT cooling method with Strong Force
  424. mode strategy. Optimizes the CPU of the system.
  425. I recommend loading DOSidle this way!
  426.  
  427.  
  428. DOSidle -cpu -apm -fm1
  429. Installs and activates DOSidle. Selects APM BIOS calls cooling method with
  430. Normal Force mode strategy. Optimizes the CPU of the system.
  431.  
  432.  
  433. DOSidle -off
  434. Suspends DOSidle temporarily, until you type: DOSidle -on
  435.  
  436.  
  437.  
  438. ------------------------------------------------------------------------------
  439. 3   - PROCESSORS.
  440. =====================
  441.  
  442. 3.1 - CPU detection.
  443. --------------------
  444.  
  445.     DOSidle automatically detects the CPU in the system and enables special
  446. power saving features of the processor. Please note that even if DOSidle
  447. misidentifies your CPU, it will run at full cooling performance, only CPU
  448. optimization will not function. The following CPUs are detected and
  449. supported by DOSidle:
  450.  
  451. Intel:
  452. - i486DX at 25/33 Mhz, i486DX at 50 Mhz.
  453. - i486 SX / SX2 / SL / DX2 / DX2-WB / DX4 / DX4-WB.
  454. - Pentium A-Step, Pentium, Pentium OverDrive, Pentium-MMX,
  455.   Pentium Pro A-Step, Pentium Pro, Pentium II.
  456.  
  457.  
  458. AMD:
  459. - Am486 DX2 / DX2-WB / DX4 / DX4-WB.
  460. - Am5x86, Am5x86-WB.
  461. - AMD K5-SS/A, AMD K5, AMD K6-MMX, AMD K6-3D, AMD K6-Plus.
  462.  
  463. All future AMD processors will be detected due to AMD's support for the
  464. Extended CPUID instruction.
  465.  
  466.  
  467. Cyrix:
  468. - Cx486S A-Step.
  469. - Cx486 SLC / DLC / SLC2 / DLC2 / SRx / DRx / SRx2 / DRx2 / SRu / DRu / SRu2
  470.   Cx486 DRu2 / S / S2 / Se / S2e / DX / DX2 / DX4.
  471. - Cx5x86, Cx6x86, Cx6x86L, Cx6x86MX.
  472. - Cx MediaGX, Cx GXm.
  473.  
  474. All future Cyrix processors will be detected due to Cyrix's support for the
  475. Extended CPUID instruction.
  476.  
  477.  
  478. NexGen:
  479. - Nx586, Nx586 & Nx587, Nx686.
  480.  
  481.  
  482. IBM:
  483. - IBM 5x86, IBM 6x86, IBM 6x86L, IBM 6x86MX.
  484.  
  485.  
  486. IDT:
  487. - IDT WinChip C6, IDT WinChip C6-Plus.
  488.  
  489.  
  490. UMC:
  491. - UMC U5D, UMC U5S.
  492.  
  493.  
  494. Thomson:
  495. - SGS Thomson 6x86, SGS Thomson 6x86L.
  496.  
  497.  
  498.  
  499. ------------------------------------------------------------------------------
  500. 3.2 - CPU features.
  501. -------------------
  502.  
  503.     Many CPUs support special power saving functions. Taking advantage of
  504. these integrated features is critical in efficient CPU power management.
  505. DOSidle can and does enable the following features on certain CPUs:
  506.  
  507. Suspend on HLT:
  508. - AMD K5-SS/A, AMD K5, AMD K6-MMX, AMD K6-3D, AMD K6-Plus.
  509. - IBM 5x86, IBM 6x86, IBM 6x86L, IBM 6x86MX.
  510. - Cx5x86, Cx6x86, Cx6x86L, Cx6x86MX.
  511. - SGS Thomson 6x86, SGS Thomson 6x86L.
  512.  
  513. Auto HLT:
  514. - Intel Pentium, Pentium-MMX.
  515. - IDT WinChip C6, IDT WinChip C6-Plus.
  516.  
  517. Low Power on Auto HLT:
  518. - Pentium-MMX.
  519.  
  520.  
  521.  
  522. ------------------------------------------------------------------------------
  523. 3.3 - CPU optimization.
  524. -----------------------
  525.  
  526.     With V2.00+, CPU detecting and optimizing features have been added to
  527. DOSidle. DOSidle will now automatically detect to CPU in the system and
  528. optionally (if you select it with the -cpu switch) optimize it.
  529.     CPU optimization may cause some system instabilities, only experiment
  530. with it once you are sure that everything else is stable. If something goes
  531. wrong afterwards, you can be sure that the CPU optimization is the cause.
  532.  
  533.     The following CPUs are optimized:
  534.  
  535. CPUs from Cyrix
  536. ---------------
  537. Cyrix 5x86      - Suspend on HLT, CPUID.
  538. Cyrix 6x86      - Suspend on HLT, CPUID, Weak Locking, Write Allocate.
  539. Cyrix 6x86L     - Suspend on HLT, CPUID, Weak Locking, Write Allocate.
  540. Cyrix 6x86MX    - Suspend on HLT, CPUID, Weak Locking, Write Allocate.
  541.  
  542.  
  543.  
  544. ------------------------------------------------------------------------------
  545. 4   - HISTORY.
  546. ==================
  547.  
  548. DOSidle V2.10
  549. -------------
  550.  
  551.     - Added -Apm command-line switch to enable special APM features for
  552.       DOSidle to implement even better cooling than in DOSidle V2.00!!
  553.  
  554.     - Added automatic Intel Pentium, Pentium-MMX and IDT WinChip C6 "Auto HLT"
  555.       feature enable for Protected-mode (special thanks to Martin Malik)!!
  556.  
  557.     - Added automatic Intel Pentium-MMX "Low Power on Auto HLT" feature
  558.       enable for Protected-mode (special thanks to Martin Malik)!!
  559.  
  560.     - Removed the -Tm switch (as in DOSidle V2.00 and earlier), which was not
  561.       needed by general users, to shrink program size!!
  562.  
  563.     - Fixed a little bug in DOSidle V2.00 that was causing performance drop-
  564.       down under MS-DOS V7.00+, when Windows95/98 was not loaded (when the
  565.       system was restarted in MS-DOS mode from Windows95/98)!!
  566.  
  567.     - More bugfixes, as usual.
  568.  
  569.  
  570.  
  571. DOSidle V2.00
  572. -------------
  573.  
  574.     - Recoded and optimized the WHOLE kernel for better performance, more
  575.       features and easy future development (this is actually much more
  576.       important than it sounds)!!
  577.  
  578.     - Added more powerful cooling routines to GREATLY ENHANCE performance!!
  579.       Using the -Fm2, -Fm1, -Fm0 command-line switches you can now control
  580.       DOSidle's cooling strategy directly!!
  581.  
  582.     - Added -On, -Off command-line switches to Activate and Suspend DOSidle
  583.       at any time for a while, without removing it from memory!!
  584.  
  585.     - Added -Cpu command-line switch to Optimize the CPU!!
  586.  
  587.     - Added automatic CPU, Operating System and Protected Mode detection!!
  588.  
  589.     - Added automatic Cyrix/IBM/SGS Thomson 5x86, 6x86, 6x86L and 6x86MX
  590.       "Suspend on HLT" feature enable!!
  591.  
  592.     - Added automatic Intel Pentium, Pentium-MMX and IDT WinChip C6 "Auto HLT"
  593.       feature enable (Real-mode only)!!
  594.  
  595.     - Added automatic Intel Pentium-MMX "Low Power on Auto HLT" feature
  596.       enable (Real-mode only)!!
  597.  
  598.     - Changed the command-line switch character from "/" to "-"!!
  599.  
  600.     - Fixed Modem and Mouse slowdown problem with DOSidle V1.32 [Beta]!!
  601.  
  602.     - Fixed at least five other bugs found in DOSidle V1.32 [Beta]!!
  603.      
  604.  
  605.  
  606. DOSidle V1.32 [Beta]
  607. --------------------
  608.  
  609.     - First release of the DOSidle kernel, together with CpuIdle V2.40.
  610.  
  611.     - Added some cooling routines to the basic ones.
  612.  
  613.     - Added /TM switch for Test Mode, so DOSidle can display information
  614.       about program performance.
  615.  
  616.     - Added /NF switch to disable Force Mode for compatibility with software
  617.       that might not work correctly with the new cooling routines.
  618.  
  619.  
  620.  
  621. DOSidle V1.10
  622. -------------
  623.  
  624.     - The first usable version of DOSidle, which was never released. I have
  625.       coded it together with Andreas Goetz. Thanks Andi!
  626.  
  627.  
  628.  
  629. ------------------------------------------------------------------------------
  630. 5   - MISCELLANEOUS.
  631. ========================
  632.  
  633. 5.1 - Frequently Asked Questions.
  634. ---------------------------------
  635.  
  636. Q: So what the heck is this program??
  637.  
  638. A: DOSidle is a program that will take advantage of the power management
  639.    features of your microprocessor so as to reduce heat buildup.
  640.    Windows95/98 and MS-DOS does not support these features, therefore a lot
  641.    of heat is generated unnecessarily when the system is idle (waiting for
  642.    user input).
  643.    Several measurements indicate that DOSidle can even cause a 16 C degrees
  644.    (29 F degrees) temperature drop. Many good heatsinks and fans would envy
  645.    this :)
  646.  
  647.  
  648.  
  649. Q: I already have CpuIdle from Andreas Goetz, why would I want to use DOSidle?
  650.  
  651. A: Simple. CpuIdle does a superb job in cooling the system under Windows95/98.
  652.    On the other hand, DOSidle does a great job (hopefully) in cooling the
  653.    system under MS-DOS 6.22 and earlier, MS-DOS 7.00 and later (Windows95/98
  654.    MS-DOS) AND in a Window95/98 MS-DOS Box.
  655.    Since users of Windows95/98 generally use MS-DOS in one of the above ways,
  656.    DOSidle is needed to reduce heat just as CpuIdle does in pure Windows95/98.
  657.  
  658.  
  659.  
  660. Q: I know CpuIdle quite well and I have observed that it can cause a
  661.    temperature drop of 20 C degrees. How come DOSidle sometimes achieves
  662.    better, but sometimes worse performance?
  663.  
  664. A: MS-DOS is a lot different story from Windows95/98. Whereas the Windows
  665.    operating system handles idle threads quite naturally (and thus it's easier
  666.    to know when the system is idle), MS-DOS is a place of total chaos. There
  667.    is NO standard way of user I/O, therefore DOSidle must make a lot of
  668.    assumptions. These assumptions are sometimes correct and the cooling is
  669.    highly efficient, but sometimes wrong and cooling performance drops.
  670.    And of course, if a program manages its I/O in a quirky behaviour, DOSidle
  671.    is tricked and it won't be able to cool effectively. Believe me, DOSidle
  672.    does EVERYTHING that is possible under MS-DOS!
  673.  
  674.  
  675.  
  676. Q: Will DOSidle slow my system in some way?
  677.  
  678. A: No, no and NO! It definately shouldn't. If you notice program slowdown
  679.    that is caused by DOSidle, please report it to me immediately!
  680.  
  681.  
  682.  
  683. Q: Can DOSidle damage my CPU?
  684.  
  685. A: NO!!
  686.  
  687.  
  688.  
  689. Q: Can I have the assembly source code of DOSidle?
  690.  
  691. A: If you pay for it... maybe. Otherwise no.
  692.  
  693.  
  694.  
  695. ------------------------------------------------------------------------------
  696. 5.2 - Final words.
  697. ------------------
  698.  
  699.     If anybody knows how to execute CPL0 (Ring 0) instructions under DPMI 0.9
  700. or DPMI 1.0, please let me know right away!! Also, I would greatly appreciate
  701. any feedback regarding DOSidle: notes, ideas, comments, bugs or any E-mail
  702. for any reason. Your opinion is the most important to me, but I will never
  703. know it unless I hear (or read) it :).
  704.  
  705. I would like to thank Andi (Andreas Goetz) for his help and support, Martin
  706. Malik (author of HWiNFO) for his source code, and Zsuzsi (Zsuzsa Petro) for
  707. her patience in first place.
  708.  
  709. Many thanks go to the Beta testers of DOSidle as well. They are:
  710. - David Szots
  711. - Vito DeFilippo
  712. - and finally, Andi and myself...
  713.  
  714.  
  715. Enjoy,
  716. Marton Balog
  717.  
  718. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
  719.  
  720. Address:   Zsolt Fejedelem u.6
  721.            Budapest, 1029        
  722.            Hungary, Europe.
  723.  
  724. E-Mail:    dosidle@usa.net
  725.  
  726.  
  727.  
  728. ------------------------------------------------------------------------------
  729. 5.3 - Legal and Disclaimer.
  730. ---------------------------
  731.  
  732.     This software can be used freely without any obligations to the author in
  733. non-commercial enviroments. For use of commercial purposes, you have to
  734. contact the author, Marton Balog, and receive explicit permission. Commercial
  735. purposes include CD-ROMs with bundled free software as well as integration
  736. of this software into other programs.
  737.  
  738.  
  739.  
  740.     THIS SOFTWARE PACKAGE (DOSIDLE.ZIP) INCLUDING ALL ACCOMPANYING FILES ARE
  741. DISTRIBUTED "AS IS", WITHOUT ANY WARRANTIES, EIGHTER EXPRESSED OR IMPLIED.
  742. THE AUTHOR (MARTON BALOG) DOES NOT TAKE ANY RESPONSIBILITIES FOR POSSIBLE
  743. DAMAGES OR FUNCTIONALITY AND CAN NOT BE HELD LIABLE FOR ANY DAMAGE CAUSED
  744. DIRECTLY OR INDIRECTLY BY THIS SOFTWARE.
  745.     USE EVERYTHING AT YOUR OWN RISK!
  746.  
  747.     ALL TRADMARKS MENTIONED IN THIS DOCUMENTATION ARE PROPERTIES OF THEIR
  748. RESPECTIVE OWNERS.
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.                          +=========================+
  758.                          | E-Mail: dosidle@usa.net |
  759.                          +=========================+
  760.