Hacking Devolution - Public Release

Nintendo Maniac

Well-Known Member
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
Nintendo Maniac.. lol i not understand, that controller works on 360 like a charm, wotks on pc ecc ecc.. why not with devolution?
Let me give you a rough analogy using emulators.

All the different models of 360 controllers are like different SNES games. Xinput, which is supported on Windows and Xbox 360, is like a SNES emulator (let's say bsnes). No matter what, as long as it's a SNES game, bsnes can run it perfectly. Similarly, as long as it's a 360 controller, anything with Xinput can support it just fine.

The problem is that Devolution doesn't have Xinput, or in the case of the analogy, it doesn't have a SNES emulator; therefore, it has to read the contents of the ROM directly. Because different ROMs have different contents, it doesn't know what to do when you give it something different.

So using the analogy again, Devolution only supports Super Mario World, not SNES games in general.
 

grossaffe

Well-Known Member
Member
Joined
May 5, 2013
Messages
3,007
Trophies
0
XP
2,799
Country
United States
Allow me to attempt, going under the assumption Xinput is similar to HID but just a different standard.

Imagine I gave you a piece of paper with a bunch of seemingly random numbers on it. If I specifically tell you that line one contains joystick data, line 2 contains button data, etc., then you should be able to use that information as needed. If, however, I give you another piece of paper with all of the same data but in a different order, you won't know what to do with it. This is the equivalent of hard-coding his control reader to expect the controller data to follow an exact order.

In order to be more robust and accept all sorts of data ordering, it would have to read the device descriptor that is initially sent upon connection that tells the system what kind of data it is sending and in what order everything is in. It could then use that information to parse the data for the specific device instead of assuming all devices have the exact same functionality and everything sent in the exact same order.

Or, as in the way Nintendont deals with the issue, it has you create separate .ini files for each controller to tell the system where to find the data, which is still hard-coded, but then you manually choose which hard-coding to use.
 

naxil

Well-Known Member
Member
Joined
Oct 26, 2011
Messages
846
Trophies
1
XP
665
Country
Italy
that's why i have insert in code all info about my pad connected to linux (lsusb -v). Probably the real 360 controller have unique ID.
Iam not a coder, but probably on linux it recognize multiple ID and use *

modinfo xpad
Code:
filename:      /lib/modules/3.13.0-39-generic/kernel/drivers/input/joystick/xpad.ko
license:        GPL
description:    X-Box pad driver
author:        Marko Friedemann <[email protected]>
srcversion:    3591C14BD2FAA84523B360D
alias:          usb:v24C6p*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v24C6p*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v1689p*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v1689p*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v0F0Dp*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v0F0Dp*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v1BADp*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v1BADp*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v146Bp*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v146Bp*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v1430p*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v1430p*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v12ABp*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v12ABp*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v0E6Fp*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v0E6Fp*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v0738p4540d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0738p*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v0738p*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v046Dp*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v046Dp*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v045Ep*d*dc*dsc*dp*icFFisc5Dip81in*
alias:          usb:v045Ep*d*dc*dsc*dp*icFFisc5Dip01in*
alias:          usb:v*p*d*dc*dsc*dp*ic58isc42ip00in*
depends:        ff-memless
intree:        Y
vermagic:      3.13.0-39-generic SMP mod_unload modversions 686
signer:        Magrathea: Glacier signing key
sig_key:        A6:96:31:EE:84:32:BD:22:00:4B:A4:DA:A9:78:CF:D9:2C:D5:5E:69
 

MikeyTaylorGaming

YouTube Glitcher
Member
Joined
Aug 11, 2007
Messages
1,754
Trophies
1
Location
North West England
Website
youtube.com
XP
1,559
Country
United Kingdom
It's confusing to me that developers of this app have implemented so much anti-piracy! Wii games should have been the ones that were protected against AP because that's one of the things that may have ultimately killed the Wii off, the ease of hacking and backup creation!

GC games are long dead im terms of Nintendo profits now so I can't see a real point in AP, I'm against piracy mind, it's just I need Melee for about an hour to get footage of a couple glitches, I don't wanna spend upwards of £30 for a game I'll likely play for about an hour hahah

It IS a good app though, Worth investing in the games to use if you're gonna play them, plays in 1080p nicely though it isn't the native resolution! Plus, it supports a WiiMote and Nunchuck unlike Nintendont... Another thing I don't wanna fork out for for the sake of an hours footage is a different controller hahaha
 

godslapp

New Member
Newbie
Joined
Aug 6, 2014
Messages
2
Trophies
0
Age
32
XP
98
Country
True Crime: New York City (PAL) On devolution r239
Doesn't Work

Crash (and return to HB Channel) after the title of the game. We can't reach the menu and play the game


The exact same thing happens with the NTSC version, no amount of setting combinations will get it to work, has been tested on r200 and higher.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Well start walking towards them +1