(REQUEST) Add Daphne Singe emulator?
-
@treasurefingers said in (REQUEST) Add Daphne Singe emulator?:
@dirtbagxon
Is it 'its own thing now or does it still rely on daphne?Both v2 and my v1.18 repo are standalone Singe.
Pleasure helping out, but I'm afraid I don't know the Emulationstation interface to help there.
-
First install the correct tools and libraries:
sudo apt-get install git make build-essential libasound2-dev libcaca-dev libglew-dev libglib2.0-dev libogg-dev libpcre3-dev libpcre32-3 libpng-dev libpng-tools libpulse-dev libsdl-image1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libslang2-dev libvorbis-dev libxi-dev pkg-config
After this point there is the result (I have translated from Italian to english error message):
To continue? [Y / n] Y Selected package libjbig-dev: armhf not previously selected. dpkg: fatal unrecoverable error, exit: the file with the file list of the "raspi-config" package is missing the final newline E: Sub-process / usr / bin / dpkg returned an error code (2)
I continued ignoring the error
cd ~ git clone https://github.com/DirtBagXon/singe.git singe
Here everything is ok.
cd singe cd src/vldp2 ./configure --disable-accel-detect make -f Makefile.linux
Here everything is ok.
cd ../game/singe make -f Makefile.linux
After this command instead the error was this:
g++ -fPIC -c -o singeproxy.o singeproxy.cpp In file included from singeproxy.cpp:23: singeproxy.h:36:10: fatal error: SDL/SDL_image.h: File o directory non esistente #include <SDL/SDL_image.h> ^~~~~~~~~~~~~~~~~ compilation terminated. make: *** [<incorporato>: singeproxy.o] Error 1
I used a raspberry pi 4 with 4GB**** with Retropie 4.7.1
Can you figure out how to correct the problem?
-
@shift said in (REQUEST) Add Daphne Singe emulator?:
First install the correct tools and libraries:
sudo apt-get install git make build-essential libasound2-dev libcaca-dev libglew-dev libglib2.0-dev libogg-dev libpcre3-dev libpcre32-3 libpng-dev libpng-tools libpulse-dev libsdl-image1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libslang2-dev libvorbis-dev libxi-dev pkg-config
After this point there is the result (I have translated from Italian to english error message):
To continue? [Y / n] Y Selected package libjbig-dev: armhf not previously selected. dpkg: fatal unrecoverable error, exit: the file with the file list of the "raspi-config" package is missing the final newline E: Sub-process / usr / bin / dpkg returned an error code (2)
I continued ignoring the error
You need to clear this error or the dependencies will not be installed and you will see the later errors.
Looks like you packaging system is a little broken.
What happens if you run the following two commands?
sudo apt-get update sudo apt-get upgrade
It looks like a broken package file, so the above may work, it could also be filesystem corruption (sd card), seems to be some similar issues here:
https://www.raspberrypi.org/forums/viewtopic.php?t=187936
If you can't get the development packages installed, try running the compiled binaries I put in the repository:
From the folder singe folder you cloned via git:
cd binaries/$(uname -m) cp *.so singe.bin ../.. cd ../..
Then ./run.sh
-
@dirtbagxon Thank you for the answer, I did the upgrades as you told me, but I got the same error as before, so now I'm testing the SD and if everything is ok I reinstall Retropie "clean" and then I immediately install your package. I keep you updated.
-
@dirtbagxon You were right, it was just a Retropie installation error. Now everything goes. To your scripts I just had to add this line:
cp ~/singe/pics/* ~/.daphne/pics/
because the system could not find this file: ConsoleFont.bmp (and probably the same error would have given it also for the other .bmp)
I changed your script (run.sh) to have the full screen on a Full HD (1920 x 1080) TV by changing the -x and -y parameters, because I noticed that the -fullscreen command is not recognized.
For Ninjia Hayate and Timetraveler I kept your parameters -x 800 and -y 600 because unfortunately they don't accept higher resolutions.
Now I want to try ActionMax.
Thanks for everything. I keep you updated.
-
@shift said in (REQUEST) Add Daphne Singe emulator?:
@dirtbagxon You were right, it was just a Retropie installation error. Now everything goes. To your scripts I just had to add this line:
cp ~/singe/pics/* ~/.daphne/pics/
I have altered the repo README to clarify the installation process, thank you.
I changed your script (run.sh) to have the full screen on a Full HD (1920 x 1080) TV by changing the -x and -y parameters, because I noticed that the -fullscreen command is not recognized.
The -fullscreen option should work thus:
./run.sh -fullscreen timegal
Can you supply the error if this doesn't work ?
-
The -fullscreen option should work thus:
./run.sh -fullscreen timegal
Can you supply the error if this doesn't work ?
No error returns but the image remains 800x600 in the upper left corner. It is as if the -fullscreen parameter is not considered at all.
-
@shift said in (REQUEST) Add Daphne Singe emulator?:
The -fullscreen option should work thus:
./run.sh -fullscreen timegal
Can you supply the error if this doesn't work ?
No error returns but the image remains 800x600 in the upper left corner. It is as if the -fullscreen parameter is not considered at all.
Interesting, I am unable to replicate this, effectively SDL ignoring:
sdl_flags |= SDL_FULLSCREEN;
Anyone else seen this issue?
Perhaps a Retropie frontend setting?
If you make these changes in run.sh
if [ "$1" = "-fullscreen" ]; then - FULLSCREEN="-fullscreen" + FULLSCREEN="-fullscreen_window" shift fi
Then run with the -fullscreen argument again?
-
@dirtbagxon -fullscreen does nothing on retropie, maybe on X... you can set the resolution in command line with -x 1024 -y 768 (or whatever your screen dimensions are) to fill the screen.
-
@dirtbagxon said in (REQUEST) Add Daphne Singe emulator?:
If you make these changes in run.sh
if [ "$1" = "-fullscreen" ]; then - FULLSCREEN="-fullscreen" + FULLSCREEN="-fullscreen_window" shift fi
Then run with the -fullscreen argument again?
Yes! Now it works perfectly!
Another question ... Is it possible to use the analog stick of the joypad as if it were a mouse?
-
@shift said in (REQUEST) Add Daphne Singe emulator?:
@dirtbagxon said in (REQUEST) Add Daphne Singe emulator?:
If you make these changes in run.sh
Then run with the -fullscreen argument again?
Yes! Now it works perfectly!
░░░░░░░░░░░░▄▄░░░░░░░░░
░░░░░░░░░░░█░░█░░░░░░░░
░░░░░░░░░░░█░░█░░░░░░░░
░░░░░░░░░░█░░░█░░░░░░░░
░░░░░░░░░█░░░░█░░░░░░░░
███████▄▄█░░░░░██████▄░
▓▓▓▓▓▓█░░░░░░░░░░░░░░█░
▓▓▓▓▓▓█░░░░░░░░░░░░░░█░
▓▓▓▓▓▓█░░░░░░░░░░░░░░█░
▓▓▓▓▓▓█░░░░░░░░░░░░░░█░
▓▓▓▓▓▓█░░░░░░░░░░░░░░█░
▓▓▓▓▓▓█████░░░░░░░░░█░░
██████▀░░░░▀▀██████▀░░░The -fullscreen_window argument should also work on the Daphne repo, if anyone had similar issues there.
i.e. using SDL_NOFRAME instead of SDL_FULLSCREEN.
Another question ... Is it possible to use the analog stick of the joypad as if it were a mouse?
I recently merged a pull request from @grant2258 and @pjft regarding clearing down the default joystick config.
Perhaps they can offer some help on setup of joystick config.
-
-
@dirtbagxon Thanks for tagging me here.
@shift the joysticks should work by default out of the box. They are not, however, mapped to the mouse but rather to the directions so if you're going to try that I'd recommend exploring the depths and wonders of https://retropie.org.uk/docs/Universal-Controller-Calibration-%26-Mapping-Using-xboxdrv/ - something I have never been able to do myself but that many speak wonders of.
-
@pjft said in (REQUEST) Add Daphne Singe emulator?:
@shift the joysticks should work by default out of the box. They are not, however, mapped to the mouse but rather to the directions so if you're going to try that I'd recommend exploring the depths and wonders of https://retropie.org.uk/docs/Universal-Controller-Calibration-%26-Mapping-Using-xboxdrv/ - something I have never been able to do myself but that many speak wonders of.
Thanks for the information, as soon as I have some time I dedicate myself to it.
I only noticed now that you have created some fixes to run badlands and bega's battle with daphne, but I don't quite understand the changes I should make, I guess I should install Daphne from source, but before installing it I should modify some source. Have you already tried to see if it can also work on Raspberry? Thanks
-
@shift The changes were done to support the Raspberry Pi, so they'd better :) More seriously, yes, just install from source from the RetroPie menu and it should be good to go.
-
@pjft said in (REQUEST) Add Daphne Singe emulator?:
@shift The changes were done to support the Raspberry Pi, so they'd better :) More seriously, yes, just install from source from the RetroPie menu and it should be good to go.
Badlands, Bega's Battle, and Road Blaster work too!
-
Is there a command to check which roms daphne can run? I have searched around but there are no official lists of alternative roms it can run.
-
@shift said in (REQUEST) Add Daphne Singe emulator?:
Is there a command to check which roms daphne can run? I have searched around but there are no official lists of alternative roms it can run.
@shift - Take a look at the Game Types here:
http://www.daphne-emu.com/mediawiki/index.php/CmdLine
Retropie, seems to have a compatibility list here too:
https://github.com/RetroPie/RetroPie-Docs/blob/master/docs/Daphne.md
-
@dirtbagxon said in (REQUEST) Add Daphne Singe emulator?:
@shift - Take a look at the Game Types here:
http://www.daphne-emu.com/mediawiki/index.php/CmdLine
Retropie, seems to have a compatibility list here too:
https://github.com/RetroPie/RetroPie-Docs/blob/master/docs/Daphne.md
Thanks, but unfortunately in those pages there is a lot of approximation, for example the rom dle20, which I know for sure that it works, is not even mentioned there. I would like to understand if it is possible to extrapolate from the code a precise list of roms that can be launched (not that they have to work, only that they can be launched).
-
@shift said in (REQUEST) Add Daphne Singe emulator?:
@dirtbagxon said in (REQUEST) Add Daphne Singe emulator?:
@shift - Take a look at the Game Types here:
http://www.daphne-emu.com/mediawiki/index.php/CmdLine
Retropie, seems to have a compatibility list here too:
https://github.com/RetroPie/RetroPie-Docs/blob/master/docs/Daphne.md
Thanks, but unfortunately in those pages there is a lot of approximation, for example the rom dle20, which I know for sure that it works, is not even mentioned there. I would like to understand if it is possible to extrapolate from the code a precise list of roms that can be launched (not that they have to work, only that they can be launched).
If you want every game listed with a ROM entry in the codebase, then I would do: git grep m_shortgamename
git grep m_shortgamename src/game/astron.cpp: m_shortgamename = "astronp"; src/game/astron.cpp: m_shortgamename = "blazer"; src/game/astron.cpp: m_shortgamename = "galaxyp"; src/game/astron.cpp: m_shortgamename = "astron"; src/game/astron.cpp: m_shortgamename = "galaxy"; src/game/astron.cpp: m_shortgamename = "cobraab"; src/game/badlands.cpp: m_shortgamename = "badlands"; src/game/badlands.cpp: m_shortgamename = "badlandp"; src/game/bega.cpp: m_shortgamename = "bega"; src/game/bega.cpp: m_shortgamename = "begar1"; src/game/bega.cpp: m_shortgamename = "cobra"; src/game/bega.cpp: m_shortgamename = "roadblaster"; src/game/cliff.cpp: m_shortgamename = "cliff"; src/game/cliff.cpp: m_shortgamename = "gtg"; src/game/cliff.cpp: m_shortgamename = "cliffalt"; src/game/cliff.cpp: m_shortgamename = "cliffalt2"; src/game/cobraconv.cpp: m_shortgamename = "cobraconv"; src/game/esh.cpp: m_shortgamename = "esh"; src/game/esh.cpp: m_shortgamename = "eshalt"; src/game/esh.cpp: m_shortgamename = "eshalt2"; src/game/esh.cpp: m_shortgamename = "eshalt"; src/game/esh.cpp: m_shortgamename = "eshalt2"; src/game/ffr.cpp: m_shortgamename = "ffr"; src/game/firefox.cpp: m_shortgamename = "firefox"; src/game/firefox.cpp: m_shortgamename = "firefoxa"; src/game/gpworld.cpp: m_shortgamename = "gpworld"; src/game/interstellar.cpp: m_shortgamename = "interstellar"; src/game/lair.cpp: m_shortgamename = "lair"; src/game/lair.cpp: m_shortgamename = "lair_f"; src/game/lair.cpp: m_shortgamename = "lair_e"; src/game/lair.cpp: m_shortgamename = "dle11"; src/game/lair.cpp: m_shortgamename = "dle21"; src/game/lair.cpp: m_shortgamename = "dle20"; src/game/lair.cpp: m_shortgamename = "ace"; src/game/lair.cpp: m_shortgamename = "ace_a2"; src/game/lair.cpp: m_shortgamename = "ace_a"; src/game/lair.cpp: m_shortgamename = "sae"; src/game/lair.cpp: m_shortgamename = "lair_a"; src/game/lair.cpp: m_shortgamename = "lair_b"; src/game/lair.cpp: m_shortgamename = "lair_c"; src/game/lair.cpp: m_shortgamename = "lair_d"; src/game/lair.cpp: m_shortgamename = "lair_n1"; src/game/lair.cpp: m_shortgamename = "lair_x"; src/game/lair2.cpp: m_shortgamename = "lair2"; src/game/lair2.cpp: m_shortgamename = "ace91"; src/game/lair2.cpp: m_shortgamename = "ace91_euro"; src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_315"; src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_211"; src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_300"; src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_314"; src/game/lair2.cpp:// m_nvram_filename = m_shortgamename = "lair2_317"; src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_318"; src/game/lair2.cpp: m_shortgamename = "lair2"; // default version, so it gets the default name src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_316_euro"; src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_319_euro"; src/game/lair2.cpp: m_nvram_filename = m_shortgamename = "lair2_319_span"; src/game/laireuro.cpp: m_shortgamename = "laireuro"; src/game/laireuro.cpp: m_shortgamename = "aceeuro"; src/game/laireuro.cpp: m_shortgamename = "lair_ita"; src/game/laireuro.cpp: m_shortgamename = "lair_d2"; src/game/lgp.cpp: m_shortgamename = "lgp"; src/game/mach3.cpp: m_shortgamename = "mach3"; src/game/mach3.cpp: m_shortgamename = "uvt"; src/game/mach3.cpp: m_shortgamename = "cobram3"; src/game/starrider.cpp: m_shortgamename = "starrider"; src/game/superd.cpp: m_shortgamename = "sdq"; src/game/superd.cpp: m_shortgamename = "sdqshort"; src/game/superd.cpp: m_shortgamename = "sdqshortalt"; src/game/thayers.cpp: m_shortgamename = "tq"; src/game/thayers.cpp: m_shortgamename = "tq_alt"; src/game/thayers.cpp: m_shortgamename = "tq_swear"; src/game/timetrav.cpp: m_shortgamename = "timetrav";
But I know for a fact that quite a few aren't in a working state.
http://www.dragons-lair-project.com/tech/
Feel free to create a list, no one is actively working on this any more ;)
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.