Hilo oficial WiiFree

1, 2, 3, 4, 511
El Wifrii es un chip libre, por ahora parece que es el que mayor comunidad y más revisiones tiene, compatible con D2A, DMS y D2B, cuyas caracteristicas principales os detallo a continuación:

- Carga juegos de GamCube Originales
- Carga copias de seguridad de juegos de GameCube
- Carga juegos originales de Wii
- Carga copias de seguridad de juegos de Wii
- Soporte multiregión para juegos de Wii
- Soporta los chipset DMS, D2A y D2B
- Es compatible con los chip 12F629, 12F675 y 12F683


FORO OFICIAL

V1.0: wiifree_release1.0

V1.21:wiifree_release1.21

CODIGO FUENTE V1.21:wiifree_release1.21

V1.5 Y CODIGO FUENTE:wiifree_release1.5

V2.0 BETA 5 Y CODIGO FUENTE:[URL=http://psx-scene.com/forums/attachments/wiifree-development-forum/12365-wiifree-2-0-beta5-release-source-code-wiifree2_00_beta5.zip?d=1174340520]wiifree_release2.0 Beta 5
[/URL]


Imagen

La release (2.5):

------------------------------------------------------------------------------------------------------------------

Requests:
- Can anyone help us out on the drivespeed... so we can remove the stuttering in the warioware movie??

The official support forum can be found at: http://www.wiinewz.com

------------------------------------------------------------------------------------------------------------------

Changelog:
2.00b3 - 2.00b5 : Fixed big BUG!!
2.00b2 - 2.00b3 : Fixed original Wii games not playing. Fixed some gc games not playing.
2.00b1 - 2.00b2 : Better detection of backup discs, due to updated patching method. If none of your discs is working, you've got the regionsettings wrong.
1.51 - 2.00b1 : Added Multiregion support for Wii games. Use the configuration DVD to set your region. Or use one of the supplied hexes.
1.50 - 1.51 : Updated the code, added comments. Better detection of backup disc insert. Cleaner drive detection and alternate LED blink when error.
1.23 - 1.50 : GC backups support!!! Updated the patching code, removed the wait_disc routine AND ..... Disco!!!
1.22 - 1.23 : Updated the code, functionality is the same.

------------------------------------------------------------------------------------------------------------------

It is done. Team Wiifree proudly presents the WiiFree
This code is based on the famous WABCheap mod!!
This is what is does:
- Run gamecube originals
- Run gamecube backups
- Run Wii originals
- Run Wii backups
- Run Wii games from different regions!!
- Support for DMS, D2A and D2B!!
- Support for 12F629, 12F675 and 12F683 chips (the installation for the 12F683 is the same as the 12F629)

WiiFree is Free!!! So do not sell it, but share it!!

If you're not good at PIC programming, but would like to have a WiiFree preprogrammed, you can order one at http://www.eurasia.nu
------------------------------------------------------------------------------------------------------------------
In the package:

* Wiifree Art
* Wiifree HEX for programming in 12F629 and 12F675 chip
* Wiifree HEX for programming in 12F683 chip
* Sourcecode
* Extra JAL libraries
* Installation diagram
* Readme

------------------------------------------------------------------------------------------------------------------

Howto:

Buy a good picprogrammer and use your picprogramming software to write the HEX to the chip.
Use our installation diagram to install the PIC in your Wii.
You can also connect LEDs to pin 1 & 2 for bling... bling... connect the LED's in series with a resistor value 680 Ohm

------------------------------------------------------------------------------------------------------------------

Credits:

WAB for the simple basics of running a backup on the Wii. http://www.wab.com
The official support forum can be found at: http://www.wiinewz.com
Yourself ;-)

------------------------------------------------------------------------------------------------------------------


Fuente WiiNewz
Vamos, osea que esto es como el codigo Wiiskas pero con soporte para D2A, DMS y D2B, no?


joer, ya solo les falta uno como estos pero con el parche ese NTSC
Exacto, lo de los juegos NTSC no tardarán mucho seguro, en cuanto él N3tK4t pille algun Wiikey o un Wiinja deluxe y vea que es lo que hace pa eludir la región lo tendremos... Abrimos una cuenta para comprarle un deluxe al maestro gatuno?
Ya tengo chip pa mi lector :)

Hoy voy por el TE-20, pero aún voy a esperar, todos los dias hay cambios.
chipan está baneado por "troll maleducado"
Malolillo escribió:Ya tengo chip pa mi lector :)

Hoy voy por el TE-20, pero aún voy a esperar, todos los dias hay cambios.

Postéa el modelo que has comprado en el hilo de dudas sobre programdores please
Atencion cambia el patillaje, aqui utiliza 1,2,3,4 y 8 mientras wiiskas utiliza 1,8,7,6,5.
chipan escribió:Postéa el modelo que has comprado en el hilo de dudas sobre programdores please


No lo tengo fisicamente, pero este, es el unico libre que vale para mi lector D2B.

A eso me refería.

Perdona la confusión.

Si fuesen las patillas las mismas que las del Wiiskas, casi seguro que ponia ya el zocalo, pero voy a esperar novedades del gatito :P
[Lande] escribió:Atencion cambia el patillaje, aqui utiliza 1,2,3,4 y 8 mientras wiiskas utiliza 1,8,7,6,5.

Weno pero los puntos al lector de la Wii son los mismos, no es mucho jaleo, aunque lo ideal hubiese sido que usasen las mismas patas del zocalo :(

Saludos ;)
chipan está baneado por "troll maleducado"
Malolillo escribió:
No lo tengo fisicamente, pero este, es el unico libre que vale para mi lector D2B.

A eso me refería.

Perdona la confusión.

Si fuesen las patillas las mismas que las del Wiiskas, casi seguro que ponia ya el zocalo, pero voy a esperar novedades del gatito :P

Ah! yo es que me refería al programador XD
Se podría soldar los cables y en la punta, ponerles unos enganchitos que hay (ni idea de como se llaman), para poder cambiarlos de patilla.
[Lande] escribió:Atencion cambia el patillaje, aqui utiliza 1,2,3,4 y 8 mientras wiiskas utiliza 1,8,7,6,5.


coges 2 zocalos y sueldas unos cables de uno a otro y tendras un conversor por si tienes un zocalo instalado.
En efecto, tened cuidado porque cambian los puertos como bien ha dicho Lande.
En cuanto tenga un ratillo y me lleguen los pics (para probar y estar seguro) cambio el patillaje en el hex para los que tengan zócalo externo.
Flash78 escribió:
coges 2 zocalos y sueldas unos cables de uno a otro y tendras un conversor por si tienes un zocalo instalado.


Eso tenia pensado hacer jeje ya te contare despues.
estos chips cuando yo estudie lo de electronica los teniamos a montones! sin programar claro! jeje aqui en valencia se venden en electronica burriana, por si a alguien le interesa y es de aqui, un saludo
Acabo de probarlo en una Wii con D2B, la de mi vecino, y funciona muy bien. Por ahora los backups que hemos testeado todos perfectos y sin DRE.

Seguiré comentando...
Vaya, que manía de cambiar las configuraciones de los pines!! xD

En el caso de chiip y wiiskas fueron desarrollados por separados y lo que fue casualidad es que coincidieran en casi todo (además Netcat ha propuesto el cambiar las suyas para que concuerden con las de chiip y facilitarnos las cosas, si así lo queremos), pero esta gente lo han hecho "a propósito" para demostrar que no es (exactamente) el mismo código. Tiene su sentido, pero yo preferiría que siguieran el "estándar" , nos resultaría más sencillo (y menos aparatoso que dos sockets conectados) para hacer las pruebas.

En el "foro oficial" del WiiFree (el que citan en el primer post) ya había alguien que les ha propuesto que utilicen el mismo patillaje ( aquí ), yo por mi parte le he secundado la moción :D

Si alguien más se une quizás consigamos que lo cambien oficialmente y nos facilite la vida para futuras pruebas.

un saludo!
en las tiendas me han dicho que el pic 12F629 es practicamente imposible pillarlo.es exclusivo de este pic,o funciona con otros?
Aqui en jerez lo hay y en el puerto.
Oye y sería muy dificil cambiar las patillas? Quiero decir se le podría proponer al creador del WiiFree que cambiara las patillas usadas imagino que no es muy dificil, así se ceñirian todos al estandar "Ninja" xD y no habría que poner mil zocalos

Standar Ninja 180.01922.2398923 EE:

Microcontrolador usado PIC de 8 pats
Orden patas segun imagen
.......

EDITADO: Pues anda que no he tardado yo en hacer el msnj
omnitron escribió:Oye y sería muy dificil cambiar las patillas? Quiero decir se le podría proponer al creador del WiiFree que cambiara las patillas usadas imagino que no es muy dificil, así se ceñirian todos al estandar "Ninja" xD y no habría que poner mil zocalos

Standar Ninja 180.01922.2398923 EE:

Microcontrolador usado PIC de 8 pats
Orden patas segun imagen
.......

EDITADO: Pues anda que no he tardado yo en hacer el msnj


jejej, veo que muchos pensamos igual ;)
Esperemos que los creadores lean nuestra opinión en el foro oficial, a ver si se replantean el cambio.. aunque de momento sólo van 3 votos xD
ole!! por fin yo lo pondre en cuanto pille un 12f629 que no se donde comprarlo, por otro lado, ¿la instalacion es igual que wiinja v1? o como es
Althor escribió:En efecto, tened cuidado porque cambian los puertos como bien ha dicho Lande.
En cuanto tenga un ratillo y me lleguen los pics (para probar y estar seguro) cambio el patillaje en el hex para los que tengan zócalo externo.


Muchas gracias compañero, esperamos imapcientes el cambio de patillaje del hex :D

GRACIAS, un saludo ;)
Código del HEX en formato ASM.
Lo pongo aquí tal cual por si en la web original le dan por "censurar".

processor 12F629
#include
__config 0x1184
; _CPD_OFF & _CP_OFF & _BODEN_OFF & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF
; & _INTRC_OSC_NOCLKOUT



; RAM-Variable
LRAM_0x20 equ 0x20
LRAM_0x21 equ 0x21
LRAM_0x22 equ 0x22
LRAM_0x23 equ 0x23
LRAM_0x24 equ 0x24
LRAM_0x25 equ 0x25
LRAM_0x26 equ 0x26
LRAM_0x27 equ 0x27
LRAM_0x28 equ 0x28
LRAM_0x29 equ 0x29
LRAM_0x2A equ 0x2A
LRAM_0x2B equ 0x2B
LRAM_0x2C equ 0x2C
LRAM_0x2D equ 0x2D
LRAM_0x2E equ 0x2E
LRAM_0x2F equ 0x2F
LRAM_0x30 equ 0x30
LRAM_0x31 equ 0x31
LRAM_0x32 equ 0x32
LRAM_0x33 equ 0x33
LRAM_0x34 equ 0x34
LRAM_0x35 equ 0x35
LRAM_0x36 equ 0x36
LRAM_0x37 equ 0x37
LRAM_0x38 equ 0x38
LRAM_0x39 equ 0x39
LRAM_0x3A equ 0x3A
LRAM_0x3B equ 0x3B
LRAM_0x3C equ 0x3C
LRAM_0x3D equ 0x3D
LRAM_0x3E equ 0x3E
LRAM_0x3F equ 0x3F
LRAM_0x40 equ 0x40
LRAM_0x41 equ 0x41
LRAM_0x42 equ 0x42
LRAM_0x43 equ 0x43
LRAM_0x44 equ 0x44
LRAM_0x45 equ 0x45
LRAM_0x46 equ 0x46
LRAM_0x47 equ 0x47
LRAM_0x48 equ 0x48
LRAM_0x49 equ 0x49
LRAM_0x4A equ 0x4A
LRAM_0x4B equ 0x4B
LRAM_0x4C equ 0x4C
LRAM_0x4D equ 0x4D
LRAM_0x4E equ 0x4E
LRAM_0x4F equ 0x4F
LRAM_0x50 equ 0x50
LRAM_0x51 equ 0x51
LRAM_0x52 equ 0x52
LRAM_0x53 equ 0x53
LRAM_0x54 equ 0x54
LRAM_0x55 equ 0x55
LRAM_0x56 equ 0x56
LRAM_0x57 equ 0x57
LRAM_0x58 equ 0x58
LRAM_0x59 equ 0x59
LRAM_0x5A equ 0x5A

; Program

Org 0x0000

; Reset-Vector
GOTO LADR_0x0012
LADR_0x0001
MOVF LRAM_0x21,W
MOVWF GPIO ; !!Bank!! GPIO - TRISIO
RETURN
; Interrupt-Vector
GOTO LADR_0x0001
GOTO LADR_0x0001
GOTO LADR_0x0001
GOTO LADR_0x0001
LADR_0x0008
MOVWF LRAM_0x59
CLRF LRAM_0x5A
GOTO LADR_0x000D
LADR_0x000B
NOP
INCF LRAM_0x5A,F
LADR_0x000D
MOVF LRAM_0x5A,W
SUBWF LRAM_0x59,W
BTFSS STATUS,Z
GOTO LADR_0x000B
RETURN
LADR_0x0012
BSF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF GPIO,2 ; Pin 5 - connects to nothing
BCF GPIO,1 ; pin 6 - nothing
BCF GPIO,4 ; pin 3 - to SBI (Input)
BCF GPIO,5 ; pin 2 - to Rdy
BCF GPIO,0 ; pin 7 - Nothing
MOVLW 0xFE
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x22
CLRF LRAM_0x23
CLRF LRAM_0x24
CLRF LRAM_0x25
CLRF LRAM_0x26
CLRF LRAM_0x27
CLRF LRAM_0x28
CLRF LRAM_0x29
CLRF LRAM_0x2A
CLRF LRAM_0x2B
MOVLW 0x50
MOVWF LRAM_0x2E
MOVLW 0x98
MOVWF LRAM_0x2F
MOVLW 0x85
MOVWF LRAM_0x30
MOVLW 0xA2
MOVWF LRAM_0x31
MOVLW 0x85
MOVWF LRAM_0x32
MOVLW 0xB6
MOVWF LRAM_0x33
MOVLW 0x82
MOVWF LRAM_0x34
MOVLW 0xBE
MOVWF LRAM_0x35
MOVLW 0x82
MOVWF LRAM_0x36
MOVLW 0x76
MOVWF LRAM_0x37
MOVLW 0x85
MOVWF LRAM_0x38
MOVLW 0x80
MOVWF LRAM_0x39
MOVLW 0x85
MOVWF LRAM_0x3A
MOVLW 0xD2
MOVWF LRAM_0x3B
MOVLW 0x82
MOVWF LRAM_0x3C
MOVLW 0xDA
MOVWF LRAM_0x3D
MOVLW 0x82
MOVWF LRAM_0x3E
GOTO LADR_0x01C9
LADR_0x0047
MOVLW 0x0C
GOTO LADR_0x0008
LADR_0x0049
BSF LRAM_0x21,0
CALL LADR_0x0001
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF LRAM_0x21,0
CALL LADR_0x0001
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x59,0
BTFSS GPIO,2 ; Pin 5 - no connection
BCF LRAM_0x59,0
BSF LRAM_0x21,0
CALL LADR_0x0001
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x20,0
BTFSS LRAM_0x59,0
BCF LRAM_0x20,0
RETURN
LADR_0x0059
BSF LRAM_0x21,0
CALL LADR_0x0001
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x21,1
BTFSS LRAM_0x59,0
BCF LRAM_0x21,1
CALL LADR_0x0001
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF LRAM_0x21,0
CALL LADR_0x0001
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x21,0
GOTO LADR_0x0001
LADR_0x0066
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
CLRF LRAM_0x57
CLRF LRAM_0x58
GOTO LADR_0x0072
LADR_0x006A
BCF STATUS,C
RRF LRAM_0x57,F
CALL LADR_0x0049
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x57,7
BTFSS LRAM_0x20,0
BCF LRAM_0x57,7
INCF LRAM_0x58,F
LADR_0x0072
MOVLW 0x08
SUBWF LRAM_0x58,W
BTFSS STATUS,Z
GOTO LADR_0x006A
CALL LADR_0x0047
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVF LRAM_0x57,W
RETURN
LADR_0x007A
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
CLRF LRAM_0x4D
CLRF LRAM_0x4E
LADR_0x007D
MOVLW 0xEE
SUBWF LRAM_0x4E,W
BTFSS STATUS,Z
GOTO LADR_0x0083
MOVLW 0xEE
SUBWF LRAM_0x4D,W
LADR_0x0083
BTFSC STATUS,Z
GOTO LADR_0x008E
BCF STATUS,C
RRF LRAM_0x4E,F
RRF LRAM_0x4D,F
CALL LADR_0x0049
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x4E,7
BTFSS LRAM_0x20,0
BCF LRAM_0x4E,7
GOTO LADR_0x007D
LADR_0x008E
RETURN
LADR_0x008F
MOVWF LRAM_0x57
CLRF LRAM_0x58
GOTO LADR_0x009A
LADR_0x0092
BSF LRAM_0x59,0
BTFSS LRAM_0x57,0
BCF LRAM_0x59,0
CALL LADR_0x0059
BCF STATUS,C
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
RRF LRAM_0x57,F
INCF LRAM_0x58,F
LADR_0x009A
MOVLW 0x08
SUBWF LRAM_0x58,W
BTFSS STATUS,Z
GOTO LADR_0x0092
GOTO LADR_0x0047
LADR_0x009F
CALL LADR_0x0066
CALL LADR_0x0066
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x2C
CALL LADR_0x0066
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x2D
RETURN
LADR_0x00A7
MOVWF LRAM_0x4F
MOVF LRAM_0x52,W
MOVWF LRAM_0x55
CLRF LRAM_0x56
MOVF LRAM_0x55,W
MOVWF LRAM_0x24
MOVF LRAM_0x51,W
MOVWF LRAM_0x25
MOVF LRAM_0x4F,W
MOVWF LRAM_0x26
MOVF LRAM_0x50,W
MOVWF LRAM_0x28
MOVF LRAM_0x53,W
MOVWF LRAM_0x2A
MOVLW 0x01
MOVWF LRAM_0x2C
CLRF LRAM_0x2D
CLRF LRAM_0x54
GOTO LADR_0x00C3
LADR_0x00BA
MOVLW 0x22
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x54,W
ADDWF FSR,F
MOVF INDF,W
CALL LADR_0x008F
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
INCF LRAM_0x54,F
LADR_0x00C3
MOVLW 0x0A
SUBWF LRAM_0x54,W
BTFSS STATUS,Z
GOTO LADR_0x00BA
GOTO LADR_0x009F
LADR_0x00C8
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
INCF LRAM_0x2E,W
MOVWF LRAM_0x4D
INCF LRAM_0x4D,F
BCF STATUS,C
RLF LRAM_0x4D,W
MOVWF LRAM_0x4E
CLRF LRAM_0x50
MOVLW 0x2F
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x4E,W
ADDWF FSR,F
MOVF INDF,W
MOVWF LRAM_0x51
INCF FSR,F
MOVF INDF,W
MOVWF LRAM_0x52
MOVLW 0x01
MOVWF LRAM_0x53
MOVLW 0x41
GOTO LADR_0x00A7
LADR_0x00DE
MOVWF LRAM_0x47
BSF LRAM_0x4C,0
LADR_0x00E0
BTFSS LRAM_0x4C,0
GOTO LADR_0x00FC
MOVF LRAM_0x48,W
MOVWF LRAM_0x50
MOVF LRAM_0x49,W
MOVWF LRAM_0x51
MOVF LRAM_0x4A,W
MOVWF LRAM_0x52
MOVF LRAM_0x4B,W
MOVWF LRAM_0x53
MOVF LRAM_0x47,W
CALL LADR_0x00A7
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVF LRAM_0x2C,W
BTFSC STATUS,Z
GOTO LADR_0x00F7
BCF LRAM_0x21,5
CALL LADR_0x0001
CALL LADR_0x007A
CALL LADR_0x00C8
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x4C,0
GOTO LADR_0x00E0
LADR_0x00F7
BSF LRAM_0x21,5
CALL LADR_0x0001
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF LRAM_0x4C,0
GOTO LADR_0x00E0
LADR_0x00FC
RETURN
LADR_0x00FD
MOVWF LRAM_0x46
CLRF LRAM_0x48
MOVF LRAM_0x44,W
MOVWF LRAM_0x49
MOVF LRAM_0x45,W
MOVWF LRAM_0x4A
MOVLW 0x01
MOVWF LRAM_0x4B
MOVF LRAM_0x46,W
GOTO LADR_0x00DE
LADR_0x0107
MOVWF LRAM_0x44
MOVF LRAM_0x44,W
MOVWF LRAM_0x27
MOVLW 0xFF
MOVWF LRAM_0x22
CLRF LRAM_0x48
MOVF LRAM_0x45,W
MOVWF LRAM_0x49
MOVF LRAM_0x46,W
MOVWF LRAM_0x4A
MOVLW 0x01
MOVWF LRAM_0x4B
MOVLW 0x00
CALL LADR_0x00DE
MOVLW 0xFE
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x22
CLRF LRAM_0x27
MOVF LRAM_0x2D,W
RETURN
LADR_0x011B
MOVLW 0xB2
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x45
MOVLW 0xBC
MOVWF LRAM_0x46
MOVLW 0x40
CALL LADR_0x0107
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x40
MOVLW 0x20
SUBWF LRAM_0x40,W
BTFSS STATUS,Z
GOTO LADR_0x012B
MOVLW 0x01
MOVWF LRAM_0x2E
RETURN
LADR_0x012B
CLRF LRAM_0x2E
RETURN
LADR_0x012D
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x42,0
BCF STATUS,C
RLF LRAM_0x2E,W
MOVWF LRAM_0x40
MOVLW 0x2F
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x40,W
ADDWF FSR,F
MOVF INDF,W
MOVWF LRAM_0x44
INCF FSR,F
MOVF INDF,W
MOVWF LRAM_0x45
MOVLW 0x04
CALL LADR_0x00FD
LADR_0x013E
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BTFSS LRAM_0x42,0
GOTO LADR_0x016A
BCF STATUS,C
RLF LRAM_0x2E,W
MOVWF LRAM_0x40
MOVLW 0x2F
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x40,W
ADDWF FSR,F
MOVF INDF,W
MOVWF LRAM_0x45
INCF FSR,F
MOVF INDF,W
MOVWF LRAM_0x46
MOVLW 0x00
CALL LADR_0x0107
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x41
MOVLW 0x04
SUBWF LRAM_0x41,W
BTFSC STATUS,Z
GOTO LADR_0x0169
CALL LADR_0x00C8
BCF STATUS,C
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
RLF LRAM_0x2E,W
MOVWF LRAM_0x40
MOVLW 0x2F
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x40,W
ADDWF FSR,F
MOVF INDF,W
MOVWF LRAM_0x44
INCF FSR,F
MOVF INDF,W
MOVWF LRAM_0x45
MOVLW 0x04
CALL LADR_0x00FD
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BCF LRAM_0x42,0
LADR_0x0169
GOTO LADR_0x013E
LADR_0x016A
RETURN
LADR_0x016B
MOVLW 0x06
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x45
MOVLW 0xBA
MOVWF LRAM_0x46
MOVLW 0x40
CALL LADR_0x0107
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
MOVWF LRAM_0x40
MOVLW 0xD0
SUBWF LRAM_0x40,W
BTFSS STATUS,Z
GOTO LADR_0x016B
CALL LADR_0x00C8
MOVLW 0x04
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
ADDWF LRAM_0x2E,W
MOVWF LRAM_0x40
BCF STATUS,C
RLF LRAM_0x40,W
MOVWF LRAM_0x41
MOVLW 0x2F
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x41,W
ADDWF FSR,F
MOVF INDF,W
MOVWF LRAM_0x44
INCF FSR,F
MOVF INDF,W
MOVWF LRAM_0x45
MOVLW 0xFF
CALL LADR_0x00FD
MOVLW 0x04
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
ADDWF LRAM_0x2E,W
MOVWF LRAM_0x40
BCF STATUS,C
RLF LRAM_0x40,W
MOVWF LRAM_0x41
MOVLW 0x2F
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x41,W
ADDWF FSR,F
MOVF INDF,W
MOVWF LRAM_0x42
INCF FSR,F
MOVF INDF,W
MOVWF LRAM_0x43
INCF LRAM_0x42,F
BTFSC STATUS,Z
INCF LRAM_0x43,F
MOVF LRAM_0x42,W
MOVWF LRAM_0x44
MOVF LRAM_0x43,W
MOVWF LRAM_0x45
MOVLW 0x00
CALL LADR_0x00FD
MOVLW 0x06
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
ADDWF LRAM_0x2E,W
MOVWF LRAM_0x40
BCF STATUS,C
RLF LRAM_0x40,W
MOVWF LRAM_0x41
MOVLW 0x2F
MOVWF FSR
BCF STATUS,IRP
MOVF LRAM_0x41,W
ADDWF FSR,F
MOVF INDF,W
MOVWF LRAM_0x44
INCF FSR,F
MOVF INDF,W
MOVWF LRAM_0x45
MOVLW 0x00
GOTO LADR_0x00FD
LADR_0x01B9
BCF LRAM_0x21,4
CALL LADR_0x0001
CALL LADR_0x007A
CALL LADR_0x00C8
CALL LADR_0x011B
LADR_0x01BE
CALL LADR_0x012D
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF LRAM_0x3F,0
BTFSC GPIO,4 ; !!Bank!! GPIO - TRISIO
BCF LRAM_0x3F,0
BSF LRAM_0x21,4
BTFSS LRAM_0x3F,0
BCF LRAM_0x21,4
CALL LADR_0x0001
CALL LADR_0x016B
GOTO LADR_0x01BE
LADR_0x01C9
CALL LADR_0x01B9
LADR_0x01CA
SLEEP
GOTO LADR_0x01CA

End

Si alguien entiende de ASM, podrá editar las patillas o lo que quiera.

Hilo original: http://www.ps2-scene.org/forums/wiifree/53233-wiifree-asm-source.html
emudem escribió:ole!! por fin yo lo pondre en cuanto pille un 12f629 que no se donde comprarlo, por otro lado, ¿la instalacion es igual que wiinja v1? o como es


jej, (lee el hilo que todavía el cortito ;) )
En resumen: wiinja, wiimod y wiiskas utilizan un patillaje, el wiifree otro (para probar que no es una copia).
Seguramente alguien lo cambiará en el .hex (Althor ya se ha ofrecido), pero si lo comentas en el hilo del "foro oficial" (eso sí, va en lengua de Shakespeare xD), puede que lo cambien directamente los creadores.

Un saludo!
Sabeis alguno si los chips gratiutos incorporan audiofix, si permiten multidiscos/multijuegos, si trabajan en modo invisible y si no es necesario hacer swap?

Saludos y gracias
nachocube escribió:Sabeis alguno si los chips gratiutos incorporan audiofix, si permiten multidiscos/multijuegos, si trabajan en modo invisible y si no es necesario hacer swap?

Saludos y gracias


En concreto, el readme del WiiFree dice:
"It does not support all the advanced features supported by commercial chips, it only allows you to run backups."

Es decir, que, de momento, permite únicamente lo principal: cargar backups. (Aunque supongo que lo demás ya llegará)
Pues mirando el ASM, encontré la TONTERÍA que había que editar para cambiar las patillas:

BSF GPIO,2 ; Pin 5 - connects to nothing
BCF GPIO,1 ; pin 6 - nothing
BCF GPIO,4 ; pin 3 - to SBI (Input)
BCF GPIO,5 ; pin 2 - to Rdy
BCF GPIO,0 ; pin 7 - Nothing

Se cambiaría esta parte del código y ahora viene lo jodío, que es volver del ASM al HEX xD. ¿Alguien se anima?

Es editar las referencias (los números) de los comandos "GPIO".
Entiendo poquisimo del tema, pero tengo un par de preguntas. Como haceís para programarlo, os comprais la programadora esa que vale 40€? y no es mejor comprarte el cyclowiz xD?, y otra, por que no sacan ese codigo pero a modo de SD y nos dejamos de chips?

Es que ni tengo programadora, ni se programar, ni se que es un codigo HEX y asi como que conseguir un chip libre va a ser dificil para mi...
ArangeL escribió:Pues mirando el ASM, encontré la TONTERÍA que había que editar para cambiar las patillas:

BSF GPIO,2 ; Pin 5 - connects to nothing
BCF GPIO,1 ; pin 6 - nothing
BCF GPIO,4 ; pin 3 - to SBI (Input)
BCF GPIO,5 ; pin 2 - to Rdy
BCF GPIO,0 ; pin 7 - Nothing

Se cambiaría esta parte del código y ahora viene lo jodío, que es volver del ASM al HEX xD. ¿Alguien se anima?

Es editar las referencias (los números) de los comandos "GPIO".


Cambiando unicamente la definicion de las variables deberia funcionar.
Estoy en ello pero hoy tengo mucho curro y no se si podré hacerlo para hoy. En cualquier caso prefiero esperar a tener los 12F629 para probarlo yo mismo antes de que nadie haga de conejillo ya que aunque en principio es un cambio muy sencillo me gusta ser yo quien pruebe primero (no quiero ninguna responsabilidad, xDDD).

De todas formas no entiendo porque cambiar el patillaje, no creo que sea cosa de demostrar que lo han creado alguien ya que cualquiera puede coger un original y cambiar el patillaje.

Lande lo de compilarlo es fácil y en teoría en efecto cambiando esas variables y haciéndolas coincidir con el wiinja o wiimod debería funcionar (bueno hay que cambiar también toda referencia a GPIO en el ASM).
sir_morenete escribió:estos chips cuando yo estudie lo de electronica los teniamos a montones! sin programar claro! jeje aqui en valencia se venden en electronica burriana, por si a alguien le interesa y es de aqui, un saludo


En electronica burriana no tienen, tienen el 12f628, y ese nisiquiera sale en la web oficial de microchip!!! vamos q me he pateado media valencia para conseguirlo y no lo tienen en ningun sitio... teniendo el ASM no podemos hacer el port al 16f?? voy a ver q investigo...
es que como no habia visto el esquema colgadoen la pagina principal supuse que seria el mismo esquema que el wiinja.

Mirando los archivos adjuntos el esquema a seguir seria este.

Imagen

Solamente grabando el HEX en el pic 12f629 y soldarlo a la wii deberia estar listo para cargar backups. [babas]
ArangeL escribió:Pues mirando el ASM, encontré la TONTERÍA que había que editar para cambiar las patillas:

BSF GPIO,2 ; Pin 5 - connects to nothing
BCF GPIO,1 ; pin 6 - nothing
BCF GPIO,4 ; pin 3 - to SBI (Input)
BCF GPIO,5 ; pin 2 - to Rdy
BCF GPIO,0 ; pin 7 - Nothing

Se cambiaría esta parte del código y ahora viene lo jodío, que es volver del ASM al HEX xD. ¿Alguien se anima?

Es editar las referencias (los números) de los comandos "GPIO".


Lo siento pero no es lo único que habría que cambiar, ya que hay rutinas que usan los puertos pero no se especifican como GPIO si no como la posición en la memoria por ejemplo:

BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select

BSF LRAM_0x3F,0

BTFSC GPIO,4 ; !!Bank!! GPIO - TRISIO


En estas lineas selecciona el puerto de salida 4 ;
si se hacen cambios deben ser en donde esté el registro : GPIO , # en donde el # sería el puerto o pin a elegir..creo que eso sería por ahora lo que hay que hacer. Debido a mi poco tiempo por tener trabajo a montones no puedo colaborar mucho haciendo la modificación, a lo mejor este fin de semana me pongo manos a la obra y tambien portar el codigo al 12C508 /509 que muchos han pedido por estos lados.

Saludos
marvicdigital escribió:
Lo siento pero no es lo único que habría que cambiar, ya que hay rutinas que usan los puertos pero no se especifican como GPIO si no como la posición en la memoria por ejemplo:

BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select

BSF LRAM_0x3F,0

BTFSC GPIO,4 ; !!Bank!! GPIO - TRISIO


En estas lineas selecciona el puerto de salida 4 ;
si se hacen cambios deben ser en donde esté el registro : GPIO , # en donde el # sería el puerto o pin a elegir..creo que eso sería por ahora lo que hay que hacer. Debido a mi poco tiempo por tener trabajo a montones no puedo colaborar mucho haciendo la modificación, a lo mejor este fin de semana me pongo manos a la obra y tambien portar el codigo al 12C508 /509 que muchos han pedido por estos lados.

Saludos


Yo soy uno de los que espera el port, mucho animo!!!
manuti15 escribió:Entiendo poquisimo del tema, pero tengo un par de preguntas. Como haceís para programarlo, os comprais la programadora esa que vale 40€? y no es mejor comprarte el cyclowiz xD?, y otra, por que no sacan ese codigo pero a modo de SD y nos dejamos de chips?

Es que ni tengo programadora, ni se programar, ni se que es un codigo HEX y asi como que conseguir un chip libre va a ser dificil para mi...


Hay muchos k ya tenian el programador de antes. se usaba para chips de la psone, algunas tarjetas del satelite, etc.. asi k el gasto para esas personas es minimo
Hola

¿ Cuantos han grabado el PIC ya y les funciona ?

saludos

tecnor
marvicdigital escribió:a lo mejor este fin de semana me pongo manos a la obra y tambien portar el codigo al 12C508 /509 que muchos han pedido por estos lados.
Saludos


Sii.. me quedan unos cuantos 12C509 del asunto con las CFT2200 :)

por el momento a buscar los 12F629..

saludos
Al parecer, según comentan en el foro de ps2-scene, ¡¡¡el patillaje es realmente el mismo!!!!

Uno dice que mirando el código ha observado que coincide con el del wiinja y otro que lo ha probado en el mismo zócalo y anda... xD

Habrá que hacer más pruebas, pero ¿entonces para que leches ponen expresamente la advertencia en el readme y dan su propio diagrama de conexión?
Gente, lo he estado mirando y en efecto, como dice marvicdigital:
Lo siento pero no es lo único que habría que cambiar, ya que hay rutinas que usan los puertos pero no se especifican como GPIO si no como la posición en la memoria por ejemplo:

No es cambiar los registros y punto. Fijaos aquí por ejemplo:
LADR_0x0001
MOVF LRAM_0x21,W
MOVWF GPIO ; !!Bank!! GPIO - TRISIO
RETURN

Cambia el valor completo de GPIO (es decir, todos los puertos) con un valor que depende de lo que haya en la posi LRAM_0x21. Es decir que tendríamos que hacer un estudio un poquito más profundo...
Porque no os montais el Wiikas? que ya es un Pic, y es facil instalacion?
Porque algunos ya tenemos el wiimod o el wiinja y otros porque simplemente el wiiskas aún no chuta en db2...
En cualquier caso somos muchos que estamos más interesados en jugar con los micros que en correr backups (para eso ya tengo en wiinja hasta que tenga tiempo e info para hacerme mi propio programa, xD).

Edito para indicar que hay un error en el ASM:


BSF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF GPIO,2 ; Pin 5 - connects to nothing
BCF GPIO,1 ; pin 6 - nothing
BCF GPIO,4 ; pin 3 - to SBI (Input)
BCF GPIO,5 ; pin 2 - to Rdy
BCF GPIO,0 ; pin 7 - Nothing
MOVLW 0xFE
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select


Si os fijáis cambia al Bank 1 y luego supuestamente manipula los puertos i/o. Púes bien, al cambiar de Bank lo que hace en realidad es configurarlo, con lo que el ASM debería ser:


BSF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select
BSF TRISIO,2 ; Pin 5 - connects to nothing
BCF TRISIO,1 ; pin 6 - nothing
BCF TRISIO,4 ; pin 3 - to SBI (Input)
BCF TRISIO,5 ; pin 2 - to Rdy
BCF TRISIO,0 ; pin 7 - Nothing
MOVLW 0xFE
BCF STATUS,RP0 ; !!Bank Register-Bank(0/1)-Select


Así configuramos los puertos como:

Pin 2: Salida
Pin 3: Salida
Pin 4: Salida
Pin 5: Entrada
Pin 6: Salida
Pin 7: Salida

Y si echando un ojo al resto del programa creo que por ahí tienen razón, EN REALIDAD ES EL MISMO ESQUEMA QUE EL WIISKAS Y EL WIINJA!!!!.

Si no me equivoco utilizan los puertos GPIO,0 y GPIO,1 como salidas, uno para seleccionar direcciones y otra para inyectar los datos, el GPIO,2 supongo que se usa de escucha para saber cuando inyectarlos.
Si N3TKaT se pasase por aquí y me lo confirmase os podría CASI decir que podéis probarlo en los zócalos que tenéis instalados.
Exacto althor , lo que queremos es cacharrear con el PIC para jugar copias solo se compra un winja o un wimod .

Pero que dificultad tiene ponerlo en otro punto , cada chip es diferente en instalacion adenas si es funcional para que cambiar los puntos soldar . Nos puede pasar que al estar tetsteando solo intercambiando los chip ( winja , wimod , wiskas etc ) jodamos algo en la wii .

A mi con que funione me da lo mismo que sean los puntos iguales o no entre chip [looco]

saludos

tecnor
estoy leyendo y lo estais complicando un poco.a lo mejor para quien puso cables sin colores si necesita las mismas patillas,pero para una instalacion nueva o gente que puso cableado de colores.son los mismo puntos que los otros chips.los que tengan el chip puesto con zocalo en el exterior y cables de colores mirar como lo pusisteis y cambiar el cableado en el zocalo y listo.bueno supongo,que me corrija alguien si es buena idea o no.
Segun he leido en los Foros parece que

-solo lee copias de Wii
-no lee de Game Cube
-no lee originales

Alguien que confirme esto , por que yo hasta el lunes tengo para probar
jajajajja que pua, no lee juegos originales??? xD [+risas] [+risas] que pua!! xD
¿ Que ? :O

Bueno esperemos que le den una pulida el codigo y lo arreglen rapido .

saludos

tecnor
parece que se confirma solo carga backups de wii.

El wiiskas carga todo no?
murcielago escribió:Segun he leido en los Foros parece que
-no lee originales


Ponerle algun switch para deshabilitarlo? [agggtt]
501 respuestas
1, 2, 3, 4, 511