CaptainCPS-X escribió:Vaya, esto se pone muy complicado de seguir con tanto 'Mensaje fuera del Tema (Offtopic)' de todos modos solo queria decir que si alguien ha logrado encontrar detalles de como llevar a cabo la parte de cambiar el 'USB Device Address' (UDADDR) y la activacion del address 'Address Enable' (ADDEN) ? creo que eso es algo importante y no encontre nada documentado en el PSP SDK (pspusb.h, pspusbacc.h, pspusbbus.h, pspusbcam.h, y pspusbstor.h).
Creo que ahi es donde se han quedado los demas desarrolladores de ports para PSP del PSGroove / etc, al no poder portear eso.
Saludos.
imagino que creando un usbdriver con los datos necesarios y luego registrandolo como uno de los puertos generados se podria solucionar.
aqui pongo la doc del sdk de psp.
pero no me hagais mucho caso que llevo un par de dias desconectao d ela vida .. como odio los turnos de 24/7....
UsbDriver Struct Reference
#include <src/usb/pspusbbus.h>
Collaboration diagram for UsbDriver:
Collaboration graph
[legend]
Detailed Description
USB driver structure used by sceUsbbdRegisterDriver and sceUsbbdUnregisterDriver.
Data Fields
const char * name
Name of the USB driver.
int endpoints
Number of endpoints in this driver (including default control).
struct UsbEndpoint * endp
List of endpoint structures (used when calling other functions).
struct UsbInterface * intp
Interface list.
void * devp_hi
Pointer to hi-speed device descriptor.
void * confp_hi
Pointer to hi-speed device configuration.
void * devp
Pointer to full-speed device descriptor.
void * confp
Pointer to full-speed device configuration.
struct StringDescriptor * str
Default String descriptor.
int(* recvctl )(int arg1, int arg2, struct DeviceRequest *req)
Received a control request arg0 is endpoint, arg1 is possibly data arg2 is data buffer.
int(* func28 )(int arg1, int arg2, int arg3)
Unknown.
int(* attach )(int speed, void *arg2, void *arg3)
Configuration set (attach) function.
int(* detach )(int arg1, int arg2, int arg3)
Configuration unset (detach) function.
int unk34
Unknown set to 0.
int(* start_func )(int size, void *args)
Function called when the driver is started.
int(* stop_func )(int size, void *args)
Function called when the driver is stopped.
struct UsbDriver * link
Link to next USB driver in the chain, set to NULL.
Field Documentation
const char* UsbDriver::name
Name of the USB driver.
int UsbDriver::endpoints
Number of endpoints in this driver (including default control).
struct UsbEndpoint* UsbDriver::endp [read]
List of endpoint structures (used when calling other functions).
struct UsbInterface* UsbDriver::intp [read]
Interface list.
void* UsbDriver::devp_hi
Pointer to hi-speed device descriptor.
void* UsbDriver::confp_hi
Pointer to hi-speed device configuration.
void* UsbDriver::devp
Pointer to full-speed device descriptor.
void* UsbDriver::confp
Pointer to full-speed device configuration.
struct StringDescriptor* UsbDriver::str [read]
Default String descriptor.
int(* UsbDriver::recvctl)(int arg1, int arg2, struct DeviceRequest *req)
Received a control request arg0 is endpoint, arg1 is possibly data arg2 is data buffer.
int(* UsbDriver::func28)(int arg1, int arg2, int arg3)
Unknown.
int(* UsbDriver::attach)(int speed, void *arg2, void *arg3)
Configuration set (attach) function.
int(* UsbDriver::detach)(int arg1, int arg2, int arg3)
Configuration unset (detach) function.
int UsbDriver::unk34
Unknown set to 0.
int(* UsbDriver::start_func)(int size, void *args)
Function called when the driver is started.
int(* UsbDriver::stop_func)(int size, void *args)
Function called when the driver is stopped.
struct UsbDriver* UsbDriver::link [read]
Link to next USB driver in the chain, set to NULL.
int sceUsbbdRegister ( struct UsbDriver * drv )
Register a USB driver.
Parameters:
drv - Pointer to a filled out USB driver
Returns:
0 on success, < 0 on error