Where are the pullups for the Commodore 64 keyboard matrix lines?6510 I/O port initialisationWhat use are the data direction registers in the MOS 6526 CIA?How to create a switchless multi-system 2 button Atari joystick?

Is it possible for underground bunkers on different continents to be connected?

Using roof rails to set up hammock

How can I detect if I'm in a subshell?

Can a 40amp breaker be used safely and without issue with a 40amp device on 6AWG wire?

Can I give my friend the sour dough "throw away" as a starter to their sourdough starter?

Do items with curse of vanishing disappear from shulker boxes?

SQL Server has encountered occurences of I/O requests taking longer than 15 seconds

Digital signature that is only verifiable by one specific person

Print the phrase "And she said, 'But that's his.'" using only the alphabet

How do I say what something is made out of?

My parents claim they cannot pay for my college education; what are my options?

Converting 3x7 to a 1x7. Is it possible with only existing parts?

Is it possible to have battery technology that can't be duplicated?

Does PC weight have a mechanical effect?

How to address players struggling with simple controls?

How to remove multiple elements from Set/Map AND knowing which ones were removed?

How do credit card companies know what type of business I'm paying for?

Threading data on TimeSeries

Should I worry about having my credit pulled multiple times while car shopping?

Are there any rules for identifying what spell an opponent is casting?

Idiom for 'person who gets violent when drunk"

Struggling to present results from long papers in short time slots

Can I appeal credit ding if ex-wife is responsible for paying mortgage?

I sent an angry e-mail to my interviewers about a conflict at my home institution. Could this affect my application?



Where are the pullups for the Commodore 64 keyboard matrix lines?


6510 I/O port initialisationWhat use are the data direction registers in the MOS 6526 CIA?How to create a switchless multi-system 2 button Atari joystick?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








5















I'm looking at the schematic and the Service Manual for the Commodore 64. I can't seem to find a schematic for the keyboard itself.



It seems clear that the control port 1 joystick has normally open switches for the four directions and the fire button, and presses are detected by the switches closing and shorting lines COL0 through COL4 (connected to PA0 through PA4 on 6256 CIA U1) to ground, thus pulling them down to 0 V. So something must be pulling these lines up to +5 V when they're not shorted to ground.



Similarly, the description of keyboard scanning says that you drive one of COL0 through COL7 low and the rest high via output on PA0 through PA7, and then see which of ROW0 through ROW7 is brought low by a key in the matrix shorting one of those lines to the low COLn line, via reading PB0 through PB7. Again, this means that something must be pulling up ROW0 through ROW7 when they are not shorted to ground.



There are no pullup resistors for this in the motherboard schematic. The keyboard does have +5 V going to it; are there pullup resistors on the keyboard PCB?










share|improve this question
























  • For more information on the pullups and their original purpose (not how they're used here) see answers to this question.

    – Curt J. Sampson
    Jun 1 at 3:22

















5















I'm looking at the schematic and the Service Manual for the Commodore 64. I can't seem to find a schematic for the keyboard itself.



It seems clear that the control port 1 joystick has normally open switches for the four directions and the fire button, and presses are detected by the switches closing and shorting lines COL0 through COL4 (connected to PA0 through PA4 on 6256 CIA U1) to ground, thus pulling them down to 0 V. So something must be pulling these lines up to +5 V when they're not shorted to ground.



Similarly, the description of keyboard scanning says that you drive one of COL0 through COL7 low and the rest high via output on PA0 through PA7, and then see which of ROW0 through ROW7 is brought low by a key in the matrix shorting one of those lines to the low COLn line, via reading PB0 through PB7. Again, this means that something must be pulling up ROW0 through ROW7 when they are not shorted to ground.



There are no pullup resistors for this in the motherboard schematic. The keyboard does have +5 V going to it; are there pullup resistors on the keyboard PCB?










share|improve this question
























  • For more information on the pullups and their original purpose (not how they're used here) see answers to this question.

    – Curt J. Sampson
    Jun 1 at 3:22













5












5








5








I'm looking at the schematic and the Service Manual for the Commodore 64. I can't seem to find a schematic for the keyboard itself.



It seems clear that the control port 1 joystick has normally open switches for the four directions and the fire button, and presses are detected by the switches closing and shorting lines COL0 through COL4 (connected to PA0 through PA4 on 6256 CIA U1) to ground, thus pulling them down to 0 V. So something must be pulling these lines up to +5 V when they're not shorted to ground.



Similarly, the description of keyboard scanning says that you drive one of COL0 through COL7 low and the rest high via output on PA0 through PA7, and then see which of ROW0 through ROW7 is brought low by a key in the matrix shorting one of those lines to the low COLn line, via reading PB0 through PB7. Again, this means that something must be pulling up ROW0 through ROW7 when they are not shorted to ground.



There are no pullup resistors for this in the motherboard schematic. The keyboard does have +5 V going to it; are there pullup resistors on the keyboard PCB?










share|improve this question
















I'm looking at the schematic and the Service Manual for the Commodore 64. I can't seem to find a schematic for the keyboard itself.



It seems clear that the control port 1 joystick has normally open switches for the four directions and the fire button, and presses are detected by the switches closing and shorting lines COL0 through COL4 (connected to PA0 through PA4 on 6256 CIA U1) to ground, thus pulling them down to 0 V. So something must be pulling these lines up to +5 V when they're not shorted to ground.



Similarly, the description of keyboard scanning says that you drive one of COL0 through COL7 low and the rest high via output on PA0 through PA7, and then see which of ROW0 through ROW7 is brought low by a key in the matrix shorting one of those lines to the low COLn line, via reading PB0 through PB7. Again, this means that something must be pulling up ROW0 through ROW7 when they are not shorted to ground.



There are no pullup resistors for this in the motherboard schematic. The keyboard does have +5 V going to it; are there pullup resistors on the keyboard PCB?







commodore-64 mos-6526






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited May 30 at 23:37







Curt J. Sampson

















asked May 30 at 8:00









Curt J. SampsonCurt J. Sampson

411110




411110












  • For more information on the pullups and their original purpose (not how they're used here) see answers to this question.

    – Curt J. Sampson
    Jun 1 at 3:22

















  • For more information on the pullups and their original purpose (not how they're used here) see answers to this question.

    – Curt J. Sampson
    Jun 1 at 3:22
















For more information on the pullups and their original purpose (not how they're used here) see answers to this question.

– Curt J. Sampson
Jun 1 at 3:22





For more information on the pullups and their original purpose (not how they're used here) see answers to this question.

– Curt J. Sampson
Jun 1 at 3:22










1 Answer
1






active

oldest

votes


















7














No external pull-up is needed as the CIA already got internal circuitry to do so.




Port A and B have passive pull-up devices as well as active pull-ups




Taken from the CSG 6526 data sheet, section "I/O Ports" on page 5.






share|improve this answer

























    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "648"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    noCode: true, onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f11156%2fwhere-are-the-pullups-for-the-commodore-64-keyboard-matrix-lines%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    7














    No external pull-up is needed as the CIA already got internal circuitry to do so.




    Port A and B have passive pull-up devices as well as active pull-ups




    Taken from the CSG 6526 data sheet, section "I/O Ports" on page 5.






    share|improve this answer





























      7














      No external pull-up is needed as the CIA already got internal circuitry to do so.




      Port A and B have passive pull-up devices as well as active pull-ups




      Taken from the CSG 6526 data sheet, section "I/O Ports" on page 5.






      share|improve this answer



























        7












        7








        7







        No external pull-up is needed as the CIA already got internal circuitry to do so.




        Port A and B have passive pull-up devices as well as active pull-ups




        Taken from the CSG 6526 data sheet, section "I/O Ports" on page 5.






        share|improve this answer















        No external pull-up is needed as the CIA already got internal circuitry to do so.




        Port A and B have passive pull-up devices as well as active pull-ups




        Taken from the CSG 6526 data sheet, section "I/O Ports" on page 5.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited May 30 at 8:17

























        answered May 30 at 8:10









        RaffzahnRaffzahn

        60.7k6148249




        60.7k6148249



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Retrocomputing Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f11156%2fwhere-are-the-pullups-for-the-commodore-64-keyboard-matrix-lines%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            How to write a 12-bar blues melodyI-IV-V blues progressionHow to play the bridges in a standard blues progressionHow does Gdim7 fit in C# minor?question on a certain chord progressionMusicology of Melody12 bar blues, spread rhythm: alternative to 6th chord to avoid finger stretchChord progressions/ Root key/ MelodiesHow to put chords (POP-EDM) under a given lead vocal melody (starting from a good knowledge in music theory)Are there “rules” for improvising with the minor pentatonic scale over 12-bar shuffle?Confusion about blues scale and chords

            What if the end-user didn't have the required library?What is setup.py?What is a clean, pythonic way to have multiple constructors in Python?What does Ruby have that Python doesn't, and vice versa?What is the reason for having '//' in Python?How do I create a namespace package in Python?How to package shared objects that python modules depend on?setuptools vs. distutils: why is distutils still a thing?Navigation in Windows 10 vs code not going to virtualenv library when the same library is installed at user levelPython create package for local usePackaging a project that uses multiple python versionsWhy is permission denied on pip install except for when “--user” is included at end of command?

            Why did Thanos need his ship to help him in the battle scene?Which actor plays Thanos in the Avengers mid-credits scene?Are there economic implications portrayed in comics where the buildings and cities are ruined almost daily?Old X-Men comic where team travels to alien world with a ring-like sun that needs recharging?Why does Ego need help sleeping?Is there an objective answer to who “the strongest Avenger” is?How did Banner get unstuck?Why did Thanos get hit?How did Thanos (or anyone) know the Infinity Stones would give him this power?Did Thanos leave Eitri alive for his after-sales service?In Avengers 1, why does Thanos need Loki?