Merge branch 'master' of github.com:bobbydilley/lindbergh-loader
This commit is contained in:
commit
7fb47dc43d
@ -6,6 +6,8 @@ This project contains header files from SEGA. Please DO NOT distrobute this code
|
||||
|
||||
This project aims to hook and emulate the various different parts of the SEGA Lindbergh allowing the games to run on modern versions of Linux.
|
||||
|
||||
You can view the supported titles [here.](docs/supported.md)
|
||||
|
||||
## What this project does
|
||||
|
||||
This project provides an emulation layer so for various software & hardware components of hte SEGA Lindbergh system allowing you to run the games on a modern version of linux. The project also aims to provide documentation of the various APIs used in the Lindbergh system which may be useful for further emulation projects, or homebrew.
|
||||
|
30
docs/supported.md
Normal file
30
docs/supported.md
Normal file
@ -0,0 +1,30 @@
|
||||
# Supported Titles
|
||||
|
||||
## Games that work
|
||||
|
||||
These games have been loaded at some point using this software, but this doesn't mean they currently work or there are instructions on how to get them running.
|
||||
|
||||
Working is defined by getting into attract mode and running the game, but not necciserily controlling it.
|
||||
|
||||
- The House Of The Dead 4
|
||||
- The House Of The Dead 4 Special
|
||||
- The House Of The Dead Ex
|
||||
- Harley Davidson
|
||||
- Rambo
|
||||
- 2 Step 2 Spicy
|
||||
- Ghost Squad
|
||||
- Outrun 2 SP SDX
|
||||
- Race TV
|
||||
|
||||
## Games that do not work or haven't been tested
|
||||
|
||||
- Let's Go Jungle
|
||||
- Let's Go Jungle Special
|
||||
- After Burner Climax
|
||||
- Virtua Fighter
|
||||
- Virtua Tennis 3
|
||||
- Primevil
|
||||
- Initial D 4
|
||||
- Initial D 5
|
||||
- Hummer
|
||||
- R-Tuned
|
@ -183,8 +183,6 @@ int XNextEvent(Display *display, XEvent *event_return)
|
||||
case ButtonPress:
|
||||
case ButtonRelease:
|
||||
{
|
||||
printf("%d %d %d\n", event_return->xbutton.button, event_return->xbutton.x, event_return->xbutton.y);
|
||||
|
||||
switch (event_return->xbutton.button)
|
||||
{
|
||||
case 1: // Trigger
|
||||
|
@ -9,6 +9,10 @@
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <ucontext.h>
|
||||
#include <semaphore.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
#include <arpa/inet.h>
|
||||
|
||||
#include "hook.h"
|
||||
|
||||
@ -428,8 +432,28 @@ float powf(float base, float exponent)
|
||||
}
|
||||
|
||||
/*
|
||||
int futex(int *uaddr, int op, int val, const struct timespec *timeout, int *uaddr2, int val3)
|
||||
int sem_wait(sem_t *sem)
|
||||
{
|
||||
int (*original_sem_wait)(sem_t * sem) = dlsym(RTLD_NEXT, "sem_wait");
|
||||
return 0;
|
||||
}
|
||||
*/
|
||||
|
||||
/**
|
||||
* Hook function used by Harley Davidson to change IPs to localhost
|
||||
* Currently does nothing.
|
||||
*/
|
||||
int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen)
|
||||
{
|
||||
int (*_connect)(int sockfd, const struct sockaddr *addr, socklen_t addrlen) = dlsym(RTLD_NEXT, "connect");
|
||||
|
||||
|
||||
struct sockaddr_in *in_pointer = (struct sockaddr_in *)addr;
|
||||
|
||||
// Change the IP to connect to to 127.0.0.1
|
||||
//in_pointer->sin_addr.s_addr = inet_addr("127.0.0.1");
|
||||
char *some_addr = inet_ntoa(in_pointer->sin_addr);
|
||||
printf("Connecting to %s\n", some_addr);
|
||||
|
||||
return _connect(sockfd, addr, addrlen);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user