; Program to set AMI MARK III motherboard to fast CPU speed, and ; enable cache. ; this is a .COM program, use EXE2BIN or equivalent after assembling ; and linking. ; code segment public assume cs:code, ds:code org 100h start: jmp begin cr equ 0dh lf equ 0ah port equ 460h ; index port, data port is 461h index equ 0bh ; register in port msg_fast db cr,lf,lf,'CPU set to FAST, with cache enabled.',cr,lf,'$' ; begin: mov dx,port mov al,index out dx,al jmp $+2 ; delays jmp $+2 inc dx ; point to data port in al,dx ; and read it, from register 0bh or al, 00000011b ; set bits 0 and 1 ; change above line as follows-- ; and al,11111100b--set to slow and disable cache ; and al,11111101b--disable cache in fast mode (always off in slow) ; xor al,00000001b--toggle speed ; xor al,00000010b--toggle cache dec dx ; back to index port xchg al,ah ; save al mov al,0bh out dx,al jmp $+2 jmp $+2 inc dx ; and, back again to data xchg al,ah ; put what we want back in al out dx,al ; and write it where it belongs (we hope) mov dx,offset msg_fast ;print message mov ah,09 int 21h mov ax,4c00h ; and go away int 21h ; code ends end start