PDA

Ver la versión completa : Vba Sdl-configure



dn@
08/12/2005, 04:11
bueno, a raís del post q puse en la notcia de el emu de PSX me surgió la duda y miré en inet. He bajado de la página oficial lo que creo que es el configurador de botones del VBA, que adjunto (si es ilegal q se me diga y lo kto), no se si es suficiente o hay q meter todo el código...
la cosa es, alguien q tenga idea de SDL (el menda de VisualBasic no sale...) podría echarle un ojo? si se puede hacer algo q alguien lo pruebe, sería algo parecido a lo que hizo Chui con el VBA en GP32 (pero aki no hay q portar las SDL :D )
enga, gracias por la ayuda


#include <stdio.h>
#include <stdlib.h>
#include "SDL.h"

bool stop = false;

#define GETHATCODE(event) ((event.jhat.which+1)<<12)|(event.jhat.hat<<2)|\
(event.jhat.value & SDL_HAT_UP ? 0 : event.jhat.value & SDL_HAT_DOWN ? 1 : event.jhat.value & SDL_HAT_RIGHT ? 2 : event.jhat.value & SDL_HAT_LEFT ? 3 : 0)

#define GETBUTTONCODE(event) ((event.jbutton.which+1)<<12)|(event.jbutton.button+0x80)

#define GETAXISCODE(event) ((event.jaxis.which+1)<<12)|(event.jaxis.axis<<1)|(event.jaxis.value > 16384 ? 1 : event.jaxis.value < -16384 ? 0 : 0)

void poll()
{
SDL_Event event;
while(SDL_PollEvent(&event)) {
switch(event.type) {
case SDL_JOYHATMOTION:
printf("JOY HAT code: %04x\n", GETHATCODE(event));
break;
case SDL_JOYBUTTONDOWN:
printf("JOY BUTTON code: %04x\n", GETBUTTONCODE(event));
break;
case SDL_JOYAXISMOTION:
printf("JOY AXIS code: %04x\n", GETAXISCODE(event));
break;
case SDL_KEYDOWN:
printf("KEY code: %04x\n", event.key.keysym.sym);
break;
case SDL_KEYUP:
if(event.key.keysym.sym == SDLK_ESCAPE)
stop = true;
break;
}
}
}

int main(int argc, char **argv)
{
if(SDL_Init(SDL_INIT_TIMER|SDL_INIT_VIDEO|SDL_INIT _NOPARACHUTE)) {
printf("Failed to init SDL: %d\n", SDL_GetError());
exit(-1);
}

if(SDL_InitSubSystem(SDL_INIT_JOYSTICK)) {
printf("Failed to init joystick: %d\n", SDL_GetError());
}

SDL_Surface *surface = SDL_SetVideoMode(100,100, 16,
SDL_ANYFORMAT);
int numJoy = SDL_NumJoysticks();

for(int i = 0; i < numJoy; i++) {
SDL_JoystickOpen(i);
}
SDL_JoystickEventState(SDL_ENABLE);

while(!stop) {
poll();
SDL_Delay(100);
}
SDL_Quit();
return 0;
}

efegea
08/12/2005, 04:16
¿Exactamente que es lo que quieres que saquemos de ahi? No te acabo de entender...

dn@
08/12/2005, 04:27
teniendo en cuenta que hay una versión linux del VBA que usa las SDL (viene en BIN, asike las fuetes hacen falta de todas formas, pero se pueden conseguir) cambiando la dirección de los botones se podría hacer un port-utra-chapucero del VBA a ver q tal tira...

efegea
08/12/2005, 04:32
Yo ya intente compilar el otro dia el VBA, pero el compilador entro en un bucle infinito y se empezo a comer toda la memoria ram y la memoria virtual (llego a consumir mas de un giga y medio) :loco:

dn@
08/12/2005, 04:37
:P wau... pos na, a ver si algun dia se puede, xq teoricamente la consola tiene la capacidad derularlo (otra cosa es q vaya bien...) gracias, efegea! :D

^MiSaTo^
08/12/2005, 04:37
Gracias, me quería poner yo con ello y ese archivo no lo tenía. A ver que sale de esto xD

dn@
08/12/2005, 04:39
si kieres te paso las fuentes del 1.7.2

darkcrono
08/12/2005, 05:52
no os peleeis por proyectos gente!
http://www.gp32spain.com/imagenes/consolas/neogeopocket_color.gif http://www.nih.at/NeoPop-SDL/ http://www.gp32spain.com/imagenes/consolas/neogeopocket_color.gif
no sera por opciones (y esta ultima seria genial)

dn@
08/12/2005, 06:25
molaría, pero como la NPC ya la tengo XD
no, pero son emus muy similares, asike si se rula el VBA, el Neo-Pcott rulará sin problemas (ese SNK Vs Capcom! menudo vicio!)

darkcrono
08/12/2005, 09:28
el de cartas >__< soy adicto! y tb tengo la consola y los originales, pero leo falta blu a la ngpc me da mucha pereza jugar a konsolas sin luz (juego por lo regular tumbao en la kama)

guilleml
14/12/2005, 07:00
He estado mirando el proyecto para portarlo, aunque no tengo muy claro de cómo hacerlo, es posible que lo intenten en gp32x.com

Lo que me parecía más interesante es que emula GB y GBC que no creo que tengan problemas de rendimiento, así que aunque como emulador de GBA vaya lento, podremos usar juegos de GBC.