Hey VC,
Is there a way to get DIskwriter to read Eshop games?
Thank youIll have to take a look at things, its gonna make it hard not having a 3DS for a while cause im returning it in exchange for a N3DS. Im about to get some sleep, ill be working on it more tomorrow. I will keep everyone up to date.
Offset(h) 00 04 08 0C
000000000 00000100 00000400 00000500 00000800 ................
000000010 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000020 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000030 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000040 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000050 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000060 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000070 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000080 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000090 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000000A0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000000B0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000000C0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000000D0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000000E0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000000F0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000100 524F4D53 FFFFFFFF FFFFFFFF FFFFFFFF ROMSÿÿÿÿÿÿÿÿÿÿÿÿ
000000110 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000120 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000130 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000140 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000150 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000160 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000170 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000180 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
000000190 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000001A0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0000001B0 FFFFFFFF FFFFFFFF FFFFFFFF FFFF8000 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€.
0000001C0 00000CFF FFFF4000 00000004 00000000 ...ÿÿÿ@.........
0000001D0 00000000 00000000 00000000 00000000 ................
0000001E0 00000000 00000000 00000000 00000000 ................
0000001F0 00000000 00000000 00000000 000055AA ..............Uª
The limit of 31 games is because of the way the app writes the rom index to the SD card on sector 0
Each game is stored using TWO 32bit values, one is the start sector of the rom
and the other is the length of the rom in sectors (both appear to be in little endian)
(I have no idea how/where/what offset saves are stored at, I don't have my Sky3DS yet so can't test)
At offset 0x100 is the value 524F4D53 (ROMS) which is used to check if the SD card is formatted for Sky3DS.
(If this offset isn't 524F4D53 then the sky3DS app will say this card isn't formatted)
There can only be 31 games stored, the last offset at 0xF8+0xFC is FF which is
probably needed so Sky3DS card knows when to loop back to the first rom on the card.
Here is sector 0 hexdump of a MicroSD formatted with 2 test games written to a 16gb microSD.
(Game sizes are 128mb + 256mb see image below)
Code:Offset(h) 00 04 08 0C 000000000 00000100 00000400 00000500 00000800 ................ 000000010 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000020 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000030 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000040 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000050 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000060 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000070 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000080 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000090 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000000A0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000000B0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000000C0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000000D0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000000E0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000000F0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000100 524F4D53 FFFFFFFF FFFFFFFF FFFFFFFF ROMSÿÿÿÿÿÿÿÿÿÿÿÿ 000000110 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000120 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000130 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000140 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000150 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000160 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000170 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000180 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000000190 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000001A0 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 0000001B0 FFFFFFFF FFFFFFFF FFFFFFFF FFFF8000 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€. 0000001C0 00000CFF FFFF4000 00000004 00000000 ...ÿÿÿ@......... 0000001D0 00000000 00000000 00000000 00000000 ................ 0000001E0 00000000 00000000 00000000 00000000 ................ 0000001F0 00000000 00000000 00000000 000055AA ..............Uª
Offset 0x00 + 0x04 = Game 1 - Offset (00 01 00 00) + Size (00 04 00 00)
Offset 0x08 + 0x0C = Game 2 - Offset (00 05 00 00) + Size (00 08 00 00)
Offset 0x10 + 0x14 = Game 3
Offset 0x18 + 0x1C = Game 4 etc
Game 31 would be Offset 0xF0+0xF4
Game 32 would beOffset 0xF8+0xFC
Having 33 games on your microSD will overwrite the offset at 0x100 which will make
DiskWriter think your MicroSD card isn't formatted the next time you start it up.
The 16 bytes from Offset 0x1BC is a partition entry (1 of 4)
(appears to be for a partition with the setup.zip containing the DiskWriter App)
and the offset 0x1FE+0x1FF is the Boot Sector Signature (0x55 0xAA)
Hey VC,
Is there a way to get DIskwriter to read Eshop games?
I am looking to create a completely new diskwriter from mostly scratch, it will be open source as to allow for people to contribute. This will provide both better game support as well as a better implementation. Thank you for the research.
While that would be awesome, wouldn't changing how the data is stored break compatibility with the actual sky3DS card? I assume it just checks the same data as the diskwriter does, so I'm not sure if there's any way to get around the game limit without an actual update/modification to the sky3DS card itself.
I did. I PM'd him to let him know the specifics. But, I think the problem may have actually been on my end. Im using a 64gb sd card and I attempted to fill it completely.update the op to say that it doesn't work, right but good work, although let's just hope sky3ds update like they say they would, i think?
(i don't even have a sky3ds, but, sure it's a nice product)
Even if you could, the 3DS probably won't run them, so I doubt it's all that useful.
While that would be awesome, wouldn't changing how the data is stored break compatibility with the actual sky3DS card? I assume it just checks the same data as the diskwriter does, so I'm not sure if there's any way to get around the game limit without an actual update/modification to the sky3DS card itself.
I am looking to create a completely new diskwriter from mostly scratch, it will be open source as to allow for people to contribute. This will provide both better game support as well as a better implementation. Thank you for the research.
Hey Guys,
After further research on this matter, I found that C438 and Arras are correct in their assessment.
VC, Thank you for your work on this but if users use this modified writer, it will 'break' their card. I know this to be true because when I over loaded the card, it refused to work until I reformatted the card. I then had to rewrite the entire image I already had backed up to the card to get it working. Once I reinserted the card back into my NN3DS i got the very scary 'Game Removed Error shut down...blablah'. I turned the unit off completely and tried it again and my card was working perfectly again.
At this juncture, i cannot recommend anyone using this modified release as adding more games will break your card. But, I am very impressed with how sturdy and reliable this Sky3DS cart is. So far, I would highly recommend this cart to everyone. It just simply works. Even when you try to break it, it still just works!
Yes. It was incredible. You should've been there.You mean to tell me you tried to smash it with a hammer and it rebounded? I want a video.
Ill have to take a look at things, its gonna make it hard not having a 3DS for a while cause im returning it in exchange for a N3DS. Im about to get some sleep, ill be working on it more tomorrow. I will keep everyone up to date.
I will be modifying the OP shortly, I am just about to jump onto my laptop to do it. The link will be removed, I will still keep updating the thread with news/progression.Hey Guys,
After further research on this matter, I found that C438 and Arras are correct in their assessment.
VC, Thank you for your work on this but if users use this modified writer, it will 'break' their card. I know this to be true because when I over loaded the card, it refused to work until I reformatted the card. I then had to rewrite the entire image I already had backed up to the card to get it working. Once I reinserted the card back into my NN3DS i got the very scary 'Game Removed Error shut down...blablah'. I turned the unit off completely and tried it again and my card was working perfectly again.
At this juncture, i cannot recommend anyone using this modified release as adding more games will break your card. But, I am very impressed with how sturdy and reliable this Sky3DS cart is. So far, I would highly recommend this cart to everyone. It just simply works. Even when you try to break it, it still just works!