Hacking WiiJManager Multiplataform (Windows/OS X)

  • Thread starter Thread starter zon7
  • Start date Start date
  • Views Views 423,107
  • Replies Replies 162
pelago said:
Wiimm said:
pelago said:
[*]ISO files that have been split show as size 4095 Mb, without adding on the size of the .iso.1 file.
This may be an error of wit.
Ah yes, I see the same behaviour in wit 0.46a, sorry for reporting this the wrong thread.
Fixed, expect the next release.
 
NiGHtS said:
Ok so i'm trying to use this thing on my mac...but like for some reason the .jar file doesn't even open >.> I mean the application launches then just closes down by itself...plus there's no other simple way to add already converted wbfs files to a drive on mac so i'm really confused with options here -_-


zon7 said:
Have updated the jar with the fix to OSX rdisk. It was a problem with a null pointer not being casted.
As always, the download link is in the first post.
Thanks to you all for the feedback


@NiGHtS Can you be more specific? System, java version. You can post the contents of the log.txt. You can also run the file as "java -jar WiiJManager.jar" from the terminal and tell me what exception it throws.

Hi all,

First apologize, I post wrongly in another thread... I'll search how to remove the other one...

I don't know if NiGHtS manage to solve his problem, but I have exactly the same issue: double click on .jar, application launch and... close and... nothing.

I tried the Terminal way and here are the details:

CODE
System is "Mac OS X"
Preferences loaded
Preferences applied
osx/wwt find
Reading drives
Drive "ScanDevForPartitions(sd)" found
Drive " - part found: /dev/sdt" found
Drive "ScanDevForPartitions(rdisk)" found
Drive " - part found: /dev/rdisk0" found
Drive " - part found: /dev/rdisk0s1" found
Drive " - part found: /dev/rdisk0s2" found
Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: javax.swing.JTable.setFillsViewportHeight(Z)V
ÂÂÂÂat appPackage.FolderPanel.initGUI(FolderPanel.java:136)
ÂÂÂÂat appPackage.FolderPanel.(FolderPanel.java:100)
ÂÂÂÂat appPackage.WiiJManager.initGUI(WiiJManager.java:71)
ÂÂÂÂat appPackage.WiiJManager.(WiiJManager.java:59)
ÂÂÂÂat appPackage.WiiJManager$1.run(WiiJManager.java:48)
ÂÂÂÂat java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
ÂÂÂÂat java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
ÂÂÂÂat java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
ÂÂÂÂat java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
ÂÂÂÂat java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
ÂÂÂÂat java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
ÂÂÂÂat java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

Mac version 10.5.8
Jar Launcher 12.6.0
Java Web Start 12.6.0 (not sure I'm looking at the right thing)

Let me know if I have to give you more details...

Thanks for the help you can provide
 
zon7 said:
It's been tested in Mac OS X 10.6 (still no time to find a machine with 10.5), with Ubuntu 9.04 and Windows XP SP3. If you find any problem (no drives showing or other problems) just ask here or PM me with the log.txt generated by the tool.

Hi
So far, as I've games on LVM, i had to do losetup to create a /dev/loop that "wwt find" will find.

GUI seems to be using 'gksudo wwt find' to find partitions, that doesn't work if your distribution doesn't use gksudo, or if you don't need it (as my devices already have correct permissions for my user).

I had to create a fake 'gksudo' running the commandline passed to have it finding the partition, but then GUI throwed exception:

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 100
at appPackage.Globals.readTitlesDrive(Globals.java:207)
at appPackage.FolderPanel.refreshTableWithPath(FolderPanel.java:568)
at appPackage.FolderPanel.actionPerformed(FolderPanel.java:462)
at javax.swing.JComboBox.fireActionEvent(JComboBox.java:1257)
at javax.swing.JComboBox.setSelectedItem(JComboBox.java:584)
at javax.swing.JComboBox.setSelectedIndex(JComboBox.java:620)
at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(BasicComboPopup.java:831)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290)
at java.awt.Component.processMouseEvent(Component.java:6108)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at javax.swing.plaf.basic.BasicComboPopup$1.processMouseEvent(BasicComboPopup.java:497)
at java.awt.Component.processEvent(Component.java:5873)
at java.awt.Container.processEvent(Container.java:2105)
at java.awt.Component.dispatchEventImpl(Component.java:4469)
at java.awt.Container.dispatchEventImpl(Container.java:2163)
at java.awt.Component.dispatchEvent(Component.java:4295)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
at java.awt.Container.dispatchEventImpl(Container.java:2149)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4295)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:604)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)


Regards!
 
On ubuntu 10.04

patrick@patrick-desktop:~/Bureau/WiiJManager$ java -jar WiiJManager.jar
System is "Linux"
Preferences loaded
Preferences applied
gksudo linux/wwt find
Reading drives
No drives found
gksudo linux/wwt find
Reading drives
No drives found
Reading Titles
Reading titles from WBFS folder
gksudo linux/wit list --sections --recurse=/home/patrick/Bureau/Prince of Persia Rival.Swords.PAL.Wii.WBFS-ATeam --rdepth=3
Updating table
Table updated

No game was found in the specified directory but I have a wbsf game into it!
 
@zon7
Is it possible to post you sources (if not already done)?
It seems that some developers here have interests to improve WiiJManager.

BTW:
It's possible to have different GUIs that support different features of wit+wwt, like checking and repairing, extraction and composing, ...
I have no plans to do it by myself, but I will support such actions.
 
Wiimm said:
pelago said:
[*]When executing the wwt commands, could you use the full version of the options, rather than the abbreviated? It is always a good style to use the long options in scripts an other secondary tools. Use the short options only if typing it on a command line to save time.

QUOTE(pelago @ May 21 2010, 11:29 PM) [*]ISO files that have been split show as size 4095 Mb, without adding on the size of the .iso.1 file.
This may be an error of wit.
How can I set it up not to split ISOes I extract from the WiiJManager Interface? I'm trying to create a perfectly good burnable DVD5 ISO.

Thanks!
 
I am using OSX 10.6.4 and this is the call stack for the error I am receiving:

CODE
System is "Mac OS X"
Preferences loaded
Preferences applied
osx/wwt find
Reading drives
Drive "ScanDevForPartitions(sd)" found
Drive " - part found: /dev/sdt" found
Drive "ScanDevForPartitions(rdisk)" found
Drive " - part found: /dev/rdisk0" found
Drive " - part found: /dev/rdisk1" found
Drive " - part found: /dev/rdisk2" found
Drive " - part found: /dev/rdisk3" found
Drive " - part found: /dev/rdisk0s1" found
Drive " - part found: /dev/rdisk1s1" found
Drive " - part found: /dev/rdisk1s2" found
Drive " - part found: /dev/rdisk2s1" found
Drive " - part found: /dev/rdisk2s2" found
Drive " - part found: /dev/rdisk3s1" found
Drive " - part found: /dev/rdisk3s2" found
Drive " - part found: /dev/rdisk4" found
Drive " - part found: /dev/rdisk4s1" found
Drive " - part found: /dev/rdisk5" found
Drive " - part found: /dev/rdisk5s1" found
Drive " - part found: /dev/rdisk5s2" found
Drive " - part found: /dev/rdisk6" found
Drive " - part found: /dev/rdisk6s1" found
java.lang.ArrayIndexOutOfBoundsException: 20
at appPackage.Globals.readDrives(Globals.java:150)
at appPackage.FolderPanel.refreshDriveList(FolderPanel.java:211)
at appPackage.FolderPanel.initGUI(FolderPanel.java:124)
at appPackage.FolderPanel.(FolderPanel.java:100)
at appPackage.WiiJManager.initGUI(WiiJManager.java:71)
at appPackage.WiiJManager.(WiiJManager.java:59)
at appPackage.WiiJManager$1.run(WiiJManager.java:48)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
osx/wwt find
Reading drives
Drive "ScanDevForPartitions(sd)" found
Drive " - part found: /dev/sdt" found
Drive "ScanDevForPartitions(rdisk)" found
Drive " - part found: /dev/rdisk0" found
Drive " - part found: /dev/rdisk1" found
Drive " - part found: /dev/rdisk2" found
Drive " - part found: /dev/rdisk3" found
Drive " - part found: /dev/rdisk0s1" found
Drive " - part found: /dev/rdisk1s1" found
Drive " - part found: /dev/rdisk1s2" found
Drive " - part found: /dev/rdisk2s1" found
Drive " - part found: /dev/rdisk2s2" found
Drive " - part found: /dev/rdisk3s1" found
Drive " - part found: /dev/rdisk3s2" found
Drive " - part found: /dev/rdisk4" found
Drive " - part found: /dev/rdisk4s1" found
Drive " - part found: /dev/rdisk5" found
Drive " - part found: /dev/rdisk5s1" found
Drive " - part found: /dev/rdisk5s2" found
Drive " - part found: /dev/rdisk6" found
Drive " - part found: /dev/rdisk6s1" found
java.lang.ArrayIndexOutOfBoundsException: 20
at appPackage.Globals.readDrives(Globals.java:150)
at appPackage.FolderPanel.refreshDriveList(FolderPanel.java:211)
at appPackage.FolderPanel.initGUI(FolderPanel.java:124)
at appPackage.FolderPanel.(FolderPanel.java:100)
at appPackage.WiiJManager.initGUI(WiiJManager.java:79)
at appPackage.WiiJManager.(WiiJManager.java:59)
at appPackage.WiiJManager$1.run(WiiJManager.java:48)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


The GUI doesn't fully load, just the the panels and the Refresh Buttons.

screenshot20100710at501.png


Thanks for a great program.
 
@zon7

Great app!
It has a lot of potential!

A couple of issues I've seen with the 0.8 release (win7)..


- when converting iso to wdf, any ".1" files are not counted in the title's size in the main gui.. (ex. a DL iso, converted to wdf became two files (3906MB + 2582MB) but reports as only 3814Mb [sic] (Fixed by updating WIT tools (1.10a).. Thx Wiimm!)

- Size unit is actually in "MB" (MegaBYTE) not "Mb" (MegaBIT) (GUI displays "Mb")

- 'refresh list' button does not seem to refresh the list, at least not in 'select folder' mode

- wish for multi-select (shift/ctrl/drag-box + click) feature

- wish for job queuing feature (batch converting multiple iso's serially, not in parallel)

- iso names - sometimes the Name shows up as "(null)". Would be nice to be able to replace with filename, or user-definable string in GUI.


But again, this app looks *great* so far. Good job!
yaywii.gif
 
Wiimm said:
the split size prob should be solved by me. Have you tried an more recent wit?

Hey Wiimm,

You're right.. I dropped in your 1.10a (nice toolset btw!) and it reports the size correctly now.

Thanks for pointing that out.

Cheers!
 
Wiimm said:
@zon7
Is it possible to post you sources (if not already done)?
It seems that some developers here have interests to improve WiiJManager.

BTW:
It's possible to have different GUIs that support different features of wit+wwt, like checking and repairing, extraction and composing, ...
I have no plans to do it by myself, but I will support such actions.
If it turns out he has abandoned this project/site, couldn't the code simply be decompiled, assuming he hasn't gone to any lengths to obfuscate it? Sorry if that's a dumb question as I know nothing about programming/java.
smile.gif


But...I don't mind learning.
wink.gif


pelago said:
[*]When executing the wwt commands, could you use the full version of the options, rather than the abbreviated? This is so that the log is easier to read for people who aren't completely familiar with wwt options. For example, instead of using "gksudo linux/wwt -P -p /dev/sdb1 EXTRACT SMNP01 -I -z -D /home/user/New_Super_Mario_Bros._Wii\[SMNP01\]", you could use "gksudo linux/wwt --progress --part /dev/sdb1 EXTRACT SMNP01 --iso --split --DEST /home/user/New_Super_Mario_Bros._Wii\[SMNP01\]"

CODE
ÂÂpublic static void extractGame(FolderPanel panelA, FolderPanel panelB, GameFormat format) {
ÂÂÂÂString driveA = panelA.getDrive();
ÂÂÂÂString driveB = panelB.getDrive();

ÂÂÂÂString gameID = panelA.getSelectedGameID();
ÂÂÂÂString gameFormat = null;

ÂÂÂÂLogger.write("Extracting game");
ÂÂÂÂif (format == GameFormat.WBFS)
ÂÂÂÂÂÂgameFormat = "WBFS";
ÂÂÂÂelse if (format == GameFormat.WDF)
ÂÂÂÂÂÂgameFormat = "WDF";
ÂÂÂÂelse if (format == GameFormat.ISO) {
ÂÂÂÂÂÂgameFormat = "ISO";
ÂÂÂÂ}
ÂÂÂÂif (panelB.gameExists(gameID, gameFormat)) {
ÂÂÂÂÂÂJOptionPane.showMessageDialog(null, "The game already exists in panel " + (panelB.getPanelNumber() + 1), "Error", 0);
ÂÂÂÂÂÂLogger.write("No extraction. Game already exists");
ÂÂÂÂÂÂreturn;
ÂÂÂÂ}

ÂÂÂÂString name = panelA.getSelectedGameTitle();
ÂÂÂÂString gameDir = name + "[" + gameID + "]";
ÂÂÂÂgameDir = gameDir.replaceAll("[:?�*/'\\\"|]", "");
ÂÂÂÂgameDir = gameDir.replaceAll(" ", "_");
ÂÂÂÂString full_path = driveB + PathSeparator + gameDir;

ÂÂÂÂString[] makedir = { "mkdir", full_path };
ÂÂÂÂrunCommand(makedir);

ÂÂÂÂif (OS.startsWith("Win"))
ÂÂÂÂÂÂfull_path = pathToCygwinFormat(full_path);
ÂÂÂÂelse if (OS.startsWith("Linux")) {
ÂÂÂÂÂÂfull_path = pathToLinuxFormat(full_path);
ÂÂÂÂ}

ÂÂÂÂString[] command = { RunPath + "wwt", "-P", "-p", driveA, "EXTRACT", gameID, "", "-z", "-D", full_path };
ÂÂÂÂif (format == GameFormat.WBFS)
ÂÂÂÂÂÂcommand[6] = "-B";
ÂÂÂÂelse if (format == GameFormat.WDF)
ÂÂÂÂÂÂcommand[6] = "-W";
ÂÂÂÂelse if (format == GameFormat.ISO)
ÂÂÂÂÂÂcommand[6] = "-I";
ÂÂÂÂBackgroundGameCopy a = new BackgroundGameCopy(command, panelA, panelB, "EXTRACT");
ÂÂÂÂa.execute();
ÂÂ}

Would it really be as simple as changing the above "String[] command =" portion of code and the rest like it for the other commands and recompiling? I only grabbed a freeware standalone decompiler (JD-GUI @ http://java.decompiler.free.fr/) so perhaps I will have to see about a compiler and giving it a shot myself, unless someone tells me it can't be done or beats me to it...
smile.gif
 
Linux Users(and maybe mac users)::

I was getting the "cannot find disk" issue.

run chmod+x on the wwt and wit binaries. I downloaded WiiJManager 0.8 and those two binaries weren't executable until I ran chmod on them. Hope this helps.
 
Not sure if this was added before but a batch mode and maybe have the app tell you what .iso it is currently working on when converting would be great. Other than that I can definitely see me moving to to this from WBFS Manager. Great job.
 
imutau said:
Not sure if this was added before but a batch mode and maybe have the app tell you what .iso it is currently working on when converting would be great. Other than that I can definitely see me moving to to this from WBFS Manager. Great job.
For batch jobs use wit/wwt directly. Ask and maybe I can give you a concrete example.
 
can you add more than 500 games to a wbfs formated hard drive with this program? If not can it be done? And one last question can a wii read more than 500 games on a wbfs formated hhd? Thanks for all info on this.
 

Site & Scene News

Popular threads in this forum