fadedled / seta-gx

Seta GX - Experimental port of the Yabause Sega Saturn emulator to the Wii
GNU General Public License v2.0
6 stars 1 forks source link

Nothing work in wiimote and classic controller #1

Open Zeox-Gamer opened 3 weeks ago

Zeox-Gamer commented 3 weeks ago

I know that the emulator is very initial I tried to see if the Wiimote or Classic controller worked so I could use it on the Vwii of the Wii U and these controls really don't work, maybe in the future you intend to add these standard Wii controls or more... Thanks for emulator

fadedled commented 3 weeks ago

Wii controller support is planned after the next release (next release should be a new menu screen).

Zeox-Gamer commented 3 weeks ago

Another thing I almost forgot to say on the Yabause WII the parameters and frame skip improved the speed of some games especially when someone used it on the Wii U using overclocking on the Vwii. Is it possible for you to also add support to the Wiiu pro controller and the gamepad? So it would be possible to run this emulator without being limited to Wii controls and it works on both Wii and Wiiu just like Wiistation does. I'm a friend, we tried to compile a retroarch version of yabause for both the Wii and the Wiiu, but we managed to do it but the screen turned green, as I've already tested a lot of things in the emulator before this one that you used for the Wii, I wish I could help in some way. sharing this information. Thank you for reading this far.

fadedled commented 3 weeks ago

I changed some of the previous parameters a while back and if I remember correctly only Saturn Bomberman seemed to run better (but it did show graphical glitches), if those parameters become needed I may add them later. As for frame skip, it will not make things faster since the frame is being rendered by the Wii's GPU, the solution is a CPU dynarec.

I'm focusing on Wii right now, I could add Wii U controllers later :). As for the green screen it could be that the GPU crashed by Retroarch mishandling something.

Zeox-Gamer commented 3 weeks ago

I researched this error and everything I found out and that something in the color of the video output is like little endian instead of big endian. I don't have much talent for this but that's what I can find out, now fixing it is another thing.

about the dynarec cpu you are right it is necessary to have this for the emulator to work well neither the wii nor the wii do you have a dynarec for this emulator but they are capable of emulating saturn they are

about the emulator it is very promising it has the potential to surpass the yabause wii

fadedled commented 2 weeks ago

If the screen turned completely green then endianness is not the issue, also, is there any sound? Yes, actually I'm mainly focusing on 2D games to have a realistic goal but a dynarec will most likely make the emulator run at full speed (by my estimations), right now only few games I've tested have been close to full speed in some instances, especially after optimizing the rendering method.

Thank you for checking the emu out :) Yabause's code (and especially the Wii port) is quite messy and trying to understand/simplify it is quite the task.

Ploggy commented 2 weeks ago

There's a vid here of the issue we have on WiiU, https://youtu.be/IMcDzi7GCZU?si=svXPkogzhX56P5Uv There is sound too bit it does stutter, I'm hoping you manage to get a dynarec running well enough to get some games working and perhaps it can be added to the retroarch yabause core so we can take advantage of it? I'm assuming the issue is endian related the core runs fine on pc and other little endian systems that Retroarch uses, the only bigendian systems that can run the yabause core is wii/wiiu and both have the green hue. but I'm no coder so perhaps it is something else. I only just managed to get it to compile :P

Good luck with the emulator, Saturn running decently on Wii would be very nice, I can get my Satrun Bomberman and SOTN on :)

fadedled commented 2 weeks ago

Hmmm does that only happen on the Wii U gamepad? Yabause can be compiled for big or little endian by the use of compilation flags, if that is not the issue then you can modify the TitanWriteColor() function in titan.c file to change the color output. The dynarec I've started could be incompatible with Yabause tho :/

Ploggy commented 2 weeks ago

The display is messed up on the Gamepad and TV.

This is what I added to the Makefile:

Nintendo WiiU

else ifneq (,$(findstring wiiu,$(platform))) TARGET := $(TARGET_NAME)libretro$(platform).a CC = $(DEVKITPPC)/bin/powerpc-eabi-gcc$(EXE_EXT) CXX = $(DEVKITPPC)/bin/powerpc-eabi-g++$(EXE_EXT) AR = $(DEVKITPPC)/bin/powerpc-eabi-ar$(EXE_EXT) ENDIANNESS_DEFINES = -DWORDS_BIGENDIAN -DMSB_FIRST -DHW_WUP -mcpu=750 -meabi -mhard-float -Dppc STATIC_LINKING = 1 HAVE_SSE = 0 HAVE_THREADS = 0

It looks like it has the big endian defines in there, but again I'm not very good at this stuff so maybe it's missing something?

Oh your dynarec wont be compatible with Yabause? :/ yea, there's no way the WiiU is powerful enough to run games at a playable speed without one :P In that case I hope you manage to get dynarec running on Wii, we can always use your emulator with WiiU's vWii and with CPU Overclock we should get an extra bump in performance :D

saulfabregwiivc commented 2 weeks ago

̶@̶f̶a̶d̶e̶d̶l̶e̶d̶ ̶h̶a̶v̶e̶ ̶y̶o̶u̶ ̶a̶l̶s̶o̶ ̶t̶r̶i̶e̶d̶ ̶l̶o̶o̶k̶i̶n̶g̶ ̶a̶t̶ ̶t̶h̶e̶ ̶s̶o̶u̶r̶c̶e̶ ̶c̶o̶d̶e̶ ̶o̶f̶ ̶̶̶U̶O̶Y̶a̶b̶a̶u̶s̶e̶̶̶ ̶(̶a̶l̶s̶o̶ ̶k̶n̶o̶w̶n̶ ̶a̶s̶ ̶̶̶Y̶a̶b̶a̶S̶a̶n̶s̶h̶i̶r̶o̶̶̶)̶ ̶b̶y̶ ̶d̶e̶v̶m̶i̶y̶a̶x̶?̶:̶ ̶h̶t̶t̶p̶s̶:̶/̶/̶g̶i̶t̶h̶u̶b̶.̶c̶o̶m̶/̶d̶e̶v̶m̶i̶y̶a̶x̶/̶y̶a̶b̶a̶u̶s̶e̶ ̶;̶ ̶h̶t̶t̶p̶:̶/̶/̶u̶o̶y̶a̶b̶a̶u̶s̶e̶.̶o̶r̶g̶

̶J̶u̶s̶t̶ ̶a̶s̶k̶i̶n̶g̶.̶

(Sorry i didn't read much the README, it says that some code was taken from Yaba Sanshiro, sorry)

Btw, thanks for this new Sega Saturn emulator on Wii... for real :D