Image Map Image Map
Page 23 of 25 FirstFirst ... 1319202122232425 LastLast
Results 221 to 230 of 241

Thread: I wish to create a new DMA/RAM expansion card for the Tandy 1000 line.

  1. #221
    Join Date
    Feb 2017
    Location
    Chilliwack, BC, Canada
    Posts
    374

    Default

    Quote Originally Posted by dJOS View Post
    True, but being able to clip over the top of multiple IC's at once and watch them interact in real-time is beyond cool!
    It was just luck that the guy brought the HP 16500 into the club around the time I was thinking of buying one off Amazon. He already had another one at home. Probably end-of-service surplus from his old job or something, because these beasts were NOT cheap when they were being made.

    They're still pretty popular on eBay though. eBay Link
    This is the cheapest one they have atm, but look at the shipping!
    My vintage systems: Tandy 1000 HX, Tandy 1100FD, Tandy 1000 RSX, and some random Pentium in a Hewitt Rand chassis...

    Some people keep a classic car in their garage. Some people keep vintage computers. The latter hobby is cheaper, usually takes less space, and is less likely to lead to a fatal accident.

  2. #222
    Join Date
    May 2011
    Location
    Outer Mongolia
    Posts
    1,261

    Default

    Quote Originally Posted by blackepyon View Post
    I happen to have an old UART chip kicking around. That was a future project I had in mind, but wanted to finish the current stuff first. But I can pretty much guarantee that there'll be a demand for that, if only just for running a serial mouse. My idea was to have that on a third card, or maybe put it on the memory card if I can't get the DMA working. Or maybe do RAM+DMA+UART together if there's somehow space for it? That might be a bit ambitious at this point, and would likely require at least a few PLAs.
    Yeah, basically my thinking has been if I could get at least one serial port on the same card as the CF connector then I'd have a two-board sandwich would provide most of what someone who's stuck with a bare 256K EX or HX would need to turn it into a fully capable XT-class machine.

    (Minus the DMA, of course, but back in the day I think the only common device someone might want in a Tandy 1000 that would need it would be an XT hard disk controller. XTIDE sidesteps that need. Lacking it does rule out things like Soundblaster cards, but... my opinion is unmoved that if you want Soundblaster you'd be better off starting with an AT clone. DMA is useful for driving the floppy controller as well, but I remember seeing a discussion where doubt was expressed that the Tandy BIOS routines switch to using DMA if it's present. If they don't then the only software that would benefit would be a rare subset of programs that drive the floppy from bare metal?)

    I have a mostly completed PCB layout for a board with a DIP-packaged UART and the CF connector, but I'm not happy with it; the signal layout for the 40 pin package seems really awkward and of course you also need a MAX232 and an oscillator, so the result is a really crowded board when trying to stick to my constraint of a 100x100mm board. (And also arranging it so the IDE-to-CF adapter sled I bought to work with fits in the space available inside the machine. I should probably suck it up and learn how to solder surface mount so I could use a CF connector directly.) I'm thinking of switching to PLCC to see if that's any easier, but that opened up another rabbit hole: I found Digi-Key has the dual-UART 16552 in the same PLCC socket. Two serial ports would be awesome, one for a mouse and one for other things... but I haven't yet found an example schematic for using one on a PC card. The datasheet looks straightforward enough but the example in there does use a different crystal than the 1.8something Mhz that's standard for PC UARTs so I'm worried there may be some incompatibility there I'm not aware of.

    (And such a card would need *two* MAX232s, which gets back to the space issues...)

  3. #223
    Join Date
    Feb 2017
    Location
    Chilliwack, BC, Canada
    Posts
    374

    Default

    They do make through-hole sockets for PLCCs, thankfully, so there's no need to worry about DIP adapters or surface-mount soldering. Digi-Key PN ED90008-ND

    The total card clearance for the second slot is about 17-18cm (needed that measurement for one of mine), so I'm reasonably certain the CF sled will fit.

    nztdm's NuXT board has serial on it, and he's got the schematics up on GitHub. He uses two 74LS138's for address selection on /CS2. It can also be done with a 16V8 (programmable on the TL866 USB thinggie) or a similar PLA on a single chip (See here, about 2/3rds of the way down) . The question is how to do that using the DUART chip.

    Apparently DMA operations can be used for UART as well, so it's not just SoundBLASTER. I'm surprised RetroGaming Roundup hasn't tried a SoundBLASTER on his HX Max Performance Build. You can use many 16-bit cards in an 8-bit slot if you set them to use the lower IRQs.
    My vintage systems: Tandy 1000 HX, Tandy 1100FD, Tandy 1000 RSX, and some random Pentium in a Hewitt Rand chassis...

    Some people keep a classic car in their garage. Some people keep vintage computers. The latter hobby is cheaper, usually takes less space, and is less likely to lead to a fatal accident.

  4. #224
    Join Date
    May 2011
    Location
    Outer Mongolia
    Posts
    1,261

    Default

    I wonder if someone has made a Kicad symbol for the PLCC version of the 16550 (or 16552). There's only a symbol for the 40 pin DIP version in the default library; I haven't gone through to see what important pinout differences there are. I guess it's not that big of a deal to clone the existing one and make the necessary changes. Semi-coincidentally I actually had a 44 pin PLCC through-hole socket in my hot little hand today; stopped at the local electronics hole at lunchtime to get a couple more female bus connectors and other incidental parts and found one on the socket rack. It is *far* smaller than a 40 pin DIP; I'm sure I'll still have fun routing traces but it definitely would save real estate.

    The circuit I lifted for the schematic I have in the work queue came from a Sergey design for a... I think it was a combo floppy/serial controller. I suspect it's the same as the NuXT board, or close to it. (Likewise has two 74LS138s.) Going solely from memory I *think* adapting the decode for the 16552 might be as simple as adding an AND gate; my possibly flawed recollection is that the way chip select works on that chip is that there's a CE line which has to be asserted for either port, and then there's a "channel select" that's pulled low when you want the second channel; otherwise channel one is used. If that's all then all you need is a gate to assert CE if either of COM1 or COM2 was active. (The COM2 line would of course also be tied to the channel select.) That one extra gate means an extra chip unless you can steal it from something else already on the board. That's an argument for a PLA, I guess...

    But, anyway, if everything else is actually compatible it *should* be just that easy? If it is I'm kind of surprised nobody's used it yet.

    I'll break out the ruler and see just how far my CF sled would project forward from a 100x100mm board if I align it for maximum non-obstructed component area. (An irksome aspect of that size limit is the placement of the Plus connector means you can't quite align that size board with the normal rear extension into the slot cover/port area and still fit the plus connector. You end up about a quarter inch short, so if you plan to put ports directly on the card to be accessed from the rear they either need to be a style that overhang towards the back or they're going to be recessed. I was thinking of working around that by putting the board further inward, about where the RAM card sits, and using standard AT-style header-plug-to-DA9 cables that could be screwed to a simple separate port cover. Header plugs on the board would also save a tiny amount of real estate compared to a DA9 port.

    RE: DMA and UARTs, my impression was that you couldn't exactly use DMA just for serial data transfers, but you *could* leverage DMA to do things like continuing to accept/transmit data during disk transfers. (IE, serial transfers can benefit from DMA but themselves don't participate in DMA.) PC serial ports don't have DREQ lines on them so I don't know how they could themselves request a DMA channel... but I'll admit that this is a subject upon which my ignorance may be vast and unyielding.

  5. #225
    Join Date
    Feb 2017
    Location
    Chilliwack, BC, Canada
    Posts
    374

    Default

    Not likely the library symbol itself, but all the PLCC chip and socket footprints are in the default libraries. One thing that I liked about Altium CircuitMaker was the cloud library (don't like that you can't export your project FROM the cloud though, which is why I switched to KiCad).
    My vintage systems: Tandy 1000 HX, Tandy 1100FD, Tandy 1000 RSX, and some random Pentium in a Hewitt Rand chassis...

    Some people keep a classic car in their garage. Some people keep vintage computers. The latter hobby is cheaper, usually takes less space, and is less likely to lead to a fatal accident.

  6. #226
    Join Date
    Feb 2017
    Location
    Chilliwack, BC, Canada
    Posts
    374

    Default

    Quote Originally Posted by Eudimorphodon View Post
    ...stopped at the local electronics hole at lunchtime
    There aren't any left in my area I miss Radio Shack. Nothing but cellphone and gadget shops these days.
    I order almost everything I need from Digi-Key now. Just keep a cart open and keep adding to it 'till it gets to $100, then take advantage of the free shipping.

    Re: DMA & UART
    There is a DMA bit there, but my ignorance about how DMA really works is probably just as big as yours.
    8086_IO4-4.jpg
    Last edited by blackepyon; August 14th, 2019 at 04:27 AM.
    My vintage systems: Tandy 1000 HX, Tandy 1100FD, Tandy 1000 RSX, and some random Pentium in a Hewitt Rand chassis...

    Some people keep a classic car in their garage. Some people keep vintage computers. The latter hobby is cheaper, usually takes less space, and is less likely to lead to a fatal accident.

  7. #227
    Join Date
    May 2011
    Location
    Outer Mongolia
    Posts
    1,261

    Default

    I'm worried Anchor might be in trouble (last time I was in there the counter conversation was revolving around Internet competition), which is really a shame because it's a real Silicon Valley original. They still have surplus Atari 800 parts and unpopulated S-100 PCBs on the shelf.

    I dug around a bit and it looks like the 16550 and up do have DMA signalling lines that work in conjunction with their FIFO, but that feature isn't implemented on a standard ISA serial card. The schematic for the Sergey serial/FDC card has them NC.

  8. #228
    Join Date
    Mar 2011
    Location
    Atlanta, GA, USA
    Posts
    1,447

    Default

    Quote Originally Posted by Eudimorphodon View Post
    I dug around a bit and it looks like the 16550 and up do have DMA signalling lines that work in conjunction with their FIFO, but that feature isn't implemented on a standard ISA serial card. The schematic for the Sergey serial/FDC card has them NC.
    DMA for a UART is pointless - especially on a PC. You would have to write your own serial routines as part of a application driver, fossil driver, or extended BIOS. And most things DOS isn't going to go through any of those paths to get to the serial port anyway. 99% of DOS software will do direct port I/O to the UART. And it wouldn't save many cycles unless you were transferring lots of data - aka file transfers. The little CPU savings you would get from it doesn't matter under a non-multitasking OS like DOS where 99% of the same software sits and spins reading the LSR over and over. DMA bus cycles are shorter in general than I/O but you are rate-limited anyway by the slow line speed. And I thought we were talking Tandy 1000 EX/HX here which doesn't even have a DMA controller in the first place to initiate the transfers unless you have the Plus memory expansion which I though was what this project was replacing? Did you add an external 8237A to the board that I missed?
    "Good engineers keep thick authoritative books on their shelf. Not for their own reference, but to throw at people who ask stupid questions; hoping a small fragment of knowledge will osmotically transfer with each cranial impact." - Me

  9. #229
    Join Date
    May 2011
    Location
    Outer Mongolia
    Posts
    1,261

    Default

    Quote Originally Posted by eeguru View Post
    And I thought we were talking Tandy 1000 EX/HX here which doesn't even have a DMA controller in the first place to initiate the transfers unless you have the Plus memory expansion which I though was what this project was replacing? Did you add an external 8237A to the board that I missed?
    Blackepyon is talking about his RAM card project into which he intends to incorporate the DMA controller. I have no intention of trying to incorporate one unless an absolutely compelling case for one arises; serial was mentioned as a possibility and I was merely stating why I didn't think it was, at least directly. (So far as I can tell the common saw that connects DMA to Serial I/O in ancient PCs is that having it supposedly can prevent character loss when doing disk I/O during a file transfer. I believe it was you who raised the question of whether that would even apply to a Tandy 1000 because what evidence is there that the Tandy 1000 switches to using DMA for floppy I/O if the DMA controller is present?(*))

    (*) Edit: The Tandy 1000 EX technical manual shows DMA lines going from the floppy controller to the edge connector so it looks like a Tandy 1000 *can* do DMA with it. Whether it does or not is a separate question, although since they ran the lines it seems like they may have at least had reason to include a conditional for it in the BIOS.
    Last edited by Eudimorphodon; August 14th, 2019 at 08:37 AM.

  10. #230
    Join Date
    Feb 2017
    Location
    Chilliwack, BC, Canada
    Posts
    374

    Default

    Quote Originally Posted by eeguru View Post
    And I thought we were talking Tandy 1000 EX/HX here which doesn't even have a DMA controller in the first place to initiate the transfers unless you have the Plus memory expansion which I though was what this project was replacing? Did you add an external 8237A to the board that I missed?
    Na, the 8237A was for my board later. I've got a few other projects I want to finish up first before I can get back to that (including TTL a monitor with a bad vertical circuit that I need to fix and put back together), but it looks like Eudimorphodon's board is ready to go... For him at least. Still trying to figure out why the heck his board isn't working for me. The logic chips TEST good, but still locking up after it detects 640K, regardless of whether I have the UMB pages enabled. Gonna try just swapping them out with fresh ones anyways just to be sure. If not, I'm gonna map the thing out end to end on my logic analyzer and try to figure out what's going on.

    The DMA bit on the UART was more of a curiosity, since I noticed the control bit was there, but it isn't something I was planning on using. But a dual serial PLUS card would be nice if we can get that dual UART chip working. I've got a multi-I/O ISA card in mine providing serial and a second parallel port, but I hate the way I have to mount the thing.

    To what Eudimorphodon said, the Tandy 1000 schematics, including for my HX, show B6 and B26 on the expansion header labelled as FDCDMAQ and /FDCDACK, rather than DMARQ2 and /DMACK2, so it probably does utilize DMA for the floppy when DMA is present.
    My vintage systems: Tandy 1000 HX, Tandy 1100FD, Tandy 1000 RSX, and some random Pentium in a Hewitt Rand chassis...

    Some people keep a classic car in their garage. Some people keep vintage computers. The latter hobby is cheaper, usually takes less space, and is less likely to lead to a fatal accident.

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •