It looks like I didn't quite fix the SHA-1 hash bug. Me being the idiot that I am, forgot to increment the read offset when I changed the code to read in 1MB chunks. So, it's only reading the first 1MB of each file over and over. It explains why the SNEEK format doesn't work and the weird results with the hash test.
I'll send a PM to both of you later if you'd like to test the changes. If anyone else wants a link to the exe, let me know.
One thing I noticed is that Wiimm put more work into this and calculates the exact size of the main.dol. Both WBM and DiscEx just use the difference between 2 offsets as the size. It results in the dol sometimes having a few extra bytes at the end. It shouldn't interfere with anything, the dol will work fine, but it'll sometimes be a few bytes larger than the output from wit.
#define DOL_N_TEXT_SECTIONS 7
#define DOL_N_DATA_SECTIONS 11
#define DOL_N_SECTIONS (DOL_N_TEXT_SECTIONS+DOL_N_DATA_SECTIONS)
#define DOL_HEADER_SIZE 0x100
typedef struct dol_header_t
{
/* 0x00 */ u32 sect_off [DOL_N_SECTIONS];
/* 0x48 */ u32 sect_addr[DOL_N_SECTIONS];
/* 0x90 */ u32 sect_size[DOL_N_SECTIONS];
/* 0xd8 */ u32 bss_addr;
/* 0xdc */ u32 bss_size;
/* 0xe0 */ u32 entry_addr;
/* 0xe4 */ u8 padding[DOL_HEADER_SIZE-0xe4];
}
__attribute__ ((packed)) dol_header_t;
u32 dol_size = 0;
for ( i = 0; i < DOL_N_SECTIONS; i++ )
{
const u32 size = dol->sect_off[i] + dol->sect_size[i];
if ( dol_size < size )
dol_size = size;
}
Me being the idiot that I am, forgot to increment the read offset---Nah you are great!!---when I changed the code to read in 1MB chunks. So, it's only reading the first 1MB of each file over and over.---That explains why my backups kept loading over and over---
wit can do this. But it will only change the image and will not free the memory on WBFS. You see the impact of this only when copying the image. Implementing a "WBFS free" is not hard, it's a long time on my to do list:How about the option to remove unwanted partitions from games already on the drive.
Downloading so you can play them on what?Will Gamecube ever be intergrated into this for downloading of covers?
@Lucif3r
Honestly, I've no idea. Any file that WBM creates will have a .tmp extention and will generally be in the temp folder. It sounds like an extracted ISO because of the size. If you still have the file you could rename it to .iso or .wbfs and check to see what game it was at least.
@Patryc
Gamecube support is on the todo list, but it's not the highest priority right now. I will get round to it one day. It probably won't take too long actually because it's mostly implemented already, but it wasn't working correctly.
@Lucif3r
Honestly, I've no idea. Any file that WBM creates will have a .tmp extention and will generally be in the temp folder. It sounds like an extracted ISO because of the size. If you still have the file you could rename it to .iso or .wbfs and check to see what game it was at least.