Objetivos
Entrada e Saída
Diferente de 8086
e semelhante ao 68K, o 65816 não utiliza o conceito de portas de entrada e saída(I/O)
para se comunicar com periféricos para trocar informações. Essa troca é realizada por intermédio
de registradores mapeados em memória.
Tab. 1: Mapeamento
| Banco |
Endereço |
Tamanho |
Uso |
| 00-3F |
$0000-$1FFF |
8K |
RAM |
|
(...) |
(...) |
(...) |
|
$2000-$20FF |
256B |
I/O |
|
$2100–$21FF |
4K |
I/O |
|
$3000–$3FFF |
256B |
I/O |
|
$4000–$40FF |
256B |
I/O |
|
$4100–$41FF |
256B |
- |
|
$4200–$44FF |
768B |
I/O |
|
(...) |
(...) |
(...) |
Esse tipo de registrador possui um endereço fixo em memória para servir como um canal destinado
à leitura e/ou escrita de dados. Seu tamanho tamanho em bits pode variar de acordo com o
hardware "ligado" ao 65816 sendo os
tipos fundamentais
8 e 16-bits utilizados.
As instruções de Load e Store são responsáveis pela escrita e leitura desses
registradores. Essas instruções serão vistas em Load e Store.
Ex:
STA $2000
STX $2002
Abaixo, alguns exemplos de dispositivos e outros processadores que podem utilizar registradores
mapeados em memória:
- Mouse
- Teclado
- Joystick
- Áudio
- Vídeo
O uso, definição de endereço e outras configurações sobre registradores mapeados em memória
são de total responsabilidade do hardware que utiliza um processador 65816 como processador
principal.
Os periféricos ligados ao 65816 podem precisar de um intervalo de tempo para o retorno da
informação processada tanto na saída como na entrada de dados. Sendo assim, um delay
utilizando a instrução NOP pode ser utilizado.
Ex:
STA $2001 ;($2001) <- A
NOP ;delay
NOP
;tratamento dos dados
Histórico de atualizações
- 26/02/2026 - versão inicial: entrada/saída e delay
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.