Hudson Soft HuC6280
# Hudson Soft HuC6280

El HuC6280 es un microprocesador de 8 bits desarrollado por la desaparecida empresa japonesa Hudson Soft. Se trata de una versión mejorada de la CPU WDC 65C02. Los equipos más conocidos por usar el HuC6280 son las videoconsolas PC Engine fabricadas por NEC Corporation, aunque fue ampliamente usado en Arcades.

## Descripción

EL HuC6280 contiene un núcleo 65C02 con varias instrucciones adicionales y una serie de funciones periféricas internas como un Programmable Interrupt Controller, una unidad de manejo de memoria, un timer, un puerto paralelo de Entrada/salida de 8 bits, y un PSG (Programmable Sound Generator). El procesador funciona a dos velocidades, 1,7897725 MHz y 7,15909 MHz.

Físicamente viene en un en capsulado QFP de 80 pines

## Mapa de memoria

El HuC6280 con sus 8 bits puede direccionar 64 KB pero gracias a su MMU integrado es capaz de manejar 2048 KB de memoria física. Su unidad de manejo de memoria divide la memoria física en 256 segmentos de 8 KB. El espacio de direcciones lógicas se divide en las siguientes páginas:

| Registro | Página | Dirección CPU Lógica |
| - | - | - |
| MPR0 | 0 | $0000-$1FFF |
| MPR1 | 1 | $2000-$3FFF |
| MPR2 | 2 | $4000-$5FFF |
| MPR3 | 3 | $6000-$7FFF |
| MPR4 | 4 | $8000-$9FFF |
| MPR5 | 5 | $A000-$BFFF |
| MPR6 | 6 | $C000-$DFFF |
| MPR7 | 7 | $E000-$FFFF |

Cada segmento de memoria física es de 8 KB y se página para que sea accesible por la memoria lógica de la CPU. Esta asociación se realiza mediante los registros MPR0- MPR7. Cada registro contiene un índice de 8bits ($00-$FF) del segmento la memoria física mapeada en esa región de memoria lógica correspondiente. Se utilizan dos instrucciones especiales para acceder a estos registros:

* TAMi : transfiere el contenido del acumulador (A) en un registro MPR (0-7).
* TMAi : transfiere un registro MPR al acumulador.

## PSG del HuC6280

El PSG ofrece 6 canales de sonido, que puede ser convenientemente emparejados según la funcionalidad que ofrecen

La reproducción de forma de onda es la más común y permite un muestreo de 32 bytes, 5 bits sin signo que se reproduce de fondo a las frecuencias elegidas. La frecuencia modulada aprovecha esto un paso más, permitiendo que la frecuencia de reproducción se ajuste dinámicamente de acuerdo a un patrón especificado. El ruido blanco se utiliza para simular instrumentos de percusión y efectos, como explosiones, mediante una onda cuadrada pseudoaleatoria.

Alternativamente, cada canal puede conmutarse a un modo "Direct D/A" en el que el programador puede enviar datos directamente al mezclador de sonido, permitiendo que se generen patrones de sonido más complejos, como el habla. Inevitablemente, esto requiere más esfuerzo de programación y tiempo de CPU.

