Announcement

Collapse

Forum Rules and Etiquette

Our mission ...

This forum is part of our mission to promote the preservation of vintage computers through education and outreach. (In real life we also run events and have a museum.) We encourage you to join us, participate, share your knowledge, and enjoy.

This forum has been around in this format for over 15 years. These rules and guidelines help us maintain a healthy and active community, and we moderate the forum to keep things on track. Please familiarize yourself with these rules and guidelines.


Rule 1: Remain civil and respectful

There are several hundred people who actively participate here. People come from all different backgrounds and will have different ways of seeing things. You will not agree with everything you read here. Back-and-forth discussions are fine but do not cross the line into rude or disrespectful behavior.

Conduct yourself as you would at any other place where people come together in person to discuss their hobby. If you wouldn't say something to somebody in person, then you probably should not be writing it here.

This should be obvious but, just in case: profanity, threats, slurs against any group (sexual, racial, gender, etc.) will not be tolerated.


Rule 2: Stay close to the original topic being discussed
  • If you are starting a new thread choose a reasonable sub-forum to start your thread. (If you choose incorrectly don't worry, we can fix that.)
  • If you are responding to a thread, stay on topic - the original poster was trying to achieve something. You can always start a new thread instead of potentially "hijacking" an existing thread.



Rule 3: Contribute something meaningful

To put things in engineering terms, we value a high signal to noise ratio. Coming here should not be a waste of time.
  • This is not a chat room. If you are taking less than 30 seconds to make a post then you are probably doing something wrong. A post should be on topic, clear, and contribute something meaningful to the discussion. If people read your posts and feel that their time as been wasted, they will stop reading your posts. Worse yet, they will stop visiting and we'll lose their experience and contributions.
  • Do not bump threads.
  • Do not "necro-post" unless you are following up to a specific person on a specific thread. And even then, that person may have moved on. Just start a new thread for your related topic.
  • Use the Private Message system for posts that are targeted at a specific person.


Rule 4: "PM Sent!" messages (or, how to use the Private Message system)

This forum has a private message feature that we want people to use for messages that are not of general interest to other members.

In short, if you are going to reply to a thread and that reply is targeted to a specific individual and not of interest to anybody else (either now or in the future) then send a private message instead.

Here are some obvious examples of when you should not reply to a thread and use the PM system instead:
  • "PM Sent!": Do not tell the rest of us that you sent a PM ... the forum software will tell the other person that they have a PM waiting.
  • "How much is shipping to ....": This is a very specific and directed question that is not of interest to anybody else.


Why do we have this policy? Sending a "PM Sent!" type message basically wastes everybody else's time by making them having to scroll past a post in a thread that looks to be updated, when the update is not meaningful. And the person you are sending the PM to will be notified by the forum software that they have a message waiting for them. Look up at the top near the right edge where it says 'Notifications' ... if you have a PM waiting, it will tell you there.

Rule 5: Copyright and other legal issues

We are here to discuss vintage computing, so discussing software, books, and other intellectual property that is on-topic is fine. We don't want people using these forums to discuss or enable copyright violations or other things that are against the law; whether you agree with the law or not is irrelevant. Do not use our resources for something that is legally or morally questionable.

Our discussions here generally fall under "fair use." Telling people how to pirate a software title is an example of something that is not allowable here.


Reporting problematic posts

If you see spam, a wildly off-topic post, or something abusive or illegal please report the thread by clicking on the "Report Post" icon. (It looks like an exclamation point in a triangle and it is available under every post.) This send a notification to all of the moderators, so somebody will see it and deal with it.

If you are unsure you may consider sending a private message to a moderator instead.


New user moderation

New users are directly moderated so that we can weed spammers out early. This means that for your first 10 posts you will have some delay before they are seen. We understand this can be disruptive to the flow of conversation and we try to keep up with our new user moderation duties to avoid undue inconvenience. Please do not make duplicate posts, extra posts to bump your post count, or ask the moderators to expedite this process; 10 moderated posts will go by quickly.

New users also have a smaller personal message inbox limit and are rate limited when sending PMs to other users.


Other suggestions
  • Use Google, books, or other definitive sources. There is a lot of information out there.
  • Don't make people guess at what you are trying to say; we are not mind readers. Be clear and concise.
  • Spelling and grammar are not rated, but they do make a post easier to read.
See more
See less

Universal Multi-I/O Controller & RAM Expansion

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Universal Multi-I/O Controller & RAM Expansion

    It would be possible to design a multi-I/O controller that can work in either an 8 or 16-bit slot (uses a 16-bit ISA connector) and can provide the following features :

    IDE 8-bit, 16-bit & 16-to-8-bit translation
    2 x Serial (16550 UART)
    1 x Parallel (Uni & Bidirectional, ECP/EPP possible?)
    1 x Game (w/speed adjust knob)
    RTC w/replaceable battery
    BIOS Extension Socket
    HD Floppy Controller

    If you had a board long enough, you could do all this with off the shelf chips. The BIOS extension could provide support for HD floppies, XT-IDE BIOS, RTC, etc. If custom logic were required to replace the glue logic, then you could still use a 765 or 8272 for the FDC and 16550s for the UARTs. Perhaps we could go even further and offer memory expansion as well. Perhaps a pair of 30-pin SIMMs that could be mapped according to the system's needs. So if you had 2MB on the board in an IBM PC, you could map 384KB to conventional and the remainder as EMS. On an IBM AT, 128K could be used to fill the memory to 640KB and the remainder available as extended memory. Obviously, such complex memory mapping, in addition to everything else, could not be done in standard off-the-shelf logic on a single board. How feasible would it be to do this? I assume you would probably need a large, 5V tolerant FPGA to feasibly get it all on one board. At that point, settings should be done via EEPROM, not jumpers or switches.
    My Retro Computing and Vintage Gaming Blog : http://nerdlypleasures.blogspot.com/

    #2
    Allow me to use SMT and I'd bet I could squeeze most of it on a half-length board

    But who would buy it? At what price point?
    Reach me: vcfblackhole _at_ protonmail dot com.

    Comment


      #3
      Possible to design? Sure. I'm just not sure what it would solve. There are already multi-I/O board you can buy off eBay that add 2S/1P/1G/RTC. You can already buy 16-bit IDE controllers that have all of the former plus HD floppy. XT-IDE satisfies 8-bit hard drive. For 8-Bit, the only thing you're missing from your list is HD floppy and I'm not sure how many people are with you on that.

      I have a parallel design for a different board but with the same ends I think you had in mind. However given my work schedule lately, it will be quite sometime before I get a lot of progress made. Though I did manage to hit the order button on kit + PCBs for 3. Maybe that will lite a fire when it gets in. Though people here have mentioned it would be an abomination to retro computing if it were made.

      Largely unfinished schematic and board files:

      http://www.retrotronics.org/svn/eagle/projects/
      "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

      Comment


        #4
        Originally posted by Great Hierophant View Post
        Perhaps a pair of 30-pin SIMMs that could be mapped according to the system's needs. So if you had 2MB on the board in an IBM PC, you could map 384KB to conventional and the remainder as EMS.
        Do you imagine how much effort is necessary to accomplish this? Both hardware and software... it can't be worth.
        My videos:
        IBM PS/1 model 2011 restored and enhanced
        IBM PC Advanced Diagnostics Cassette load

        Comment


          #5
          Possible doesn't always equate to feasible. To my mind, the only real use of such a card is for those that don't like combing ebay for the $1 specials of existing cards, and/or people that only use a limited-expansion box such as the 5150, PS/2 8525 and 8530, etc and wish to maximize their usage of each slot.

          Not a bad idea at all, but I just don't see there being a whole lot of demand for the card unless the price point is low enough to make the effort of tracking down conventional solutions pointless.

          Besides, I'm still hoping that someone besides me will jump on the bandwagon for Chuck's SD-card solution for a floppy emulator so it can be taken to the next level
          ---
          Currently seeking:
          * Roland MPU-401/AT (with daughter card header)
          * Magitronic K-156 Keyboard (5pin DIN w/ XT-AT switch)
          I also collect PC and C64 Sierra On-Line software!

          Comment


            #6
            It's an interesting project certainly. CPLD must surely be the easiest route for it though?

            Comment


              #7
              Originally posted by pearce_jj View Post
              It's an interesting project certainly. CPLD must surely be the easiest route for it though?
              I'm going to assume that we're after port-level compatibility. Otherwise, you could do much of this in an MCU.

              By far, I think the easiest solution would employ a 486-era "Super I/O" chip. I have a feeling, however, that such things no longer grow on trees.

              I don't know if you could find enough through-hole components either, unless you stumbled on someone's old stock.

              You might be able to fit it all into an FPGA, but doing a FDC and UART in the same package might get "interesting". Lots of I/Os as well.
              Reach me: vcfblackhole _at_ protonmail dot com.

              Comment


                #8
                You can still get Super-I/O chips. They are in-stock at Arrow. But they do only come in 100 SQFP packages now.

                As far as fitting everything in an FPGA, see the design files above.
                "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

                Comment


                  #9
                  I love to see a project born process...

                  Would be nice to have Tandy 1000 EX support too, and also a intelligent MPU.

                  Comment


                    #10
                    Originally posted by eeguru View Post
                    You can still get Super-I/O chips. They are in-stock at Arrow. But they do only come in 100 SQFP packages now.

                    As far as fitting everything in an FPGA, see the design files above.
                    Where's the VHDL for the AT-compatible floppy controller?
                    Reach me: vcfblackhole _at_ protonmail dot com.

                    Comment


                      #11
                      Originally posted by Chuck(G) View Post
                      Where's the VHDL for the AT-compatible floppy controller?
                      My intent was to use the board as a V2.0 eval platform for a number of ideas. One of which was to bring in Pemberton's Ferret code as a starting point. I've looked at it quite a bit so far and while I haven't seen a synthesis report from Quartus or yet tried to bring it into Diamond, I see no reason why it wont fit. The Cyclone II part he is using is similarly sized but with a bit more efficient routing architecture than the XO2-7K I plan on initially stuffing on the board. As far as register level compatibility, that can be done either by a) directly changing the front-end register file and it's correlation to the back-end state machine or b) similarly to any other device you want to emulate at a software level - define a register map in FPGA FF's and interrupt generation on change to an MCU either on board (LM8, ZPU, Z80, etc) or off-board (the STM32 also on the card). With USB connectivity, arbitrary register file emulation by the PLD, and an MCU, you could literally emulate any legacy device with modern USB equivalents - think serial mouse -> USB mouse, NE2000 -> USB Wifi dongle, FD controller -> real thing or file on SD card or USB stick, hard drive -> SD card/USB stick, serial port -> virtual com port to PC host, etc, etc, etc.

                      The driving design point is the meat of the emulation is in the MCU as you've suggested numerous times. However the PLD off-loads the MCU from having to deal with fast real-time requirements of bus interfacing and decoding.

                      My only goal in this is a selfish one - just to see if it can be done. Thus it's a spare time intellectual indulgence only atm. The only reason I'm mentioning it here is the OP asked if a similar idea was possible. The basic answer is yes - although in practice it's a lot more involved. That and worse than anticipated compatibility issues with gamut of PATA devices in the last failed through-hole project has led me to this evolution.
                      "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

                      Comment


                        #12
                        Yeah, but we're talking about a port-compatible board, not a whole-track handler--and that includes timing and function. Given the way the Ferret works, that's going to be pretty tough.
                        Reach me: vcfblackhole _at_ protonmail dot com.

                        Comment


                          #13
                          Originally posted by Chuck(G) View Post
                          Yeah, but we're talking about a port-compatible board, not a whole-track handler--and that includes timing and function. Given the way the Ferret works, that's going to be pretty tough.
                          Can't argue that. Want one?
                          "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

                          Comment


                            #14
                            We'll it's now a reality. I soldered up the first prototype tonight. I just need to find time to write HDL and MCU code in my busy schedule. I start a new exciting job role at work next month. One that's even a bit in-line with this type of project work. I'm seriously considering taking a week off to work solely on this straight. See how far I can get. Now that the board is a physical reality and passed the all important smoke test, it's starting to call out to me!

                            tubbie_front.jpg
                            tubbie_back.jpg
                            "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

                            Comment


                              #15
                              I see an 8 bit ISA connector right...
                              and then I see two USB ports right...

                              and now I need to go to the little boys room

                              (excellent work btw, can't wait to hear how it goes)
                              Twitter / YouTube

                              Comment

                              Working...
                              X