› Foros › Retro y descatalogado › PlayStation
renzo_yugi escribió:Kasios escribió:Una cosilla. Se sabe al final que nos hace falta para los que tenemos una PSone?
No se sabe nada de momento, incluso se menciono de utilizar el invento con un disco duro sin embargo no hay nada tangible salvo para la psx
todo ok, solo con scart es el problemaamoremorte escribió:biohazard69 escribió:la consola es NTSC, desde que instale el chip quedo con esa falla
Los puntos de soldadura estan bien y no tocan ninguno de al lado?
Sardox escribió:Alguna novedad sobre algún clon chino?
Calculinho escribió:@Koolk un flashcard chino para PSX vendería como churros o crees que tiene menos demanda que los clones de N64 a 70€ o el de SD2NES a 110€? De todas las consolas retro puede ser la más popular y querida. Por otro lado tu comparación es un poco mala, las mini son emuladores metidas en una carcasa de plástico. Casi se podría decir que ha sido Nintendo la que ha copiado a los chinos porque llevan con la idea bastantes más años, en cualquier caso PSIO es un proyecto mucho más complejo y difícil.
Se dice idea equivocada, no mala. Pues si, por lo que he visto, estoy equivocado.
El problema es que si han aprendido de los flashcards chinos estarán usando placas PCB de cuatro capas y no de dos, así que aunque un piratilla quiera comprarse uno para copiarlo sólo podrá ver a simple vista las dos capas externas de la placa, pero hay dos interiores con circuitería que no se pueden ver (bueno imagino que si tienes una máquina de rayos X podrás verlas, pero no son baratas ). Es una simple teoría, no sé si han tomado esta precaución, pero imagino que sí.
Tengan 4 capas o tengan 8, solo tienen que saber la base de tipos de EEPROM a usar, a parte si hay CI por ahí con funciones específicas. Si tienen el esquema eléctrico mejor que mejor. Los chinos averiguan casi todos.
El segundo problema es que a diferencia del resto de flashcards para cualquier consola retro este requiere instalación técnica y eso tira para atrás a muchos. Con un flashcard cualquiera sólo tienes que meter backups en una tarjeta SD y meter el cartucho en la consola y listo. PSIO lamentablemente no funciona así.
Todo es un misterio hasta que se demuestre lo contrario, los chinos hacen casi todo, casi, digo casi porque no han sido capaces de clonar una PlayStation X, PS2, PS3 y puede que ni la PS4, incluido las tres X-Box.
Por cierto, si no recuerdo mal no es necesaria una PSX con puerto paralelo; pero la instalación es mucho más fácil si lo tiene de serie. Creo que el único modelo para el que no es compatible son las PSOne.
[color=#0000FF]Que curioso si no recuerdas no necesita el puerto paralelo, precisamente sin ese puerto, PSIO no funciona.[/color]
Y lo de que es caro, pues es relativo. El de N64 clon cuesta 60-70€ y debe de vender bien porque llevan años sacándolo. Creo que la amplitud del catálogo de PSX y la complejidad del cacharro justifican bien esos 100€ de los creadores del original y no de un clon. Que evidentemente si lo rebajan más o sale un clon barato yo por mi encantado, pero no lo veo ni muy caro, ni tampoco barato.
Ahora me entero que hay clon de la N64. Tendré que buscar pro Intrenet a ver como son y si son fiables.
ya que quieres rebajar el nivel de la conversación a debatir sobre el lenguaje y no sobre el tema te diré que una idea puede ser buena, mala y también puede ser acertada o equivocada e incluso puede ser desafortunada. Más allá de como puedan ser las ideas, lo que yo he dicho que es mala es tu comparación y no he dicho equivocada o errónea porque lo que quería decir era exactamente lo que he dicho: mala.
Y sí, efectivamente han copiado multitud de sistemas, pero si te fijas han sucedido dos cosas muy curiosas con su capacidad de copiar hardware. Primero hacían mejores clones en los 80 y 90 al fabricarlos por hardware que no en la actualidad vía emulación, por último no podemos decir que sepan "copiar" sistemas en la actualidad si lo que hacen es pillar un emulador público. Segundo, fueron capaces de copiar sistemas 2D por resumirlos de alguna forma y ninguno en 3D. Es decir todos sus clones se limitan a consolas de principios de los 90 y en más de 20 años no han sido capaces de sacar un PS1 o N64 clónicas. Bueno quizás no han querido copiarlas, tampoco hay que ser mal pensados. Esto es lo que hay en el presente, tu argumentación sobre "todo es un misterio..." implica jugar con el tiempo infinito y el futuro a largo plazo está muy bien y evidentemente siempre hay inventos, avances, etc. Pero creo que sobra en tanto que estamos en 2017 en un hilo de PSX y que exista la potencialidad de que en el 20XX exista un clon de PS4 no nos aporta ninguna información práctica ahora mismo.
Existe flashcard de prácticamente todas las consolas comerciales por cartuchos y cosas parecidas para Saturn y Dreamcast. Aparte de los métodos ya conocidos de PS2,Wii, WiiU, DS, 3DS, PSP, Vita, etc; de hecho ahora que lo pienso creo que la última consola que faltaba por un método similar a un flashcard era PSX.
Si te interesa el de N64 yo tengo el clon y he probado un fullset completo excepto versiones PAL no exclusivas y funciona perfectamente con tiempos de carga buenos, excepto en un par de juegos que eran casi todos japoneses. También permite emular NES y GB y carga algunos juegos de 64DD y Aleck64; por contra no permite hacer screenshoots, ni save states, tampoco usar GS sin cambiar el SO, pero si lo cambias los menús de selección se vuelven ridículamente lentos. Si eres paciente y estás al acecho puedes conseguirlo por unos 50-55€, pero lo más normal es 65-70.
No se han podido clonar la PSX porque no han podido, según he leído esta noticia hace siglos. Copian todo menos esto. Un truco que tienen desde la PS3, es que muchos compmentes exteriores como resistencias, condensadores qu ehace de puente entra la placa y ciertos dispositivos internos, lo incluyen hasta en chip o procesadores para que no pirateen. Parece que les funciona, a parte de incluir claves o key y no se que más historias.
La Everdrive 64 si se lo que es, me refiero la propia N64, no un cartucho con Micro-SD.
En cuanto al cartucho, tengo intención de hacer una buena PCB con varios EEPROM, al menos 5 para cada juego de Sonic.
Para que se hagan una idea. Hice algo para una SNES, cambiar de juego en dos EEPROM con 4 juegos pulsando Reset durante dos segundos. Tengo pocos conocimiento sobre cartuchos y EEPROM de Mega Drive. Les puedo ayudar con el mundo de la electrónica y microcontroladores.
Para que se hagan una idea de un mini proyecto. Se trata de hacer lograr que cambie de juego pulsando Reset de la SNES, mientras se muestra con un display de 7 segmentos el orden, y ésta se queda en memoria del PIC como último juego cargado, es decir, si has jugado el juego número 3, al encender la consola se inicia el tercer juego de la placa.
Esquema básico cambio de juego. Los Led amarillos van conectados en los pines de las EEPROM para poder cambiar de juego.
Esquema boceto de SNES.
Archivo .hex del PIC16F88 compilado.:020000040000FA
:10000000831603139B01103085000030860060309A
:100010008F003C200E28051A0B281D2020201420BC
:100020003120051E10280B281720850008007203B8
:10003000820702340534063409347211F20A4B2067
:10004000720824208600080082073F3406345B349F
:0E0050004F3466346D347D3407347F346F34A2
:02005E0000346C
:0200600000346A
:0E0062001E30F0004F30F100F00B3828F10B8B
:1000700035283A28000008008312031702308D004B
:10008000831603178C130C14831203170C08F20049
:10009000831203130800831603178C184D2883124C
:1000A000031702308D0072088C00831603178C131F
:1000B0000C1555308D00AA308D008C140C11831254
:0400C000031308001E
:02400E00303F41
:024204000100B7
:00000001FF
Vídeo probando en una demoboard. Led azules que vean, es el cambio de juego, simulándolo en este caso. El número del display es cada juego. Un display de 7 seg. más pequeño va incrustado al cartucho.
[youtube]E57NsB_WntI[/youtube]
Para quellos que no consiga en su local preferido de electrónica el PIC16F88, me pueden decir cual tienen preguntándoselo, lo cuentan aquí y los programo, así podrán hacer sus placas sin problemas. Los más demandados suelen ser:
PIC16F87
PIC16F627A
PIC16F628A
PIC16F648A
y algunos más.
Por si alguien encuentran otros PIC en vez del 16F88.
Hay personas que me han pedido que haga otro esquema, aún no lo he programado, piden el PIC16F630 que el que tienen junto con un decodificador 74LS48. Es más electrónica pero funciona.
Muchos ánimos quien se aventure en hacer su propia PCB. Eso si, hablando de Mega Drive. Para diseñar bien el circuito necesario para cambiar de juegos. Algunos me han pedido que haga pongan un pulsador directamente en el cartucho para seleccionar el juego. Hay mil maneras de hacer algo, así que adelante.
Mirando ejemplos, hay personas que usan microinterruptores en vez de un solo pulsador.
Como ejemplo, quedará una placa PCB así, como muestra abajo.
Un cordial saludo.
Koolk escribió:Hola:
Aquí hay una lista de modelos e información.
http://meristation.as.com/zonaforo/topic/807907/
Saludos.
Koolk escribió:@Kasios Lo que es un chip, en realidad no. Otra cosa que hace de conmutador para cambiar conexiones, abrir o cerrar ciertos circuitos.
Desde su Web oficial.
http://ps-io.com/switch_board/
Saludos.
;+-------------------------------------------------------------------------+
;¦ MYC.ASM ¦ DESENSAMBLADO DE 8MODCHIP.HEX PARA PSX2 POR MANOLO Y COMPAÑIA ¦
;+-------------------------------------------------------------------------+
; NOTA:
;* Para visualizar este fichero correctamente, usa el edit del dos
; o el bloc de notas del windows con el tipo de fuente 'terminal'
;* El objeto de realizar el desensamblado y comentado del código fuente,
; del 8modchip.hex es con el fin de que todos conozcamos como funciona
; y podamos perfeccionarlo y modificarlo entre todos a nuestro antojo.
;* Espero que al publicarlo en el foro, las mentes pensantes colaboren.
;* Desconozco quien es el autor del hex original pero le felicito por su
; programa.
;* Según aparezcan nuevas versiones del modchip se irán desensamblando
; y publicando.
;* Por favor poner vuestras experiencias en el foro para que lo vea todo
; el mundo.
;* los tiempos de las rutinas son muy críticos.
;* El codigo está más ordenado que en el 8modchip.hex pero es el mismo
; únicamete se han suprimido los caracteres de la tabla que no se usan
; para la versión europea.
;* Sugerencias de assembler o hard: jiglesias@arrakis.es
;--------------------------------------------------------------------------
; +----------------------------------+
; ¦ ESQUEMA DE CONEXIONES PIC12C509A ¦
; +----------------------------------+
;
; +------+ +------+
; ¦ +--+ ¦
; +5V ¦¦1 PIC12C509A 8¦¦ MASA
; ¦ ¦
; SWAPX ¦¦2 GPIO5 GPIO0 7¦¦ DVDIN=0
; ¦ ¦
; DVDOUT=1 ¦¦3 GPIO4 GPIO1 6¦¦ TXSCEE
; ¦ ¦
; /RESET=0 ¦¦4 GPIO3 GPIO2 5¦¦ SWAPY
; ¦ ¦
; +----------------+
;
; 1 - +5VCC - SIN COMENTARIOS
; 2 - SWAPX - SOLO LO USA LA OPCION 3 PARA LA APERTURA Y CIERRE DEL DVD
; 3 - DVDOUT - ES IGUAL A 1 CUANDO LA BANDEJA DEL DVD ESTA SALIENDO
; 4 - /RESET - ES IGUAL A 0 CUANDO PULSAMOS EL RESET DE LA PS2
; 5 - SWAPY - SOLO LO USA LA OPCION 3 PARA LA APERTURA Y CIERRE DEL DVD
; 6 - TXSCEE - ES POR DONDE TRANSMITE VIA SERIE "SCEE"
; 7 - DVDIN - ES IGUAL A 0 CUANDO LA BANDEJA DEL DVD ESTA ENTRANDO
; 8 - MASA - SIN COMENTARIOS
;--------------------------------------------------------------------------
;+---------------------------------+
;¦ PROCESADOR A EMPLEAR PIC12C509A ¦
;+---------------------------------+
P509A EQU 1 ;0=PIC12C508A 1=PIC12C509A
IF P509A
list p=12c509A
include "p12c509A.inc"
ELSE
list p=12c508A
include "p12c508A.inc"
ENDIF
;+-----------------------------------+
;¦ FUSIBLES, WASDOG, OSCILADOR ETC.. ¦
;+-----------------------------------+
__FUSES _MCLRE_OFF & _CP_OFF & _WDT_OFF & _IntRC_OSC
;+------------------+
;¦ NOTACION DECIMAL ¦
;+------------------+
radix dec
;--------------------------------------------------------------------------
;+--------------------------+
;¦ VARIABLES DE RAM INTERNA ¦
;+--------------------------+
cblock 0x0B
RAM_0B ;CONTADOR PAUSA
RAM_0C ;CONTADOR CARGA DEL DVD
RAM_0D ;CONTADOR PAUSA
RAM_0E ;CANTIDAD DE BYTES A ENVIAR DE LA TABLA
RAM_0F ;CANTIDAD DE BITS A ENVIAR DEL BYTE
RAM_10 ;NO UTILIZADA
RAM_11 ;CONTADOR W EN PAUSA Wx199
RAM_12 ;CONTADOR 199 EN PAUSA Wx199
RAM_13 ;BYTE LEIDO DE LA TABLA
RAM_14 ;PUNTERO DEL BYTE DE LA TABLA
RAM_15 ;MASCARA ESTADO DE LOS BIT DEL PUERTO
endc
;--------------------------------------------------------------------------
;+-----------------+
;¦ VECTOR DE RESET ¦
;+-----------------+
org 0x00
movwf OSCCAL ;CALIBRA EL OSCILADOR INTERNO
goto COMIENZO ;SALTA LA COMIENZO DEL PROGRAMA
;--------------------------------------------------------------------------
;+--------------------------------------+
;¦ VERSION DEL PROGRAMA (CODIGO INUTIL) ¦
;+--------------------------------------+
retlw 'M'
retlw 'A'
retlw 'N'
retlw 'O'
retlw 'L'
retlw 'O'
retlw ' '
retlw 'Y'
retlw ' '
retlw 'C'
retlw 'O'
retlw 'M'
retlw 'P'
retlw 'A'
retlw 'Ñ'
retlw 'I'
retlw 'A'
;--------------------------------------------------------------------------
;+-----------------------+
;¦ COMIENZO DEL PROGRAMA ¦
;+-----------------------+
COMIENZO
movlw b'11000010' ;CONFIGURA TMR0 PRESCALER = 1:8
option ;OSCILADOR = 4MHZ
movlw 255 ;INICIALIZA TODOS LOS PUERTOS
movwf RAM_15 ;EN ALTO Y RAM_15
tris GPIO ;
;--------------------------------------------------------------------------
;+----------------------------------------+
;¦ PAUSA DE ENCENDIDO DE 414 MILISEGUNDOS ¦
;+----------------------------------------+
movlw 2 ;100 MILISEGUNDOS
movwf RAM_0D ;
ETI_107 call PAUSA50MSG ; +
decfsz RAM_0D,F ;
goto ETI_107 ;
movlw 6 ;300 MILISEGUNDOS
movwf RAM_0D ;
ETI_10C call PAUSA50MSG ; +
decfsz RAM_0D,F ;
goto ETI_10C ;
movlw 14 ;14 MILISEGUNDOS
call PAUSAWX1MSG ;
;--------------------------------------------------------------------------
;+------------------------------------------------------------------+
;¦ LECTURA DE LAS 3 OPCIONES CON EL PULSADOR DE RESET DE LA CONSOLA ¦
;+------------------------------------------------------------------+
;OPCION1 EL RESET NO HA SIDO PULSADO
;-----------------------------------
btfsc GPIO,3 ;SI EL RESET NO ESTA PULSADO
goto OPCION1 ;SALTA A OPCION1
;OPCION2 EL RESET HA SIDO PULSADO Y SE HA SOLTADO ANTES DE 7,5 SEGUNDOS
;----------------------------------------------------------------------
movlw 150 ;
movwf RAM_0D ;
ETI_115 btfsc GPIO,3 ;
goto OPCION2 ;SALTA A OPCION2 AL LEVANTAR EL RESET
call PAUSA50MSG ;
decfsz RAM_0D,F ;
goto ETI_115 ;
;OPCION3 EL RESET HA SIDO PULSADO Y NO SE HA SOLTADO ANTES DE 7,5 SEGUNDOS
;-------------------------------------------------------------------------
goto OPCION3 ;SI CONTINUA PULSADO SALTA A OPCION3
;--------------------------------------------------------------------------
;+---------------------------------------------------+
;¦ OPCION 1 (RESET NO PULSADO) EL MODCHIP SE ¦
;¦ DESHABILITA Y SOLO PODEMOS USAR JUEGOS ORIGINALES ¦
;+---------------------------------------------------+
OPCION1
movlw b'00111111' ;INICIALIZA TODOS LOS
tris GPIO ;PUERTOS EN ALTO Y
sleep ;DESHABILITA EL MODCHIP
;--------------------------------------------------------------------------
;+------------------------------------------------------------------------+
;¦ OPCION 2 (RESET PULSADO DESPUES DE 1 SEG. Y SOLTADO ANTES DE 7,5 SEG.) ¦
;¦ JUEGOS (PSX1 DIRECTOS) Y (PSX2 SIN PROTECCION ANTIMODCHIP CON AR1.3) ¦
;+------------------------------------------------------------------------+
OPCION2
bcf GPIO,1 ;INICIALIZA PUERTO TXSERIE EN ALTO
bcf RAM_15,1 ;
movf RAM_15,W ;
tris GPIO ;
call PAUSA50MSG ;PAUSA CADA 100 TRANSMISIONES
movlw 100 ;100 VECES
movwf RAM_0C ;REPETIRA LA TRANSMISION
ETI_122
btfsc GPIO,0 ;SI EN ESTOS MOMENTOS LA BANDEJA DEL
goto ETI_04C ;DVD YA ESTA DENTRO TRANSMITE SCEE
clrf RAM_14 ;INICIALIZA PUNTERO A TABLA Y
call ENVIASCEE ;TRANSMITE VIA SERIE 100 VECES 'SCEE'
call SUB_04C ;LUEGO ESPERARA A QUE METAMOS OTRO JUEGO
goto ETI_122 ;ANTES DE VOLVER A TRANSMITIR 100 VECES
SUB_04C
ETI_04C
btfsc GPIO,0 ;SI EN ESTOS MOMENTOS LA BANDEJA DEL
goto ETI_050 ;DVD AUN NO ESTA DENTRO SALE
decfsz RAM_0C,F ;SI YA ESTA DENTRO RETORNA HASTA
retlw 3 ;TRANSMITIR LAS 100 VECES 'SCEE'
ETI_050 movlw b'00111111' ;INICIALIZA TODOS PUERTOS
tris GPIO ;COMO ENTRADAS
ETI_052
btfss GPIO,4 ;ESPERA A QUE PULSEMOS LA APERTURA
goto ETI_052 ;DE LA BANDEJA DEL DVD
movlw 250 ;ESPERAMOS UN TIEMPO A LA CONSOLA PARA
call PAUSAWX1MSG ;QUE TERMINE DE ABRIR LA BANDEJA DEL DVD
btfss GPIO,4 ;SI LA BANDEJA DEL DVD TODAVIA NO ESTA
goto ETI_052 ;ABRIENDOSE REPITE LA OPERACION
ETI_058
btfsc GPIO,4 ;SI LA BANDEJA DEL DVD ESTA ABRIENDOSE
goto ETI_058 ;SE ASEGURA A QUE SE ABRA DEL TODO
movlw 24 ;PAUSA DE 6 SEGUNDOS PARA QUE
movwf RAM_0B ;PONGAMOS EL JUEGO EN LA BANDEJA Y
ETI_05C movlw 250 ;PULSEMOS EL BOTON PARA INTRIDUCIRLO
call PAUSAWX1MSG ;EN LA CONSOLA
decfsz RAM_0B,F ;
goto ETI_05C ;
btfsc GPIO,0 ;SI LA BANDEJA DEL DVD ESTA TODAVIA FUERA
goto ETI_052 ;REPITE LA OPERACION
goto OPCION2 ;CUANDO EL DVD YA ESTA DENTRO SALTA OPCION2
;Y COMIENZAN LAS TRANSMISIONES DE 'SCEE'
;--------------------------------------------------------------------------
;+--------------------------------------------------------------------------+
;¦ OPCION 3 (RESET PULSADO DESPUES DE 1 SEG. Y SOLTADO DESPUES DE 7,5 SEG.) ¦
;¦ JUEGOS PSX2 CON PROTECCION ANTIMODCHIP CON AR1.3 ¦
;+--------------------------------------------------------------------------+
OPCION3
btfss GPIO,3 ;ESPERA A QUE SOLTEMOS EL
goto OPCION3 ;BOTON DE RESET
movlw 255 ;INICIALIZA RAM_15 Y TODOS
movwf RAM_15 ;LOS PUERTOS
tris GPIO ;EN ALTO
movlw 80 ;EL MODCHIP FUERZA A LA CONSOLA
movwf RAM_0B ;PARA QUE EXPULSE LA BANDEJA DEL DVD
ETI_132 movlw b'00100100' ; "
movwf GPIO ; "
movlw b'11011011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
movlw b'00100000' ; "
movwf GPIO ; "
movlw b'00011011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
decfsz RAM_0B,F ; "
goto ETI_132 ; "
movlw b'00111111' ; "
tris GPIO ; "
movlw 16 ;PAUSA PARA QUE LA BANDEJA DEL DVD
movwf RAM_0B ;ESTE 4 SEGUNDOS ABIERTA Y NOS DE
ETI_144 movlw 250 ;TIEMPO A PONER EL JUEGO EN ELLA
call PAUSAWX1MSG ; "
decfsz RAM_0B,F ; "
goto ETI_144 ; "
movlw 80 ;EL MODCHIP FUERZA A LA CONSOLA
movwf RAM_0B ;PARA QUE INTRODUZCA LA BANDEJA DEL DVD
ETI_14A movlw b'00010100' ; "
movwf GPIO ; "
movlw b'11101011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
movlw b'00010000' ; "
movwf GPIO ; "
movlw b'11101011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
decfsz RAM_0B,F ; "
goto ETI_14A ; "
movlw b'00111111' ; "
tris GPIO ; "
goto OPCION1 ;DESHABILITA AL MODCHIP Y YA PODEMOS
;EJECUTAR EL JUEGO CON EL MENU DEL AR1.3
;--------------------------------------------------------------------------
;+---------------------------------------------------------------------+
;¦ TRANSMITE VIA SERIE 'SCEE' CON 8 BIT DE DATOS Y 2 DE STOP A 250 BPS ¦
;+---------------------------------------------------------------------+
ENVIASCEE
movwf RAM_0D ;SALVA W EN RAM_0D (INUTIL PUES NO LO USA)
movlw 72 ;72 MILISEGUNDOS DE ESPACIO ENTRE BYTES
call PAUSAWX1MSG ;
movlw 4 ;ENVIAREMOS 4 BYTES
movwf RAM_0E ;DE LA TABLA
ETI_068
movf RAM_14,W ;LEEMOS 1 BYTE DE
call TABLA ;LA TABLA
movwf RAM_13 ;EN RAM_13
comf RAM_13,F ;
movlw 8 ;ENVIAREMOS 8
movwf RAM_0F ;BITS DE CADA BYTE
bsf RAM_15,1 ;ENVIA EL BIT DE START VIA SERIE
movf RAM_15,W ;
tris GPIO ;
movlw 4 ;4 MILISEGUNDOS DEL ANCHO DEL BIT DE START
call PAUSAWX1MSG ;
ETI_073
rrf RAM_13,F ;ENVIA 1 BIT DEL BYTE VIA SERIE
movlw b'11111000' ;
movwf GPIO ;
btfsc STATUS,0 ;
bsf RAM_15,1 ;
btfss STATUS,0 ;
bcf RAM_15,1 ;
movf RAM_15,W ;
tris GPIO ;
movlw 4 ;4 MILISEGUNDOS DEL ANCHO DEL BIT
call PAUSAWX1MSG ;
decfsz RAM_0F,F ;CONTINUAMOS HASTA
goto ETI_073 ;ENVIAR LOS 8 BITS DEL BYTE
bcf RAM_15,1 ;ENVIA 2 BITS DE STOP
movf RAM_15,W ;
tris GPIO ;
movlw 8 ;8 MILISEGUNDOS DEL ANCHO DE
call PAUSAWX1MSG ;LOS 2 BITS DE STOP
incf RAM_14,F ;INCREMENTA PUNTERO DE LA TABLA
decfsz RAM_0E,F ;CONTINUA HASTA
goto ETI_068 ;ENVIAR LOS 4 BYTES DE LA TABLA
retlw 3 ;RETORNA CON W=03H
TABLA addwf PCL,F ;TABLA PARA LA PS2 EUROPEA
retlw 'S'
retlw 'C'
retlw 'E'
retlw 'E'
;--------------------------------------------------------------------------
;+--------------------------+
;¦ PAUSA DE 50 MILISEGUNDOS ¦
;+--------------------------+
PAUSA50MSG
movlw 50
;+------------------------------+
;¦ PAUSA DE (W x 1 MILISEGUNDO) ¦
;+------------------------------+
PAUSAWX1MSG
movwf RAM_11
ETI_042 movlw 199
movwf RAM_12
ETI_044 nop
clrwdt
decfsz RAM_12,F
goto ETI_044
nop
decfsz RAM_11,F
goto ETI_042
retlw 3
;--------------------------------------------------------------------------
end
Koolk escribió:Ok.
Vuelve a leer arriba que edité por si acaso.
El chip es el PIC12F508 o el PIC12F509 en su día.
Te dejo el código fuente:;+-------------------------------------------------------------------------+
;¦ MYC.ASM ¦ DESENSAMBLADO DE 8MODCHIP.HEX PARA PSX2 POR MANOLO Y COMPAÑIA ¦
;+-------------------------------------------------------------------------+
; NOTA:
;* Para visualizar este fichero correctamente, usa el edit del dos
; o el bloc de notas del windows con el tipo de fuente 'terminal'
;* El objeto de realizar el desensamblado y comentado del código fuente,
; del 8modchip.hex es con el fin de que todos conozcamos como funciona
; y podamos perfeccionarlo y modificarlo entre todos a nuestro antojo.
;* Espero que al publicarlo en el foro, las mentes pensantes colaboren.
;* Desconozco quien es el autor del hex original pero le felicito por su
; programa.
;* Según aparezcan nuevas versiones del modchip se irán desensamblando
; y publicando.
;* Por favor poner vuestras experiencias en el foro para que lo vea todo
; el mundo.
;* los tiempos de las rutinas son muy críticos.
;* El codigo está más ordenado que en el 8modchip.hex pero es el mismo
; únicamete se han suprimido los caracteres de la tabla que no se usan
; para la versión europea.
;* Sugerencias de assembler o hard: jiglesias@arrakis.es
;--------------------------------------------------------------------------
; +----------------------------------+
; ¦ ESQUEMA DE CONEXIONES PIC12C509A ¦
; +----------------------------------+
;
; +------+ +------+
; ¦ +--+ ¦
; +5V ¦¦1 PIC12C509A 8¦¦ MASA
; ¦ ¦
; SWAPX ¦¦2 GPIO5 GPIO0 7¦¦ DVDIN=0
; ¦ ¦
; DVDOUT=1 ¦¦3 GPIO4 GPIO1 6¦¦ TXSCEE
; ¦ ¦
; /RESET=0 ¦¦4 GPIO3 GPIO2 5¦¦ SWAPY
; ¦ ¦
; +----------------+
;
; 1 - +5VCC - SIN COMENTARIOS
; 2 - SWAPX - SOLO LO USA LA OPCION 3 PARA LA APERTURA Y CIERRE DEL DVD
; 3 - DVDOUT - ES IGUAL A 1 CUANDO LA BANDEJA DEL DVD ESTA SALIENDO
; 4 - /RESET - ES IGUAL A 0 CUANDO PULSAMOS EL RESET DE LA PS2
; 5 - SWAPY - SOLO LO USA LA OPCION 3 PARA LA APERTURA Y CIERRE DEL DVD
; 6 - TXSCEE - ES POR DONDE TRANSMITE VIA SERIE "SCEE"
; 7 - DVDIN - ES IGUAL A 0 CUANDO LA BANDEJA DEL DVD ESTA ENTRANDO
; 8 - MASA - SIN COMENTARIOS
;--------------------------------------------------------------------------
;+---------------------------------+
;¦ PROCESADOR A EMPLEAR PIC12C509A ¦
;+---------------------------------+
P509A EQU 1 ;0=PIC12C508A 1=PIC12C509A
IF P509A
list p=12c509A
include "p12c509A.inc"
ELSE
list p=12c508A
include "p12c508A.inc"
ENDIF
;+-----------------------------------+
;¦ FUSIBLES, WASDOG, OSCILADOR ETC.. ¦
;+-----------------------------------+
__FUSES _MCLRE_OFF & _CP_OFF & _WDT_OFF & _IntRC_OSC
;+------------------+
;¦ NOTACION DECIMAL ¦
;+------------------+
radix dec
;--------------------------------------------------------------------------
;+--------------------------+
;¦ VARIABLES DE RAM INTERNA ¦
;+--------------------------+
cblock 0x0B
RAM_0B ;CONTADOR PAUSA
RAM_0C ;CONTADOR CARGA DEL DVD
RAM_0D ;CONTADOR PAUSA
RAM_0E ;CANTIDAD DE BYTES A ENVIAR DE LA TABLA
RAM_0F ;CANTIDAD DE BITS A ENVIAR DEL BYTE
RAM_10 ;NO UTILIZADA
RAM_11 ;CONTADOR W EN PAUSA Wx199
RAM_12 ;CONTADOR 199 EN PAUSA Wx199
RAM_13 ;BYTE LEIDO DE LA TABLA
RAM_14 ;PUNTERO DEL BYTE DE LA TABLA
RAM_15 ;MASCARA ESTADO DE LOS BIT DEL PUERTO
endc
;--------------------------------------------------------------------------
;+-----------------+
;¦ VECTOR DE RESET ¦
;+-----------------+
org 0x00
movwf OSCCAL ;CALIBRA EL OSCILADOR INTERNO
goto COMIENZO ;SALTA LA COMIENZO DEL PROGRAMA
;--------------------------------------------------------------------------
;+--------------------------------------+
;¦ VERSION DEL PROGRAMA (CODIGO INUTIL) ¦
;+--------------------------------------+
retlw 'M'
retlw 'A'
retlw 'N'
retlw 'O'
retlw 'L'
retlw 'O'
retlw ' '
retlw 'Y'
retlw ' '
retlw 'C'
retlw 'O'
retlw 'M'
retlw 'P'
retlw 'A'
retlw 'Ñ'
retlw 'I'
retlw 'A'
;--------------------------------------------------------------------------
;+-----------------------+
;¦ COMIENZO DEL PROGRAMA ¦
;+-----------------------+
COMIENZO
movlw b'11000010' ;CONFIGURA TMR0 PRESCALER = 1:8
option ;OSCILADOR = 4MHZ
movlw 255 ;INICIALIZA TODOS LOS PUERTOS
movwf RAM_15 ;EN ALTO Y RAM_15
tris GPIO ;
;--------------------------------------------------------------------------
;+----------------------------------------+
;¦ PAUSA DE ENCENDIDO DE 414 MILISEGUNDOS ¦
;+----------------------------------------+
movlw 2 ;100 MILISEGUNDOS
movwf RAM_0D ;
ETI_107 call PAUSA50MSG ; +
decfsz RAM_0D,F ;
goto ETI_107 ;
movlw 6 ;300 MILISEGUNDOS
movwf RAM_0D ;
ETI_10C call PAUSA50MSG ; +
decfsz RAM_0D,F ;
goto ETI_10C ;
movlw 14 ;14 MILISEGUNDOS
call PAUSAWX1MSG ;
;--------------------------------------------------------------------------
;+------------------------------------------------------------------+
;¦ LECTURA DE LAS 3 OPCIONES CON EL PULSADOR DE RESET DE LA CONSOLA ¦
;+------------------------------------------------------------------+
;OPCION1 EL RESET NO HA SIDO PULSADO
;-----------------------------------
btfsc GPIO,3 ;SI EL RESET NO ESTA PULSADO
goto OPCION1 ;SALTA A OPCION1
;OPCION2 EL RESET HA SIDO PULSADO Y SE HA SOLTADO ANTES DE 7,5 SEGUNDOS
;----------------------------------------------------------------------
movlw 150 ;
movwf RAM_0D ;
ETI_115 btfsc GPIO,3 ;
goto OPCION2 ;SALTA A OPCION2 AL LEVANTAR EL RESET
call PAUSA50MSG ;
decfsz RAM_0D,F ;
goto ETI_115 ;
;OPCION3 EL RESET HA SIDO PULSADO Y NO SE HA SOLTADO ANTES DE 7,5 SEGUNDOS
;-------------------------------------------------------------------------
goto OPCION3 ;SI CONTINUA PULSADO SALTA A OPCION3
;--------------------------------------------------------------------------
;+---------------------------------------------------+
;¦ OPCION 1 (RESET NO PULSADO) EL MODCHIP SE ¦
;¦ DESHABILITA Y SOLO PODEMOS USAR JUEGOS ORIGINALES ¦
;+---------------------------------------------------+
OPCION1
movlw b'00111111' ;INICIALIZA TODOS LOS
tris GPIO ;PUERTOS EN ALTO Y
sleep ;DESHABILITA EL MODCHIP
;--------------------------------------------------------------------------
;+------------------------------------------------------------------------+
;¦ OPCION 2 (RESET PULSADO DESPUES DE 1 SEG. Y SOLTADO ANTES DE 7,5 SEG.) ¦
;¦ JUEGOS (PSX1 DIRECTOS) Y (PSX2 SIN PROTECCION ANTIMODCHIP CON AR1.3) ¦
;+------------------------------------------------------------------------+
OPCION2
bcf GPIO,1 ;INICIALIZA PUERTO TXSERIE EN ALTO
bcf RAM_15,1 ;
movf RAM_15,W ;
tris GPIO ;
call PAUSA50MSG ;PAUSA CADA 100 TRANSMISIONES
movlw 100 ;100 VECES
movwf RAM_0C ;REPETIRA LA TRANSMISION
ETI_122
btfsc GPIO,0 ;SI EN ESTOS MOMENTOS LA BANDEJA DEL
goto ETI_04C ;DVD YA ESTA DENTRO TRANSMITE SCEE
clrf RAM_14 ;INICIALIZA PUNTERO A TABLA Y
call ENVIASCEE ;TRANSMITE VIA SERIE 100 VECES 'SCEE'
call SUB_04C ;LUEGO ESPERARA A QUE METAMOS OTRO JUEGO
goto ETI_122 ;ANTES DE VOLVER A TRANSMITIR 100 VECES
SUB_04C
ETI_04C
btfsc GPIO,0 ;SI EN ESTOS MOMENTOS LA BANDEJA DEL
goto ETI_050 ;DVD AUN NO ESTA DENTRO SALE
decfsz RAM_0C,F ;SI YA ESTA DENTRO RETORNA HASTA
retlw 3 ;TRANSMITIR LAS 100 VECES 'SCEE'
ETI_050 movlw b'00111111' ;INICIALIZA TODOS PUERTOS
tris GPIO ;COMO ENTRADAS
ETI_052
btfss GPIO,4 ;ESPERA A QUE PULSEMOS LA APERTURA
goto ETI_052 ;DE LA BANDEJA DEL DVD
movlw 250 ;ESPERAMOS UN TIEMPO A LA CONSOLA PARA
call PAUSAWX1MSG ;QUE TERMINE DE ABRIR LA BANDEJA DEL DVD
btfss GPIO,4 ;SI LA BANDEJA DEL DVD TODAVIA NO ESTA
goto ETI_052 ;ABRIENDOSE REPITE LA OPERACION
ETI_058
btfsc GPIO,4 ;SI LA BANDEJA DEL DVD ESTA ABRIENDOSE
goto ETI_058 ;SE ASEGURA A QUE SE ABRA DEL TODO
movlw 24 ;PAUSA DE 6 SEGUNDOS PARA QUE
movwf RAM_0B ;PONGAMOS EL JUEGO EN LA BANDEJA Y
ETI_05C movlw 250 ;PULSEMOS EL BOTON PARA INTRIDUCIRLO
call PAUSAWX1MSG ;EN LA CONSOLA
decfsz RAM_0B,F ;
goto ETI_05C ;
btfsc GPIO,0 ;SI LA BANDEJA DEL DVD ESTA TODAVIA FUERA
goto ETI_052 ;REPITE LA OPERACION
goto OPCION2 ;CUANDO EL DVD YA ESTA DENTRO SALTA OPCION2
;Y COMIENZAN LAS TRANSMISIONES DE 'SCEE'
;--------------------------------------------------------------------------
;+--------------------------------------------------------------------------+
;¦ OPCION 3 (RESET PULSADO DESPUES DE 1 SEG. Y SOLTADO DESPUES DE 7,5 SEG.) ¦
;¦ JUEGOS PSX2 CON PROTECCION ANTIMODCHIP CON AR1.3 ¦
;+--------------------------------------------------------------------------+
OPCION3
btfss GPIO,3 ;ESPERA A QUE SOLTEMOS EL
goto OPCION3 ;BOTON DE RESET
movlw 255 ;INICIALIZA RAM_15 Y TODOS
movwf RAM_15 ;LOS PUERTOS
tris GPIO ;EN ALTO
movlw 80 ;EL MODCHIP FUERZA A LA CONSOLA
movwf RAM_0B ;PARA QUE EXPULSE LA BANDEJA DEL DVD
ETI_132 movlw b'00100100' ; "
movwf GPIO ; "
movlw b'11011011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
movlw b'00100000' ; "
movwf GPIO ; "
movlw b'00011011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
decfsz RAM_0B,F ; "
goto ETI_132 ; "
movlw b'00111111' ; "
tris GPIO ; "
movlw 16 ;PAUSA PARA QUE LA BANDEJA DEL DVD
movwf RAM_0B ;ESTE 4 SEGUNDOS ABIERTA Y NOS DE
ETI_144 movlw 250 ;TIEMPO A PONER EL JUEGO EN ELLA
call PAUSAWX1MSG ; "
decfsz RAM_0B,F ; "
goto ETI_144 ; "
movlw 80 ;EL MODCHIP FUERZA A LA CONSOLA
movwf RAM_0B ;PARA QUE INTRODUZCA LA BANDEJA DEL DVD
ETI_14A movlw b'00010100' ; "
movwf GPIO ; "
movlw b'11101011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
movlw b'00010000' ; "
movwf GPIO ; "
movlw b'11101011' ; "
tris GPIO ; "
movlw 10 ; "
call PAUSAWX1MSG ; "
decfsz RAM_0B,F ; "
goto ETI_14A ; "
movlw b'00111111' ; "
tris GPIO ; "
goto OPCION1 ;DESHABILITA AL MODCHIP Y YA PODEMOS
;EJECUTAR EL JUEGO CON EL MENU DEL AR1.3
;--------------------------------------------------------------------------
;+---------------------------------------------------------------------+
;¦ TRANSMITE VIA SERIE 'SCEE' CON 8 BIT DE DATOS Y 2 DE STOP A 250 BPS ¦
;+---------------------------------------------------------------------+
ENVIASCEE
movwf RAM_0D ;SALVA W EN RAM_0D (INUTIL PUES NO LO USA)
movlw 72 ;72 MILISEGUNDOS DE ESPACIO ENTRE BYTES
call PAUSAWX1MSG ;
movlw 4 ;ENVIAREMOS 4 BYTES
movwf RAM_0E ;DE LA TABLA
ETI_068
movf RAM_14,W ;LEEMOS 1 BYTE DE
call TABLA ;LA TABLA
movwf RAM_13 ;EN RAM_13
comf RAM_13,F ;
movlw 8 ;ENVIAREMOS 8
movwf RAM_0F ;BITS DE CADA BYTE
bsf RAM_15,1 ;ENVIA EL BIT DE START VIA SERIE
movf RAM_15,W ;
tris GPIO ;
movlw 4 ;4 MILISEGUNDOS DEL ANCHO DEL BIT DE START
call PAUSAWX1MSG ;
ETI_073
rrf RAM_13,F ;ENVIA 1 BIT DEL BYTE VIA SERIE
movlw b'11111000' ;
movwf GPIO ;
btfsc STATUS,0 ;
bsf RAM_15,1 ;
btfss STATUS,0 ;
bcf RAM_15,1 ;
movf RAM_15,W ;
tris GPIO ;
movlw 4 ;4 MILISEGUNDOS DEL ANCHO DEL BIT
call PAUSAWX1MSG ;
decfsz RAM_0F,F ;CONTINUAMOS HASTA
goto ETI_073 ;ENVIAR LOS 8 BITS DEL BYTE
bcf RAM_15,1 ;ENVIA 2 BITS DE STOP
movf RAM_15,W ;
tris GPIO ;
movlw 8 ;8 MILISEGUNDOS DEL ANCHO DE
call PAUSAWX1MSG ;LOS 2 BITS DE STOP
incf RAM_14,F ;INCREMENTA PUNTERO DE LA TABLA
decfsz RAM_0E,F ;CONTINUA HASTA
goto ETI_068 ;ENVIAR LOS 4 BYTES DE LA TABLA
retlw 3 ;RETORNA CON W=03H
TABLA addwf PCL,F ;TABLA PARA LA PS2 EUROPEA
retlw 'S'
retlw 'C'
retlw 'E'
retlw 'E'
;--------------------------------------------------------------------------
;+--------------------------+
;¦ PAUSA DE 50 MILISEGUNDOS ¦
;+--------------------------+
PAUSA50MSG
movlw 50
;+------------------------------+
;¦ PAUSA DE (W x 1 MILISEGUNDO) ¦
;+------------------------------+
PAUSAWX1MSG
movwf RAM_11
ETI_042 movlw 199
movwf RAM_12
ETI_044 nop
clrwdt
decfsz RAM_12,F
goto ETI_044
nop
decfsz RAM_11,F
goto ETI_042
retlw 3
;--------------------------------------------------------------------------
end
http://www.picsystems.net/software_psx.php
Por internet, aunque no lo creas, siguen colocando chip por curiosidad, pero esta vez lo han hecho en el lenguaje C y usan el PIC12F629/675. Más fácil de programar aún.
Han programado hasta este código en Arduino, se han pasado de la raya, porque no cabe en la PSx, solo lo hicieron por experimentación.
Como instalar el chip en una PSOne.
https://www.minitronica.com/instalar-chip-en-una-psone/
Saludos.
Koolk escribió:PSIO te elmula el lector, no hace falta poner el chip famoso.
Koolk escribió:Kasios escribió:Koolk escribió:Exacto.
Thanks mister info!
De nada.
Kasios escribió:Koolk escribió:Kasios escribió:
Thanks mister info!
De nada.
AHora a esperar a que lo vuelvan a poner a la venta (PSIO)
Koolk escribió:Kasios escribió:Koolk escribió:
De nada.
AHora a esperar a que lo vuelvan a poner a la venta (PSIO)
¿Y lo harán?
Otros pueden hacer lo mismo con el PSIO.
https://www.youtube.com/watch?v=c_WUYWdb3DQ
https://www.youtube.com/watch?v=OdeG50ypxn8
Saludos.
Koolk escribió:@Kasios PSIO es muy caro, muy caro, para los tiempos que estamos.
Mucahs gente que pensab acomprarse la PSIO cambiaron a comprarse la Nintendo Switch. La gente también cambia de ideas.
Muchas unidadesde PSIO no tenían si ya no quedan, más que se vendiera como locos.
Koolk escribió:Buenas:
No comparo la Switch con la PSIO, sino que he visto gente con intenciones de comprar la PSIO, llega la Switch y se gastan el dinero en ella, dejan de lado a la PSIO sin comprar, lo que no se si más adelante lo comprarán. A eso es lo que me refiero.
Para los tiempos que estamos, PSIO es muy caro, digas lo que digas, no será caro en el desarrollo, si el producto final a parte de no haber nivel de interés como lo hace con la NES Mini e incluso la Raspberry. Cuando venga la SNES y N64 Mini, ya verás el interés social.
Ojalá Sony haga una PSx Mini, si lo hacen no será barato, ya sabe que estas gente son unos careros.
Si PSIO tuviera el interés como lo tiene en la NES Mini, sería mucho más barato. interés lo tienen gente nostálgica, otros se llevan por experimentar con la PSx más que poder jugar en ellas, para eso está el PC con emuladores e incluso Retropie, otros por curiosidad, otros se llevan porque les gusta estas cosas y se queda ahí. Por necesidad no lo es, así de claro te lo digo. Si fuera en su época de PSx, donde no haya PS2, entonces la gente lo vería como necesidad y vendería la hostia la PSIO.
Al menos trabajan con cosas como la PSIO hoy en día. No he visto ni un chino que intente hacer la PSIO.
Al menos hay proyectos como PSIO, es lo que estoy contento.
Saludos.
Koolk escribió:Buenas:
Hablo de lo que he visto. Son algunas personas, no todas, jaajjajjja.
No te vuelvas loco.
Si realmente interesara de verdad la PSIO como la NES Mini, se notaría, y se nota que no es así.
No pasa nada. Al menos la PSIO existe, pero no pretenda que pague una barbaridad en ello habiendo una buena Raspberry Pi 3 con Retropie que tengo todo y se ve mejor. Ni loco.
La Raspberry 4 aparacerá ya por el 2019 según dice su autor. Lo que quiero es que haya alguien, algún que otro chino que haga la competencia a la PSIO tal como lo hacen con la NES Mini sacando clones.
Saludos.
Koolk escribió:NES Mini será diferente de la PSIO como también lo es su interés.
Sigo opinando que los chinos tengan interés en la PSIO para que hagan clones.
xema83 escribió:Gente desarrollando cosas, dejándose sus horas para poder sacar adelante algo y la gente esperando que los chinos hagan un clon de ello jajaja. 100€ por un producto que te permita tener todo un catalogo de una consola y jugarlo como si de forma original se tratase no es para nada caro. Muchos se quejan de los cartuchos everdrive de las consolas de Nintendo de cartucho, pero a lo mejor el juego original supera con creces ese precio, un juego! y tu tendrás todos en una tarjeta SD.
Hablando del PSIO, ahora esta fuera de stock. Se sabe cuando van reponiendo y demás, pero me pillo uno sin dudarlo en cuanto haya stock.
Kasios escribió:xema83 escribió:Gente desarrollando cosas, dejándose sus horas para poder sacar adelante algo y la gente esperando que los chinos hagan un clon de ello jajaja. 100€ por un producto que te permita tener todo un catalogo de una consola y jugarlo como si de forma original se tratase no es para nada caro. Muchos se quejan de los cartuchos everdrive de las consolas de Nintendo de cartucho, pero a lo mejor el juego original supera con creces ese precio, un juego! y tu tendrás todos en una tarjeta SD.
Hablando del PSIO, ahora esta fuera de stock. Se sabe cuando van reponiendo y demás, pero me pillo uno sin dudarlo en cuanto haya stock.
NOVIEMBRE, dicho por el creador.
otrohound escribió:Alguno tiene por casualidad una version anterior a la actual o el link de donde bajar el firmware viejo, del mes de abril por ejemplo?
Litzer escribió:Desilusión tremenda. No es plug and Play............
Calculinho escribió:Litzer escribió:Desilusión tremenda. No es plug and Play............
No lo ha sido desde por lo menos los 5 años que ya tiene el hilo.
Calculinho escribió:Litzer escribió:Desilusión tremenda. No es plug and Play............
No lo ha sido desde por lo menos los 5 años que ya tiene el hilo.