Exemple #1
0
s32 WBFS_AddGame(void)
{
	if (wbfs_part_fs) return WBFS_FAT_AddGame();
	s32 ret;

	/* No device open */
	if (!hdd)
		return -1;

	/* Add game to device */
	partition_selector_t part_sel = ALL_PARTITIONS;
	int copy_1_1 = 0;
	switch (CFG.install_partitions) {
		default:
		case CFG_INSTALL_GAME:
			part_sel = ONLY_GAME_PARTITION;
			break;
		case CFG_INSTALL_ALL:
			part_sel = ALL_PARTITIONS;
			break;
		case CFG_INSTALL_1_1:
		case CFG_INSTALL_ISO:
			part_sel = ALL_PARTITIONS;
			copy_1_1 = 1;
			break;
	}
	ret = wbfs_add_disc(hdd, __WBFS_ReadDVD, NULL, __WBFS_Spinner, part_sel, copy_1_1);
	if (ret < 0)
		return ret;

	return 0;
}
Exemple #2
0
s32 WBFS_AddGame(void)
{
	s32 ret;

	/* No device open */
	if (!hdd)
		return -1;

	/* Add game to device */
	ret = wbfs_add_disc(hdd, __WBFS_ReadDVD, NULL, __WBFS_Spinner, ALL_PARTITIONS, 0);
	if (ret < 0)
		return ret;

	return 0;
}
Exemple #3
0
int op_add_iso(char *filename, void (*update)(int, int))
{
  FILE *f;
  wbfs_disc_t *disc;
  char code[7];
  int ret;

  cancel_wbfs_op = 0;
  if (! update)
    update = progress_update;

  /* open ISO */
  f = fopen(filename, "r");
  if (f == NULL) {
    show_error("Error Adding ISO", "Can't open ISO file '%s'", filename);
    return 1;
  }
  if (fread(code, 1, 6, f) != 6) {
    fclose(f);
    show_error("Error Adding ISO", "Can't read disc ID from file '%s'.", filename);
    return 1;
  }
  code[6] = '\0';

  /* check if disc is already there */
  disc = wbfs_open_disc(app_state.wbfs, (u8 *) code);
  if (disc != NULL) {
    wbfs_close_disc(disc);
    fclose(f);
    show_error("Error Adding ISO", "The disc is already in the WBFS partition.");
    return 1;
  }

  /* add disc */
  ret = wbfs_add_disc(app_state.wbfs, read_wii_file, (void *) f, update, ONLY_GAME_PARTITION, 0, NULL);
  
  fclose(f);
  return ret;
}