DrawBridge - USB mechanika a Amiga
Co je DrawBridge a k čemu slouží?
DrawBridge (Disk Reader and Writer Bridge) je otevřené řešení vyvinuté Robertem Smithem (RobSmithDev) s cílem umožnit levné a snadné čtení i zápis Amiga disket na běžném PC. Základem je malý Arduino mikrořadič, který slouží jako most mezi klasickou disketovou mechanikou a moderním počítačem pomocí USB. Projekt je zcela open-source - autor uvolnil zdrojové kódy firmwaru i potřebné schéma zapojení zcela zdarma. Původní motivací (v roce 2017) bylo vytvořit dostupný nástroj pro záchranu dat ze starých Amiga disket přímo ve Windows.
DrawBridge - připojení klasické disketové USB mechaniky k PC
DrawBridge se skládá ze dvou částí: speciální Arduino firmware (tzv. skica) nahraný v mikrořadiči a podpůrná aplikace pro Windows. Výsledkem je funkční USB zařízení, které dovoluje z počítače přistupovat k vložené disketě podobně jako k souboru či obrazu disku. Velkou výhodou je, že DrawBridge dokáže pracovat s disketami v reálném čase, takže není vždy nutné nejprve vytvářet obraz - například ve spojení s emulátorem WinUAE lze fyzickou disketu využít přímo jako virtuální jednotku Amigy.
Proč je vlastně obtížné číst disketu Amiga na PC?
Kompatibilita klasických Amiga disket s moderními počítači představuje dlouholetý problém. Diskety formátované pro počítače Amiga používají jiné nízko-úrovňové formáty záznamu než standardní PC disketové jednotky. Běžná PC mechanika (ať už interní s 34-pinovým rozhraním, nebo externí skrze USB) nedokáže přímo načíst ani zapsat typické Amiga diskety - v cestě stojí odlišná hustota záznamu i speciální formát stop a sektorů.
Dnes je přístup k USB disketovým mechanikám mnohem snažší a dají se pořídit ua několik stovek korun. Zatím...
Pro zachování starých dat či hraní klasických her na emulátoru je tak často nutné diskety převést do obrazových souborů (disk image) jako ADF (Amiga Disk File). Donedávna to vyžadovalo specializovaný hardware, například komerční systémy typu KryoFlux nebo otevřenou platformu Greaseweazle od Keira Frasera. Tyto pomůcky umožňují tzv. flux čtení - snímají magnetické přechody na stopě a rekonstruují data softwarově, čímž překonávají omezení PC řadičů. V posledních letech se ovšem objevil další zajímavý projekt jménem DrawBridge, který slibuje totéž s minimálními náklady a jednoduše.
Technické řešení: Arduino místo řadiče
Jak se DrawBridge liší od obyčejné USB disketové mechaniky? Běžná USB mechanika obsahuje vlastní elektroniku (řadič), která však umí jen standardní formáty PC (720 kB, 1.44 MB) a sama provádí nízkoúrovňové operace. Naproti tomu DrawBridge využívá hrubý přístup na úrovni magnetických pulsů (flux metodou). Arduino přebírá roli řadiče - přímo ovládá mechaniku (kroky hlavičky, zapínání motoru, čtení signálu z hlavy) a veškeré dekódování formátu disku se provádí softwarově v počítači. Díky tomu si poradí s libovolnou formou záznamu, nejen s PC DOS formátem, ale i s AmigaDOS (OFS/FFS), případně Atari ST či dalšími systémy.
-
Přední strana DrawBridge
Přední strana DrawBridge
-
Zadní strana DrawBridge
Zadní strana DrawBridge
-
Detail
Detail
https://www.probers.cz/435-drawbridge#sigProIdbf89f3a773
Arduino odesílá načtená data (případně naměřené intervaly pulzů) přes USB do PC, kde je zpracuje uživatelská aplikace. DrawBridge tedy umožňuje číst i zapisovat sektory na originální disketě a ukládat je do obrazového souboru (typicky ADF), nebo naopak z ADF zrekonstruovat fyzickou disketu. Novější verze softwaru dokonce podporují i tvorbu flux obrazů ve formátu SCP (SuperCard Pro), takže je možné archivovat disky bitově přesně. V praxi to znamená, že DrawBridge dosahuje podobné funkčnosti jako zmíněný Greaseweazle - „dělá totéž co GreaseWeazle, jen místo specializovaného MCU využívá Arduino“.
Výkonnost Arduina (typicky 16MHz ATmega328P) sice není vysoká, přesto se ukázalo, že na spolehlivé čtení standardních 3,5" DD/HD disket postačuje. Autor neustále projekt vylepšuje; aktuální software (verze DrawBridge 2.8.9 k roku 2025) přidává například lepší podporu PC a Atari ST disků a další funkce jako automatizované čištění stop či integraci s nástrojem DiskFlashback. DrawBridge existuje ve variantě „Plus“, což je drobná úprava zapojení pro přesnější časování čtení (užitečné u hůře zapsaných HD disket) - ta vyžaduje změnu dvou pinů Arduina a nasazení nového firmware. Pro běžné použití s disketami DD (880 kB Amiga) však postačí i základní verze zapojení.
Potřebný hardware a úprava disketové mechaniky
Z hardwarového hlediska není DrawBridge nic složitého - základem je kompatibilní disketová mechanika a Arduino (typicky model Nano, Pro Mini nebo Uno). Klasická 3,5" mechanika pro PC se připojuje 34-žilovým kabelem (IDC konektor), slimline mechaniky z notebooků mají 26-pinový plochý kabel. DrawBridge vyžaduje přímý přístup k rozhraní mechaniky, takže pokud chcete využít externí USB disketovou mechaniku, je nutné ji otevřít a odstranit původní USB převodník. Prakticky to znamená odpojit malou destičku s elektronikou uvnitř a ponechat jen vlastní mechaniku (s hlavičkou, motory a konektorem). Tu pak přímo napojíte na Arduino podle připraveného schématu. Autor projektu se zaměřil zejména na tzv. slimline USB mechaniky - tedy tenké externí floppy jednotky z notebooků - protože ty jsou kompaktní a běžně dostupné. Do jejich plastového pouzdra se Arduino dá šikovně integrovat, takže výsledkem je opět malá přenosná USB mechanika, jen „chytřejší“. Pro stolní 3,5" mechaniky zase existují jiné varianty, například samostatná krabička mezi mechanikou a PC (s krátkým kabelem a externím napájením 5V).
Arduino Nano se jeví jako ideální volba pro vestavbu - je malé a má rovnou USB rozhraní. Pro DrawBridge ho však čeká několik úprav: odstranění pinové lišty (kvůli místu), vypájení USB konektoru a propojky s diodou (aby se eliminoval úbytek napětí) a hlavně vyvedení signálu CTS z USB převodníku FT232R. Tento pin se připájí na analogový vstup A2 Arduina (nutno mikropájkou přímo na čip FTDI). Důvodem je, že firmware využívá signál CTS k přesnému časování během komunikace - bez této úpravy by Arduino nestíhalo plynule streamovat data z disketové hlavy. Po této drobné „operaci na srdci“ a několika dalších drobných modifikacích (odstranění regulátoru napětí, přidání pull-up rezistoru 1 kΩ na jeden signál) je Arduino připraveno. Poté se na něj napájí vodiče z konektoru mechaniky dle dokumentace. U 34-pin mechaniky stačí běžný IDC kabel (je třeba vyhnout se „přetočené“ části, používané kdysi pro druhou mechaniku B). U 26-pin slim mechaniky je zapojení trochu složitější - existují dvě varianty pinoutů, které se musí správně určit. Celkem se připojuje kolem 15 signálů: kromě napájení +5V a několika zemí jde o klasické řídicí linky disketové mechaniky (Motor On, Step, Direction, Track 0, Index, Write Gate, atd.) a datové linky (Read Data, Write Data). Důležitý je také pin Disk Change (disk change detect), který firmware využívá pro rozpoznání výměny diskety - ten je u WinUAE podpory nutné zapojit na Arduino (pin 34 mechaniky na pin 10 Arduina). K Arduinu se mechanika připojuje buď přímo drátky připájenými na kontakty, nebo přes vhodnou redukci/konektor (například u slim mechaniky lze použít FFC breakout board místo přímého pájení na flex kabel mechaniky).
Možnost zakoupení hotové PCB a snadná montáž
Pokud výše uvedené úpravy znějí příliš složitě, nezoufejte - autor projektu nabízí i hotové řešení. Lze si pořídit malou specializovanou PCB destičku s osazeným mikrořadičem, která je navržena tak, aby pasovala přímo do slimline mechaniky a zjednodušila kabeláž. Tato deska v podstatě zastává funkci Arduina Nano, ale vše potřebné je na ní již propojeno - stačí ji uvnitř mechaniky připojit na kontakty místo původní elektroniky (proces instalace zabere jen několik minut). Výhodou také je, že zásah je vratný - mechaniku lze později uvést zpět do původního stavu osazením původní USB desky. Oficiální prodej probíhá formou čekací listiny na webu RobSmithDev. Výroba je limitovaná, a kvůli enormnímu zájmu (a v EU i regulatorním překážkám) může získání trvat déle. Cena oficiální PCB DrawBridge (včetně osazeného čipu) je cca 25 liber + poštovné. Zájemce se zapíše do pořadníku a jakmile na něj dojde řada, obdrží e-mail s výzvou k nákupu (pozor, platnost odkazu je jen 48 hodin).
-
Srovnání elektroniky
Srovnání elektroniky
-
Srovnání elektroniky
Srovnání elektroniky
-
Srovnání elektroniky
Srovnání elektroniky
-
Srovnání elektroniky
Srovnání elektroniky
-
Detail elektroniky v PC mechanice
Detail elektroniky v PC mechanice
-
Detail elektroniky v DrawBridge mechanice
Detail elektroniky v DrawBridge mechanice
https://www.probers.cz/435-drawbridge#sigProIdad433d5c43
Kromě oficiální cesty existují i komunitní alternativy: protože je projekt open-source, několik nadšenců vytvořilo vlastní varianty desek. Například uživatel Jonni z fóra AmiBay navrhl PCB pro DrawBridge Plus s Arduinem Pro Mini a 3D tištěnou krabičku. Tyto neoficiální stavebnice se občas prodávají v hobby komunitě (cena kolem 30 - 40€ za sestavený modul bez mechaniky). Taková krabička pak funguje jako externí bridge - jedním kabelem se připojí k mechanice (IDC kabel do datového konektoru) a druhým k PC (USB), často vyžaduje i externí napájecí adaptér 5V. Výsledná funkce je však stejná.
Instalace firmware a ovladačů
Ať už si DrawBridge postavíte sami, nebo získáte hotový modul, čeká vás ještě nahrání firmware do mikrokontroléru a instalace příslušného softwaru v PC. Firmware je dostupný na stránkách projektu a na GitHubu. K nahrání se využije klasické Arduino IDE: stačí připojit Arduino k PC a zvolit správný typ desky (Nano, starý nebo nový bootloader). Autor doporučuje nejprve zkušebně nahrát jednoduchý Blink program pro ověření funkčnosti Arduina.
Poté se do Arduina nahraje samotná skica DrawBridge (součástí balíčku na webu nebo GitHubu) stejným způsobem. Po úspěšném naprogramování by se zařízení mělo v systému Windows detekovat jako virtuální sériový port (COM) - většinou není třeba speciální ovladač, Arduino Nano s FTDI čipem je standardně podporováno. V opačném případě je možné doinstalovat ovladač ručně (FTDI nebo CH340 dle použitého převodníku). Ve Správci zařízení Windows by se měl objevit nový COM port - jeho číslo si poznamenejte.
Windows aplikace DrawBridge v aktuální verzi 2.8.9a
Dále si z webu projektu stáhněte Windows aplikaci DrawBridge (aktuální verze viz sekce Download). Tato aplikace slouží k ovládání zařízení - umožňuje vytvořit obraz diskety (ADF) z vložené fyzické diskety, provést zápis ADF na disketu, a také zobrazit diagnostiku či nastavit některé parametry (např. režim Plus, rychlost, apod.). Užitečnou funkcí je Diagnostics - test správnosti zapojení. Po sestavení zařízení je vhodné vložit testovací disketu a spustit diagnostiku v aplikaci. Při diagnostice proběhne série testů (krokování hlavičky, čtení, zápis atd.), která odhalí případné problémy s kabeláží či funkčností signálů. Jakmile diagnostika projde, máte prakticky vyhráno - DrawBridge je připraven k použití.
DiskFlashback umí namountovat mechaniku přes DrawBridge do systému jako virtuální disketovou mechaniku
Autor též nabízí nástroj DiskFlashback, který umí namountovat mechaniku přes DrawBridge do systému jako virtuální disketovou mechaniku. To však zatím funguje hlavně pro PC formátované diskety; Windows standardně nerozumí souborovému systému Amigy, takže pro práci s Amiga disketou se DiskFlashback hodí spíše ve spojení s emulátorem nebo specializovaným software.
Využití reálné diskety v emulátoru WinUAE (plugin FloppyBridge)
Jednou z nejzajímavějších možností, které DrawBridge nabízí, je přímé použití fyzické diskety v emulátoru. Robert Smith dokonce upravil populární emulátor WinUAE, aby dokázal přistupovat k reálným mechanikám přes DrawBridge. Tato funkcionalita byla později integrována do samostatného zásuvného modulu (pluginu) nazvaného FloppyBridge, který lze do WinUAE jednoduše doinstalovat. FloppyBridge ve WinUAE umožňuje emulátoru pracovat s disketou přímo, v reálném čase, jako by šlo o standardní mechaniku Amigy - není tedy nutné předem vytvářet obraz disku. To je ideální pro hraní her z originálních disket, spouštění vlastních starých programů či záchranu dat přímo v emulovaném prostředí AmigaOS.
Instalace pluginu FloppyBridge
Pro zprovoznění je potřeba mít WinUAE (minimálně ve verzi 4.10.0 a vyšší) a funkční zařízení DrawBridge (nebo i alternativy jako Greaseweazle - plugin podporuje více zařízení). Postup instalace pluginu je následující:
Jako úplně první si musíme z oficiální stránky projektu stáhnout aktuální verzi ZIP archivu - v době psaní tohoto článku je dostupná verze 1.6 (floppybridge1.6.zip) ze srpna 2024. V archivu najdete soubory FloppyBridge.dll a FloppyBridge_x64.dll, které je třeba nakopírovat adresáře WinUAE, kde by již měl obsahovat adresář Plugins (typicky C:\WinUAE\Plugins).
Jako další se ujistěte se, že vaše zařízení je připojeno k PC a správně rozpoznáno - v systému musí být přiřazen COM port a zařízení by nemělo hlásit chybu.
Nastavení ve WinUAE
Po instalaci pluginu a spuštění WinUAE by se měly objevit nové možnosti konfigurace mechanik. Spusťte WinUAE a v sekci Hardware přejděte na Floppy Drives. U jednotky DF0: (či jiné, dle toho kam chcete mechaniku přiřadit) zvolte v rozbalovacím menu mechanik možnost Configure FloppyBridge.
Tím vyvoláte dialog FloppyBridge Profile Manager. Zde klepněte na Create pro vytvoření nového profilu mechaniky. V nastaveních profilu vyplňte:
- Profile Name: libovolný název profilu (např. DrawBridge DF0:).
- Driver: zvolte typ zařízení - v našem případě DrawBridge (další možnosti jsou Greaseweazle nebo SuperCard Pro).
- COM Port: zvolte číslo COM portu, na kterém běží vaše zařízení (pokud nevíte, zjistíte ve Správci zařízení Windows).
- Mode: ponechte Normal pro začátek. Plugin nabízí více režimů přístupu k disketě - Normal je nejrychlejší, More Compatible je pomalejší ale spolehlivější pro nestandardní diskety, Turbo se snaží číst co nejrychleji (hodí se jen pro Workbench, hry to často „rozbije“) a Stalling je nejbezpečnější, ale během čtení na chvíli zamrzá emulaci. Nechte tedy Normal a případně později upravte při potížích.
- Smart Speed: volba, která dynamicky přepíná mezi zvoleným režimem a turbem - doporučeno zaškrtnout, urychlí načítání tam, kde to nevadí.
- Auto-Cache: volba pro bufferování zbytku stopy do paměti, když mechanika delší dobu nepracuje. To může zrychlit opakované čtení téže stopy - vhodné ponechat zapnuté.
- Disk Type: nastavení typu diskety - nejlépe Auto Detect (plugin pak sám rozpozná, zda jste vložili DD nebo HD disketu). Lze i vynutit DD či HD ručně. Pokud byste chtěli používat HD diskety jako DD (tzv. přelepená dírka), přečtěte si upozornění na webu projektu - je třeba tomu přizpůsobit mechaniku.
- Cable Select: zde vyberte, jakou mechaniku na kabelu emulujeme. Například pokud máte mechaniku zapojenou jako Disk A: (u PC kabelu na pozici se zkroucenými vodiči) zvolte IBM PC Drive as A, pro slimline USB mechaniku většinou IBM PC Drive as A také. Tato volba souvisí s prohozením signálů Drive Select u standardních PC kabelů (tzv. twist) - jednoduše řečeno, aby odpovídalo to, kam je mechanika „nasměrována“.
FloppyBridge Profile Manager - slouží k jednoduché konfiguraci zařízení
Po vyplnění klikněte na OK a tím se profil uloží. Nyní by se v seznamu mechanik WinUAE měla objevit nová jednotka s názvem vašeho profilu (např. DF0: DrawBridge). Můžete pokračovat v konfiguraci emulace (zvolit model Amigy, ROM, atd.) a spustit emulátor. Pokud je v mechanice vložena disketa, emulátor ji rozpozná jako přítomnou a měl by z ní načíst bootblock i data jako skutečná Amiga. Tímto způsobem můžete spouštět hry přímo z originálních disket, pracovat s vlastním softwarem nebo třeba zkopírovat obsah diskety na virtuální HD v emulátoru.
FloppyBridge Profile Manager - vytvořena konfigurace pro DF0:
Praktické zkušenosti a tipy
Při používání reálných disket v emulátoru mějte na paměti několik věcí. Za prvé, stav médií: staré diskety mohou být zčásti degradované, takže některé sektory nemusí jít přečíst. V emulátoru se to projeví podobně jako na skutečné Amize - program může zatuhnout nebo házet chyby při načítání nebo zápisu. Uživatelé hlásí, že zatímco mnoho disket funguje bezvadně, některé staré diskety se v režimu přímého čtení chovají nespolehlivě. V takovém případě je lepší danou disketu nejprve převést do obrazu (ADF) pomocí aplikace DrawBridge a z něj pak spustit emulaci - obraz lze při tvorbě opakovaně přečíst a výsledný soubor už nebude trpět další degradací.
Oblíbená hra SWIV, která běží ze skutečné diskety v emulátoru WinUAE
Druhým faktorem je rychlost - přístup přes Arduino je trochu pomalejší než opravdová Amiga jednotka, a i když plugin nabízí režim Turbo, některé hry citlivé na časování mohou mít problém. Pokud hra neběží správně, zkuste v profilu přepnout Mode z Normal na More Compatible (případně vypnout SmartSpeed), což lépe simuluje původní rychlost otáčení disku.
Plugin FloppyBridge je aktivně vyvíjen - verze 1.6 integrovala řadu optimalizací pro rychlejší čtení / zápis a je kompatibilní i s balíkem Amiga Forever od firmy Cloanto. Zajímavostí je, že stejná funkcionalita byla implementována také do alternativního emulátoru Amiberry pro Raspberry Pi (FloppyBridge je tam vestavěný). Do budoucna se tedy počítá s co nejširší podporou reálných mechanik napříč emulátory.
Závěr
DrawBridge představuje cenově dostupné a poměrně jednoduché řešení, jak oživit staré disketové mechaniky a využít je s moderním PC. Umožňuje nejen zálohovat a obnovovat data z historických Amiga disket, ale díky pluginu FloppyBridge také přímo používat fyzické diskety v emulátoru WinUAE stejně jako skutečná Amiga. Na rozdíl od dřívějších metod nepotřebujete speciální řadič - vystačíte si s Arduinem a trochou kutilské práce, případně s hotovou destičkou, kterou vložíte do běžné USB mechaniky. DrawBridge tak pomáhá překlenout propast mezi vintage hardwarem a současnými počítači (odtud název „padací most“). Pro fanoušky Amigy a retro nadšence je to skvělá cesta, jak zachránit svá data z disket nebo si prostě připomenout kouzlo cvakání skutečné mechaniky - tentokrát ovšem přímo v oknech Windows a emulátoru. Díky komunitě a otevřenosti projektu navíc neustále vznikají vylepšení a nové možnosti, takže budoucnost tohoto „mostu“ vypadá nadějně. Bez nadsázky lze říct, že DrawBridge se stal dalším důležitým nástrojem pro uchování digitálního dědictví platformy Amiga.







