Drivewire Adapter for Dragon - DIY

A place to discuss everything Dragon related that doesn't fall into the other categories.
KenH
Posts: 182
Joined: Fri Oct 12, 2012 9:50 am

Drivewire Adapter for Dragon - DIY

Post by KenH »

Drivewire is an award winning open source connectivity solution for the Tandy Color Computer/Dragon.

This post includes instruction to build your own adapter cable for the Dragon 32/64.
You can also buy tormod's ready made Drivewire adapter.

DriveWire with the Dragon Drivewire Adapter and HDB-DOS for Dragon provide:
  • Virutal Disk drives up to 4GB in size
    Access to remote filesystems (HTTP/FTP/WebDAV/SSH/CIFS/etc)
    TCP/IP networking
    Virtual/telnet modem emulation
    Printing via an emulated Epson FX80 dot matrix printer
    A real time clock
    MIDI using a built in flexible synthesizer or external devices
Thanks to the excellent work of Phill Harvey-Smith, Aaron Wolfe , Darren A the dual Dragon/CoCo roms by zephyr & Steve Woolham and HDB-DOS ported for the Dragon by tormod- Drivewire is now finally available to Dragon 32/64 users as well .


Requirements:

Dragon 32/64 with
1) Parallel to bit-banger adapter (see instructions below)
2) HDB-DOS for Dragon. Can be burned on EPROM to your dos controller or CLOADed from tape
A floppy disk controller is not required

PC/Mac/Linux with
1) Serial port (or USB to serial adapter)
2) Drivewire server 4.3.0 or higher https://sites.google.com/site/drivewire ... edirects=0

Instructions

Dragon Drivewire Adapter
The Dragon 64's serial port is not compatible with Drivewire. You will need to build a Dragon parallel -> bit-banger adapter.
Darren A created this nice schematic to show you how-
Image

You will also need an inverter to invert the signal going out from the Dragon to the PC.
The Dragon's BUSY (pin 20) and ACK (pin 19) inputs are connected to the same PIA pins as the CoCo's RxD and CD inputs respectively.
The STROBE output on the Dragon (pin 1) is connected to the same PIA pin as the CoCo's TxD output, but is also inverted.

Connections for a 74LS04 inverter:
GND (dragon pin 18) to 74LS04 pin 7.
+5V (dragon pin 4) to 74LS04 pin 14.
Data in (Dragon pin 1 ) to 74LS04 pin 1.
74LS04 pin 2 to level shifter RXD

There are plenty of sources for Max232 level shifters for under $5. Just search ebay for MAX232.
A 20pin IDC Flat Ribbon Cable for jtag will fit the Dragon's parallel port connector.


Connect your Dragon to the PC using the parallel to bitbanger adapter and a serial cable.

On your PC:
Install Drivewire 4.3
Run the config wizard and select CoCo2 / 56K


On your Dragon (August 2013 Update):
Thanks to tormod & retrocanada76 Drivewire can now be used with the Dragon's native roms.
No need to replace the Dragon's roms or switch to CoCo mode.

Run HDB-DOS for Dragon on the Dragon using a cassette quick-loader , or even better burn the HDB-DOS rom on EPROM and install it in your DOS controller (or any other cartridge).

For general help on Drivewire / HDB-DOS see:
Drivewire user manual
Drivewire for dummies

Remember, this is still in beta. Please share your experience!
Last edited by KenH on Mon Aug 26, 2013 3:09 pm, edited 8 times in total.
KenH
Posts: 182
Joined: Fri Oct 12, 2012 9:50 am

Re: Drivewire for Dragon (beta)

Post by KenH »

As Darren pointed out, having the server invert the incoming data bits is not enough.
That approach doesn't take the start and stop bits (or idle state) into consideration.
I've updated the post above to include a hardware inverter, based on Phill's original design.
Ken
KenH
Posts: 182
Joined: Fri Oct 12, 2012 9:50 am

Re: Drivewire for Dragon (beta)

Post by KenH »

Here's a photo of my prototype Dragon Drivewire connection adapter.
Not very elegant, but works very nicely.
My goal is to eventually have it fitted inside the Dragon case.

Takes only 13 seconds to fully boot NitrOS9 under Drivewire :D

Image
KenH
Posts: 182
Joined: Fri Oct 12, 2012 9:50 am

Re: Drivewire for Dragon (beta)

Post by KenH »

Here is the NitrOS9 Level 1 Dragon DriveWire Boot image, for booting OS9 directly using Drivewire without any disk controller.
This is based on the CoCo2 NitrOS9 3.2.09 boot disk, with the Dragon's vtio.dr keyboard driver.
Attachments
nos96809l1v030209Dragon_dw3.dsk.zip
NitrOS9 Level 1 - Dragon DriveWire
(164.54 KiB) Downloaded 506 times
KenH
Posts: 182
Joined: Fri Oct 12, 2012 9:50 am

Re: Drivewire for Dragon (beta)

Post by KenH »

After confirming that the prototype adapter works, I've built a second version, more compactly designed. The 74LS04 inverter is soldered into a small board which is stacked on top of the MAX232.
Here is the photo of the adapter
Image
And finally in a small box
Image
jedie
Posts: 655
Joined: Wed Aug 14, 2013 12:23 pm
Location: germany
Contact:

Re: Drivewire for Dragon (beta)

Post by jedie »

Found the origin mailinglist entry here:
http://five.pairlist.net/pipermail/coco ... 59542.html
KenH wrote:On your Dragon: Switch your Dragon to CoCo mode (EXEC 48000 with zephyr's roms installed) not required as of August 2013
So it's needed to change the EPROM on the dragon board?

So the dragon works as a CoCo?
... too many ideas and too little time ... Related stuff written in Python:
Dragon 32 emulator / PyDC - Python Dragon 32 converter: https://github.com/jedie/DragonPy
DWLOAD server / Dragon-Lib and other stuff: https://github.com/6809
KenH
Posts: 182
Joined: Fri Oct 12, 2012 9:50 am

Re: Drivewire for Dragon (beta)

Post by KenH »

jedie wrote: So it's needed to change the EPROM on the dragon board?

So the dragon works as a CoCo?
Not anymore!
This was previously needed because HDB-DOS wasn't compatible with the Dragon roms.

Now that tormod has ported HDB-DOS to the Dragon 32 / 64, you can use Drivewire with the Dragon's original roms. See this thread: viewtopic.php?f=5&t=4224
Just load HDB-DOS for dragon from tape using tormod's quick loader.
The quick loader is a WAV tape file that loads in just a couple of seconds. On EXEC it loads and boots the 8K long HDBDOS via DriveWire in just 4 seconds!
jedie
Posts: 655
Joined: Wed Aug 14, 2013 12:23 pm
Location: germany
Contact:

Re: Drivewire for Dragon (beta)

Post by jedie »

Seems to me, that it will be a good idea to put the latest information from all thread into one wiki page ;)
... too many ideas and too little time ... Related stuff written in Python:
Dragon 32 emulator / PyDC - Python Dragon 32 converter: https://github.com/jedie/DragonPy
DWLOAD server / Dragon-Lib and other stuff: https://github.com/6809
jedie
Posts: 655
Joined: Wed Aug 14, 2013 12:23 pm
Location: germany
Contact:

Re: Drivewire for Dragon (beta)

Post by jedie »

I found here a "USB to TTL" ... On the small PCB is a SILABS CP2102 chip.

Looks like this: http://www.amazon.de/Big-Bargain-Conver ... TTL+CP2102

It has this pins:
3,3V
RST
TXD
RXD
GND
+5V

Can i use it for this?
... too many ideas and too little time ... Related stuff written in Python:
Dragon 32 emulator / PyDC - Python Dragon 32 converter: https://github.com/jedie/DragonPy
DWLOAD server / Dragon-Lib and other stuff: https://github.com/6809
User avatar
tormod
Posts: 416
Joined: Sat Apr 27, 2013 12:06 pm
Location: Switzerland
Contact:

Re: Drivewire for Dragon (beta)

Post by tormod »

jedie wrote:I found here a "USB to TTL" ... Can i use it for this?
Yes, it should work fine, but note that you still need the inverting circuitry on the output from the Dragon. <shameless>I use similar UARTs in my adapters.</plug>
Post Reply