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

Commodore 8032 add-on board - SuperPET

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

    #16
    Originally posted by daver2 View Post
    I only have the hobbyist copy of Eagle so 160x100 mm is the maximum size of the PCB I can design - and I tend to space out my components quite a lot rather than cram then in.
    Hi Dave,
    That's a real restriction if the board size is limited to about 6" x 3 1/2". At least it will fit in the 8296 case. Have you looked at Eagle Light? There's no size limit, but there must be other limits. I think one can have only 2 signal layers. But then a multilayer board would be more expensive. Look into it, We will pass the hat for the cost. It is about $70. I have seen boards with undue size limits like the PETVet with sockets almost touching and super thin traces. Let's try to produce a board that's easy to build and checkout.
    -Dave
    Last edited by dave_m; August 30, 2015, 10:16 AM. Reason: typo

    Comment


      #17
      Has anyone tried Kicad? http://kicad-pcb.org/
      And for making pcbs there is http://dirtypcbs.com/

      Steve
      WANTED: CBM-II hardware or software, PET software

      Comment


        #18
        I've been using Fritzing with great success.

        I've not used any other software, previously I did everything manually. So I suspect there might be something else easier to use, but since I can do everything I need to do already, I'm not interested in learning a different package.

        Fritzing is limited to 2-sided PCBs, at least for now, but I haven't run into any other limitations.
        Be polite and I may let you live.

        https://www.youtube.com/playlist?lis...5NBVfKX5471R9U

        Comment


          #19
          Wow, that's a extremely cool project!. Keep it up!

          About the CPU, the old & trusty 6809 can be easily swapped with the HD6309, it can give an extra oomph to the board.; also, can the SuperPET's 6809 be clocked to 2Mhz?

          Comment


            #20
            Originally posted by jltursan View Post
            Wow, that's a extremely cool project!. Keep it up!

            also, can the SuperPET's 6809 be clocked to 2Mhz?
            Yes, it looks like daver2 has both circuit design and printed circuit experience. I hope we can keep momentum without real life priorities stopping us as can happen at any time.

            Since the 6809 must interface with the PET main board I/O like the 6545 CRTC and PIAs, the 6502 and 6809 must share the same clock at 1 MHz.

            Comment


              #21
              Originally posted by sjgray View Post
              I'm wondering if it's possible to design the board so it's compatible with the 8296 motherboards? The 8296 comes standard with 128K ram, so that may pose a problem.
              Steve,
              I was trying to see if the extra RAM on the 8296 might present a problem, but looking at the SuperPet schematic, I can't even see where it turns off the normal 32K PET memory in the 6809 mode. Do you know if there is a mod in the SuperPet to turn off main board RAM? I see where it controls NOROM to disable PET ROM, but not where it disables the main board RAM. I am puzzled.
              -Dave

              Comment


                #22
                Originally posted by dave_m View Post
                Steve,
                I was trying to see if the extra RAM on the 8296 might present a problem, but looking at the SuperPet schematic, I can't even see where it turns off the normal 32K PET memory in the 6809 mode. Do you know if there is a mod in the SuperPet to turn off main board RAM? I see where it controls NOROM to disable PET ROM, but not where it disables the main board RAM. I am puzzled.
                -Dave
                As far as I know, normal SuperPET 6809 mode uses banking. It maps parts of the 64K ram from the superpet board into the 4K block at $9000. It doesn't disable the main 32K ram. Now, with the TPUG MMU and OS/9 it is doing something to allow all 64K ram to be visible to the 6809 if I recall.

                Take a look here:
                http://mikenaberezny.com/hardware/su...super-os9-mmu/
                http://www.6502.org/users/andre/petindex/superpet.html

                Steve
                WANTED: CBM-II hardware or software, PET software

                Comment


                  #23
                  Originally posted by sjgray View Post
                  As far as I know, normal SuperPET 6809 mode uses banking. It maps parts of the 64K ram from the superpet board into the 4K block at $9000. It doesn't disable the main 32K ram. Now, with the TPUG MMU and OS/9 it is doing something to allow all 64K ram to be visible to the 6809 if I recall.
                  OK, I see. The 6809 uses the 32K main board RAM as its primary RAM. I had assumed it just used its own 64K RAM.

                  I will look at your links for information and then ask more questions.
                  Thanks,
                  Dave

                  Comment


                    #24
                    Hi guys,

                    Lots to answer here... Just about recovered from my jet lag! Great vacation in New York (city and State) - although I did miss out on a visit to RICM. Maybe next time?

                    I like the idea of using a 64K*8 * 0.3" package - but I can't find anyone that sells them 'new' or NOS that I can trust. Not really happy about e-bay suppliers. If I want to offer a kit of parts or a built and tested unit in the (very distant) future - I would need a more guaranteed supply of parts. So far most of the parts I am looking at are new - with the exception of the 6809 that I can source from a major reputable supplier in the UK at a reasonable price (although they are not an inexhaustible stock - but this is where we are with this particular device). So I am still eating towards two off 32K*8 CMOS static RAMS and the extra board real estate.

                    The 6502 was never meant to be operated in the way it is with the SuperPET add-on board. It was never 'designed' to be powered down whilst having logic signals applied to its address, data and control bus. It seems to work - but could be causing damage to the 6502 processor itself. I was recently called in at work to identify a very strange computer fault which seemed to be address and data related. Upon investigation, one of the bus terminators did not have a connection to +5V and GND and was, therefore, acting as a resistor network between the buss's data, address and control lines. Swapping the terminator for a new one solved the problem. This is effectively what a 'powered down' 6502 is - it is an unstable, non-designed part connected to the 6809s address, data and control bus. It seems to work (more by luck and trial than by design). Hence the reason I am looking to use the newer 6502 with a bus enable (BE) pin specifically designed to overcome this problem. I can leave the 6502 powered up and tri-state it (thus also avoiding the switched +5V regulator and the necessity for the unregulated +9V supply line).

                    Agreed, the SuperPET contained a 'special' character generator (with 'twice' the capability of the standard character generator for the additional characters etc.). This was more a 'note to self' so it didn't get forgotten...

                    I am not too bothered about the PCB package etc. This is 'implementation' detail - and (at the moment) I want to concentrate on the functional requirements. Incidentally, Eagle Light is only $69 but can only do a board that is smaller in size than Eagle Hobbyist! To do anything larger than Eagle Hobbyist will require me to shell out $1600 ish. I have an 'alternative' route - so we don't have to concern ourselves with the details of this. Needless to say at work I am getting a 'lot' of boards remanufactured that are circa. 1982/3. I finished the design pack off before I went on vacation - and saw a picture of the first PCB off the production line today - exciting...

                    Running the 6909 faster will invariably cause problems with the PET hardware itself - as we will be trying to 'supercharge' the PET bus to 2 MHz. Whilst I am quite happy to look at this - my gut feeling is that it won't work (but I say that a lot at work and then pull a rabbit out of the hat!).

                    When the SuperPET is in 6809 mode it permanently 'grounds' the /NOROM signal to disable the standard PET ROMS - but you are quite correct - this doesn't disable the standard PET RAM (32K), screen area, or I/O devices within the address range $E800 .. $EFFF. The 6809 uses the PET address space to communicate with the keyboard and screen amongst other things. If memory serves me correctly, on start-up you can load a specific Waterloo language into the banked 6809 RAM (say PASCAL) and then 'write protect' it. Where is the user program stored then? The answer must be in the PETs 'standard' 32K memory. The 64K RAM on the SuperPET board is mapped into $9xxx so the PET (in 6502 mode) should be able to use the SuperPET bank switched memory itself if there is any software specifically written to handle this. Someone should be able to prove this who owns a SuperPET by poking to the bank register and $9xxx to see if this is the case. It should be.

                    The 6809 with the TPUG MMU is an interesting beast though! It looks a simple design - but is quite ingenious... When switched into OS9 mode - $9xxx is 'jammed' onto the Standard PET address bus (thus 'faking' an access to the banked switched RAM area of the SuperPET) whilst the SuperPET RAM 'sees' the full 16-bit address lines from the 6809 (the 4 bits of the bank register being bypassed by the 6809s A15..A12). In this mode, the 6809 can ONLY access its 64K RAM. It can't now access its own ROM, the standard PET RAM or even the PETs I/O space or screen memory. So how does the 6809 now communicate with the user via the screen and keyboard you may ask? It forces the bank register (including the OS9 bit) to be reset by executing a SYNC instruction which is decoded by the TPUG MMU logic. This decode can (optionally) be set to trigger an /FIRQ (fast interrupt request) to the 6809 processor. Simple logic - quite clever...

                    Back to the more mundane:-

                    I have been looking at the SuperPET clock circuit again and I think I will re-look at using the original design (with the 74LS123 - U2) that was used in the multi-board SuperPET. This means that the PHI0 clock is used (from the 6502 socket) to generate the quadrature E and Q clocks for the 6809. The specifications for the 6809 imply that the E pin is non-TTL compliant (hence the probable reason for the inclusion of the two 4049 buffers in series from U1). This means that we wouldn't need a 'flying lead' from a 4 or 16 MHz clock - just the standard clock fed to what would be the 1 MHz 6502. I will need to recalculate the R and C value(s) for the 74LS123 - as these values change from one manufacturer of the 74LS123 device to another to get a specific timed pulse (interesting - but true)...

                    Why (on the Combo SuperPET) Commodore used a standard 74LS164 TTL device to generate the E clock for the 6809 CPU (when it isn't TTL compliant) I don't know?

                    Dave

                    Comment


                      #25
                      At the moment we still seem to be looking at a 'standard' SuperPET (6502 + 6809) with 64K of RAM (whether 64K*8 or 2 off 32K*8 - I will look for a 'stable' supply of these parts via my supplier at work), a single EPROM (or OTP EPROM) for the Waterloo firmware, the TPUG MMU - but excluding the ACIA and associated buffers.

                      Ideally using a single +5V power supply (obtained via the 6502 socket) and the 1 MHz PHI0 clock (also obtained from the 6502 socket).

                      No NOP generator (although I am still thinking about this) - and still waiting to hear from Dave regarding further details on the functionality of the on-board switches he has asked for.

                      1 MHz operation (but will look at 2 MHz but I can't see this being an option IMHO).

                      New character generator.

                      Dave

                      Comment


                        #26
                        Originally posted by daver2 View Post
                        Yep - the ACIA wasn't extensively used by the community (only as a link to a 'host' mainframe computer) but I am sure there are a couple of programs out there that use it (but I don't think it a valuable add-on for this exercise).
                        I agree with the decision to leave off the MOS 6702 dongle. Now that the Waterloo software has been cracked, it isn't needed. The 6551 ACIA, on the other hand, is very useful and has good software support.

                        The HOSTCM protocol is not limited to mainframes anymore. The documentation for the protocol has been found and new software has been developed that allows a modern PC to act as a HOSTCM server. The Waterloo power-on menu can load programs over HOSTCM so using a SuperPET with no disk drives is possible. While PetSD is more practical these days, HOSTCM is one of the more interesting features of the SuperPET.

                        The International SuperPET User's Group produced a telecom disk that has been found. It includes several terminal programs for both 6502 and 6809 mode. That disk and a few others are available. These programs are described in the ISPUG newsletter (SuperPET Gazette).

                        There were at least two commercial terminal packages for the SuperPET. COM-MASTER, written by Dan Jeffers and distributed by ISPUG, has been found along with its documentation. The other package is PETCOM, written by Avy Moise, which has not been found yet.

                        When running TPUG's OS-9 port (Super-OS/9), a driver for the ACIA is included. This allows OS-9 programs such as terminals to use the SuperPET's serial port.

                        The PET normally does not have RS-232 capability (not even a software implementation like on the C64) so the addition of the ACIA is very useful. The SuperPET also adds an alternate "true ASCII" character set that includes braces and other characters not found in the CBM character set. The combination of the ACIA and the character set makes for a nice terminal. Both the ACIA and the alternate character set are available in 6502 and 6809 modes.

                        Originally posted by daver2 View Post
                        Incidentally, using the W65C02 means that I potentially don't need the horrid switchable 5V supply (I can keep the 6502 CPU powered all the time) and, therefore, that I don't need the +9V unregulated supply (just the regulated +5V supply is all I need if I ignore the serial converters - another reason for not incorporating the ACIA).
                        Drivers like the MAX232 are available that only require a 5V supply. Board space could be reduced by using a DB9 connector instead of a DB25.

                        The most popular fast serial cartridge on the C64/128 was the SwiftLink. It also uses the 6551. There are plans for several SwiftLink clones like the Datapump that could be used as a reference to help design an ACIA section on the SuperPET clone board. The main differences between the ACIA implementation in the SuperPET and SwiftLink is that the SwiftLink uses a double speed crystal, 3.6864 MHz for 38400 bps maximum, and is selectable between NMI and IRQ. The SuperPET uses a 1.8432 MHz crystal for 19200 bps maximum and is hardwired to IRQ.

                        Comment


                          #27
                          I agree, an RS-232 would be nice. Perhaps it can be prototyped and a board layout made to see what impact it would have on board size. Or at minimum, maybe a small expansion connector could be put on the main board and a small add-on board made available for those that want it?

                          I also believe a 2MHz 6809 option would not be feasible or practical. The ram chips on the pet motherboard most likely wont run that fast, and the I/O chips are all 1MHz versions. I know there are 2MHz versions available, but changing the master clock will also affect things such as video timing, and IEEE timing, meaning you'd have to modify the firmware as well.

                          Steve
                          WANTED: CBM-II hardware or software, PET software

                          Comment


                            #28
                            Originally posted by daver2 View Post

                            I have been looking at the SuperPET clock circuit again and I think I will re-look at using the original design (with the 74LS123 - U2) that was used in the multi-board SuperPET. This means that the PHI0 clock is used (from the 6502 socket) to generate the quadrature E and Q clocks for the 6809. The specifications for the 6809 imply that the E pin is non-TTL compliant (hence the probable reason for the inclusion of the two 4049 buffers in series from U1). This means that we wouldn't need a 'flying lead' from a 4 or 16 MHz clock - just the standard clock fed to what would be the 1 MHz 6502.
                            Wow, I hate one shots. They are noise sensitive and require a lot of keep out space around the RC components to keep noise from coupling and triggering the circuit. I think a couple of flip-flops to turn a 4 MHz clock into the quadrature 1 MHz clocks shown in the 6809 spec sheet would work best.

                            To me, Commodore used the 74164 shift register clocked at 16 MHz as a 62.5 nS delay line so they could so they would have a choice of 1 MHz clocks. They did seem to forget the +5V pull-up on the E driver.

                            Do you or Steve know if the original hardware was designed by Commodore or the University of Waterloo?
                            Last edited by dave_m; September 1, 2015, 08:16 PM.

                            Comment


                              #29
                              Originally posted by daver2 View Post
                              No NOP generator (although I am still thinking about this) - and still waiting to hear from Dave regarding further details on the functionality of the on-board switches he has asked for.
                              Dave,
                              Since space may be a premium, leave out the NOP Generator. As for the switches, I just meant moving the two external control switches to the board to save cabling, but it is not important.

                              You are getting much interest on this proposed board. Keep it up.
                              -Dave

                              Comment


                                #30
                                Originally posted by dave_m View Post
                                Do you or Steve know if the original hardware was designed by Commodore or the University of Waterloo?
                                “…SuperPET was created in Canada jointly by Commodore Business Machines Ltd., Toronto, Waterloo Computing Systems Ltd, Waterloo, Ont., and BMB Compuscience Ltd., Milton, Ont. it is being marketed throughout the world by Commodore International.”

                                Taken from info here:

                                http://seefigure1.com/2013/07/02/timeline.html

                                Steve
                                WANTED: CBM-II hardware or software, PET software

                                Comment

                                Working...
                                X