Speed control programs for AMI 386 cache motherboard 12/18/89 The AMI 386 motherboards provide keyboard control of CPU speed, but sometimes you want to control the speed in a batch file or a program. The enclosed three programs let you change the speed from a batch file. The programs are: FAST.COM Sets fast speed and enables cache, same as Ctrl-Alt-Plus SLOW.COM Sets slow speed, same as Ctrl-Alt-Minus NOCACHE.COM Disables cache, same as Ctrl-Shift-Alt-Minus To enable the memory cache after running NOCACHE.COM, use FAST.COM. It enables the cache as well as setting the fast speed. In slow speed, the cache is always disabled. For those who would like to control the CPU speed or cache from their own programs, here is how to do it. There is a byte register at I/O port 460h that controls the speed and cache. This register also contains some other bits that should be left alone. To change the speed or cache setting: 1. Read the byte port 460h. 2. Change bits 5 and 6 as desired: Bit 5 controls the speed. 1 = fast, 0 = slow. Bit 6 controls the cache. 1 = enabled, 0 = disabled. Note that the cache is always disabled in slow speed regardless of the bit 6 setting, but it's recommended that you turn off both bits if you are setting slow speed. 3. Turn on bit 7. The machine will crash if you don't do this! 4. Write the new byte value back to port 460h. You don't have to do any JMP SHORT $+2's - this I/O port is on the motherboard. In Microsoft C, the would look like this: #define AMIPORT 0x460 // Set fast speed and enable cache outp( AMIPORT, inp(AMIPORT) | 0xE0 ); // Set slow speed and disable cache outp( AMIPORT, inp(AMIPORT) & 0x9F | 0x80 ); // Disable cache when in fast speed outp( AMIPORT, inp(AMIPORT) & 0xBF | 0x80 ); These programs are in the public domain and may be freely distributed. Please include this README.TXT file. Michael Geary P.O. Box 1479 Los Gatos, CA 95031-1479 BIX: geary CompuServe: 76704,35