Présentation

Hardware

Programmation

Links

Divers

Contact

A Universal Floppy Disk Drive Emulator

Last Update : October 5, 2014

Soon : a new website ! : www.hxc2001.com

- Some floppy disk drive retrofit examples -

Introduction:

For people like me who began the computing with computers as Atari ST or Amiga and still possessing one, we still use it time to time for some instant of nostalgias by viewing some demos and/or by playing some old video games. However these computers are based on 3"1/2 floppy disk, so it's necessary to prepare them from a PC. And this is a real pain: you have to find a floppy disk in good condition, to format it with makedisk (under DOS because it doesn't work with Windows) from an floppy disk image, etc. After some long minutes of preparation, we boot up the Atari ST with this floppy disk and then we realize that the floppy disk lost some sectors and is unusable... This often occurs because in a lot of cases, the floppy disk drive of the computer is damaged.

Regarding Amiga floppy disks, it's impossible to create them from a PC because their format is totally incompatible with the PC controllers.
Anyway the tiredness of the floppy disk drive, the decline of floppy disks and their close disappearance required a fall-back solution to be able to use these computers in the future...


The aim of this project is to replace the floppy disk drive by an electronic device emulating the floppy disk drive.
Since the beginning of the project (2006), the HxC Floppy emulators was designed to be very versatile and to support a large variety of computers / keyboards / samplers / CNC machines at a low cost.
Thanks to its versability the HxC Floppy Emulator supports most existing floppy formats.

Today the HxC Floppy Emulator is a well established floppy disk drive replacement solution present into the Retro-Computing domain, the Music domain and the Industrial domain.

At this day there are two differents floppy disk drive emulator :

- A USB version which allows to connect the floppy disk drive interface of the computer to a PC via a USB cable.
For more information on this interface, go to "USB HxC Floppy Drive Emulator" part.

- A SDCARD version which allows to emulate floppy disks which images are stored in a SDCARD.
For more information on this interface, go to "SDCARD HxC Floppy Drive Emulator" part.

In the table below, you can find the list of supported/tested hardware/floppy file images:

Note : Some computer/hardware are probably missing in this list.
If you have tested the HxC Floppy Emulator successfully with another hardware or if you want a new file/hardware support, don't hesitate to contact me.

>>>New : Support status list can be found here!<<<

Supported Computer/Hardware
Supported File Formats Notes

Atari ST
(STE/STF/Falcon...)

*.ST 9,10,11 and 18 (1.44MB) sectors/track format supported.
*.DIM  
*.MSA  
*.STT Steem Imager file format.
*.IPF

*.STX / Pasti

Warning : Alpha version/unstable.

"Non images" files.

The HxC Floppy Emulator software allows to create an virtual FAT12 (Atari ST/ MS DOS) floppy disk containing files present in a PC folder.

*.IMA Hard Disk Image Hard disk drive emulation done by the HxCMount driver. More details on : http://hxcmount.atomas.com/

Amiga
(500/600/1000/1200...)

*.ADF  
UAE / Extended ADF New and old version supported.
*.ADZ Based on the zlib.
*.DMS Based on xdms.
*.IPF 26/03/2008 > New software and CPLD core -> Full support of protected floppies image. Variable bitrate and flakeys bits protection are now supported.
"Non images" files.

The HxC Floppy Emulator software allows to create an virtual AmigaDOS floppy disk containing files present in a PC folder.

Amstrad CPC6128/CPC6128+
*.DSK  
*.DSK (extended)  
*.IPF

Sinclair ZX Spectrum +3

DSK and Extended DSK  
TRD (BetaDisk)
SCL (BetaDisk)
*.FDI
*.IPF

MSX2

*.DSK

Warning : The MSX2 computers often used a non-standard floppy connector pinout.
Before plugging the HxC Floppy Emulator please check that the pinout is compatible.

Thomson TO8D
MO5 + CD90-640

*.SAP Based on Libsap.
*.FD FD files can be loaded with the raw image loader (in the gui software) with these parameters :
MFM-256bytes/sector or FM-128bytes/sector, 16 sectors/tracks, 2 or 1 sides.
Oric+MicroDisk
*.DSK

Oric & MicroDisc support tested at the Infoticaires 2008 convention party

C64 + 1581

*.D81 Alpha version. Waiting for tests on real hardware.

Dragon 32/64

*.VDK Dragon 32/64 disk image  

Sam Coupé

*.MGT  
*.SAD
TI99/4A
TI99 PC99 MFM & FM tracks supported.
TI99 V9T9 (*.V9T9 / *.PC99)

TRS-80

*.JV1  
*.JV3

JV3 support done by Gustavo E. A. P. A. Batista. Thanks to him. Here a video demo

JV3 write support done by David Barr. Thanks to him too ! :) And another video here !

*.JVC Jeff Vavasour Color Computer Disk Image
*.DMK  

Acorn A3000

*.ADF  

Acorn BBC

*.SSD  
*.DSD
*.ADL

ACT/Apricot

ACT Apricot disk image  

Robotron KC 85/X

*.TD0  

Kaypro 4-84

*.IMD  

RML 380Z/480Z

*.IMG More details on the forum

CamputerLynx

*.LDF Tests on the real hardware done .

PC-6601/PC6601SR

*.D88  

PC88

*.D88  
x68000
*.HDM 360RPM, 500Kb/s, 8 1024Bytes sectors, 2 sides, 77 tracks floppy format.
*.XDF

FM Town II

*.D88
*.BIN (raw image)

 

Super Wildcard DX-SWC3201
Thanks to Giants ;-)

*.SMC Create a MS-DOS FAT12 floppy disk containing the SMC Super NES / Super Famicon ROM file.
PC
*.IMG/*.IMA/*.IMZ 720kB and 1.44MB floppy image files supported

Korg DSS-1 Keyboard
Thanks to Tobias ;-)

*.DSK (CopyQM)

Note : Here a demo : http://www.reflexmusic.de/DSS-1/

Korg Is40 Keyboard

*.IMG/*.IMA/*.IMZ
MS DOS Floppy disk image

 
Ensoniq EPS Keyboard

*.EDE
*.GKH

Here a video demo.

Ensoniq SD-1 Keyboard

*.EDV Note : The floppy file image must have the *.EDV extension

Ensoniq Mirage Sampler

*.EDM Note : The floppy file image must have the *.EDM extension

Ensoniq ASR-10

*.EDA  
Ensoniq SQ-80
*.EDS  

Ensoniq TS-10

*.EDT  

Kurzweil K2000

*.KRZ  

Oberheim DPX1 Sampler

*.DPX Here a video demo.

Emax & Emax II Sampler

*.EM1 & *.EM2 Note : The operating system image (emaxos.emx) must be present in the same folder than the bank files.

Prophet 2000 & 2002

*.IMG  
E-mu Emulator
*.EMUFD

E-mu Emulator II

*.EMUIIFD

*.EII

Note : The operating system image (emuiios.emuiifd) must be present in the same folder than the bank files.

Credits & Thanks: E-mu Emulator I & II support was possible thanks to Jan Kiefer who supply all necessary materials and supports, to the Software Preservation Society team for the reverse engineering of the EmuII Floppy disk format, and to Kris Van de Cappelle (EMXP developer) for the tests and EmuII technicals informations.

E-mu SP1200

*.SP1200FD

Here a video demo.

Thanks to rosefloyd for the tests on the SP1200 hardware!

Yamaha Clavinova CVP-83S

*.IMG/*.IMA/*.IMZ
MS DOS Floppy disk image

Note: The virtual floppy disk image can be generated from midi files with the software.
Yamaha TX16W
Raw sector images/Floppy dump More details on the forum

Roland G800

*.IMG/*.IMA/*.IMZ
MS DOS Floppy disk image

Note: The virtual floppy disk image can be generated from midi files with the software.

Here a video demo.

Roland W-30

*.TD0

Floppy Disk Dump

 

Roland S-330

*.TD0

Floppy Disk Dump

 

Roland S-50

*.IMG/ raw sector images  

Roland MV 30

Floppy Disk Dump  

Roland MC 300

Floppy Disk Dump  

Akai S900/S950 Sampler

*.IMG/ raw sector images Here a video demo
Akai S01
Raw sector images/Floppy dump More details on the forum
Akai ASQ-10
Raw sector images/Floppy dump  

Akai MPC60 MKII

Raw sector images/Floppy dump. More details on the forum

Akai MPC2000

Raw sector images/Floppy dump.

More details on the forum

Here a video demo

JB-Lighting Licon

*.IMG/*.IMA/*.IMZ
MS DOS Floppy disk image
Note: The virtual floppy disk image can be generated from files with the software.

ALESIS DataDisk

Raw sector images/Floppy dump. More details on the forum.
TD0 Teledisk format *.TD0 Teledisk file format: Normal and advanced compression supported.
IMD file format *.IMD

ImageDisk File format
Note: supported modes: MFM & FM.

MFM file format *.MFM Internal format of the software: contains encoded tracks.
AFI file format *.AFI

Advanced floppy image: Contains Track data, variable bitrate, flakey bits informations.

HFE file format *.HFE File format used by the SDCard HxC Floppy Emulator
VTR file format *.VTR File format used by the VTrucco Floppy Emulator (variant of the SDCard HxC Floppy Emulator)

To download the software please go to the software section.

Here are the main features of the SDCard HxC Floppy Emulator:

You can found some details about this board here : SDCard_HxC_Floppy_Emulator.pdf

Rev C/F user manual: SDCard_HxC_Floppy_Emulator_User_Manual.pdf

Slim Rev A user manual: Slim_SD_HxC_Floppy_Emulator_User_Manual.pdf

Hardware/software specifications

> 40Mhz PIC18F4620 based. (Rev B, C & 3"1/2 rev F)
> 64Mhz PIC18F46K22 based. (3"1/2 Slim version)

- Floppy interface: HE10 34 pins floppy connector

> Shugart compatible mode supported.
> PC compatible mode supported.
> Two floppy disk drives emulation. (Two floppy disk drive emulator in One !)

- Power supply

> 5V +/- 10% standard power floppy connector input.
> 500mA max. (80mA in standby).

- User Interface

> 3 LEDs ("Power LED","Floppy access LED"," SDCard access LED ").
> 3 buttons ("Next","Select/Eject","Previous").
> 1 audio transducer.
> 2*16 chars Alphanumerical LCD.
(Note : LCD and buttons can be put on an external front panel)
> On screen display software for Atari ST, Amstrad CPC and Amiga Computers

- SDCard support

>SD Card up to 2GB.
>SDHC Card supported up to 32GB.

- SDCard Filesystem


>FAT12/FAT16 & FAT32 supported. Subdirectory and long name file supported.

>Multi-Volumes/Images support:

- More than 8000 HD (1.44MB) Floppy Images on a 32GB SDCard !
- More than 16000 DD (720KB) Floppy Images on a 32GB SDCard !

- Read / Write support

Track mode based floppy emulator (Full track pre-encoded in the HFE image file)

> Read support: Most of existing formats (FM/MFM/GCR/Amiga/E-mu track...) supported.
Custom tracks supported.

> Write support:ISO MFM/DD 128/256/512/1024/2048/4096/8192Bytes sector write supported.

> Write support:ISO FM /SD 128/256/512/1024/2048/4096Bytes sector write supported.

> Any data mark supported : 0xFB, 0xF8, 0xF9, 0xFA

> Amiga Write support.

> E-mu (Emulator I / II / SP1200) Write support.

> Low level format support !
The host machine can format the image with the right disk setup exactly as with a real floppy disk ! No need to already have an image with the right format, just make it by formatting it !

- Floppy bitrate supported

> 125/150/250Kbits/s (FM/SD floppies)
> 250/300Kbits/s (MFM/DD floppies)
> 500Kbits/s (HD floppies)
(others bitrates possible)

(Note : Variable bitrate not supported. So protected floppy disk image (IPF and STX file format) file support will be only partial ! If you look for a device supporting IPF / STX please a have a look to the USB HxC Floppy Emulator device)

- RPM

> 300 RPM , 360 RPM supported.
(others RPM possible).

-Tracks / Side

>Up to 255 tracks per floppy.
>1 or 2 sides.

- Additionnal features

> Firmware update via the SD Card.

> Last Loaded Floppy Image autostart at power up.

> Fast floppy image loading (<<1second), no conversion time.

> Floppy Emulator ready at power up! Boot sequence possible right after the power up !

> SD Card Direct Access mode : Direct Floppy to SD bridging.

> Host control : The host machine can send a command to the emulator to change the current selected image.

> File image renaming embedded function.

> Supersized DOS Floppy emulation! : Up to 5 MB free per floppy image file !

> Data integrity security of the original system respected ! :
CRC fields present into the HFE images ! No direct usage of not secured IMG/IMA/”ISO” images or direct flash media bridging without CRC in floppy emulation mode !

SDCard HxC Floppy Emulator Mechanical drawing (Rev B/C):

Firmware :

Please go to the download section to get the latest version.

 

Host control tool (Atari ST, Amstrad CPC, Amiga) :

With this tool the host computer can access directly to the SDCard to select files images and change the SDCard HxC Floppy Emulator settings.

With this tool the LCD screen and the buttons are becoming optional / useless. You can even remove the LCD screen to put the SD HxC Floppy Emulator inside the Amiga/Atari/CPC computer without case modification.

Actually Atari ST, Amstrad CPC and Amiga versions of this tools are available.

Here a video-demo of this tool:

 

Note : Please go to the download section to get the latest version.

Here are the main features of the USB HxC Floppy Emulator:

Hardware specification:

- Read only Floppy emulator (SD,DD,HD & ED mode)
(!!!!!! No Write Support !!!!! Have a look to the SD Card version for the write support!)
- USB 1.1 device interface (based on the FTDI FT245.).
- MFM, FM and GCR compatible (can handle custom encoding).
- Bitrate between 63Kbits/s and 1MBits/s.(250 differents bitrates by step of 62.5ns).
- Variable bitrate, flakey bits and long tracks, custom tracks support (emulating of copy protected floppies).
- Can emulate floppies up to 128 tracks.
- "jumper free" Design : Device configuration on the software.
- Flexible Floppy Interface: Shugart, IBM PC and Amiga compatible.

To see the list of computer tested with it, please go to this List

click here for pictures and videos.

All necessary informations to build your own USB HxC Floppy Emulator is available here.

The hearth of the USB HxC Floppy Emulator is a MAX EPM7128S CPLD from Altera with 128 Macrocell. This chip is connected to a 32KB SRAM used as buffer and a FT245 from FTDI for the USB communication.

Warning : Do not disconnect the Floppy interface cable while the USB is connected. This may damaged the emulator and your equipements.

Always disconnect the USB cable before connecting/disconnecting the Floppy interface cable.


Schematic of the USB HxC Floppy Emulator:

USB HxC Floppy Emulator CPLD:

The bitstream to use to program the CPLD is available here. To program this chip you can use Quartus II and an Altera compatible JTAG probe (The ByteBlaster for example). The programmer software can be downloaded on the Altera website.
Note : The EPM7128S CPLD can be remplaced with the Atmel ATF1508AS.

Once programmed the CPLD got this pinout ->

There are four LEDs on the board:
D1 : Power LED
D2 : Select LED :Is on when the target computer acccess the floppy disk.
D3 : Step LED : Is on when the target computer is stepping/changing track.
D4 : Link LED : This is the USB link status: Is on when dialoging the host PC.

The VHDL sources are available here : VHDL USB HxC Floppy Emulator sources

 

How to build its own USB HxC Floppy Emulator?

There are actually two differents PCB of the USB HxC Floppy Emulator:

- An "homebrew" version (Rev B). This is a one layer PCB. "Easy" to make at home.

- A "Production" version (Rev C). This is a two layers PCB. The general quality of this board better but may be harder to build at home..Anyway i recommend this one if you are able to make this PCB.

Regarding the features of the board there are no differences between these two boards.

You can downlead the Schematic / PCB Layout / BOM of the revision B & C board here !

If you don't want build it, this board is also available to purchase. Have a look to the Sale Points section.

This software act as the floppy server with the USB HxC Floppy Emulator.
This program also allows you to convert floppy image files for the SDCard based HxC Floppy Emulator.
Supports many input floppy image file formats: List of the supported floppy image formats.

Notes:

- Operating systems supported :

-> Windows 98 / 2000 / XP / Vista / Seven.
-> Mac OS X.
-> Linux.


- The USB HxC Floppy Emulator support is based on the FTDI D2XX Direct Drivers.
If you have the USB HxC Floppy Emulator you must install this driver.

The lastest software sources codes can be donwloaded on the SourceForge project page :
http://sourceforge.net/projects/hxcfloppyemu/

Note : Please go to the download section to get the latest version.

 


Click here to download the latest version.

Download :

Here you can find the lastest versions of software, firmware and documentations:

Last update : October 5, 2014

SDCard HxC Floppy Emulator :

Software :

> HxCFloppyEmulator software v2.0.26.0 (please have a look to the Release Notes for the latest changes)

> HxCFloppyEmulator software beta/SNAPSHOT version (updated regularly)

> HxC Floppy Emulator DOS Disk Browser : A new DOS image type browser solution Please have a look to the README file for more details !

> VFD - Virtual Floppy Drive for Windows with DOS/FAT HFE files images support !

> ADF Opus - An Amiga floppy image browser with HFE files images support !

> Arburg COPYLOG Diskstation Emulator : A software solution to completely replace the Arburg COPYLOG Diskstation ! (Video demo here!)

> SD HxCFloppyEmulator firmware upgrade v1.8.2.40 (please have a look to the Release Notes for the latest changes)

> SD HxCFloppyEmulator beta firmware upgrade (Beta version!)

> Slim SD HxCFloppyEmulator firmware upgrade v2.1.2.40 (please have a look to the Release Notes for the latest changes)

> Slim SD HxCFloppyEmulator beta firmware (Beta version!)

> SDCard HxCFloppyEmulator Manager (for Atari ST,Amstrad CPC and Amiga)

> HxCMount : http://hxcmount.atomas.com/

> Quick Install Disk Images : Some prepared SDCard images

> Softwares and Libraries sources can be found on the HxC Floppy Emulator SourceForge page:

http://sourceforge.net/projects/hxcfloppyemu/

Documentations :

> User Manual : SDCard_HxC_Floppy_Emulator_User_Manual.pdf (English)

> Manuel utilisateur : SDCard_HxC_Floppy_Emulator_User_Manual_FRA.pdf (Français)

> User Manual (Slim version) : Slim_SD_HxC_Floppy_Emulator_User_Manual_ENG.pdf (English)

> General specifications : SDCard_HxC_Floppy_Emulator.pdf

> Software Step by Step guide : HxC_Floppy_Emulator_Software_User_Manual_ENG.pdf (English)

Documentations (developer) :

> HFE File format specification : SDCard_HxC_Floppy_Emulator_HFE_file_format.pdf


> HXCSDFE.CFG config file specification. : SDCard_HxC_Floppy_Emulator_HXCSDFE_CFG_file.pdf

> SD HxC Floppy Emulator Direct access mode / remote control specification : SDCard_HxC_Floppy_Emulator_Direct_Access_mode.pdf

Other :

> SD HxC Floppy Emulator mounting kit documentation.

USB HxC Floppy Emulator :

Software :

> HxCFloppyEmulator software v2.0.26.0 (please have a look to the Release Notes for the latest changes)

> HxCFloppyEmulator software beta/SNAPSHOT version (updated regularly)

> FTDI D2XX Direct Drivers

> Softwares and Libraries sources can be found on the HxC Floppy Emulator SourceForge page:

http://sourceforge.net/projects/hxcfloppyemu/

Other :

> CPLD VHDL source code and bitstream

> Schematic & PCBs of the USB HxC Floppy Emulator

Points of Sale :

The USB HxC Floppy emulator and SD HxC Floppy Emulator are produced and sold by Lotharek.

Lotharek online shop:
http://www.lotharek.pl/category.php?kid=7

Lotharek ebay page :
http://myworld.ebay.co.uk/lotharek1977/
http://www.ebay.co.uk/sch/lotharek1977/m.html

SD HxC Floppy Emulator REV F 3"1/2 Form factor/cased (HE10 34 pins interface):


Slim SD HxC Floppy Emulator :

 


SD HxC Floppy Emulator REV C (HE10 34 pins interface)
:

 

USB HxC Floppy Emulator :

 

 

Useful third party programs :

WinImage (shareware) : a Windows program to create/modify dos/fat12 files images.
http://www.winimage.com/

ImageDisk : A DOS software to read/write floppy disk.
http://www.classiccmp.org/dunfield/img/index.htm

OmniFlop : a Windows program to read special format floppy disk.
http://www.shlock.co.uk/Utils/OmniFlop/OmniFlop.htm

VFD - Virtual Floppy Drive : a Windows Floppy disk drive emulator : This one is able to mount an .IMG file as a floppy disk drive under windows.
http://vfd.sourceforge.net/

Videos / pictures :

All pictures / videos of the project can be found on this page!

Click here for pictures and videos of the project

 

 

Contributors :

Jean-François DEL NERO (Jeff) Project Initiator - Main project developper/maintainer.
Gregory ESTRADE (Torlus) Forum hosting, FAT32 support of the SD HxC Floppy Emulator.
Christophe ESC. (Giants) Manufacturing of the First USB HxC Floppy Emulator batch.
Przemyslaw Krawczyk (Lotharek) Manufacturing and selling facilities.
Arnaud STORQ (Norecess) Amstrad CPC file selector optimization and support.
Gustavo E. A. P. A. Batista TRS-80 JV3 support implementation.
David Barr TRS-80 JV3 write support implementation.
Michael Gibs (gibs) Some incredible promotionals videos ;-)
Kris VC (Esynthesist) Providing a great help for the E-mu Emulator I & II support. (Technical informations and tests).
The Software Preservation Society Team Providing the first E-mu Emulator I & II floppy disk dump and E-mu track format.
Joseph REDON (Namida) NEC PC88 support tests.
Alex Mena x68000 support tests.
Petari Atari ST ST/MSA/STT support tests.
Jan Kiefer E-mu Emulator II tests.
Rosefloyd (One MPC Two DJ'S) E-mu SP1200 tests and some demos videos.

And thanks to all others who contribute to the project by reporting bugs, submitting new ideas, contributing code, spreading the word about the project...

(C) HxC2001 - jfdn