Hacking Devolution - Public Release

Maxternal

Peanut Gallery Spokesman
Member
Joined
Nov 15, 2011
Messages
5,210
Trophies
0
Age
40
Location
Deep in GBAtemp addiction
Website
gbadev.googlecode.com
XP
1,709
Country
someone pointed this out on another thread :
On youtube ...
tueidj said:
I understand how it works well enough to know that you're bullshitting (again, the EXI/memory card hardware is nothing like the drive hardware), which is probably why you again failed to explain the other hardware I mentioned.
FYI I'm not "wanting" anything - I am already able to play gamecube games using the wii's/wii u's/ps3's bluetooth controllers, so telling me that it's not possible is rather redundant.
it says it was "2 weeks ago" so don't know the exact date but this is definitely good news of progress.

EDIT : it was also mentioned in that thread that a mini-CD adapter worked fine with a GC disk ... even though it was in an older Wii that accepted GC disks anyhow ... but at least it shows that those adapters can handle the RPM's of a Wii drive which is what some were worried about.
 
  • Like
Reactions: MassiveRican

Maxternal

Peanut Gallery Spokesman
Member
Joined
Nov 15, 2011
Messages
5,210
Trophies
0
Age
40
Location
Deep in GBAtemp addiction
Website
gbadev.googlecode.com
XP
1,709
Country
For those having wanting to leave their GameCube games in
/games/blahblah/game.iso
and use with my Devolution plugin but are having troubles with all of them showing up with the name as just "game" I've put together some alternate INI files that will help that situation.

http://www.mediafire.com/?or1fc1cs2c4umul

It goes along with the idea that I mentioned in this post

5. Edit the Devolution.ini file for the plugin and in the arguments= setting change where it says {name} to game.iso. Also in the fileTypes= setting change the .iso to something else like .gc. THEN you create a dummy file called gamename.gc next to the game.iso file so that you have both a dummy file
/games/gamename/gamename.GC
and the real ISO file
/games/gamename/game.ISO
PROS : Your Devolution games will still show up in other loaders. ONLY your Devolution games will show up in the Devolution plugin.
CONS : Your Devolution games will not show up in the sample loader.


and the package also contains a special plugin prep app to create the right files for WiiFlow to show the right name.
See the included readmii file for further details.

I'll also post this on the plugin thread

EDIT : I have later realized that this would allow the DM(L) and GC-GX plugins to share the same dummy files in the /games folder so I made another couple of INI's for THOSE plugins and packed them in, too, but with ONLY the Devo Plugin Prep app that would be needed in that situation.
http://www.mediafire.com/?w4n3r0v1e0l8f5l
 

Nintendo Maniac

Well-Known Member
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
On an unrelated note, I finally got myself a copy of "Nintendo Puzzle Collection" in anticipation of Devolution's wiimote and/or classic controller support (since a GCN pad SUCKS for this game), but just my luck Panel De Pon has issues with the in-game timer.

To quote myself from the Devolution wiki:
Panel De Pon - countdown and countup timers run ~50% faster than they should, but the gameplay itself is normal speed. However a speed-up can be triggered by the countdown/countup timer which will make rows come in faster, therefore this 50% faster-timer-issue makes things become more difficult at a quicker rate than is supposed to. Note that from disc, Panel De Pon's in-game timer is ~17% slower than time in real-life, so 1 minute is supposed to be 70 seconds rather than Devolution's 48 seconds ("Dr. Mario" and "Yoshi no Cookie" work perfectly fine along with GBA cable support)

EDIT: And here's a wifi log to go with it, though I don't know how much it would help seeing how the game doesn't crash or anything... For reference it's just me playing a single round of Panel De Pon's "Score Attack" in single player, the mode with the 2 minute countdown timer:
N:\[[[ crap\Devolution wifi logging>nc -l -p 64444 -u
Wifi is ready
Devolution Engine r188 2013/02/10 05:30:44 Copyright (C) tueidj
AI clocks configured (1d899c1f)
Warning: ipc reply not from our heap (b33e0da0 00020021 00000000)
Exception vectors placed.
Warning: ipc reply not from our heap (b33e0e00 00020002 00000000)
MMU initialized.
IOS was reloaded
stm_eh_fd: 0
stm_imm_fd: 1
GPIO Flags: 00ff8080
IOS communication initialized.
Starting to bring up wifi
HID FD: 2
GETLINKSTATUS returned 0
IOCTL_NWC24_STARTUP returned 0 (0)
IOCTL_SO_STARTUP returned 0
IOCTL_SO_GETHOSTID retry 99
net init result: 0 (3)
IOCTL_SO_GETHOSTID retry 98
net init result: 0 (3)
Host IP Address: 10.0.0.101
net init result: 1 (3)
Network initialization succeeded
Socket number for log: 0
Result from FCNTL: 0
bind returned 0
sendto returned 14
USB FD: 4
Found 1 USB devices while searching for Mass Storage
Device 0: id e71f0021 VID 1B1C PID 1AB1
Device class 00, subclass 00, protocol 00
Number of configurations: 1
Configuration 1 has 1 interfaces
Interface 0 has 2 endpoints
Endpoint 81 Attributes 02 MaxPacket 0200
Endpoint 02 Attributes 02 MaxPacket 0200
Current device configuration: 1
Using config 1, interface 0, alt 0, ep_in 81, ep_out 02
USB device reset returned 8
Device MAX_LUN returned 9: 1
Cleared USB storage device error status
LUN 0 is a Direct Access device
USB_MS sector size for LUN 0: 512, max LBA: 31326207
Using storage device: "USB Corsair Voyager", serial 00000093
MBR partition offset: 00000800
MBR partition offset: 00000000
MBR partition offset: 00000000
MBR partition offset: 00000000
Found a FAT partition at sector 2048 (1)
Number of bytes per FAT entry: 4 (FAT32)
Sectors per cluster: 128 (64K)
FAT1 first sector: 6416
FAT2 first sector: 8328
Root cluster / sector: 2 / 10240
First Data sector: 10240
End sector boundary: 31326208
Total number of clusters: 244656
Cluster for MEMCARD file: 0 (9984)
Specified cluster for iso file: 0003A682
ISO file found: GPZJ Disc 0 Version 0
Checking file fat chain...
Total allocated size of file: 144506880 bytes in 282240 sectors
Result: 1 fragments
HID device change callback was registered
HID device change: 0 devices present
HID device change callback was registered
Date of Apploader: 2002/09/05
AppStart: 81200258, rounded total_size 00001940
Apploader start: 81200258
Apploader begin 81200278, load 81200298, finish 812002B8
Apploader Initialized. $Revision: 31 $.
This Apploader built Sep 5 2002 05:58:53
app address: 812017E0, app section size 00000020, app offset 00000420
app address: 81201920, app section size 00000020, app offset 00000440
app address: 817FCEA0, app section size 00002000, app offset 00000440
app address: 81201800, app section size 00000100, app offset 0001EC00
app address: 80003100, app section size 00002440, app offset 0001ED00
app address: 80006780, app section size 000640C0, app offset 00021140
app address: 80005540, app section size 00000740, app offset 00085200
app address: 80005C80, app section size 00000B00, app offset 00085940
app address: 8006A840, app section size 00000020, app offset 00086440
app address: 8006A860, app section size 00000020, app offset 00086460
app address: 8006A880, app section size 00053420, app offset 00086480
app address: 800BDCA0, app section size 00008FA0, app offset 000D98A0
app address: 8022D540, app section size 000001A0, app offset 000E2840
app address: 8022DCC0, app section size 00000480, app offset 000E29E0
app address: 817FEEA0, app section size 00001160, app offset 000E2F00
apploader finished, GAME Entry point: 8000522C
Found ICInvalidateRange inside Relocate() @ 80046B18
Found ICInvalidateRange inside Relocate() @ 80046B7C
Found ICInvalidateRange inside Relocate() @ 80047054
Found ICInvalidateRange inside Relocate() @ 800470B8
Patched DBAT mtspr 536 @ 80047390
Patched DBAT mtspr 537 @ 80047394
Patched DBAT mtspr 536 @ 80047398
Patched DBAT mtspr 528 @ 800473A0
Patched DBAT mtspr 529 @ 800473A4
Patched DBAT mtspr 528 @ 800473A8
Patched DBAT mtspr 540 @ 800473B0
Patched DBAT mtspr 541 @ 800473B4
Patched DBAT mtspr 540 @ 800473B8
Patched DBAT mtspr 532 @ 800473C0
Patched DBAT mtspr 533 @ 800473C4
Patched DBAT mtspr 532 @ 800473C8
Patched DBAT mtspr 536 @ 80047410
Patched DBAT mtspr 537 @ 80047414
Patched DBAT mtspr 536 @ 80047418
Patched DBAT mtspr 528 @ 80047420
Patched DBAT mtspr 529 @ 80047424
Patched DBAT mtspr 528 @ 80047428
Patched DBAT mtspr 540 @ 80047430
Patched DBAT mtspr 541 @ 80047434
Patched DBAT mtspr 540 @ 80047438
Patched DBAT mtspr 532 @ 80047440
Patched DBAT mtspr 533 @ 80047444
Patched DBAT mtspr 532 @ 80047448
Returning modem ID for EXI channel 2
<< Dolphin SDK - EXI release build: Nov 11 2002 05:21:45 (0x2301) >>
<< Dolphin SDK - SI release build: Sep 5 2002 05:33:08 (0x2301) >>
New AR_SIZE: 0043 (80043d44 820b0602)
Passing direct ARAM request: 01000000 00000000 00000020 (80043db8)
Passing direct ARAM request: 01000000 00000000 00000020 (80043e00)
Set DBAT0U to 00000000 (00047390 00081002)
Set DBAT0L to 00000002 (00047394 00081002)
Set DBAT0U to 800001ff (00047398 00081002)
Set IBAT0U to 00000000 (000473a0 00081002)
Set IBAT0L to 00000002 (000473a4 00081002)
Set IBAT0U to 800001ff (000473a8 00081002)
Set DBAT2U to 00000000 (000473b0 00081002)
Set DBAT2L to 01000002 (000473b4 00081002)
Set DBAT2U to 810000ff (000473b8 00081002)
Set IBAT2U to 00000000 (000473c0 00081002)
Set IBAT2L to 01000002 (000473c4 00081002)
Set IBAT2U to 810000ff (000473c8 00081002)

Dolphin OS $Revision: 60 $.
Kernel built : Nov 5 2002 12:52:29
Console Type : Development HW-1 (10000002)
Memory 24 MB
Arena : 0x8023e140 - 0x817feea0
<< Dolphin SDK - OS release build: Nov 5 2002 12:52:29 (0x2301) >>
<< Dolphin SDK - DVD release build: Oct 29 2002 09:56:49 (0x2301) >>
Patched C_MTXPerspective @ 8004E1D8
Final code page was loaded as data: 8006a000
<< Dolphin SDK - CARD release build: Sep 5 2002 05:35:20 (0x2301) >>
<< Dolphin SDK - DSP release build: Sep 5 2002 05:35:13 (0x2301) >>
<< Dolphin SDK - VI release build: Sep 5 2002 05:33:13 (0x2301) >>
<< Dolphin SDK - PAD release build: Sep 5 2002 05:34:02 (0x2301) >>
<< Dolphin SDK - GX release build: Nov 7 2002 05:47:57 (0x2301) >>
Patched GXInitTlutObj @ 80066D74
Patched mfspr r16, sr0 @ 80040310
Patched mfspr r17, sr1 @ 80040314
Patched mfspr r18, sr2 @ 80040318
Patched mfspr r19, sr3 @ 8004031C
Patched mfspr r20, sr4 @ 80040320
Patched mfspr r21, sr5 @ 80040324
Patched mfspr r22, sr6 @ 80040328
Patched mfspr r23, sr7 @ 8004032C
Patched mfspr r24, sr8 @ 80040330
Patched mfspr r25, sr9 @ 80040334
Patched mfspr r26, sr10 @ 80040338
Patched mfspr r27, sr11 @ 8004033C
Patched mfspr r28, sr12 @ 80040340
Patched mfspr r29, sr13 @ 80040344
Patched mfspr r30, sr14 @ 80040348
Patched mfspr r31, sr15 @ 8004034C
Patched DBAT mfspr 528 @ 8004036C
Patched DBAT mfspr 529 @ 80040370
Patched DBAT mfspr 530 @ 80040374
Patched DBAT mfspr 531 @ 80040378
Patched DBAT mfspr 532 @ 8004037C
Patched DBAT mfspr 533 @ 80040380
Patched DBAT mfspr 534 @ 80040384
Patched DBAT mfspr 535 @ 80040388
Patched DBAT mfspr 536 @ 8004038C
Patched DBAT mfspr 537 @ 80040390
Patched DBAT mfspr 538 @ 80040394
Patched DBAT mfspr 539 @ 80040398
Patched DBAT mfspr 540 @ 8004039C
Patched DBAT mfspr 541 @ 800403A0
Patched mfspr SDR1 @ 800403B0
Patched mtspr sr0, r16 @ 800405B8
Patched mtspr sr1, r17 @ 800405BC
Patched mtspr sr2, r18 @ 800405C0
Patched mtspr sr3, r19 @ 800405C4
Patched mtspr sr4, r20 @ 800405C8
Patched mtspr sr5, r21 @ 800405CC
Patched mtspr sr6, r22 @ 800405D0
Patched mtspr sr7, r23 @ 800405D4
Patched mtspr sr8, r24 @ 800405D8
Patched mtspr sr9, r25 @ 800405DC
Patched mtspr sr10, r26 @ 800405E0
Patched mtspr sr11, r27 @ 800405E4
Patched mtspr sr12, r28 @ 800405E8
Patched mtspr sr13, r29 @ 800405EC
Patched mtspr sr14, r30 @ 800405F0
Patched mtspr sr15, r31 @ 800405F4
Patched DBAT mtspr 528 @ 8004060C
Patched DBAT mtspr 529 @ 80040610
Patched DBAT mtspr 530 @ 80040614
Patched DBAT mtspr 531 @ 80040618
Patched DBAT mtspr 532 @ 8004061C
Patched DBAT mtspr 533 @ 80040620
Patched DBAT mtspr 534 @ 80040624
Patched DBAT mtspr 535 @ 80040628
Patched DBAT mtspr 536 @ 8004062C
Patched DBAT mtspr 537 @ 80040630
Patched DBAT mtspr 538 @ 80040634
Patched DBAT mtspr 539 @ 80040638
Patched DBAT mtspr 540 @ 8004063C
Patched DBAT mtspr 541 @ 80040640
Patched mtspr SDR1 @ 80040650
<< Dolphin SDK - AR release build: Sep 5 2002 05:34:27 (0x2301) >>
New AR_SIZE: 0063 (80058f70 820ab436)
Passing direct ARAM request: 8023df40 01000000 80000020 (800590d4)
Passing direct ARAM request: 8023e000 01000000 00000020 (80059180)
Passing direct ARAM request: 8023df80 01000000 80000020 (80059240)
<< Dolphin SDK - ARQ release build: Sep 5 2002 05:34:29 (0x2301) >>
<< Dolphin SDK - AI release build: Sep 5 2002 05:34:25 (0x2301) >>
NEW DSP TASK: 6624 bytes @ 800C0260
DSP patch1 @ offset 5a8
DSP patch2 @ offset 62c
DSP patch1 @ offset 65d
DSP patch2 @ offset 6d8
DSP patch1 @ offset 707
DSP patch3 @ offset 74e
Power Button press detected!
Jumping to HBC stub...
 

masterpad

Well-Known Member
Newcomer
Joined
Aug 26, 2008
Messages
84
Trophies
1
XP
228
Country
Cameroon
hi everybody! thanks to tueidj for his great work...
my only problem is the obligation to get an original game disc for a onetime load of the isos.
i am living in cameroon an i can't buy anything on internet and can't even be deliver...my only original game disc is "The Wind Waker" and i really like to be part of the PSO experience.
Is there any chance that this limitation will be remove? please...
 

Hyperstar96

Well-Known Member
Member
Joined
Nov 1, 2009
Messages
158
Trophies
0
XP
251
Country
United States
hi everybody! thanks to tueidj for his great work...
my only problem is the obligation to get an original game disc for a onetime load of the isos.
i am living in cameroon an i can't buy anything on internet and can't even be deliver...my only original game disc is "The Wind Waker" and i really like to be part of the PSO experience.
Is there any chance that this limitation will be remove? please...
Many have asked; it's definitely not going to happen (not officially, anyway).
If you want to play Gamecube ISOs on a Wii, you need to use Dios Mios and a Wii that can play Gamecube discs. But you wouldn't be able to play PSO.
 

GameFreakDude

More gorgeous than any Hollywood star!
Newcomer
Joined
Oct 23, 2010
Messages
73
Trophies
0
XP
211
Country
Canada
In theory, if I were to rip my GC discs and verify them with Devolution on a Wii, would it work to use those ISO and DVV files in the Wii U's vWii? Cuz that would be amazing if it did. I'd finally be able to give my Wii to my sister, and still be able to play all my GC games using my Wii U.
 

Nintendo Maniac

Well-Known Member
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
It would work assuming that you're using the exact same USB drive/SD card and Devolution doesn't distinguish between consoles (or if it does, it bases it off the info that would be transfered via the Wii to Wii U transfer tool).

However, if Devolution DOES distinguish between consoles via info that is NOT transferred via the Wii to Wii U transfer tool, then it will NOT work.

If you have a nice PC, you could always try Dolphin.
 

trumpet-205

Embrace the darkness within
Member
Joined
Jan 14, 2009
Messages
4,363
Trophies
0
Website
Visit site
XP
693
Country
United States
In theory, if I were to rip my GC discs and verify them with Devolution on a Wii, would it work to use those ISO and DVV files in the Wii U's vWii? Cuz that would be amazing if it did. I'd finally be able to give my Wii to my sister, and still be able to play all my GC games using my Wii U.
Nope. DVV files are console specific. You cannot move it to another Wii or Wii U. That is the purpose of DVV (anti-piracy).
 

GameFreakDude

More gorgeous than any Hollywood star!
Newcomer
Joined
Oct 23, 2010
Messages
73
Trophies
0
XP
211
Country
Canada
Sadly, my pc is just too slow to run most of my GC games. I always get 50-55 fps instead of 60. For games that require the LLE DSP it goes even slower :<
Besides, the Wii's GC emulation is always going to be more accurate than Dolphin's. Virtual Console emulation leaves a lot to be desired, though...
Edit: damn, it is console specific. I really hope I can get my hands on one of those DVD things people have been talking about. If they work...
 

trumpet-205

Embrace the darkness within
Member
Joined
Jan 14, 2009
Messages
4,363
Trophies
0
Website
Visit site
XP
693
Country
United States
Sadly, my pc is just too slow to run most of my GC games. I always get 50-55 fps instead of 60. For games that require the LLE DSP it goes even slower :<
Besides, the Wii's GC emulation is always going to be more accurate than Dolphin's. Virtual Console emulation leaves a lot to be desired, though...
Wii doesn't emulate GC, it runs it natively.
 

Nintendo Maniac

Well-Known Member
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
Nope. DVV files are console specific. You cannot move it to another Wii or Wii U. That is the purpose of DVV (anti-piracy).
Even if you used the Wii to Wii U transfer tool? Has anyone actually tested this?

Virtual Console emulation leaves a lot to be desired, though...
Other than N64 emulation (which is looking to be temporary anyway due to upcoming cycle-accurate N64 emulators), there are PC emulators for every system that's more accurate than the virtual console.
 

GameFreakDude

More gorgeous than any Hollywood star!
Newcomer
Joined
Oct 23, 2010
Messages
73
Trophies
0
XP
211
Country
Canada
I have actually used the transfer tool between these consoles - maybe I should softmod the vWii and see if Devolution will still accept them even if I can't play them yet. Couldn't hurt to try...
 

Nintendo Maniac

Well-Known Member
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
I have actually used the transfer tool between these consoles - maybe I should softmod the vWii and see if Devolution will still accept them even if I can't play them yet. Couldn't hurt to try...
Make a NAND backup of your Wii before transfering because the transfer tool MOVES the data, and therefore deletes it from your Wii. After the transfer just restore your NAND and there you go.

That tool only transfer legit Wiiware/VC game to Wii U. It doesn't touch backup/pirated Wiiware/VC, much less to DVV files.
AFAIK it transfers the console ID, not just the content - this is what could be relevant to Devolution.
 

Maxternal

Peanut Gallery Spokesman
Member
Joined
Nov 15, 2011
Messages
5,210
Trophies
0
Age
40
Location
Deep in GBAtemp addiction
Website
gbadev.googlecode.com
XP
1,709
Country
Even if you used the Wii to Wii U transfer tool? Has anyone actually tested this?
That's an interesting idea.

When a you go through the transfer tool channels in the SD card (one NOT used in the transfer process) that were paired with the Wii end up paired with the Wii U and NO LONGER work with the old Wii ... but restoring a BootMii backup will fix that (until you connect to the shop channel. At that point they are unpaired again.)

It seems to me that IF this works you would have to verify your disks BEFORE running the transfer tool and hope that when you DO run the transfer tool, it starts working on the Wii U. The problem is that IF it works that way it would likely break the Devolution verification with the old Wii when you run the transfer tool. Not sure if that happens but it seems doubtful.

EDIT : if it's the kind of thing that can be restored with a NAND backup I'm sure it could also be mimicked by some homebrew app and would be too insecure a method to have been used in the first place so all the more reason why I'm skeptical.
 

GameFreakDude

More gorgeous than any Hollywood star!
Newcomer
Joined
Oct 23, 2010
Messages
73
Trophies
0
XP
211
Country
Canada
I did the transfer a while ago, and already made a NAND backup of my Wii beforehand. I'll look at this tomorrow for science, assuming the homebew community has vWii modification at a perfectly save level on offline Wii Us. (I haven't done/looked into vWii softmodding at all yet.)
 

Nintendo Maniac

Well-Known Member
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
I did the transfer a while ago, and already made a NAND backup of my Wii beforehand. I'll look at this tomorrow for science, assuming the homebew community has vWii modification at a perfectly save level on offline Wii Us. (I haven't done/looked into vWii softmodding at all yet.)
Assuming you can use Smash Stack and you insert the SD card AFTER launching the game, then all you need to do is install the Homebrew Channel like normal.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    BigOnYa @ BigOnYa: I played the intro to far cry 5, that is like some crazy Jim Jones cult shit. Still its petty...