XTIDE project

(Difference between revisions)
Return to current revision
    The [b]XT-IDE[/b] project is a [url="http://www.vintage-computer.com/vcforum/forum.php"]Vintage Computer forum[/url] driven project to develop and manufacturer an [b]8-bit ISA IDE[/b] controller. It allows any PC/XT class machine to use modern IDE hard drives or Compact Flash devices for long term storage.
    [wiki="File:Xtide_demo.jpg? "]thumb|right|XTIDE controller on an IBM XT, running DOS 6.22 resulting in 8.4GB of total storage across multiple 2GB partitions; the maximum allowed with this OS.[/wiki]
    <blockquote style="background-color: lightgreen; border: solid thin green;">
    The project is entirely open source, from the design, schematic, layout, bill of materials, BIOS, drivers and any utilities created.
    This project was inspired by Scott A. Christensen's [url="http://www.mylinuxisp.com/~jdbaker/oldsite/documents/xtide.txt"]XTIDE linux project[/url] ([url=http://web.archive.org/web/20090207220713/http://www.mylinuxisp.com/~jdbaker/oldsite/documents/xtide.txt]archive.org link[/url]). Many thanks to Scott for his original design.
    This page will provide links to all the resources utilized in the project.
    [list][*][url="http://www.vintage-computer.com/vcforum/showthread.php?19591"]Technical support thread[/url]
    [*][url="http://www.vintage-computer.com/vcforum/showthread.php?t=12359"]Main project thread (huge!)[/url]
    [*][wiki="XTIDE development thread index "] Index of project thread[/wiki]
    Test results can be found here: [URL="http://www.vintage-computer.com/vcforum/showwiki.php?title=XTIDE+TestResults"]Test results[/URL]
    Assembly instructions can be found here: [URL="http://www.vintage-computer.com/vcforum/showwiki.php?title=XTIDE+build+instructions"]XTIDE Rev1 build instructins[/URL]
    [h="2"] Downloads [/h]
  2. -
    Latest version of Aitotat's BIOS (with utilities and source code): [url="http://code.google.com/p/xtideuniversalbios/"]XTIDE Universal BIOS[/url] <br>
  3. +
    Latest version of Aitotat's BIOS (with utilities and source code): [url="http://code.google.com/p/xtideuniversalbios/"]

    XTIDE Universal BIOS[/url]
    [url="http://www.vintage-computer.com/vcforum/showthread.php?t=17986"]XT-IDE Universal BIOS discussion[/url]
  5. -
    Latest version of Hargle's BIOS: [url="http://www.waste.org/~winkles/xtide_011.zip"]Version 0.11[/url]. Last updated on the 12th of October 2009 (no longer in development).<br>
  6. +

    Latest version of Hargle's BIOS: [url="http://www.waste.org/~winkles/xtide_011.zip"]Version 0.11[/url]. Last updated on the 12th of October 2009 (no longer in development).

    Utilities for Hargle's BIOS (SetCard, Flasher, Setup and FindCard): [url="http://oldibmpc.sitesled.com/misc/XTIDEUTL.ZIP"]XtIdeUtl.zip[/url]. Last updated on the 22th of October 2009.
    The XT IDE schematic and PCB layout for [url="http://kicad.sourceforge.net/"]KiCAD[/url] may be found on the N8VEM wiki in the [url="http://n8vem-sbc.pbworks.com/browse/#view=ViewFolder&param=XT-IDE"]XT-IDE[/url] and [url="http://n8vem-sbc.pbworks.com/browse/#view=ViewFolder&param=KiCAD"]KiCAD[/url] folders.
    Ian, over at [url="http://dangerousprototypes.com/docs/XT_IDE_disk_controller"]Dangerous Prototypes[/url] has taken the XTIDE controller to the next level by using CPLD's instead of 74xx ICs.
    [h="3"]Debugging utilities[/h]
    [list][*] HellTest data verification program [url="http://www.waste.org/~winkles/xt_hell.zip"]xt_hell.zip[/url] Documentation [wiki]XTIDE_HellTest[/wiki] - only works on Hargle's earlier BIOS, no eINT13 support in aitotit's BIOS.
    [*] INT 13 Monitor [url="http://oldibmpc.sitesled.com/misc/Debugger.zip"]debugger.zip[/url] A monotor program for manually calling most Int 13h function with the registers/buffer set to whatever you'd like
    [*] IDentify Device utility [url="http://www.waste.org/~winkles/id_dump.zip"]id_dump.zip[/url] Displays ID data to the screen
    [*] INT 13 Display test [url="http://www.waste.org/~winkles/int13test.zip"]int13test.zip[/url] Dumps INT 13 Fn 8 and 48 data to the screen - only works on Hargle's earlier BIOS, no eINT13 support in aitotit's BIOS.
    [h="2"] Current status [/h]
    ---January 2011---
    We are sold out again, sorry!
    You can still contact Jeff at silent dot net to attempt to get in the next batch, although there is no ETA as to when that will happen.
    Andrew Lynch does still have PCBs available, so it's still possible to build one yourself.

    Current prices are:
    $30 each kit
    $5 shipping in the USA, $14 outside
    $15 assembly fee, if you don't want to burn yourself on your soldering iron.

    Sorry that the rest of this document is a little out of date there's lots to do, and not many people doing them. (hint, this is a wiki!)
    [h="3"] Current To Do List [/h]
    Please use the [wiki="XTIDE_project_debug_log"]debug log[/wiki] to track todo items.
    [h="2"] PCB Design Revisions [/h]
    === Prototype: ===
    [wiki="File:Proto_rev1.jpg"]thumb|right|PCB Prototype[/wiki]
    [list][*]Original design
    [*] Added a Rom Enabled jumper
    === Revision 1: ===
    [wiki="File:rev1.JPG"]thumb|right|Rev 01 PCB[/wiki]
    [i]These items have been implemented in the new design[/i]
    [list][*] Added a header for an external hard-drive LED
    [*] Added a write protect jumper
    [*] Added an Int Select jumper allowing for it to be set to 2, 3, 4, 5 or 7
    [*] Added a CSEL 3 position jumper.
    [*] Shifted all the components over to make a 1/2" dead area on the left hand side of the card, and added a small skirt. This will allow for attachment of a wide variety of mounting brackets.
    [*] Removed some unused gold teeth on the ISA connector.
    [*] Added Silk screening on the back of the card to outline the dip settings and usage.
    [*] Scale down the IO and ROM Memory range settings to 4 places instead of 8 (16 possibilities each)
    [h="3"] Revision 2 [/h]
    (no timeline for completion)<br>
    This revision is still in the briefing stages and this is merely a place to list suggested changes.
    [list][*] Adding DMA support, or
    [*] Switching to memory mapped IO, which would allow for 16bit data transfers on the system bus.
    [*] Replace the DIP switches with jumpers
    [*] Add power header onto the card for the PS/2 Mod. 25 & 30 folk
    [h="2"]Supported hardware[/h]
    [h="3"] Supported Systems [/h]
    The card works in just about any PC and compatible system that has an open 8 or 16 bit ISA slot. The card has been tested and is known to work on IBM PC/XT, XT clones and Tandy 1000 series of computers including the HX. There are no known compatibility issues on any reasonably IBM compatible architecture.
    [h="3"] PATA Hard Drive Support [/h]
    Most PATA hard drives work just fine with the card, but there is an occasional odd drive that just doesn't work for some reason. Essentially, if you can't find a drive that works, you aren't trying very hard.<br>
    Best results are from 8-10G drives from the 2001 era.<br>
    See this chart for known working drives (incomplete!) [wiki]XTIDE_TestResults[/wiki] It would be really, really nice if you tested a few and added your results here. Compact Flash devices attached with a CF-IDE converter also work, although there seem to be incompatibilities with CF overall.<br>
    [h="3"] ATAPI Support [/h]
    ATAPI/CD-ROM support is in progress. No ETA.
    [h="2"] Hardware Settings [/h]
    [h="3"] SW1 Settings [/h]
    [table] align="center" border="1" cellpadding="10" cellspacing="0" Width="75%"
    | 1234 || I/O address || 5678 || BIOS memory address
    | 1111 || 200h - 20Fh || 1111 || C0000 - C1FFF
    | 1110 || 220h - 22Fh || 1110 || C4000 - C5FFF
    | 1101 || 240h - 24Fh || 1101 || C8000 - C9FFF
    | 1100 || 260h - 26Fh || 1100 || CC000 - CDFFF
    | 1011 || 280h - 28Fh || 1011 || D0000 - D1FFF <b>(Default)</b>
    | 1010 || 2A0h - 2AFh || 1010 || D4000 - D5FFF
    | 1001 || 2C0h - 2CFh || 1001 || D8000 - D9FFF
    | 1000 || 2E0h - 2EFh || 1000 || DC000 - DDFFF
    | 0111 || 300h - 30Fh <b>(Default)</b>, warning: also common default for ethernet cards || 0111 || E0000 - E1FFF
    | 0110 || 320h - 32Fh || 0110 || E4000 - E5FFF
    | 0101 || 340h - 34Fh || 0101 || E8000 - E9FFF
    | 0100 || 360h - 36Fh || 0100 || EC000 - EDFFF
    | 0011 || 380h - 38Fh || 0011 || F0000 - F1FFF
    | 0010 || 3A0h - 3AFh || 0010 || F4000 - F5FFF
    | 0001 || 3C0h - 3CFh || 0001 || F8000 - F9FFF
    | 0000 || 3E0h - 3EFh || 0000 || FC000 - FDFFF
    | colspan=4 align="center" | 0 Represents an Off position and 1 represents an On position.
    | colspan=4 align="center" | Warning: after changing I/O address range it's necessary to re-flash the BIOS
    [h="3"] JP Settings [/h]
    [table] align="center" border="1" cellpadding="10" cellspacing="0" Width="75%"
    | JP1 || On || <b>(Default)</b> Enables the onboard ROM || Off || Disables the onboard ROM
    | JP2 || On || <b>(Default)</b> Enables the writing to the ROM || Off || Disables writing to the ROM, not necessary with EEPROMs supporting Software Data Protection, eg. AT28C64B
    [h="3"] K1 Settings [/h]
    [table] align="center" border="1" cellpadding="10" cellspacing="0" Width="75%"
    | L || <b>(Default)</b> Sets CSEL to Ground || H || Sets CSEL to VCC
    [h="3"] IRQ Select Settings [/h]
    Not fully implemented in software yet, however a jumper is present for this setting on the board.
    [h="2"] Bill of Materials [/h]
    Current list of parts required for creating your own XT-IDE controller card.<br>
    Parts sourced from [url="http://www.jameco.com/webapp/wcs/stores/servlet/StoreCatalogDisplay?storeId=10001&catalogId=10001&langId=-1"]Jameco Electronics[/url]. Others, such as [url="http://www.mouser.com"]Mouser[/url] also supply suitable parts.
    Qty Jameco # Item
    1 XT-IDE PCB (get this from andrew lynch)
    10 25523 CAP,MONO,.1uF,50V,20%
    1 1945428 CAP,RADIAL,47uF,35V
    2 45129 IC,74HCT688
    1 46316 IC,74LS04
    1 46607 IC,74LS138
    1 47466 IC,74LS32
    1 287144 IC,74F245,DIP-20
    3 287195 IC,74F573,DIP-20 (part code discontinued, use 282642)
    1 74827 Atmel EEPROM IC, 28C64 (get it from mouser, or CALL jameco to verify they will supply atmel, not SEEQ or Samsung eeproms!)
    2 112214 SOCKET,IC,14PIN,DUAL WIPE
    6 112248 SOCKET,IC,DUAL WIPE,20PIN
    1 112272 SOCKET,IC,DUAL WIPE,28PIN
    1 526205 SOCKET,IC,16 PIN,390261-4
    3 112432 SOCKET,SHORTNG BLKS,RED,CLSE (jumpers)
    1 690662 RES,CF,150 OHM,1/4 WATT,5%
    6 691104 RES,CF,10K OHM,1/4 WATT,5%
    2 857080 MOLDED SIP,9PIN,BUSSED,10K,2%
    1 333949 LED,GREEN,572NM,T-1 3/4
    1 1939562 SWITCH,DIP,SPST,8-POS,16-PIN

    1 53604 HEADER,RT MALE,2RW,40 CONT
    1 109568 HEADER,.1 ST MALE,2RW,16PIN (break off 1 row for use on external LED)
    1 109576 HEADER,.1 ST MALE,1RW,3PIN

    2 2094389 SCREW,PAN HEAD,PPN4-40X1/4 (only available in bags of 100-steal some from another ISA card or go to home depot and get some #4-40 1/4in screws)
    1 Keystone 9202 ISA bracket with 2 PCB mounting tabs* (mouser has them in stock currently)
    [/code][noparse]*[/noparse] For local availability of the Keystone brackets, enter <tt>9202</tt> on the form on [url="http://www.keyelco.com/order.asp"]Keystone\'s webs site[/url].
    In the UK, parts can be sourced from Farnell ([url]http://uk.farnell.com[/url]) or CPC. Note that Farnell's DIL sockets are expensive (doubling the component cost), but the chips can be soldered directly to the board (or sockets can be sourced cheaply from eBay). The below parts list will cost around 15.
    Qty Req'd Min Order Farnell # Item
    10 5 1469310 CAPACITOR, 100NF, 50V; Dielectric Charac
    1 5 1144626 CAPACITOR, 47UF, 35V; Capacitor Dielectr
    3 1 1013901 74F FAST TTL, 74F573, DIP20, 5.5V; Logic
    1 1 1013896 74F FAST TTL, 74F245, DIP20, 5.5V; No. o
    1 1 1740030 LOGIC, QUAD 2-INPUT OR GATE, 14DIP; No.
    1 1 1739824 LOGIC, 3-8 LINE DECODER/DEMUX, 16DIP; No
    1 1 1106072 74LS, 74LS04, DIP14, 5.25V; Logic IC Cas
    2 1 382504 74HCT CMOS, 74HCT688, DIP20, 5V; Compara
    1 1 1390720 EEPROM PARALLEL 64K, DIP28; Memory Confi
    3 10 1740370 JUMPER, WHITE, GOLD, 2WAY; Connector Typ
    1 50 9339175 RESISTOR, 0.25W 5% 150R; Resistance:150o
    6 50 9339060 RESISTOR, 0.25W 5% 10K; Resistance:10koh
    2 1 1612533 RESISTOR NETWORK, 10KR; Resistance:10koh
    1 5 1581182 LED, 5MM, 16, SUPER-GREEN; LED Type:Sta
    1 1 9479180 ROCKER SWITCH, DIL, 8WAY; Switch Type:DI
    1 1 3418546 HEADER, 2ROW, 16WAY; Connector Type:Wire
    1 1 8395977 HEADER, BOX, STRAIGHT, 40WAY; Connector
    1 1 3417657 HEADER, 1ROW, 3WAY; Connector Type:Wire-
    [h="2"] INT 13 Reference [/h]
    [i]See a separate page: [wiki]INT 13 Reference[/wiki][/i]
    [wiki]Category:ISA cards[/wiki]


Posting Permissions

Posting Permissions
  • You may not create new articles
  • You may edit articles
  • You may not protect articles
  • You may not post comments
  • You may not post attachments
  • You may not edit your comments