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

Ever run into this? ROM data lines mismatched vs CPU

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

    Ever run into this? ROM data lines mismatched vs CPU

    The SYSCOM II Apple II+ clone I've been working on is weird.

    The ROMs data lines are wired like this:

    Code:
    CPU D0 -- ROM D7
    CPU D1 -- ROM D1
    CPU D2 -- ROM D2
    CPU D3 -- ROM D4
    CPU D4 -- ROM D3
    CPU D5 -- ROM D5
    CPU D6 -- ROM D6
    CPU D7 -- ROM D0
    Maybe they did this on purpose to avoid copyright somehow?
    In the end the ROMs are almost identical to Apple's.

    I dumped the ROMs and was confused - I expected almost identical to Apple II+ ROMs, but they are completely different.

    And they don't match what the computer sees in monitor either.

    I first assumed I goofed up the wiring on the ROM dumper, but no - dumped some other ROMs and they matched the expected images exactly.

    Then assumed it was address lines not as expected, but nope - cheap logic analyzer on the data lines showed the expected ROM did send 1 thing out and the CPU got something different.

    Ahah, take another look at comparing the binary of the monitor dump and the ROM dump and figure out the line flipping.

    Sheesh

    #2
    I think there was a clone of the ZX-80 that did something similar to conceal that the ROM was copied.

    Comment


      #3
      If you think about it, the address and data line labels on a PROM are largely arbitrary. We assume that D0 is D0 because that datasheet says it is.
      Not the case, however, with DRAM, where multiplexed addressing matters to some extent.
      Reach me: vcfblackhole _at_ protonmail dot com.

      Comment


        #4
        The original SpeedDOS in the Commodore 1541 drive did the same. There was also the antivirus program ThunderByte that had its own card with an EPROM on it and means to disable writing to a floppy disk and/or IDE HDD. You may already have guessed, (some of) the data lines have been mixed up as well. I still use some of these cards for my 286+ machines to install the Universal BIOS so I could handle bigger HDDs. But I had to write a little program first that mixed up the bits before I could burn the EPROM.
        With kind regards / met vriendelijke groet, Ruud Baltissen

        www.baltissen.org

        Comment


          #5
          Originally posted by Chuck(G) View Post
          If you think about it, the address and data line labels on a PROM are largely arbitrary. We assume that D0 is D0 because that datasheet says it is.
          Not the case, however, with DRAM, where multiplexed addressing matters to some extent.
          Hm, would the same be true for address lines, at least on reading ROM/EPROM ?

          I wounder what the designer would think about this thread 40-ish years later. Fooled another newb for a while, haha!

          Comment


            #6
            Sure, I ran into this when I decoded the Radio Shack KSG Tech Lowercase EPROM board. The address Lines were going to different
            Address Pins on the EPROM and I used an excel spreadsheet to figure out the addressing. It was interesting that they spent that much
            effort to use the same Characters in the EPROM.

            Larry

            Model1CharGen.png

            Comment


              #7
              It may not have been effort to obfuscate the ROM, it may have been physical layout on the board. I often use the same trick with SRAM chips where mixed address and data lines don't really matter. Wire the lines to the bus in the most convenient manner, not worrying about order, fix the ROM image once you know the layout.

              Comment


                #8
                SRAM, OK, I do the same trick with my designs. But ROM? Assuming that the lines are mixed differently for every design means a different program to fix the image. If others start using your design it means you have to provide that program. But if users have to program a new EPROM because of (own) enhancements and bug fixing and therefore have to use this program every time.... I personally don't consider this user friendly. (no offense meant)
                With kind regards / met vriendelijke groet, Ruud Baltissen

                www.baltissen.org

                Comment


                  #9
                  I'm with Jim on this one--avoid having to do fancy trace routing can mean a more compact PCB and that means money. I can see where having the PROM bits in reverse order from the datasheet may make sense.

                  A similar situation obtains when, say, a LFSR is used instead of a counter--all the bits get covered, just not in consecutive order. May simplify the design considerably.
                  Reach me: vcfblackhole _at_ protonmail dot com.

                  Comment

                  Working...
                  X