Блог did5.ru
Про АйТи и около айтишные темы
Эмулятор флоппи-дисковода FDD в Windows 7
Я не сталкивался с дискетами уже лет 5 точно, столько же я не видел флоппи-дисководы на новых компьютерах. Даже начал забывать, что такие носители информации вообще
существовали существуют. Но на днях приехал из Москвы привет из прошлого в виде двух трех с половиной дюймовых дискет с цифровой подписью для программы АРМ «Организация». Стоит отдать им должное, одна дискета это точная копия другой на случай выхода из строя одной из дискет.
Чтобы найти компьютер с работающим флоппи-дисководом пришлось потратить час времени, т.к. найти флоппи не сложно, а вот найти еще работающий FDD – это проблема. Скопировал все данные на флешку, вставил в ПК с программой АРМ «Организация», но “умная” программа опрашивает только диск A:, а на этом компьютере такого вообще нет.
В тех.поддержке данного софта милая девушка посоветовала использовать внешний FDD, либо найти ДРУГОЙ способ, о котором она не может говорить, но в гугле я все найду. Я даже растерялся сначала, но выхода не было, пришлось гуглить по поводу эмулятора флоппи-дисковода для Windows 7. Забегу вперед и скажу, что все получилось настроить минут за 15, программа обновилась и заработала, а как настроить эмуляцию FDD я расскажу ниже…
Эмулятор флоппи-дисковода FDD в Windows 7
Образ дискета
Первым делом нужно создать образ дискеты, чтобы файл с образом подсунуть программе эмулятору. Для создания образа дискеты нужно две вещи – компьютер с работающим флоппи-дисководом и бесплатная программа, которая не требует установки — RawWrite for Windows.
В программе переходим на вкладку Read, указаем путь – где сохранить файл с образом дискеты и нажимаем кнопку Read.
Образ готов, можно переходить на ПК, где нужно эмулировать эту дискету.
Эмуляция FDD
Для эмуляции FDD я использовал программу ImDisk Virtual Disk Driver, после установки ее нужно искать в Панели управления, т.к. в меню Пуск она не отображается.
Основное окно программы ImDisk Virtual Disk Driver, в нем отображается список смонтированных дисков (дискет) и кнопки управления. Чтобы смонтировать образ дискеты жмем Mount new…
Далее, как показано на скриншоте. Указать путь к файлу образа, букву диска и тип…
Если все сделано правильно, то в основном окне программы появится следующая строчка
Все готово, теперь можно в проводнике открывать диск A: и работать с файлами, которые были на дискете.
Заключение
Для монтирования образа дискеты достаточно прав обычного пользователя, но после перезагрузки нужно монтировать образ заново. В моем случает образ нужен был только один раз, а если требуется повседневная работа с образом дискеты, то программа ImDisk Virtual Disk Driver поддерживает управление монтированием через командную строку. Например, чтобы смонтировать образ дискеты вводим:
Можно написать bat файл и положить его в автозагрузку, чтобы не делать монтирование вручную при загрузке системы.
Нашли опечатку в тексте? Пожалуйста, выделите ее и нажмите Ctrl+Enter! Спасибо!
Хотите поблагодарить автора за эту заметку? Вы можете это сделать!
Виртуальный FDD
Вот мы и дожили до того момента, когда устройство под названием «дисковод» отсутствует как класс в современных компьютерах. Появившись давным-давно, дискета долгое время была привычным устройством для обмена информацией между локальными компьютерами.
8″, 5.25″, 3.5″ — как уж дальше и не улучшай, но скорость записи по-прежнему маленькая, объём накопителя по современным меркам тоже копеечный, а о надежности хранения информации, думаю, даже говорить не стоит. На смену пришли маленькие USB флеш-накопители, которые незаметно выжили из системного блока старый добрый 3,5″. Но что же делать, если вдруг понадобился дисковод, а под рукой его нет? На помощь придет эмулятор — виртуальный дисковод.
Virtual Floppy Drive (VFD) — это крохотная по размеру программа, которая позволит установить в систему виртуальный дисковод и работать с образами дискет так, как будто они вполне реальны. Программа имеет «двойной» интерфейс: в комплекте идет консольная версия (vfd.exe) и версия c графическим интерфейсом (vfdwin.exe). Для работы с виртуальным приводом программа устанавливает в систему свой драйвер. Virtual Floppy Drive позволяет настроить тип и размер эмулируемого диска: от 160 Кб 5,25″ до 2,88 Мб 3,5″, а также букву логического диска, которая будет привязана к устройству. Кроме того, VFP способен открывать образы дискет в различных форматах: Bin, Dat, Fdd, Flp, Ima, Img, Imz, Vfd. Монтируемый образ можно защитить от записи, предусмотрена возможность сохранения изменений диска обратно в образ.
Консольная версия весьма удобна в работе: программа воспринимает «указания» через командную строку. Если не требуется загружать виртуальный диск вместе с системой (программа это позволяет), то можно создать два командных файла для включения и выключения дисковода. Например:
Форматировать созданный диск можно только через саму программу, стандартные средства ОС не подходят. Есть возможность эмулировать сразу два дисковода, установить ассоциации файлов-образов на VFD.
ImDisk Virtual Disk Driver — дистрибутив состоит из одного exe-файла размером около 300 Кб, который при запуске устанавливает ImDisk в панель управления.
Программа позволяет создать виртуальный диск не только в качестве дисковода, но и как жесткий диск, CD/DVD, так что для правильной эмуляции FDD необходимо в параметре device type выбрать параметр «floppy». Форматировать созданный диск можно стандартными средствами.
В остальном ImDisk обладает теми же возможностями, что и VFD, разве что позволяет создавать множество виртуальных дисков.
Обе программы бесплатны и великолепно работают под Windows 7.
Одним словом, если вдруг вам понадобилось установить старый софт (в Сети инсталляционные диски иногда лежат в виде образов дискет), какой-нибудь из ваших программ жизненно необходим доступ к дискете или же просто захотелось ощутить ностальгию, знайте — вас выручит виртуальный дисковод.
Эмулятор fdd для windows 7
This is a virtual floppy drive for Windows NT / 2000 / XP developed by Ken Kato
(Reported to work also on 2003 Server and Vista).
Note . This version works only on 32 bit systems .
See technical info on 64 bit compilation.
You can mount a floppy image file as a virtual floppy drive and directly access the contents — view, edit, rename, delete or create files on a virtual floppy, format a virtual floppy, launch a program on a virtual floppy. almost anything you can do with a real floppy.
Introduction to version 2.1
The latest version is 2.1.2008.206
Changes from 2.1.2005.404 version
- Replaced zlib version from 1.2.2 to 1.2.3. Thanks to Stefan Kanthak for pointing out the security vulnerability of the previous version. (Sorry I didn’t respond soon, Stefan).
- Since some people seemed to have trouble finding out how to create a new image with VfdWin, I decided to change the text on «Open» button to «Open/Create». I hope it helps.
- Added platform checking so that VFD does not start on 64 bit OS.
- Version display now shows build number (build date, in VFD’s case) because I decided to leave the major and minor versions unchanged.
No change at all to the device driver.
Major changes since 2.0 RC
- Changed the name to «Virtual Floppy Drive» from «Virtual Floppy Driver».
Well, this may seem trivial to you, but it seems more appropriate to me 🙂 because while the driver is still the core of this project, the interface programs have grown to take more and more significant roles in the whole picture.
Save virtual floppy image into files.
You can save modified RAM disk image into files or save mounted file image into different files.
Now you can specify either 3.5″ or 5.25″ for 640KB, 720KB and 1.2MB media.
Now you can specify media size different from the actual file size.
For example, you can mount a 1.44MB image as a 1.2MB media, or you can use image files with surplus data at the end which some floppy backup programs create.
Now you can change the driver start method without reinstalling the driver.
VFD.EXE command line options to suppress prompting.
Now you can run your batch file without interruption.
VFD.EXE interactive console.
Removed the Mount Manager support on Windows 2000 and later.
It was causing a problem that once the driver is stopped it cannot restart until the system is rebooted.
I may restore the feature when the driver becomes fully Plug & Play compatible.
Other 2.x major features
- 2 virtual floppy drives.
FILE mode and RAM mode
In FILE mode, image files are mounted directly.
Changes made in virtual media are written to the file immediately.
In RAM mode, on memory copy of image files are mounted.
Enables to open read-only files as writable media.
Changes are not written back to the image file (discarded on image close).
Supports the following media types:
160KB (5.25″), 180KB (5.25″), 320KB (5.25″), 360KB (5.25″), 640KB (5.25″/3.5″), 720KB (5.25″/3.5″), 820KB (3.5″), 1.2MB (5.25″/3.5″), 1.44MB (3.5″), 1.68MB (3.5″), 1.72MB (3.5″), 2.88MB (3.5″)
WinImage compressed image (*.IMZ) support.
RAM mode open only, and cannot save into an IMZ file.
Formatting virtual media
New images created with VFD are pre-formatted with FAT12.
Enables to format media which Windows’ format cannot handle.
Switching write-protection of virtual media on the fly.
Persistent drive letters
A drive letter is not removed when an image is closed.
Drive letters are preserved until explicitly removed.
The same drive letter is assigned the next time the driver starts.
On Windows 2000 SP2 and later, drive letters are not deleted when the user logged off.
On Windows XP and Terminal Servers drive letters are globally visible.
You can choose between the old (ephemeral) drive letters.
Shell extension
Open/Close an image with the right click menu on the virtual drive icon.
Virtual Floppy Drive property sheet.
Drag-and-drop an image file with the right button to the virtual drive icon to open it (Windows 2000 and later).
Download
- vfd.sys (kernel-mode driver: version 2.1.2005.404)
- vfd.exe (command line console)
- vfd. dll (driver control and shell extension library)
- vfdwin.exe (GUI interface)
- readme.txt (README English)
- vfdhelp.txt (VFD.EXE command reference English)
- readmej.txt (README Japanese)
- vfdhelpj.txt (VFD.EXE command reference Japanese)
- copying.txt (GNU GENERAL PUBLIC LICENSE Version 2)
CAUTION! This version can not coexist with previous versions.
Please carefully read the readme.txt before using the program.
Please send your comments, even if you don’t get any problems. Even just one sentence like «Works on Windows ** SP*» would be appreciated.
FAQ & known issues (including unconfirmed)
- Super FAQ: NTFS compressed/encrypted files cannot be mounted directly. It is intentional to avoid the Windows cache manager dead lock.
Super FAQ: Current VFD can not create image from or save to actual floppy disk. Use programs like WinImage or RawWriteWin for that purpose.
Windows XP Explorer shows virtual drives as removable drives, not as floppy drives. Also it shows a 5.25″ floppy icon if a virtual drive is A: or B:, and a removable drive icon otherwise. I’d say it’s a bug of the Explorer. Other properly designed programs won’t have any such problem.
Windows XP Explorer sometimes doesn’t respond properly when you add / change drive letters of virtual drives. I think it’s also an Explorer bug, because the same thing happens when I change drive letters of a hard drive, a CD drive, etc. Restart the Explorer or, if that fails, log off and log on again and the the virtual drives will be recognized correctly.
Windows NT/2000 FORMAT.EXE can format the following media:
160K, 180K, 320K, 360K, 640K, 720K, 1.2M, 1.44M, 2.88M
Windows NT/2000 Explorer can format the following media:
360K, 640K, 720K, 1.2M, 1.44M, 2.88M
Windows XP FORMAT.EXE and Explorer can format 1.44M media only.
Use VFD.EXE or VFDWIN.EXE to format media with size not listed above.
Windows 2000/XP Explorer’s check disk does not work with VFD drives.
Use command line CHKDSK.EXE instead.
Changing a virtual media between 3.5″ and 5.25″ does not update the drive type display of the Explorer. It’s just cosmetic. Any programs which have to distinguish them should recognize the drive type correctly.
Some programs (especially old ones) assume floppy drives to be either A: or B:. If certain programs don’t recognize a VFD drive, try changing the drive letter to A: or B:.
Windows 2000/XP sometimes assign conflicting drive letters, especially with removable devices such as USB drives and network drives. If a VFD drive suddenly becomes unaccessible, try changing the drive letter.
Conflict with swapfs (http://www.acc.umu.se/
bosse/) is reported by Suzu. (unconfirmed)
Some users have reported gradual system slow down and eventual lock up while copying a large amount of data to/from virtual drives. (unconfirmed)
Useful programs to accompany the VFD
jn/linux/rawwrite.htm
RawWriteWin (free): a Windows program to create floppy image files from real floppy disks, and vice versa.
64 bit compilation
Recently two people have independently gave me some information about compiling and running VFD driver on a 64 bit system, and I decided they are worth sharing here on this page. Please note that I cannot answer any question on the matter as I myself have never used a 64 bit system.
A person with a handle name «critical0» gave me the info and a driver binary compiled for AMD64. Here is an extract from an email he sent to me:
On Sat, 21 Oct 2006 critical0 wrote: The driver binary he sent to me: vfd-x64-critical0.zip
Igor Levicki also gave me the info about changing driver code for 64-bit compilation:
On Wed, 22 Nov 2006 Igor Levicki wrote:
NOTE: Both critical0’s and Igor’s suggestions take different approaches to the same problem. Igor has pointed out that type casting from ULONG_PTR * to PULONG, which appears in critical0’s fix, is unsafe and I agree that type casting in general can be dangerous.
However, in this particular case, I believe that critical0’s fix is reasonably safe. Because the address referred to by the pointer in question is first initialized properly with 0 and a value to be stored in that address never gets to be negative or exceeds 300 or so, which is not even close to the 32 bit limitation.
NOTE2: According to Igor, type casting method has another drawback in terms of processor and memory bus cycles. So you should take Igor’s suggestion when you build a 64-bit binary yourself . However if you cannot build it yourself, I still believe that critical0’s binary is not likely to crash or anything. Sorry for inconvenience but I’m not going to build and distribute a 64-bit binary myself for the time being, largely because I cannot even confirm that my build works on a 64-bit system. At least critical0’s binary actually works for him.