Multiples kernels usando una Tarjeta XD

1, 2, 3, 4
Gracias a Haute por el aviso, me paso un enlace de Xboxhacker donde explican como poder arrancar con kernels diferentes usando tarjetas de camara xD.

Fuente: Xboxhacker

Imagen

Hay que realizar una modificacion a la placa base y añadir unos cables en los puntos de la memoria nand para conectarlos a un conector de tarjetas xd. Con varias tarjetas vas actualizando y depende cual tengas conectada la 360 arrancará con el kernel que tenga esta tarjeta. Sin ninguna creo que arrancaria con el primer kernel que tuviera.

Imagen


Imagen

Imagen

http://img220.imageshack.us/img220/7185/dsc00057bc3.jpg



Imagen

Imagen

18-pin Flash Card
Pin Name Description
18 GND Ground (+Presence detect)
17 R/-B Ready/-Busy (Open-drain)
16 -RE Read Enable
15 -CE Card Enable
14 CLE Command Latch Enable
13 ALE Address Latch Enable
12 -WE Write Enable
11 -WP Write Protect
10 GND Ground
9 D0 Data0
8 D1 Data1
7 D2 Data2
6 D3 Data3
5 D4 Data4
4 D5 Data5
3 D6 Data6
2 D7 Data7
1 Vcc Power



Ademas hay un programa para poder acceder a los datos. el fuente lo podeis compilar.

Code: (card_tools.h)
/*
* Card_tools for raw access XD/Smartmedia cards using Olympus MAUSB-10
* author: warpjavier
* email: [email]warpjavier@hotmail.com[/email]
* date: 27 May 2007
* platform: linux + windows
*
*/

#ifndef CARD_TOOLS_H_INCLUDED
#define CARD_TOOLS_H_INCLUDED

#include <usb.h>

/* the device's vendor and product id for Olympus MAUSB-10*/
#define MY_VID 0x07B4
#define MY_PID 0x010A

/* the device's endpoints */
#define EP_IN 0x82
#define EP_OUT 0x03

#define PBA_LO(pba) ((pba & 0xF) << 5)
#define PBA_HI(pba) (pba >> 3)

#define BUF_SIZE 576 //576 instead of 528 as the device return 48 extra bytes

/*
* Bulk command identity (byte 0)
*/
#define CARD_TOOLS_BULK_CMD         0x40

/*
* Bulk opcodes (byte 1)
*/
#define CARD_TOOLS_BULK_READ_BLOCK      0x94
#define CARD_TOOLS_BULK_ERASE_BLOCK      0xa3
#define CARD_TOOLS_BULK_WRITE_BLOCK      0xb4
#define CARD_TOOLS_BULK_RESET_MEDIA      0xe0

/*
* Port to operate on (byte 8)
*/
#define CARD_TOOLS_PORT_XD         0x00
#define CARD_TOOLS_PORT_SM         0x01

/*
* Error Codes
*/
#define CARD_TOOLS_OK       0x00
#define CARD_TOOLS_ERROR    0x01

/*
* Functions
*/
usb_dev_handle *open_dev(void);
int reset_media(void);
int dump_card(char *filename);
int write_to_card(char *filename);
int erase_card();
int read_block(unsigned short block);
int erase_block(unsigned short block);
int write_block(unsigned short block);
#endif // CARD_TOOLS_H_INCLUDED


Code: (card_tools.c)
/*
* Card_tools for raw access XD/Smartmedia cards using Olympus MAUSB-10
* author: warpjavier
* email: [email]warpjavier@hotmail.com[/email]
* date: 27 May 2007
* platform: linux + windows
*
*/
#include <stdio.h>
#include "card_tools.h"

//Some Globals
usb_dev_handle *dev = NULL; // the device handle
char buffer[BUF_SIZE*32];
int port = CARD_TOOLS_PORT_XD; //you can change it if you use Smartmedia cards

usb_dev_handle *open_dev(void)
{
    struct usb_bus *bus;
    struct usb_device *dev;
    for (bus = usb_get_busses(); bus; bus = bus->next)
    {
        for (dev = bus->devices; dev; dev = dev->next)
        {
            if (dev->descriptor.idVendor == MY_VID
                    && dev->descriptor.idProduct == MY_PID)
            {
                return usb_open(dev);
            }
        }
    }
    return NULL;
}

/*
* Resets the media status
*/
int reset_media(void)
{
   unsigned char command[9];

   memset(command, 0, 9);
   command[0] = CARD_TOOLS_BULK_CMD;
   command[1] = CARD_TOOLS_BULK_RESET_MEDIA;
   command[8] = port;

    if (usb_bulk_write(dev, EP_OUT, command, 9, 5000) != 9)
    {
        printf("Error: cannot reset media\n");
        return CARD_TOOLS_ERROR;
    }

   return CARD_TOOLS_OK;
}

int main(int argc, char *argv[])
{
   int option,status;
   char* filename;

   if (argc < 2) {
       printf("Card Tools 0.1 - by warpjavier\n");
      printf("Usage: %s [OPTION] filename\n", argv[0]);
      printf("Options are as follows:\n");
      printf("-d - Dump card\n");
      printf("-w - Write to card\n");
      printf("-e - Erase card\n");
      exit(0);
   }

    if((option = getopt(argc, argv, "d:w:e"))==-1)
        return 0;
   switch (option)
   {
        case 'd':
            if(argv[2] == NULL)
            {
                printf("Please, specify a filename\n");
                status = CARD_TOOLS_ERROR;
                break;
            }
            filename = argv[2];
            if(init_all()!=CARD_TOOLS_OK)
                return 0;
            printf("Dump card contents to %s file\n", filename);
            status = dump_card(filename);
            break;
        case 'w':
            if(argv[2] == NULL)
            {
                printf("Please, specify a filename\n");
                status = CARD_TOOLS_ERROR;
                break;
            }
            filename = argv[2];
            if(init_all()!=CARD_TOOLS_OK)
                return 0;
            printf("Write to card contents from %s file\n", filename);
            printf("The card must be empty before write\n");
            status = write_to_card(filename);
            break;
        case 'e':
            if(init_all()!=CARD_TOOLS_OK)
                return 0;
            printf("Erase card contents\n");
            printf("Do you want to erase the card? (y/n)");
         if (getchar() == 'y')
         {
                status = erase_card();
         }
         else
         {
             printf("Operation Cancelled\n");
             status = CARD_TOOLS_ERROR;
         }
            break;
        default:
            status = CARD_TOOLS_ERROR;
    }
    usb_release_interface(dev, 0);
    usb_close(dev);
    if(status != CARD_TOOLS_OK)
    {
        printf("Error!");
        return 0;
    }
    printf("Operation Succefully Complete");
    return 0;
}

int init_all()
{
    usb_init(); // initialize the library
    usb_find_busses(); // find all busses
    usb_find_devices(); // find all connected devices

    if (!(dev = open_dev()))
    {
        printf("Error: device not found!\n");
        return CARD_TOOLS_ERROR;
    }

    if (usb_set_configuration(dev, 1) < 0)
    {
        printf("Error: setting config 1 failed\n");
        usb_close(dev);
        return CARD_TOOLS_ERROR;
    }

    if (usb_claim_interface(dev, 0) < 0)
    {
        printf("Error: claiming interface 0 failed\n");
        usb_close(dev);
        return CARD_TOOLS_ERROR;
    }

    if(reset_media() != CARD_TOOLS_OK)
    {
        usb_close(dev);
        return CARD_TOOLS_ERROR;
    }
    return CARD_TOOLS_OK;
}

int dump_card(char *filename)
{
    FILE *fd;
    if((fd = fopen(filename,"w+b"))==NULL)
    {
        printf("Error creating %s\n",filename);
        return CARD_TOOLS_ERROR;
    }
    unsigned short block;
    for (block=0;block<1024;block++)
    {
        if(read_block(block)!=CARD_TOOLS_OK)
        {
            fclose(fd);
            return CARD_TOOLS_ERROR;
        }
        fwrite(buffer,528*32,1,fd);
    }
    fclose(fd);
    return CARD_TOOLS_OK;
}

int write_to_card(char *filename)
{
    FILE *fd;
    if((fd = fopen(filename,"r+b"))==NULL)
    {
        printf("Error opening file %s\n",filename);
        return CARD_TOOLS_ERROR;
    }
    unsigned short block,x;
    char tmp[528]; //528 is the page size plus the 16 extra bytes
    for (block=0;block<1024;block++)
    {
        // Add 48 extra bytes to each page
        for (x=0;x<32;x++)
        {
            fread(tmp,528,1,fd);
            memcpy(buffer+(x*576),tmp,528);
        }
        if(write_block(block)!=CARD_TOOLS_OK)
        {
            fclose(fd);
            return CARD_TOOLS_ERROR;
        }
    }
    fclose(fd);
    return CARD_TOOLS_OK;
}

int erase_card()
{
    unsigned short block;
    for (block=0;block<1024;block++)
    {
        if(erase_block(block)!=CARD_TOOLS_OK)
            return CARD_TOOLS_ERROR;
    }
    return CARD_TOOLS_OK;
}

int read_block(unsigned short block)
{
    int p;
    unsigned char command[9];
    command[0] = CARD_TOOLS_BULK_CMD;
    command[1] = CARD_TOOLS_BULK_READ_BLOCK;
    command[2] = PBA_HI(block);
    command[3] = 0x00; //Zone is always 0 for 16Mb cards
    command[4] = 0x00;
    command[5] = PBA_LO(block);
    command[6] = 0x20; //We read 32 pages at a time as is the block size.
    command[7] = 0x00;
    command[8] = port;

    if (usb_bulk_write(dev, EP_OUT, command, 9, 5000) != 9)
    {
        printf("Error sending Read Block command\n");
        return CARD_TOOLS_ERROR;
    }
    if (usb_bulk_read(dev, EP_IN, buffer, (BUF_SIZE*32), 5000) != (BUF_SIZE*32))
    {
        printf("Error reading Block\n");
        return CARD_TOOLS_ERROR;
    }
    else
    {
        printf("Reading block %d\n",block);
        //remove the extra 48 bytes
        for(p=0;p<32;p++)
        {
            int dest_offset = p * 528;
            int src_offset = p * (512 + 64);
            memmove(buffer + dest_offset, buffer + src_offset, 528);
        }
    }
    return CARD_TOOLS_OK;
}

int erase_block(unsigned short block)
{
    unsigned char stat_buf[2];
    unsigned char command[9];
    command[0] = CARD_TOOLS_BULK_CMD;
    command[1] = CARD_TOOLS_BULK_ERASE_BLOCK;
    command[2] = PBA_HI(block);
    command[3] = 0x00; //Zone is always 0 for 16Mb cards
    command[4] = 0x00;
    command[5] = PBA_LO(block);
    command[6] = 0x02;
    command[7] = 0x00;
    command[8] = port;

    if (usb_bulk_write(dev, EP_OUT, command, 9, 5000) != 9)
    {
        printf("Error sending Erase command\n");
        return CARD_TOOLS_ERROR;
    }
    if (usb_bulk_read(dev, EP_IN, stat_buf, 2, 5000)!=2)
    {
        printf("error: Erasing Block\n");
    }
    else
    {
        printf("Erasing Block %d\n",block);
    }
    return CARD_TOOLS_OK;
}

int write_block(unsigned short block)
{
    unsigned char command[9];
    command[0] = CARD_TOOLS_BULK_CMD;
    command[1] = CARD_TOOLS_BULK_WRITE_BLOCK;
    command[2] = PBA_HI(block);
    command[3] = 0x00; //Zone is always 0 for 16Mb cards
    command[4] = 0x00;
    command[5] = PBA_LO(block);
    command[6] = 0x20; //We write 32 pages at a time as is the block size.
    command[7] = 0x00;
    command[8] = port;

    if (usb_bulk_write(dev, EP_OUT, command, 9, 5000) != 9)
    {
        printf("Error sending Write Block command\n");
        return CARD_TOOLS_ERROR;
    }
    if (usb_bulk_read(dev, 0x01, buffer, (BUF_SIZE*32), 5000) != (BUF_SIZE*32))
    {
        printf("Error Writing Block\n");
        return CARD_TOOLS_ERROR;
    }
    else
    {
        printf("Writing block %d\n",block);
    }
    return CARD_TOOLS_OK;
}
IMPRESIONANTEEE
TREMENDO

Salu2.
aWaKeNiNG escribió:q jartá de cables [flipa]
No hay mucha diferencia de cables ni dificultad comparando con la instalacion de un chip en la ps2.
dios...hay que soldar mas cable que en un robot xD
Eso si, impresionante eso de cambiar de kernel con un lector de tarjetas.... ¬_¬
¿Que utilidades podria tener este avance?
o_O

Increible!

Ahora la pregunta de rigor es... se podra poner alguna vez una xbmc?

de nuevo Increible!
Arkanoid escribió:¿Que utilidades podria tener este avance?


Cargar un kernel vulnerable y aprovechar el bug para usar linux y demás, creo que todo apunta a un XBOX Media center.

Salu2.
pues si esto podria crear una revolucion en la scene pero la cuestion es que...sol es valido con tarjetas xd o tmb se podria provar con otras como las tipicas SD?
Arkanoid escribió:¿Que utilidades podria tener este avance?


De momento si se usa en maquinas nuevas podrias tener accesible todos los kernels con sus ventajas e incombenientes:


Primer kernel: bug que permite ejecutar kiosk demo

Kernel v4532 o v4548: Permiten usar linux a traves del xploit del hipervisor / king kong.

Ultimo kernel: Conectarse al live (No permite ejecutar algunas peliculas wmv HD)

Ademas que con suerte poder añadir un update para usar un kernel modificado con soporte de divx, etc... pero eso de momento es un sueño.
Bienvenidos a la libertad de downgrade, ahora es cuando dark alex puede lucirse [tadoramo]
Flash78 escribió:Ademas que con suerte poder añadir un update para usar un kernel modificado con soporte de divx, etc... pero eso de momento es un sueño.


Espero que esta vez los sueños se hagan realidad :)
me encanta, ahora lo bueno seria que alguna empresa de este sector crease algun lector de tarjetas doble para poder tener los 2 kernels y poder intercambiarlos con un simple switch [amor]

y despues ya solo keda instalarle el linux, arreglar lo de la aceleracion 3d y el sonido y ya, para lo que hacemos la mayoria, podríamos ir vendiendo el ordenador... xDD
Entonces ya es solo cuestion de tiempo que podamos usar este bicho de consola para muchas otras utilidades.A mi lo que mas me interesaria es falsear lo del ping para jugar por Xlink Kai, pero eso esta lejos me parece a mi.
no hay que fliparlo tanto, a que llegen a crear un kernel modificado seguro ke pasar aun año minimo...ademas seguro ke crearan otra forma mas sencilla para cambiar el kernel etc, eso si, algun voluntario para provar el experimento?? [qmparto]
Arkanoid escribió:Entonces ya es solo cuestion de tiempo que podamos usar este bicho de consola para muchas otras utilidades.A mi lo que mas me interesaria es falsear lo del ping para jugar por Xlink Kai, pero eso esta lejos me parece a mi.


http://www.elotrolado.net/showthread.php?s=&postid=1707933964#post1707933964

hay que probarlo pero existen este tipo de programas [360º]
pero esas soldaduras no estan al alcance de cualquiera...
Supongo que se le puede poner un lector de tarjetas.

Perdon, kise decir el SLOT del adaptador de tarjetas, es obvio que el adaptador en si no :P. Pero si desmontamos un lector o le ponemos un adaptador de esos de MiniSD a SD podrias soldar en el adaptador SD y meterle MiniSD
KROKIS escribió:Supongo que se le puede poner un lector de tarjetas.

Perdon, kise decir el SLOT del adaptador de tarjetas, es obvio que el adaptador en si no :P. Pero si desmontamos un lector o le ponemos un adaptador de esos de MiniSD a SD podrias soldar en el adaptador SD y meterle MiniSD

al final el tipo de tarjeta sera lo de menos. La persona que o ha probado lo habra hecho con una XD porque es la que tenia por casa.

Yo no temino de entender muy bien el tema, se supone que con este metodo da igual el firmware que tenga la consola que podriamos arrancar con cualquiera de los que existen?????
independientemente del famoso efuse???

sinceramente no me termino de enterar muy bien.

un saludo
-DAVIZINHO-
DAVIZINHOX escribió:al final el tipo de tarjeta sera lo de menos. La persona que o ha probado lo habra hecho con una XD porque es la que tenia por casa.

Yo no temino de entender muy bien el tema, se supone que con este metodo da igual el firmware que tenga la consola que podriamos arrancar con cualquiera de los que existen?????
independientemente del famoso efuse???

sinceramente no me termino de enterar muy bien.

un saludo
-DAVIZINHO-


Me pasa lo mismo, con el efuse fundido...
360GRADOS escribió:
Me pasa lo mismo, con el efuse fundido...


[MODE OFF TOPIC]
TIO LA FOTO de la placa por dios, que yo soy de los que tiene curiosidad XD
existe algun esquema me gustaria probarlo ya que de momento solo puedo jugar a juegos antiguos y disfrutar del linux en un disco duro de 120 y la verdad esque ay juegos a los que me molaria jugar sin tener que ir a casa de mi novia que si la tiene actualizada
jajaja una novia con xbox360 propia, eso si que es un chollo :P

parece que la scene ya tiene algo más de idea, lo que se come el coco la gente... el caso es que nu se para que se puede utilizar linux exactamente en xbox para la gente que usamos windows normalmente...
Esto podria ser el inicio de la revolucion, basicamente el comenzaria por trandformar esto en una especie de chip en lugar de tarjeta de memoria, (o con entrada para ellas y ser facilmente actualizable) d esa forma ya tendriamos acceso a la version vulnerable del kernel. Ahora solo falta que los expertos se pongan en serio a trastear con esa vulnerabilidad y sacarle todo el jugo. Lo ideal seria :

- Chip con memoria internna+ lector tarjetas o usb's, con interruptor para arrancar el kernel original o el de la tarejta/memoria

- Kernel modificado con sus adecuadas opciones (XBMC,Carga Juegos HDD, Xlink autonomo etc..)

Y ahora me pregunto, que es necesario para programar algo en 360, entiendo que la xbox1 al ser Pentium se programaria posiblemente en C o algo parecido, que lenguaje soportaria 360? tendria que ser con ensamblador?
Y por ultimo, a modo "XMBC" cutre, se podria cargar una especie de live-cd linux a moodo de XBMC de 360?
Algun voluntario para compilar la appz y dejarla chula?

En teoria hay que usar un lector de tarjetas que permita el modo de lectura y escritura RAW. En concreto Warpjavier uso el modelo de olimpus MAUSB-10 pero seguramente funcionen otros mas.

Una vez compilada la util seria cuestion de probar. Yo estoy a esperas de conseguir una tarjeta xd_Card de 16mb para hacer el experimento.

Si a alguien le sobra alguna plz query me.
Suelen regalarlas con las camaras de fotos olympus a modo de prueba porque no valen para mucho dada su escasa capacidad.

Saludos.
haute escribió:Algun voluntario para compilar la appz y dejarla chula?

En teoria hay que usar un lector de tarjetas que permita el modo de lectura y escritura RAW. En concreto Warpjavier uso el modelo de olimpus MAUSB-10 pero seguramente funcionen otros mas.

Una vez compilada la util seria cuestion de probar. Yo estoy a esperas de conseguir una tarjeta xd_Card de 16mb para hacer el experimento.

Si a alguien le sobra alguna plz query me.
Suelen regalarlas con las camaras de fotos olympus a modo de prueba porque no valen para mucho dada su escasa capacidad.

Saludos.

solo las memorias X D permiten ese modo de lectura/escritura???????
Supongo que si se ha conseguido leer datos de una tarjeta se podrá leer de otro tipo de soporte, por ejemplo algún tipo de chip de memoria que permita escibir en él, no?

Porque qué mas da que se lean los datos de una SD que de un chip? El caso es que se puedan leer y utilizar nop?
Con el DJGPP no hay manera ya que no tiene librerias de windows, etc.. le he pasado el fuente a un compañero del dep. de programacion a ver si no tiene problemas.
las librerias para compilarlo en win estan junto a los sources que publico warpjavier.

You need libusb for win32 http://libusb-win32.sourceforge.net/ to compile it for windows platform.
A mi lo que me gustaría es que por fin se pueda recuperar una key perdida
eso es difícil, sobre todo si ya dispones de un kernel no vulnerable.
Sino quizás sea mas fácil.


DAVIZINHOX, cuando dices que esas memorias soportan el modo raw, lo afirmas o lo preguntas?

Creo que también se pueden usar tarjetas SmartMedia, solo que warpjavier uso las Xd card por su menos tamaño y dado donde la ubicó era la única manera de hacerlo
No me keda claro el tema de los efuses.

Entonces se puede o no hacer este invento si tienes los efuses machacados con la actualización última????


Gracias por adelantado.


PD.- no tengo ni idea, pero supongo que no vale de nada.
Hola

He bajado las fuentes del programa y lo he podido compilar, les dejo el proyecto configurado para visual c 6, solo tienen que copiar el archivo libusb.lib a la carpeta lib del visual c 6, o si lo quieren hacer a mano tienen que modificar esto:

Imagen

al compilar nos tira 4 warning que no afecta a la compilacion del programa y se pueden resolver facilmente, pero mejor lo dejamos asi tal cual.

Imagen

el proyecto configurado junto con el binario esta aqui:

http://rapidshare.com/files/33916822/prueba.rar.html
Ok thx, alguien lo puede probar que tenga tarjetas SM o xd?

Os recuerdo que si usais SM teneis que cambiar esto.

int port = CARD_TOOLS_PORT_XD; //you can change it if you use Smartmedia cards.

cambiarlo por:
nt port = CARD_TOOLS_PORT_SM; //you can change it if you use Smartmedia cards.

Y si usais otro lector de tarjetas diferente al que uso warpjavier seguramente tengan que modificar esto otro.


/* the device's vendor and product id for Olympus MAUSB-10*/
#define MY_VID 0x07B4
#define MY_PID 0x010A

y poner el VID y PID del dispositivo que esteis usando.
alguien puede explicar un poco?
aca he leido en este hilo a un monton hablar de si esta modificacion funciona o no con no se que "EFuse" Quemado!!!

Quien les ha dicho a uds que la actualizacion del dashboard, firmware o baneo alguno quema algun efuse dentro de la placa madre???

Es no ha dejado jamas de ser una teoria que no fue confirmada y que de haber sido asi, no seria mas dificil que cambiar dicho fusible!!!

pero como he dicho antes no se ha demostrado que exista ningun efuse quemado, de donde han sacado tremenda informacion???
newbiex escribió:alguien puede explicar un poco?
aca he leido en este hilo a un monton hablar de si esta modificacion funciona o no con no se que "EFuse" Quemado!!!

Quien les ha dicho a uds que la actualizacion del dashboard, firmware o baneo alguno quema algun efuse dentro de la placa madre???

Es no ha dejado jamas de ser una teoria que no fue confirmada y que de haber sido asi, no seria mas dificil que cambiar dicho fusible!!!

pero como he dicho antes no se ha demostrado que exista ningun efuse quemado, de donde han sacado tremenda informacion???

Tienes toda la razon, enga desencapsulemos todos la CPU de la consola (hablo del micro) y le ponemos un fusible nuevo.

venga tio, no vallas de sobrado anda
todos los tutoriales k utilizo para hacer cosillas a mis niñas los haces tu tio, estaba cansado de aguantar con el 4532. 10 ptos tio muchas gracias.

En cuanto pueda manos a la obra, en realidad no parece muy dificil, pero contestarme, esto puede ser muy peligroso para la 360 o una vez testeado ya no habra problemas?¿?¿
Para comprobar el tema este del efuse estaria bien que alguien con una xbox actualizada hiciese esta modificacion, lo peor que le puede pasar es que no le arranque la consola, entonces se lo quita y a funcionar otra vez con la actualizacion.
¿Es correcto o me equivoco?
goldaster escribió:Para comprobar el tema este del efuse estaria bien que alguien con una xbox actualizada hiciese esta modificacion, lo peor que le puede pasar es que no le arranque la consola, entonces se lo quita y a funcionar otra vez con la actualizacion.
¿Es correcto o me equivoco?


El tema de los efuses esta mas que comprobado.

http://www.elotrolado.net/showthread.php?s=&threadid=752528
Flash78 escribió:El tema de los efuses esta mas que comprobado.

Joder... como hay gente que decia por aqui que solo era una teoria... Bueno, podriamos buscar los puntos donde esta el efuse y hacer un micro-puente con estaño, a la antigua usanza [qmparto] , yo tengo por aqui una tele que se le fundio el fusible y no veas lo que dura con un clip enganchado [toctoc] [toctoc] .

PD:Lo del puente ese es coña ee, ya me imagino que no se puede.
victor123 está baneado por "Has sido expulsado definitivamente por troll. No vuelvas"
AQUI LLEGA EL PUNTO, LA 360, NUESTRA BLANQUITA VA A PASAR A MEJOR VIDA, A VER SI TENEMOS MAS SCEEN Y MENOS BAAAAAN.
DAVIZINHOX escribió:al final el tipo de tarjeta sera lo de menos. La persona que o ha probado lo habra hecho con una XD porque es la que tenia por casa.

Yo no temino de entender muy bien el tema, se supone que con este metodo da igual el firmware que tenga la consola que podriamos arrancar con cualquiera de los que existen?????
independientemente del famoso efuse???

sinceramente no me termino de enterar muy bien.

un saludo
-DAVIZINHO-


La tarjeta es Xd porque lleva internamente una memoria NAND Hyndyx parecida a la de la placa HY27US08281A. y el Lector tiene q soportar Raw.

Por lo que no sirve cualquier tipo de tarjeta ni de lector. Aseguraros antes.

Yo en cuanto tenga todo el material me lio con ello y os comento. pero seguramente ya sera para el finde.

Un Saludo.
Entonces los que tenemos el enfuse quemado:

A) podemos quitarlo y poner otro igual

B) ya nos ching*mos? [mamaaaaa] :-O
RAYDEN01 escribió:Entonces los que tenemos el enfuse quemado:

A) podemos quitarlo y poner otro igual

B) ya nos ching*mos? [mamaaaaa] :-O



efuse no es un fusible, esta Interno en la CPU los fuses están compuestos por 12 cadenas alfanuméricas de 16 dígitos, si has actualizado la consola nueva con v. 2858 sin quitar la resistencia R6T3 no hay vuelta atrás dado que la última actualización cambia el valor de los fuses.

esos efuses se pueden dumpear con linux mira el siguiente tutorial de Gas-o.

Tutorial leer fuses en linux con kernel vulnerable

ejemplo:
* FUSES - write them down and keep them safe:
fuseset 00: X
fuseset 01: X
fuseset 02: X
fuseset 03: X
fuseset 04: X
fuseset 05: X
fuseset 06: X
fuseset 07: X
fuseset 08: 0000000000000000
fuseset 09: 0000000000000000
fuseset 10: 0000000000000000
fuseset 11: 0000000000000000
Para los que hemos actualizado la consola el 7 de mayo, podemos usar esta tecnica para cargar otros kernels?, es para seguir el tema de mas cerca.



Un saludo.
Una pregunta..
Yo llevo ya sin conectar la consola un tiempo, desde antes del 17M, mi pregunta es..
Si la conecto, fijo que me la banearán, peroooo, si no la conectas, existirán juegos que te la pidan actualizar no?, entonces que pasa que a esos ya no podré jugar?
Gladiator escribió:Para los que hemos actualizado la consola el 7 de mayo, podemos usar esta tecnica para cargar otros kernels?, es para seguir el tema de mas cerca.



Un saludo.


Por ejemplo si tienes la actualizacion de enero 2007, cambio el valor de los efuses y por esta razon no se puede accder a los antiguos kernels. Si no tienes la actualizacion de mayo 2007, creo que podrias cambiar entre la penultima y ultima version pero quitando una resistencia para evitar que vuelva a cambiar el valor de los efuses y deje de funcionar el kernel de enero 2007.
y que pasa si tienes la actualizacion de mayo 07? no se podria cambiar el kernel igualmente por alguno anterior o x ejemplo por alguno vulnerable? [reojillo]
Flash78, con el DJGPP si que se puede compilar :P
y con MinGW también :P
a ver si lo puedo compilar en linux que da errores de compilación xD

Si quieres sabes como me dices algo :)
167 respuestas
1, 2, 3, 4