TPDD: Difference between revisions

From Tandy Tech
Jump to navigation Jump to search
No edit summary
 
(88 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.


The "RS-232" interface to the TPDD is actually 0v to -5v TTL, while rs232 serial ports use -12v to +12v. So the cable isn't just a cable, it has electronics to convert the signal levels.
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].


Pinout
Pinout
Line 52: 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)
 
In the beginning, there was the [ftp://salsa.net/pub/M100SIG/Lib-09-PERIFERALS/TPDD.DO Marty Goodman Document], and it was good.
<!-- http://www.club100.org/library/ups/tpdd.do -->
<!-- [http://www.digikey.com/short/jj2vb2 Parts to build one cable] -->
<!-- [http://www.digikey.com/short/jpv2r5 Parts to build one cable] -->
 
More recently, Rick Shear has taken a new and very careful look at a real cable, and the Marty Goodman doc, and has probably identified the "mystery" components that Marty Goodman talks about. It looks right, and this cable does indeed work.
:[https://rsmicro.wordpress.com/2018/08/26/tpdd-cable/ Rick's Initial post]
:[https://rsmicro.wordpress.com/2018/09/08/built-tpdd-cable-comparison-to-oem/ Rick's Follow-up]
 
To build a cable based on Rick's pcb, but using all standard parts that you can buy instead of having to find a FB100 cable and destroy it to get the special plug for the TPDD:
 
:[https://oshpark.com/shared_projects/vntX40yC Rick's PCB]
:[https://www.digikey.com/short/pmb339 Components]
 
* The numbers 1-7 on the PCB correspond to the numbers on the TPDD connector in the diagram above. Pin 8 on the TPDD is not used.
* You need a special crimp tool to crimp 28awg dupont style pins. Example: [https://www.google.com/search?q=sn-28b SN-28B Crimp Tool].
* Additional materials:
:: 3/16" heat shrink tubing
:: 1/2" heat shrink tubing (double wall, 3:1 ratio)
* The pins on the db25 connector above will be too long for the solder pads on the pcb. You will need to cut them appoximately in half. Rick used a connector with solder cups instead of through-hole pins, because the solder cup style is what typically comes with typical back shells. But a standard 1.6mm thick pcb doesn't actually fit in betwen the rows of solder cups.
* The back shell is special. Most back shells don't fit in the opening in a Model 100. The back shell in the digikey cart above does.
 
<gallery>
RS-TPDD-1.jpg
RS-TPDD-2.jpg
RS-TPDD-3.jpg
RS-TPDD-4.jpg
RS-TPDD-5.jpg
RS-TPDD-6.jpg
RS-TPDD-7.jpg
RS-TPDD-8.jpg
RS-TPDD-9.jpg
RS-TPDD-10.jpg
RS-TPDD-11.jpg
RS-TPDD-12.jpg
RS-TPDD-13.jpg
RS-TPDD-14.jpg
</gallery>
 
===Cable BKW 1===
Same as above, but the pcb is smaller to allow more room inside the back shell for strain-relief, and the db25 solder pads are longer to fit the pins without cutting.
 
*[https://oshpark.com/shared_projects/xKfsPP5o Circuit Board]
 
Same components, materials, tools as above
 
<gallery>
tpdd-bkw-1.1.png
tpdd-bkw-1.2.png
tpdd-bkw-1.3.png
</gallery>


===Cable BKW 4===
[[File:TPDD2 original cable.jpg|thumb|none]]
New design with the transistors on the TPDD end instead of the DB25 end. This way you do not need to crimp Dupont style pins. You just assemble the pcb, cut the 9-pin plug off of a cheap pre-made 9/25 modem cable, and solder the cable with factory molded 25 pin plug to the pcb, and finally secure with some hot-glue, zip-tie, & heat-shrink.
 
:PCB: https://oshpark.com/shared_projects/dyMZxoye
:BOM: https://www.digikey.com/short/pbc3pp


<!--  save until duplicated somewhere
:Assembly:
:Assembly:
:*Solder all components to pcb per the render pics.
:*Solder all components to pcb per the render pics.
:*Cut the db9 plug off the serial cable. Strip the outer sheath back 1 to 2 inches. Strip each wire 1/8".
:*Pull the two un-soldered pins from the top of the socket and discard.
:*Put 2 to 3 inches of 1/2" diameter heat shrink on the serial cable. (don't shrink yet)
:*Cut the 9-pin plug off the serial cable. Strip the outer sheath back 1 to 2 inches. Strip each wire 1/8".
:*Use a dmm continuity tester to identify which wires go to which pins on the db25. Find pin 2 on the db25, find which wire goes to pin 2, solder that wire to the hole labeled 2 on the pcb. Repeat for all the numbered holes. Cut any left-over wires short at the cable sheath.
:*Put 2 to 3 inches of 1/2" diameter heat shrink on the serial cable. (don't shrink yet)
:*Secure the end of the cable to the pcb with a zip-tie. Even better, put some glue on the pcb before pressing the cable in place
:*Identify which color wires go to which pins on the DB25 plug.
:*Add some hot-glue around the soldered wires where they meet the pcb.
::Find pin 2 on the db25
:*Pull the two un-soldered pins from the back of the female 2x3 pin socket. Or cut them off with flush cutters.
::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.
:*Slide the heat-shrink up over the pcb and shrink.
<gallery>
<gallery mode="packed-hover">
TPDD_BKW_4_1.png
TPDD_Cable_1.jpg
TPDD_BKW_4_2.png
TPDD_Cable_2.jpg
TPDD_BKW_4_3.png
TPDD_BKW_4_3.png
TPDD_BKW_4_4.png
TPDD_BKW_4_4.png
Line 143: Line 113:
TPDD_BKW_4_20.jpg
TPDD_BKW_4_20.jpg
</gallery>
</gallery>
[[TPDD:Other_Cable_Designs]]
-->


=Software=
=Software=
==For PCs==
Software related to these drives can be broken into 2 main categories, [[TPDD_client|clients]] and [[TPDD_server|servers]].
TPDD used double density 3.5" disks, 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. Even using special software to read non-standard formats, you can't make a normal drive & drive controller read or write FM.
 
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.
 
A [[TPDD_server|TPDD server]] (aka emulator) is software that pretends to BE a TPDD drive. This includes LaddieAlpha, dl2, and others.
 
=Misc Related Info=
 
Low-profile DIP switch that fits under the cover on the bottom, which can be installed on Brother FB-100, KnitKing FDD19, or Purple Computing D103 to give access to all possible drive operation modes like TPDD1.<br>
https://www.digikey.com/en/products/detail/cui-devices/DS04-254-2L-04BK/11310925


To read or write a TPDD disk from a modern machine, you need a working TPDD drive and the special RS232-to-TTL level-shifting 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.
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 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 flexible installation/usage. There are also various special purpose utility programs aside from dos's.
[[File:720vs144.jpg|left|thumb]]


===Floppy/Floppy2===
<!--
===Teeny===
https://www.ordersomewherechaos.com/rosso/fetish/m102/web100/docs/pdd2-sector-0.html
===TS-DOS===
https://www.ordersomewherechaos.com/rosso/fetish/m102/web100/docs/pdd-sector-access.html
===POWR-DOS===
-->

Latest revision as of 16:52, 6 August 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

Low-profile DIP switch that fits under the cover on the bottom, which can be installed on Brother FB-100, KnitKing FDD19, or Purple Computing D103 to give access to all possible drive operation modes like TPDD1.
https://www.digikey.com/en/products/detail/cui-devices/DS04-254-2L-04BK/11310925

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.