Mod region Sega Saturn SIN Interruptores

Contenido

Aviso

No me hago responsable de posibles averías en vuestras consolas al realizar la modificación, ya sea por fallos en el diseño de la placa, errores de código...

Todo lo mostrado es teórico.

Aún no lo he probado con una Sega Saturn.

Introducción

Después de comprar una Saturn averiada muy muy barata, me he decidido a realizar el mod de región.

Como he conseguido la consola tan barata, tengo pensado modificarla manteniendo la estética de la consola lo más fiel posible a la original.

Tengo en mente preparar dos modificaciones;

  • Saturn Region: Modificamos la región y los Hz de la consola desde el botón de reset, desde el móvil por Bluetooth o desde el gamepad de la consola.
  • Saturn BT: Crearé unos módulos que se conectarán a los puertos de mandos de la consola y soportará mandos bluetooth..

Mod

Me basaré en el mod de cambio de región sin interruptores.

Ventajas del mod

  • Económico: Una placa Arduino en Aliexpress sale por el mismo precio que comprar el microchip para hacer la modificación sin palancas (menos de 2€) y mucho más barato que comprar una PCB con todo montado (10€).
  • Fácil programación: No hay que usar programadores para programar Arduino. Con un cable USB y el IDE oficial de Arduino se programa en menos de 1 minuto.
  • Funciones: Se pueden añadir o quitar funciones fácilmente modificando el código.
  • Más opciones: Aparte de modificar la región con el botón de reset, también se puede hacer desde el móvil o el gamepad de la consola.

Materiales (provisional)

  • Saturn Region:

Arduino-uno-r3.jpg Arduino Uno o equivalente.

Modulo-bluetooth-hc-06.jpg Módulo Bluetooth en modo esclavo.

4 Resistencias de 220ohms.

1 Resistencia de 1K.

1 Resistencia de 2K.

2 Resistencia de 10K.

1 Led RGB.

Pines para pinchar en la placa Arduino.

Funcionamiento

Para hacer el cambio de region o reiniciar la consola dispondremos de tres modos:

  • Botón de reset de la consola.
  • Móvil.
  • Gamepad.

Botón reset de la consola

Reiniciar consola

Pulsar el botón de reset menos de 1.5 segundos.

Cambio de región

Mantener pulsado el botón de reset más de 1.5 segundos.

El led se pone a parpadear después de 1.5 segundos de la pulsación de reset.

Mientras se mantiene pulsado el botón de reset el led irá cambiando de color cada 1.5 segundos mostrando la nueva región.

  • Color azul: Consola Pal 50Hz.
  • Color morado: Consola Pal 60Hz.
  • Color rojo: Consola Jap.
  • Color verde: Consola Usa.


Al soltar el botón de reset,cambia la región, el color del led se quedará fijo y se reinicia la consola con la nueva región.

Móvil

Nos comunicaremos por Bluetooth con el gestor de región.

Nos bajamos de la Play Store (en Android) la aplicación gratuita "Serial Bluetooth Terminal" (aunque puedes usar cualquier otra), nos conectamos con el gestor de región y ya podremos ir enviando comandos.

Lista de comandos Saturn Region:

  • #0# Resetea la consola.
  • #1# PAL 50Hz.
  • #2# PAL 60Hz.
  • #3# JAP.
  • #4# USA.

También se pueden configurar los botones que tiene la aplicación para que envie los comandos al pulsarlos.

Gamepad la consola

Reiniciar consola

Pulsar los botones Start, A, B, y C menos de 1.5 segundos.

Cambio de región

Mantener pulsado los botones Start, A, B, y C más de 1.5 segundos.

El led se pone a parpadear después de 1.5 segundos de la pulsación de los botones Start, A, B, y C.

Mientras se mantiene pulsado los botones Start, A, B, y C, el led irá cambiando de color cada 1.5 segundos mostrando la nueva región.

  • Color azul: Consola Pal 50Hz.
  • Color morado: Consola Pal 60Hz.
  • Color rojo: Consola Jap.
  • Color verde: Consola Usa.


Al soltar los botones Start, A, B, y C, cambia la región, el color del led se quedará fijo y se reinicia la consola con la nueva región.

Shield

Se puede montar la placa Arduino sin Shield, pero queda todo mas estable y ordenado con la shield.

  • Saturn Region:

Arduino Uno

Dentro de la shield tenemos distintos pines donde tenemos que soldar los cables que irán a la placa de la Saturn.

Lista de pines

Alimentación Arduino

  • GND: Al GND de la fuente de alimentación de la consola.
  • VIN: A los 5V de la fuente de alimentación de la consola.

BT

Pines para conectar el módulo Bluetooth y poder recibir ordenes desde el móvil.

  • GND: Al GND del módulo Bluetooth.
  • RX: Al RXD del módulo Bluetooth.
  • TX: Al TXD del módulo Bluetooth.
  • 5V: Al VCC del módulo Bluetooth.

GAMEPAD

Pines que se conectan al conector del gamepad del player1 de la consola. Aun falta probar donde deberían conectarse. Con esta conexión conseguimos cambiar la región y Hz desde el gamepad. Si no se va a usar esta opción, hay que poner el selector de "SELECT GAMEPAD" en "OFF", si no, tendremos lecturas erróneas.

  • D0: Al pin Data 0 del conector de control 1
  • D1: Al pin Data 1 del conector de control 1
  • D2: Al pin Data 2 del conector de control 1
  • D3: Al pin Data 3 del conector de control 1
  • S0: Al pin Select 0 del conector de control 1
  • S1: Al pin Select 1 del conector de control 1
  • 5V IN: Al pin +5v de retorno del conector de control 1

Led RGB

Led que sustituirá al led original de encendido de la consola. Según el color, será la región seleccionada.

  • A: Al ánodo del led.
  • B: Al azul del led.
  • G: Al verde del led.
  • R: Al rojo del led.

Jumpers

Necesarios para hacer el cambio de región.

  • JP6: Al jumper JP6 de la Saturn.
  • JP10: Al jumper JP10 de la Saturn.
  • JP12: Al jumper JP12 de la Saturn.
  • Hz: Al jumper que configura los Hz de la salida de video de la Saturn.

Botón reset

Estos pines es para saber cuando pulsamos el botón de reset y resetear la consola. Si no se conecta, el botón reset no funcionará para cambiar de región y tendremos que cambiar la region por otro método, además de tener que resetear la consola con el botón reset para que el cambio de región tenga efecto.

  • RESET IN: A la salida del botón reset de la consola.
  • RESET OUT: A la pista de salida del botón reset de la consola.

Pruebas

He probado el funcionamiento (sin conectar a la consola y sin shield):

  • Botón RESET: Funciona correctamente.
  • Bluetooth: Funciona correctamente.
  • Gamepad: No lo he probado.

Sketch

Sketch que debemos meter en la placa Arduino.

Si veis algún fallo o alguna posible mejora avisad y mejoramos el código.

Tenéis el sketch para descargar al final del hilo.