TPDD: Difference between revisions

From Tandy Tech
Jump to navigation Jump to search
 
(137 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Overview=
=Tandy Portable Disk Drive=
There were two versions of the Tandy Portable Disk Drive. Both were very similar. The drive is a a re-branded Brother FB-100.
There were two versions of the original Tandy Portable Disk Drive, "26-3808 Tandy Portable Disk Drive" or now called "TPDD1", and "26-3814 Tandy Portable Disk Drive 2" or "TPDD2". Both were very similar.
 
The original TPDD1 is a re-branded Brother FB100. In fact the Brother FB100 was sold under several names. At least:
:Brother FB100
:TANDY Portable Disk Drive
:knitking FDD19
:Purple Computing D103
 
The TPDD2 was also sold under multiple names. At least:
:TANDY Portable Disk Drive 2
:XOB Disc-88


==Common features of both versions==
==Common features of both versions==
Line 9: Line 19:
:Drive is single-sided. The disks may be single or double-sided, but the drive only uses one side.
:Drive is single-sided. The disks may be single or double-sided, but the drive only uses one side.


=Documentation=
==Tandy Portable Disk Drive==
==Tandy Portable Disk Drive==
100K
100K


:[http://www.club100.org/library/sup/07.txt TPDD bootstrap procedure]
:[https://archive.org/details/TandyPortableDiskDriveOperationManual26-3808 Operation Manual]
:[https://archive.org/details/TandyPortableDiskDriveOperationManual26-3808 TPDD Operation Manual]
:[https://archive.org/details/tandy-service-manual-26-3808-s-software-manual-for-portable-disk-drive Software Manual]
:[https://archive.org/details/Portable_Disk_Drive_Command_Reference_19xx_Tandy Command Reference]
:[https://archive.org/details/tandy-portable-disk-drive-service-manual-26-3808 Service Manual]
:[https://archive.org/details/TandyPortableDiskDriveSoftwareManual26-3808s Software Manual]
:[http://www.club100.org/library/sup/07.txt TPDD1 bootstrap procedure]
<!-- :[http://bitchin100.com/wiki/index.php?title=Base_Protocol Command Reference] -->
 
:[[File:TPDD1_ROM.zip]] - dump of the 4k rom built into the HD63A01V1 cpu
:ROM is also identical in Brother FB-100, KnitKing FDD19, and Purple Computing D103


==Tandy Portable Disk Drive 2==
==Tandy Portable Disk Drive 2==
200K in the form of 2 100K banks (still only uses one side of the disk)
200K, in the form of 2 100K banks
 
:[https://archive.org/details/Portable_Disk_Drive_2_Operation_Manual_1986_Tandy TPDD2 Operation Manual]
:[https://archive.org/details/tpdd-2-service-manual TPDD2 Service Manual]
:[http://www.club100.org/library/sup/08.txt TPDD2 bootstrap procedure]
<!-- :[http://bitchin100.com/wiki/index.php?title=TPDD-2_Sector_Access_Protocol TPDD2 Sector Access] -->


:[http://www.club100.org/library/sup/08.txt TPDD-2 bootstrap procedure]
:[[File:TPDD2_ROM.zip]] - dump of the 4k rom built into the HD63A01V1 cpu
:[https://archive.org/details/Portable_Disk_Drive_2_Operation_Manual_1986_Tandy TPDD-2 Operation Manual]


=Parts=
=Parts=
Line 30: Line 49:


===Cable===
===Cable===
The "RS-232C" interface to the TPDD is actually 5v TTL (0v to +5v), while RS-232 serial ports use -12v to +12v. So the cable isn't just a cable, it has electronics inside the DB25 plug to convert the signal levels between TTL and RS-232.


[ftp://salsa.net/pub/M100SIG/Lib-09-PERIFERALS/TPDD.DO M100SIG/Lib-09-PERIFERALS/TPDD.DO]
You can't buy the original special cable any more, but you can [https://github.com/bkw777/TPDD_Cable build one], or buy one from [https://www.arcadeshopper.com/wp/?page_id=11#!/Special-serial-cable-for-Tandy-Portable-Disk-Drive-and-Tandy-Portable-Disk-Drive-2/p/144969001/category=28313042 ArcadeShopper] (picture is outdated, the cables are the same as the one on github), or [https://www.soigeneris.com/tpdd2_cable SoiGeneris].
 
<!-- [http://www.digikey.com/short/jj2vb2 Parts to build one cable] -->
[http://www.digikey.com/short/jpv2r5 Parts to build one cable]
 
You will also need a pin crimper that fits AWG28 wires/pins like a good old [https://www.google.com/search?q=radio+shack+276-1595 Radio Shack 276-1595], or generic [https://www.google.com/search?q=sn-28b "SN-28B"] sold by several different manufacurers, just pick any. They can be less than $15 on [https://www.ebay.com/sch/?_nkw=sn-28b ebay]


Pinouts
Pinout
  +------------------------------------------------+
  +------------------------------------------------+
  |                                                |
  |                                                |
Line 57: Line 72:
:6 TXD
:6 TXD
:7 RXD
:7 RXD
:8 NC
:8 EB+ (External Battery +4.8 to +6v) (Only on TPDD2, n/c on TPDD1)


For the TPDD end of the cabel, the pin numbers used by Marty Goodman conform to the numbering on a standard IDC connector, female, 2x4, with polarity bump. (That kind of connector doesn't actually fit in the TPDD/TPDD-2, but the pinout is the same). Looking at the back of the TPDD: top-right pin is 1, bottom-right is 2, top-left is 7, bottom-left is 8. Note that most generic "Dupont" connetcor housings put the pin-1 marker in a different corner than IDC plugs do (on what we're calling pin 7). So, if you use a regular non-polarized "Dupont" connector housing, You'll have to ignore it's [https://a.pololu-files.com/picture/0J1728.469.png?98b5ce720a45b8487c1da11e470b6ceb pin-1 marker]. That's the great thing about standards, you have so many of them to choose from. ;) The connector housing in the DigiKey order above has a pin-1 marker in the correct place, or might have no mark at all (see [http://www.te.com/commerce/DocumentDelivery/DDEController?Action=srchrtrv&DocNm=104483&DocType=Customer+Drawing&DocLang=English drawing]).
[[File:TPDD2 original cable.jpg|thumb|none]]


For the computer end, any rs232 reference shows the pinout, if you only look at the signal names and pin numbers, but ignore the physical location in most diagrams. Most diagrams will show the arrangement when the computer has a male plug, while the M100 has a female. But the pin numbers are correct, and you can read the pin numbers right on the db25 connector and ignore any drawings to find where pin #N actually is on the plug.)
<!--  save until duplicated somewhere
:Assembly:
:*Solder all components to pcb per the render pics.
:*Pull the two un-soldered pins from the top of the socket and discard.
:*Cut the 9-pin plug off the serial cable. Strip the outer sheath back 1 to 2 inches. Strip each wire 1/8".
:*Put 2 to 3 inches of 1/2" diameter heat shrink on the serial cable. (don't shrink yet)
:*Identify which color wires go to which pins on the DB25 plug.
::Find pin 2 on the db25
::Find which color wire goes to pin 2 using a DMM continuity tester
::Repeat for all the numbered holes on the PCB: 2,3,4,5,6,7,20
::Cut any left-over wires short right at the cable sheath.
:*Solder the wires to their matching numbered holes, with the wires on the top side (without the transistors).
:*Put some hot-glue on the top side of the pcb in the "dog bone", press the end of the cable into the glue, and secure to the pcb with a zip-tie.
:*Add some hot-glue around the soldered wires where they meet the pcb to immobilize them.
:*Slide the heat-shrink up over the pcb and shrink.
<gallery  mode="packed-hover">
TPDD_Cable_1.jpg
TPDD_Cable_2.jpg
TPDD_BKW_4_3.png
TPDD_BKW_4_4.png
TPDD_BKW_4_5.jpg
TPDD_BKW_4_6.jpg
TPDD_BKW_4_7.jpg
TPDD_BKW_4_8.jpg
TPDD_BKW_4_9.jpg
TPDD_BKW_4_10.jpg
TPDD_BKW_4_11.jpg
TPDD_BKW_4_12.jpg
TPDD_BKW_4_13.jpg
TPDD_BKW_4_14.jpg
TPDD_BKW_4_15.jpg
TPDD_BKW_4_16.jpg
TPDD_BKW_4_17.jpg
TPDD_BKW_4_18.jpg
TPDD_BKW_4_19.jpg
TPDD_BKW_4_20.jpg
</gallery>


===Another Option for a cable===
[[TPDD:Other_Cable_Designs]]
Rick Shear has taken a new and very careful look at a real cable and the Marty Goodman doc, and has probably identified the components that Marty Goodman didn't. This is probably the most electrically accurate cable.
-->


https://rsmicro.wordpress.com/2018/08/26/tpdd-cable/
=Software=
 
Software related to these drives can be broken into 2 main categories, [[TPDD_client|clients]] and [[TPDD_server|servers]].
https://rsmicro.wordpress.com/2018/09/08/built-tpdd-cable-comparison-to-oem/
 
https://oshpark.com/shared_projects/vntX40yC
 
http://www.digikey.com/short/j20td4
 
UPDATE: I have now built a set of 3 of these cables, and they work great.
:[https://photos.app.goo.gl/MN3VEmhEbqehxEzh8 Pictures]
:A couple of further details and errata...
 
* The db25 hood in the digikey order above is not a great choice. They don't fit in a Model 100. Remove that part from the digikey order and instead do one of the following:
:: Mouser has a hood that would fit. Though I don't know if this PCB fits inside that hood.
:: https://www.mouser.com/ProductDetail/HARTING/09670250411?qs=sGAEpiMZZMu5A18b%252BIx2GqJxiHQ0oido1QO%2FNnySBX8=
: or
:: Modify a common hood to fit:
:: Remove the front lips that hold the metal connector in the plastic shells. Score the inside with a knife and will break off clean and flush with the rest of the face of the shell. Now the plug will fit in a Model 100, but nothing is holding the connector to the shell.
:: Remove the 2 strain relief/retaining screws from the sides of the connector, but keep the bent rectangular washers.
:: Install 4-40 x 3/4" screws and nuts in the screw holes, with the heads of the screws on the connector face, and the nuts and rectanglar washers on the back where the original screw heads were. Now the connector is bolted to the shell, and the screws and nuts are doing the job that the plastic lips used to do.
 
* It is quite a pain in the neck crimping the tiny individual dupont connector pins.
 
A better idea would be to just solder a 2x4 female header to the edge of a tiny pcb with the 3 components on it, and solder a plain serial cable to that, with one end cut off and soldered to the pcb and the other end with a factory molded db25 plug. That would eliminate the need to crimp dupont pins (and buy the special pin crimper tool), and elimitate the problem of the db25 hood fitting in the small opening in a Model 100.
 
* This heat shrink kit, NTE HS-ASST-13, was *great* for this. It says double wall, but actually seems like the inner wall is more like hot-glue. The inner wall is almost clear and flows to fill in irregular shapes on the interior, and grabs on to the wire and the dupont connector very securely. One of the included sizes is good for the wire on the db25 end. Another of the included sizes is big enough to go around the outside of the dupont connector, and the 3:1 shrink ratio means it shrinks down far enough to grab the much smaller serial cable. That is remarkable. The inner glue-like stuff glues itself to the dupont connector well, which provides much needed strain-relief for the delicate idividual wires. The heat shrink is very thick and forms a solid hard object that is safe to grab like a factory molded plug, and holds the dupont connector and the end of the serial cable rigid so the small wires don't flex at the dupont connector. The polarity bump on this dupont connector, plus the thick heat shrink around the outside, makes the combined finished plug just big enough so that the polarity bump actually works, and prevents you from plugging the cable in the wrong way.


* The numbers 1 to 8 on the silk-screen on the pcb DO correspond to the numbers on the TPDD connector in the diagram above and the Marty Goodman doc. So that is how you can tell which pin on the pcb is supposed to go to which position on the dupont connector. Just match up the numbers from the pcb silkscreen with the positions in the diagram above. One of the pictures in the google photos album above also shows both connectors next to each other with all wires connected and all colors and all positions visible side by side in the same picture, so you can also use that picture to just look at the colors of the wires on both sies.
A [[TPDD_client|TPDD client]] (aka dos) is software that uses a TPDD drive. This includes TS-DOS, and the program called "Floppy" which came on the special disk that came with the TANDY versions of the drives.


=Software=
A [[TPDD_server|TPDD server]] (aka emulator) is software that pretends to BE a TPDD drive. This includes LaddieAlpha, dl2, and others.
==For PCs==
TPDD used a double density 3.5" floppy, aka "720K" disk, but used a format that is incompatible with modern pc drive controllers. Normal MS-DOS formatted disks are written with MFM encoding, while the TPDD used FM encoding. Event using special software to read non-standard formats, you can't make a normal drive & drive controller read or write FM.


To read or write a TPDD disk from a modern machine, you need a working TPDD drive and the special RS232-to-TTL serial cable that came with it, and a "TPDD Client" software to talk to the drive over the serial connection the same way the M100 does.
=Misc Related Info=
TS-DOS implements an extension to the TPDD protocol to provide subdirectories.<br>
A real TPDD or TPDD2 doesn't support this, but some TPDD emulators do (NADSBOX, LaddieAlpha, dl2, PDDuino, at least)
:[http://bitchin100.com/wiki/index.php?title=Desklink/TS-DOS_Directory_Access TS-DOS Directories]


There are several TPDD clients for more modern machines. Most of these are themselves also now no longer modern. For example Lap-Desk and PDD are both 16-bit DOS programs that don't work on Windows.
TPDD uses standard 720k DD 3.5" disks, but uses a format that is incompatible with modern pc drive controllers.<br>
Normal MS-DOS formatted disks are written with MFM encoding, while the TPDD uses FM encoding.<br>
Even using special software to read non-standard track/sector formats, you can't make a normal drive & drive controller read or write FM. An old pc with an early floppy controller chip and an old 720k drive may be able to do it.


[http://trs80stuff.net/tpdd/tools.html TpddTool] Python TPDD Client
To read or write a TPDD disk from a modern machine, you need a working TPDD drive, the special RS232-to-TTL level-shifting serial cable, a 9F-to-25F straight through (not null-modem) serial adapter or combination of cables & adapters, and TPDD client software to talk to the drive over the serial connection the same way the M100 does. See pdd.sh, PDD.EXE, or TpddTool.py from the TPDD clients link above.


==For M100/102/200==
Don't use 1.44M HD disks in a TPDD. Use 720K DD disks.<br>
The normal way to use a TPDD is to install a "dos" on an M100. Several such dos's have been made. The drive came with a utility disk and a functional dos called "floppy". Others have been made by 3rd parties that provided more features or smaller ram footprint or more fleible installation/usage. There are also various special purpose utility programs aside from dos's.
[[File:720vs144.jpg|left|thumb]]


Floppy/Floppy2<br>
<!--
teeny<br>
https://www.ordersomewherechaos.com/rosso/fetish/m102/web100/docs/pdd2-sector-0.html
ts-dos<br>
https://www.ordersomewherechaos.com/rosso/fetish/m102/web100/docs/pdd-sector-access.html
-->

Latest revision as of 11:05, 25 January 2024

Tandy Portable Disk Drive

There were two versions of the original Tandy Portable Disk Drive, "26-3808 Tandy Portable Disk Drive" or now called "TPDD1", and "26-3814 Tandy Portable Disk Drive 2" or "TPDD2". Both were very similar.

The original TPDD1 is a re-branded Brother FB100. In fact the Brother FB100 was sold under several names. At least:

Brother FB100
TANDY Portable Disk Drive
knitking FDD19
Purple Computing D103

The TPDD2 was also sold under multiple names. At least:

TANDY Portable Disk Drive 2
XOB Disc-88

Common features of both versions

Size, shape, weight
Batteris: 4 x AA
Wall power: 5.5mm x 2.1mm, 6vdc, center negative, 400ma (Tandy 26-3804)
Media: 3.5" DD, aka "720K" diskettes (not HD 1.44M)
Drive is single-sided. The disks may be single or double-sided, but the drive only uses one side.

Documentation

Tandy Portable Disk Drive

100K

Operation Manual
Software Manual
Service Manual
TPDD1 bootstrap procedure
File:TPDD1 ROM.zip - dump of the 4k rom built into the HD63A01V1 cpu
ROM is also identical in Brother FB-100, KnitKing FDD19, and Purple Computing D103

Tandy Portable Disk Drive 2

200K, in the form of 2 100K banks

TPDD2 Operation Manual
TPDD2 Service Manual
TPDD2 bootstrap procedure
File:TPDD2 ROM.zip - dump of the 4k rom built into the HD63A01V1 cpu

Parts

Belt

Standard size code: FRW-8.5

Search "FRW 8.5 belt" on Google or ebay

Cable

The "RS-232C" interface to the TPDD is actually 5v TTL (0v to +5v), while RS-232 serial ports use -12v to +12v. So the cable isn't just a cable, it has electronics inside the DB25 plug to convert the signal levels between TTL and RS-232.

You can't buy the original special cable any more, but you can build one, or buy one from ArcadeShopper (picture is outdated, the cables are the same as the one on github), or SoiGeneris.

Pinout

+------------------------------------------------+
|                                                |
|                                                |
|                 RS-232C                        |
|                   ___                          |
|               +--+   +--+              +-----+ |     
|               | 7 5 3 1 |              | (o) | |
|               | 8 6 4 2 |              |     | |
|               +---------+              +-----+ |
+------------------------------------------------+
1 GND
2 CTS
3 DTR
4 RTS
5 DSR
6 TXD
7 RXD
8 EB+ (External Battery +4.8 to +6v) (Only on TPDD2, n/c on TPDD1)


Software

Software related to these drives can be broken into 2 main categories, clients and servers.

A TPDD client (aka dos) is software that uses a TPDD drive. This includes TS-DOS, and the program called "Floppy" which came on the special disk that came with the TANDY versions of the drives.

A TPDD server (aka emulator) is software that pretends to BE a TPDD drive. This includes LaddieAlpha, dl2, and others.

Misc Related Info

TS-DOS implements an extension to the TPDD protocol to provide subdirectories.
A real TPDD or TPDD2 doesn't support this, but some TPDD emulators do (NADSBOX, LaddieAlpha, dl2, PDDuino, at least)

TS-DOS Directories

TPDD uses standard 720k DD 3.5" disks, but uses a format that is incompatible with modern pc drive controllers.
Normal MS-DOS formatted disks are written with MFM encoding, while the TPDD uses FM encoding.
Even using special software to read non-standard track/sector formats, you can't make a normal drive & drive controller read or write FM. An old pc with an early floppy controller chip and an old 720k drive may be able to do it.

To read or write a TPDD disk from a modern machine, you need a working TPDD drive, the special RS232-to-TTL level-shifting serial cable, a 9F-to-25F straight through (not null-modem) serial adapter or combination of cables & adapters, and TPDD client software to talk to the drive over the serial connection the same way the M100 does. See pdd.sh, PDD.EXE, or TpddTool.py from the TPDD clients link above.

Don't use 1.44M HD disks in a TPDD. Use 720K DD disks.