Announcement

Collapse

Forum 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.


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.


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.



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.


"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.

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

Inboard 386/PC 2mb expansion CLONE

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

    Inboard 386/PC 2mb expansion CLONE

    As there is a lot of demand for new 2 and 4 mb expansion boards for the Inboard 386/PC, I had originally begun to develop a clone of that card. I had lost interest a few months into development and left the further work on my PCB layouts alone.

    Harrison Frasier has contacted me a few weeks ago asking about info on my work. Since I was not able to invest more time into that project, I gave him all the PCB layouts and info I could find.

    Based on the data Harrison designed a new PCB prototype.
    He built and successfully tested the 2mb prototype a few days ago. There are still some uncertain thing to figure out but it's a big step forward.


    Further work and development:
    Harrison is now the owner and project manager of the expansion. I will get 2 bare prototype PCB from him to test different memory modules, TTL ICs and maybe add some modifications to get 4 or 8mb to work. My part is now to support and beta-test (which im happy with). Im glad that Harrison has taken the project up and got it to another milestone.

    I think we are very close

    This thread is meant as a central info point for the project.
    references:
    Seeking-memory-card-for-InBoard-386/page3

    #2
    I have built one prototype with one of the PCB i was given by Harrison. It seems to work normally and has caused no problems so far. I have tinkered a bit with the not connected signal on pin 15 of the J2 connector. It is neither another RAS-enable line nor a CAS-enable line. We help from someone who owns a 4mb expansion for the inboard to measure the connections of pins 11-27 on the J2 connector.
    The white areas need to be verified on the 4Mb expansion.

    50597625068_4501221964_o.png

    The address-lines are inverted by two 74AS1004 (=7404) and routed to the corresponding address line on the RAM ICs. The address line 9 in the picture should be checked since it is not connected on the 2Mb card.
    The RAS and CAS signals should be generated by the two 74AS1032 ICs. The address lines from the 74'04 inverters and generated RAS/CAS signals from the 74'32 or-gates are routed to the RAM ICs through 22 Ohm resistors via resistor networks (4308R-102 220) on the 2Mb card (should be the same on the 4Mb card).

    50598542307_6c34a4a6c0_o.png

    My knowledge regarding 386 memory controllers is very limited (non-existent). I would really like to see a comment on this thread

    50597706633_9f7037262e_o.jpg

    Success with 4mb

    50597802458_5096574527_o.jpg

    -Jonas
    Last edited by stynx; November 13, 2020, 01:39 PM.

    Comment


      #3
      We have to test a bit more but i think that Harrison will be able to offer a 4Mb expansion in the near future

      -Jonas

      Comment


        #4
        Another working prototype (low effort) without resistors and capacitors. 4 Simms directly soldered to the card.
        PS2 modules would be nice but they will not work since the have bidirectional parity lines. The Inboards needs separate parity input and output lines. It may be possible to take a 74'244 and use the ^WE lines (seem to have identical signals) to separate the parity access between read and write. May be and interesting project
        50599838468_6bac247158_o.jpg
        -Jonas

        Comment


          #5
          I have desoldered the RAS-generator PAL (301094-001) from one of my defective Inboards and could read out its contents.
          the equations look like this:
          Code:
          PAL20L8B
          1: A22
          2: A21
          3: A20
          4: A19
          5: A18
          6: A17
          7: A16
          8: A23
          9: from PAL U75
          10: from PAL U76
          11:from PAL U74
          12 GND
          13:
          14:
          15: RAS to 4Mb Bank
          16:
          17:
          18:
          19:
          20:
          21: RAS0 to 1Mb Bank (1)
          22: RAS1 to 1Mb Bank (2)
          23:
          24 VCC
          
          
          Inputs:
          
          
          1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 16, 17, 18, 19, 20, 21, 23
          
          
          Outputs:
          
          
          15 (Combinatorial, No output feedback, Active low)
          17 (Combinatorial, Output feedback output, Active low)
          18 (Combinatorial, Output feedback output, Active low)
          19 (Combinatorial, Output feedback output, Active low)
          20 (Combinatorial, Output feedback output, Active low)
          21 (Combinatorial, Output feedback output, Active low)
          22 (Combinatorial, No output feedback, Active low)
          
          
          Equations:
          
          
          /o15 = (A22)& /(A21)& /(A19)& /(A18)& /(A23) & i9 & i16 +
                 /(A22)& (A20)& (A18)& /(A23) & i9 & i16 & /i23 +
                 /(A22)& (A20)& (A19)& /(A23) & i9 & i16 & /i23 +
                 /(A22)& (A21)& /(A23) & i9 & i16 +
                 (A22)& /(A21)& /(A20)& /(A23) & i9 & i16 +
                 i11 & /i16
          o15.oe = vcc
          
          
          /o17 = (A22)& /(A18)+
                 (A21)& /(A18)+
                 /(A18)& i23 +
                 /(A18)& (A17)+
                 (A19)& /(A18)+
                 /(A20)& /(A18)
          o17.oe = vcc
          
          
          /o18 = (A22)& /(A19)+
                 /(A19)& i23 +
                 /(A19)& (A18)+
                 (A21)& /(A19)+
                 /(A20)& /i4
          o18.oe = vcc
          
          
          /o19 = (A18)& (A17)& (A16)& /i10 & i13 & i14 +
                 /(A18)& /(A17)& /(A23) & i13 +
                 (A20)& /(A23) & i13 & /i23 +
                 /(A19)& /(A23) & i13 +
                 (A22)& /(A23) & i13 +
                 (A23) & i13 & i14 +
                 (A21)& /(A23) & i13
          o19.oe = vcc
          
          
          /o20 = (A22)& (A21)& (A20)& (A19)& (A18)& (A17)& (A16)& (A23) & i9 & /i10 & i14 +
                 /(A22)& /(A21)& /(A19)& /(A18)& /(A23) & i9 +
                 /(A22)& /(A21)& /(A23) & i9 & i23 +
                 /(A22)& /(A21)& /(A20)& /(A23) & i9 +
                 (A22)& /(A21)& (A20)& (A19)& /(A23) & i9 & /i14 +
                 /i16
          o20.oe = vcc
          
          
          /o21 = i11 & /i16 +
                 /(A22)& (A21)& /(A20)& /(A19)& /(A18)& /(A23) & i9 & i16 +
                 /(A22)& /(A21)& (A20)& (A18)& /(A23) & i9 & i16 & /i23 +
                 /(A22)& /(A21)& (A20)& (A19)& /(A23) & i9 & i16 & /i23
          o21.oe = vcc
          
          
          /o22 = i11 & /i16 +
                 /(A22)& (A21)& (A20)& /(A19)& /(A18)& /(A23) & i9 & i16 +
                 /(A22)& (A21)& /(A20)& (A18)& /(A23) & i9 & i16 +
                 /(A22)& (A21)& /(A20)& (A19)& /(A23) & i9 & i16
          o22.oe = vcc
          this means:

          for the 4mb address space:
          0x14 0000 - 0x3F FFFF
          0x18 0000 - 0x38 FFFF
          0x20 0000 - 0x3F FFFF
          0x40 0000 - 0x4F FFFF
          0x40 0000 - 0x53 FFFF

          Resulting in 0x140000 - 0x53FFFF (4Mb with a 256k shift up)

          The two 1Mb banks of the 2Mb expansion are similar:
          0x140000 - 0x23FFFF for bank 1 and
          0x240000 - 0x3FFFF for bank 2

          To address more memory, we would have to swap out the RAS-generator PAL (301094-001) with a new modified one. Since the inboards seem to go easily defective, i would not recommend this.
          I have the jedec file of the 301094-001 PAL if anyone is interested

          -Jonas

          Comment


            #6
            Originally posted by stynx View Post
            To address more memory, we would have to swap out the RAS-generator PAL (301094-001) with a new modified one. Since the inboards seem to go easily defective, i would not recommend this.
            I don't follow the reasoning. Replacing an aging part on a failure prone board should only improve its reliability if done with proper technique

            Comment


              #7
              Are those PALs compatible with new Atmel ones? Like ATF16, ATF22 and ATF1508... PALs are like one of the things that fails after capacitors, which is what kills a lot of Commodore PETs etc... they do die due to age eventually.

              Anyway very exciting development! I think I had messaged you before asking about things in a similar line as Harrison I guess he was justa bit more motivated lol. I'll be wanting to make 2 4 or 8MB variants if that becomes possible... it may also be possible to bodge a wire directly from the CPU address lines if it isn't available on the memory bus already. The more memory on the 32bit piggyback card the better especially for things like running win 3.x on 8bit bus machines!

              Edit: Also I have a batch of 5161 expansion senders... I haven't assembled them but I have most of the parts, perhaps I will have time over the holidays to play with that. Computer reset probably still has a bunch of expansion boxes with receivers.

              Comment


                #8
                Originally posted by cb88 View Post
                Are those PALs compatible with new Atmel ones? Like ATF16, ATF22 and ATF1508... PALs are like one of the things that fails after capacitors, which is what kills a lot of Commodore PETs etc... they do die due to age eventually.

                Anyway very exciting development! I think I had messaged you before asking about things in a similar line as Harrison I guess he was justa bit more motivated lol. I'll be wanting to make 2 4 or 8MB variants if that becomes possible... it may also be possible to bodge a wire directly from the CPU address lines if it isn't available on the memory bus already. The more memory on the 32bit piggyback card the better especially for things like running win 3.x on 8bit bus machines!

                Edit: Also I have a batch of 5161 expansion senders... I haven't assembled them but I have most of the parts, perhaps I will have time over the holidays to play with that. Computer reset probably still has a bunch of expansion boxes with receivers.
                You are right by saying that the PALs are aging. I had salvaged 3 RAS-generator PALS (TIPAL20L8, PL20L8 and PAL20L8 ) from different boards but only the last one had (seemingly) all the correct equations. the TIPAL was completely dead and the PL20L8 was part empty and gave a different checksum from time to time. While testing the new memory expansion, my only non-Parity inboard went bad. It now freezes at checking the 256k XMS on the card. I have the experience that even with proper antistatic measures the inboard can turn dead all of the sudden. I may unsolder and read out all other PALs on the dead boards. maybe i can fix at least one of them?

                Up to 16Mb may possible with only changing the 301094 PAL on the inboard. The most straight forward solution would be replacing the 2 RAS-signals for the 2Mb expansion with 2 additional address lines.

                -Jonas

                Comment


                  #9
                  Originally posted by cb88 View Post
                  Are those PALs compatible with new Atmel ones? Like ATF16, ATF22 and ATF1508... PALs are like one of the things that fails after capacitors, which is what kills a lot of Commodore PETs etc... they do die due to age eventually.
                  The common GALs (16/20/22V8/10s) were specifically designed to be fairly universal replacements for a good selection of earlier PAL devices, at least electrically. (I don't think you can just flash the same .jed files onto them, you'll need to recompile the equations for the newer device.)
                  My Retro-computing YouTube Channel (updates... eventually?): Paleozoic PCs Also: Blogspot

                  Comment


                    #10
                    I have read out some more PALs. They are hosted

                    here.

                    Since I own three defective Inbooards and one I of them is very damaged (corroded traces), I will continue to unsolder the PAL-ICs from it and try to get the jedec files from them. We may be able to save some of the currently defective Inboards if every chip can be replaced.

                    -Jonas
                    Last edited by stynx; November 21, 2020, 03:34 PM.

                    Comment


                      #11
                      Win 3.x

                      Originally posted by cb88 View Post
                      Are those PALs compatible with new Atmel ones? Like ATF16, ATF22 and ATF1508... PALs are like one of the things that fails after capacitors, which is what kills a lot of Commodore PETs etc... they do die due to age eventually.

                      Anyway very exciting development! I think I had messaged you before asking about things in a similar line as Harrison I guess he was justa bit more motivated lol. I'll be wanting to make 2 4 or 8MB variants if that becomes possible... it may also be possible to bodge a wire directly from the CPU address lines if it isn't available on the memory bus already. The more memory on the 32bit piggyback card the better especially for things like running win 3.x on 8bit bus machines!

                      Edit: Also I have a batch of 5161 expansion senders... I haven't assembled them but I have most of the parts, perhaps I will have time over the holidays to play with that. Computer reset probably still has a bunch of expansion boxes with receivers.
                      Windows 3.11 already runs well with my 4MB Intel memory expansion card for the InBoard (which yields 5MB total with it's base 1MB). More memory alone won't be enough though - you also need to upgrade to 486 CPU (I used a 25/50 Cyrix but the standard oscillator caps it at 33MHz unless you replace it), and you also need to replace a subset of the Win 3.1 OS files with ones from the special edition of Win 3.0 for the InBoard to get the Keyboard to function properly and a few other things when running Win in enhanced mode (well documented elsewhere on this board). An additional 4MB would be nice though, but I've not run short of memory running any of dozens of major Win 3.x apps.

                      Regards,
                      Mike

                      Comment


                        #12
                        I agree that 4Mb (4.3Mb) memory is good for most applications and games from 1994. But I want to get the maximum that would be possible. 8Mb instead of 4mb on the expansion would even allow Quake and Duke3D to run (even though the cpu speed will be lacking).

                        An Inboard equipped with a 46Mhz oscillator, 8mhz XT-bus and Transcomputer 486 adapter with an AMD5x86 (94Mhz) and 4mb memory expansion is fast enough to rum Doom (1.9) in fullscreen at 12-13fps. With these modifications the XT is elevated to the speed of a 486DX33 class computer. The Cyrix 586 at 4x mode is maybe a bit faster than that... but I don't have one yet.

                        -Jonas

                        Comment


                          #13
                          I'll add I also have an orchid ramquest, any idea how that would interact with the piggyback boards? I haven't tried it... it has a Xilinx hardwired FPGA on it, probalby not possible to reverse engineer that.

                          Comment


                            #14
                            I'd love to see one of these made for the Inboard 386/AT (memory board pictured here). The AT version has a different connector than the XT version (although apparently early versions of the XT card used the same or at least a similar style of connector), but at least the pin count is the same. Although, there are a few notable differences...first, the RAM count is configured manually through DIP switches, instead of automatically. It also can only accept up to 2MB of piggyback memory, rather than 4MB (at least according to the manual's instructions on setting the switches). And after looking at the pictures, the memory board seems to use 4x 74LS1008 quad 2 input AND buffer/drivers... Anyway though, could someone possibly teach me how I might probe the pins to determine the pinout for the connector, or at least tell me the thought process that is used to determine what is what?

                            Comment


                              #15
                              Your fist step will be to identify all GND and VCC pins on the connector. You can easily do that by using a LED, a 3V batterie and two wires or use a multimeter. Then you should test the pins of the expansion against the data-pins of the memory (should be 36 with 32 data lines and 4 parity lines). This will help you reducing the number of lines that have to be tested. The data-lines are directly connected to the expansion connector on the Inboard 386. The raining lines are most likely routed through resistors and (partly) through the logic ICs. The address lines may be inverted by the logic chips. The RAS and CAS signals can be identified by the lines connected to the respective lines of the memory chips. The RAS and CAS signals are generated on the Inboard expansion by combining them out of several signals on the expansion connector. If any signal lines are still not identified/not connected, you may have additional signals available (maybe intended for a 4Mb expansion). Its a bit of work but it is pretty easy to do.

                              I don't own a Inboard AT and cannot help you with these steps.

                              -Jonas

                              Comment

                              Working...
                              X