phat code If it's not on fire, it's a software problem.
Main

Projects

Downloads

Articles

Links

Downloads

Compilers

search for in   Assemblers / Compilers / Linkers / Debuggers / Patches
 

QB XP Floppy Fix

AuthorPlasma (Jon Ρetrosky)
Emailplasma@phatcode.net
Websitehttp://www.phatcode.net/
ReleasedJun 12 2004
PlatformDOS
LanguageAssembly
SourceNo
BinariesYes
Summary

If you have a floppy drive and use the QB IDE in Windows XP, you've probably noticed the annoying floppy drive access in the open dialog box. It happens when you select open from the menu, and every time you change directories.

This is caused by Microsoft's crappy drive-detection method, which is basically to try and set every drive (A-Z) as the default (current) drive and see whether or not it fails. Brilliant. Under Windows XP, this causes the repeated floppy access.

To fix this, I rewrote the drive detection routine using Int 21/AX=4409h (IOCTL - Check if block device remote) and Int 2F/AX=150Bh (MSCDEX - Drive check). This should still find all your drives without trying to access them all every time you change directories.

I also patched PDS 7.x to remove the annoying warning message at startup about only being certified for use with MS-DOS.

Included are the patched executables for QBASIC 1.x, QuickBASIC 4.5, PDS 7.x, and VBDOS Standard/Pro. Also included are the patched runtimes for VBDOS Standard/Pro, as I found out that the runtime code for common dialogs also needed to be patched. (Thanks dilettante :D)

(QuickBASIC 2.x, 3.x, and 4.0 use a different drive detection method that doesn't cause repeated floppy drive access, so I didn't need to patch them.)

 

Download

Click here to download qbxpfloppy.zip (3.6 mb)