thank you for all, the problem finaly solved thanks to starcraftmaster for pointing that may be something wrong with system files, you're right it was. thanks to chromatic47 for pointing the registry key, indeed the problem was related to it, without your advice i'm probably still looking in the dark. the problem was related to vdd. story: i notice that it was something minivdd. so i thought, if it was 'mini' what about the non-'mini' ? i looked for vdd in that key, found something stuff like this: [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Display\0000\DEFAULT] "vdd"="*vdd,*vflatd" iirc, i saw something like that in drwatson report backthen. i checked file that have similar name both in windows directories and installer .CAB files. it seems vflatd.vxd existed in windows installer cab, but not in windows system directory... i decided to extract that file, copy it into windows\system directory, reinstall driver, restart, and ... it works. it works? to make it sure, turn-off computer, turn-it on again, restart once again. confirmed: problem solved! joy. the problem is now solved, but there thing that make me wonder: vflatd.vxd wasn't bundled in downloaded driver packages, it seems driver maker assume that file was already there in each computer? well, i go to check friend computer who also using ATI graphics card (also using win9x), i don't found the vflatd.vxd in his computer, but nothing wrong with his display driver. i also have bootlog.txt that was created when there was the problem, the enty on bootlog.txt: (when there was no vlfatd.vxd file)... [000FBEEA] Loading Vxd = vflatd [000FBEEA] LoadSuccess = vflatd .. [000FBEEC] SYSCRITINIT = VFLATD [000FBEEC] SYSCRITINITSUCCESS = VFLATD ... [000FBF53] DEVICEINIT = VFLATD [000FBF53] DEVICEINITSUCCESS = VFLATD [000FBF53] DEVICEINIT = Display1 [000FBF53] DEVICEINITSUCCESS = Display1 [000FBF53] DEVICEINIT = Display2 [000FBF53] DEVICEINITSUCCESS = Display2 ... [000FBFA1] INITCOMPLETE = VFLATD [000FBFA1] INITCOMPLETESUCCESS = VFLATD [000FBFA1] INITCOMPLETE = Display1 [000FBFA1] INITCOMPLETESUCCESS = Display1 [000FBFA1] INITCOMPLETE = Display2 [000FBFA1] INITCOMPLETESUCCESS = Display2 ... yes, i even re-run setup.exe from win98SE installer disc before i come up with this solution, re-running setup doesn't solve it. (thankfully, i doesn't go to complete OS re-install, yet) what was exactly going on with my system? anyway thanks to you all, this problem was solved