LEITURA RECOMENDADA
        
    
    
    
        
            
                
6502
            
            
                
                    O 6502(sixty-five-oh-two) é um processador de 8-bits criado por Chuck Peddle e lançado em 1975 para MOS Technology. 
                    Muito utilizado nas décadas de 70/80 em computadores, máquinas de arcade e video games.
                
             
         
     
    
        
TÓPICOS
        
    
    
        
            Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.
            
         
     
    
        ARQUITETURA
        
            Nesta parte do tutorial vamos entender os conceitos básicos do processador em relação aos seus registradores, pilha, 
            tipos de dados, organização memória entres outros. O conhecimento adquirido aqui é importante para o seguimento do tutorial.
        
        
        
     
    
        
            
            
                
                    Nesta parte do tutorial vamos ter conhecimento básico sobre o 6502 como características, uso e processadores variantes/derivados. 
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    O 6502 possue 6 registradores para armazenar informações. Nesta parte do tutorial vamos estar quais são os 
                registradores e seus usos gerais ou específicos.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    Para a manipalação de dados em nossos programas, precisamos ter conhecido do tamanho dos dados utilizados pelo 6502 bem suas características.
                
                
                    Quero aprender »
                
             
         
     
    
        
            
            
                
                    Com apenas 64KB de mémoria precisamos ter conhecimento sobre como os dados são armazenados, ter conhecimento 
                sobre páginação,  bancos de memória e outros.
                
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    Diferente de outros processadores, a Pilha do 6502 possui suas particularidades que serão estudadas nesta 
                parte do tutorial além de seu funcinamento básico.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    Para realizar movimentação de dados em memória, precisamos entender as modos de endereçamento que o 6502 nos fornece 
                para o acesso aos nossos dados. 
                
                
                    Quero aprender »
                
             
         
     
    
        
            
            
                
                    As interruções são muito importantes para manipulação de dados vindos de dispostivos ligados ao 6502. Sendo assim, 
                precisamos entender o funcionamento do VDI do 6502.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    As instruções no 6502 são formadas por bytes sequências. Cada instrução possui seu tamanho em bytes de acordo 
                com os modos de endereçamento.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    Outros assuntos relacionados ao 6502, como bugs e observações, que não se encaixam nos tópicos vistos serão
                abordados nesta parte do tutorial.
                
                
                    Quero aprender »
                
             
         
     
    
        INSTRUÇÕES
        
        
            O 6502 possui ao todos 56 instruções para a criação de softwares. Abaixo todas as instruções estão separadas por grupo e contendo a descrição, endereçamento e exemplos básicos de uso. 
            Instruções não documentadas oficialmente não serão estudadas neste tutorial.
        
     
    
        
            
            
                
                    Com as instruções de movimentação podemos movimentar entre registradores e memória. 
                As instruções LDA, LDX, LDY, STA STX e STY serão vistas nesta parte parte do tutorial.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    As instruções de tranferência são responsáveis para movimentação de dados entre registradores. Isso é feito 
                utilizando as instruções TAX, TAY, TSX, TXA, TXS e TYA.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    A pilha é utilizada para backup de dados, passagem de parâmetros e outros. 
                Para isso, as instruções conhecidas como PUSH e PULL serão estudas nesta parte.
                
                
                    Quero aprender »
                
             
         
     
    
        
            
            
                
                    Com as instruções de deslocamento podemos movimentar os bits à direita ou esquerda do registrador A ou valor em memória. 
                Para isso vamos estudar as instruções ASL e LSR. 
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    As instruções de rotação movimentam os bits à direita ou esquerda do registrador A ou valor em memória de 
                forma circular. As instruções ROL e ROR serão estudadas nesta parte. 
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    As instruções bit-a-bit são responsáveis por "setar" , "resetar" e testar bits entre o registradores A 
                e um valores de memória utilizando as instruções AND, OR, XOR e BIT. 
                
                
                    Quero aprender »
                
             
         
     
    
        
            
            
                
                    O 6502 possui apenas instruções de adição e subtração utilizadas para os cálculos aritméticos. As instruções ADC e SBC 
                são utilizadas para gerar todas os outros cálculos.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    As instruções de comparação são utilizadas na tomada de decição como nos comandos if/else feitos em linguagens de 
                alto nível. Instruções CMP, CPX e CPY serão estudadas.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    Com as intruções de incremento podemos adicionar o o valor de um registrador ou um valor de memória em uma unidade. 
                Serão estudadas as instruções INC, INX e INY.
                
                
                    Quero aprender »
                
             
         
     
    
        
            
            
                
                    Com as intruções de decremento podemos subtrair o valor de um  registrador ou um valor de memória em uma unidade. 
                Serão estudadas as instruções DEC, DEX e DEY.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    O controle de fluxo no 6502 são feitos pelas instruções de desvio de execução de código. As instruções responsáveis por isso 
                são JUMP, Branch, JSR, RET e RTI que serão vistas aqui.
                
                
                    Quero aprender »
                
             
         
        
            
            
                
                    Responsáveís por "setar" e "resetar" as flags individualmente, são utilizadas em conjunto outras instruções. 
                CLI, CLC, CLD, CLV, SEC, SED, SEI serão as instruções estudadas.  
                
                
                    Quero aprender »
                
             
         
     
    
        
            
            
                
                    Todas as outras instruções do procesador 6502 que não se encaixam nos grupos estudados anteriormente serão 
                estudadas nesta parte do tutorial.  
                
                
                    Quero aprender »
                
             
         
     
    
        PROGRAMAÇÃO
        
        
            Nesta parte do tutorial vamos abordar a programação utilizando o 6502. Apenas os conceitos básicos sobre o assunto serão abordados. 
            Ao longo dos tópicos abaixo será utilizado um assembler online para reduzir a complexidade de instalação de um ambiente.
        
        
        
     
    
        
            
            
                Antes de iniciarmos o tutorial, é sempre necessário dicutirmos alguns detalhes sobre a tópicos, ferramentas 
                o outras itens.
            
            
                Quero aprender »
            
         
        
            
            
                Como em toda a linguagem de programação, vamos aprender a declara e atribuir valores a variáveis e constantes.
            
            
                Quero aprender »
            
         
        
            
            
                Nesta parte, vamos ver como podemos tomar decisões na execução de nossos programas utilizando as flags do 6502.
            
            
                Quero aprender »
            
         
     
    
        
            
            
                Vamos ver como funcionam os famosos loops em baixo nível. As intruções aprendidas em Decisão também 
                serão utilizadas nesta parte.
            
            
                Quero aprender »
            
         
        
            
            
                Assim como em linguagens de alto nível, vamos ver como são criadas e invocadas as funções utilizando o 6502.
            
            
                Quero aprender »
            
         
        
            
            
                Com as instruções aritméticas básicas, vamos aprender a somar, substrair, divir e multiplicar valores 
                nos registradores. 
            
            
                Quero aprender »
            
         
     
    
        
            
            
                Aqui vamos aprender como fazer backup de nossos registradores, recuperar e passar parâmetros utilizando a pilha.          
            
            
                Quero aprender »
            
         
        
            
            
                Nesta parte, vamos ver a como definir nosso VDI e também ver o básico sobre o tratamento de 
                interrupções NMI, IRQ e BRK.
            
            
                Quero aprender »
            
         
        
            
            
                Vamos aprender a como setar, resetar, inverter bits ou outros utiizando as instruções básicas de bit-a-bit. 
            
            
                Quero aprender »
            
         
     
    
        
            
            
                Nesta parte do tutorial, vamos ver o básiso sobre declaração de arrays e acesso aos seus elementos. 
            
            
                Quero aprender »
            
         
     
    
            
            
                
                    
                    Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
                em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.