kodi-game / game.libretro.stella

Stella GameClient for XBMC
https://github.com/stella-emu/stella
3 stars 2 forks source link

LE: Black screen after starting Emulator #5

Closed walterheisenberg closed 4 years ago

walterheisenberg commented 6 years ago

I got a black screen after starting the emulator. Even there is no sound. http://ix.io/QSS I reported another issue with MrBoom, where I got sound. Don't know the bugs have the same reason or it is just LE :~

PS: I started the ROMs with IARL, but this shouldn't be a problem

garbear commented 6 years ago

Several black screen fixes have been committed. Is this still an issue?

zjoasan commented 5 years ago

On pi3 running LE9, i get black screen, but if i punch up the OSD(Game menu) the emulator gets drawn in the background. Sound works even if screen is black.

Same goes for: Beetle bsnes bsnes-mercury Accuracy bsnes-mercury Balanced bsnes-mercury Performance Bettle PSX Beetle GBA GBC Sameboy Nestopia

beta-tester commented 5 years ago

i can confirm that stella add-on still renders a black screen (LibreELEC 9.0.0 on RPi3B) and when the "game menu" is opened, then the in-game screen is rendered as dimmed background. sound is working.

garbear commented 5 years ago

I believe this is due to OpenGL initializing too early before the fullscreen window opens. I won't have time to look into this for at least the next few weeks, so if you know anyone who wants to do some opengl debugging I'm eager to guide.

djedi23 commented 5 years ago

I might have found a clue to this issue. I'm learning libretro core lib to devellop some tiny games on kodi.

My dev env is a pc running ubuntu 18.04.2 LTS with kodi 18.1 installed from the PPA. My target env is libreelect 9.1 on an rpi3b+ with kodi 18.1.

I'm using XRGB pixel format:

enum retro_pixel_format fmt = RETRO_PIXEL_FORMAT_XRGB8888;
  if (!environ_cb(RETRO_ENVIRONMENT_SET_PIXEL_FORMAT, &fmt))

I have a simple putpixel function:

void putpixel(uint32_t *buffer,int x,int y, uint32_t color)
{
  buffer[y*VIDEO_WIDTH +x] = color;
}

When I use this line:

      putpixel((uint32_t *)frame_buf,x,y,0xFFFFFFFF);

I see a white pixel on the dev env and the target.

Now, if use this line:

      putpixel((uint32_t *)frame_buf,x,y,0x80FFFFFF);

I see a white pixel on ubuntu env and a grey pixel on libreelec.

for(int x=0; x<256; x++)
   putpixel((uint32_t *)frame_buf,x,y,(x<<24)+0xFFFFFF);

I see a white line on ubuntu env and a gradient line on libreelec.

My interpretation is that on ubuntu the alpha channel is ignored and not on libreelec.

PS: mrboom also displays a black screen on my libreelec.

garbear commented 5 years ago

I opened this PR with the intention of fixing the problem: https://github.com/xbmc/xbmc/pull/15771

It's been included in the latest milhouse builds. Can someone try it out?

Jookia commented 5 years ago

@garbear I just tested that PR on a WeTek Play on 18.2, it didn't change anything

beta-tester commented 5 years ago

@garbear is there an add-on zip file available i can try to install to my LibreELEC 9.0.2 / Kodi 18.2 for my RPi2/3 ?

garbear commented 5 years ago

No, if @djedi23 is right then the OpenGLES implementation is handling alpha values in a different way than OpenGL. When I get a chance I'll try a fix for @djedi23's testing. It might be a couple weekends before I can get to this, but I'll post back here when I open a PR.

Huii commented 5 years ago

Hi there,

I'm not sure whether this is the right place to post this but I have the same issue with Mr. Boom on my Raspberry Pi 3 B+ running LibreELEC. I can here the sound and if I press the start button of my controller I see the game in the background but apart from that I can simply see a black screen.

smrt28 commented 5 years ago

Any progress on this issue? I'm really looking forward playing retros on my pie 🙏

garbear commented 5 years ago

Sent a PR upstream

Jookia commented 5 years ago

I tested that PR ( #16421 ) and it does solve the issue for me on my WeTek Play. Nice!

smrt28 commented 5 years ago

@Jookia could you please suggest where to download the patched build for rbpi3, thx

Jookia commented 5 years ago

Sorry @smrt28 I just re-built LibreElec with that PR as two patches.

smrt28 commented 5 years ago

@Jookia thx, I re-built the image and it works. However it's still not usable. Audio seems not working and the dialog claims I need the particular controller which I don't have. I managed to pair kodi with PS3 controller but it was all. It just pairs but doesn't control anything.

beta-tester commented 5 years ago

@garbear is there an add-on zip file available i can try to install to my LibreELEC 9.0.2 / Kodi 18.2 for my RPi2/3 ? ... thx

garbear commented 5 years ago

I can provide a .tar update file for LE, would that work for you?

beta-tester commented 5 years ago

yes, that would be great. i think i can re-pack the add-on to a zip file to install it...

garbear commented 5 years ago

The fix is in Kodi, not the add-on

beta-tester commented 5 years ago

oh, then it is an update to a newer version of kodi?... that's welcome as well.

garbear commented 5 years ago

This is the version I'm running, https://github.com/kodi-game/LibreELEC.tv/releases/tag/v9.0.2

beta-tester commented 5 years ago

thanks alot... stella is working now very well.

Huii commented 5 years ago

Unfortunately, this is still not working for me. Even after updating to the newest LibreELEC version on my Pi. Do I have to activate a certain development channel in order to receive the patch? If yes, how would I do so?

beta-tester commented 5 years ago

@Huii

Unfortunately, this is still not working for me. Even after updating to the newest LibreELEC version on my Pi. Do I have to activate a certain development channel in order to receive the patch?

you have to download the link from post:

This is the version I'm running, https://github.com/kodi-game/LibreELEC.tv/releases/tag/v9.0.2

download/copy that file (LibreELEC-RPi2.arm-9.0-devel-20190801211839-1c74ef3.tar) to the Update folder on your existing LibreELEC installation via ssh shell to /storage/.update/ or via samba share \\\Update then simply reboot LibreELEC... it will extract and update your LibreELEC... done.

Huii commented 5 years ago

@beta-tester Ok, thank you. I'll give that a try.

markaspio commented 5 years ago

@garbear I gave a try to your modified version of LibreElec. It solves the Dosbox problem, but it seems to create problems with the other Mame emulators, which don't work or work very slowly. Reinstalling the latest official version of LibreElec 9.1, Mame emulators return to work correctly, while Dosbox has again the black screen problem. Thank you

garbear commented 5 years ago

interesting. should I try building a 9.1 image with the patch?

markaspio commented 5 years ago

@garbear I noticed that by installing your 9.0.2 version the system doesn't recognize newer versions of LibreRetro emulators (I came from 9.1, so it was a downgrade for me), and force you to use older versions. Perhaps loading the patch on 9.1 the problem can be solved

garbear commented 5 years ago

I uploaded a 9.1 release: https://github.com/kodi-game/LibreELEC.tv/releases/tag/v9.1-20190901. Tested on my RPi 3 B+ and it works.

markaspio commented 5 years ago

Great thanks. I will be able to try it again next Saturday when I'll come back home

garbear commented 5 years ago

get a chance? no rush, undetermined if there will be an 18.5

markaspio commented 5 years ago

@garbear Im' sorry for the late, I was unable to install your version before 'cause I use Rasberry at my girlfriend home, on weekend. Yesterday I tested it, the situation is this: Dosbox works (and Mr. Boom game also). This time the other emulators remains on last LibreRetro version and they works. BUT they are slow (I tested MAME 2003 Bubble Bobble, AeroFighters 2, Carrier Airwings). I noticed that isn't only the emulated games to be slow, but all the content played with video player: all channels on live tv and videos were slow. I re-installed official LibreElec 9.1 version and all worked fluid and fast (except DOSBOX that doesn't work, of course). So it seems that something on your fix slows down games and reproduced contents... Please note that I installed it on a RPi 3 (not B+). Thanks

beta-tester commented 5 years ago

hello @garbear, i just installed the actual official LibreELEC 9.1.501 [9.2 beta1] (http://releases.libreelec.tv/LibreELEC-RPi2.arm-9.1.501.img.gz)

but in that version the ATARI2600 emulator stellar has still the issue with the black screen. does it mean that your patch still didn't reached the official repository or how is it possible that it seems to not included in the official beta?

garbear commented 5 years ago

@beta-tester you will need a build that includes https://github.com/xbmc/xbmc/pull/16421. I linked to a test build earlier where I included the PR.

beta-tester commented 5 years ago

oops, sorry, i overlooked or forgot, that it is an issue in Kodi... so as long LibreELEC is using the unpatched/unfixed Kodi (<=18.4), the issue will stay.

renedonaire commented 5 years ago

@garbear I got an error when I try this procedure, ".tar file is corrupted" Do you have an alternate download link?

download/copy that file (LibreELEC-RPi2.arm-9.0-devel-20190801211839-1c74ef3.tar) to the Update folder on your existing LibreELEC installation via ssh shell to /storage/.update/ or via samba share \\Update then simply reboot LibreELEC... it will extract and update your LibreELEC... done.

garbear commented 4 years ago

@renedonaire I rebuilt the image against the latest branches: https://github.com/kodi-game/LibreELEC.tv/releases/tag/v9.1-20191027

garbear commented 4 years ago

The feedback I've gotten is positive, minus the video slowdown due to using LE master instead of the RPi branch. Is the fix in https://github.com/xbmc/xbmc/pull/16421 good to go?

beta-tester commented 4 years ago

i only can tell that i don't have the blackscreen issue with the "v9.1-20191027" image on a RPi3B. about slowing down issue i can't tell anything about it, because i did not notice that before. i didn't used those specific emulators or live-video.

garbear commented 4 years ago

I'm going to consider the slowdown unrelated (and due to missing LE-specific patches). If blackscreen still works in the 2019-10-27 image then I think that https://github.com/xbmc/xbmc/pull/16421 can be merged.

renedonaire commented 4 years ago

@garbear I got an error when I try this procedure, ".tar file is corrupted" Do you have an alternate download link?

download/copy that file (LibreELEC-RPi2.arm-9.0-devel-20190801211839-1c74ef3.tar) to the Update folder on your existing LibreELEC installation via ssh shell to /storage/.update/ or via samba share \\Update then simply reboot LibreELEC... it will extract and update your LibreELEC... done.

@garbear Thank you! Loaded the new .tar file and updated succesfully. Everything working OK, blackscreen issue fixed. After this, I should keep the LibreElec updates preferences in "manual" mode or I should turn it to "auto" mode?

beta-tester commented 4 years ago

will the fix be in Kodi 18.5 already or at least in the LibreELEC 9.2 release? because i can't see anything about this fix in the changelog of Kodi 18.5.

garbear commented 4 years ago

When I get a chance I'll backport the fix to 18.6.

beta-tester commented 4 years ago

not really sure what "backport the fix to 18.6" exactly means. the current official release LibreELEC 9.2 for RPi3 has Kodi 18.5. is there a detailed step-by-step tutorial available how to compile/build the LibreELEC 9.2 update with the fixed Kodi 18.6 by myself?

garbear commented 4 years ago

not really sure what "backport the fix to 18.6" exactly means.

You'll notice this PR is against master. When we released 18.0, we "branched" the code, and "porting" means to take a PR against one branch an apply it to another. A "backport" is when the other branch is older, so this fix will be PRed to our Leia branch and included when we release 18.6.

I had to piece together several tutorials to learn how to compile LE, but now that I'm up and running, I can make a RPi3 build with LE 9.2 and Kodi 18.5 plus this patch (there's no other changes for 18.6 yet). I uploaded the build here: https://github.com/kodi-game/LibreELEC.tv/releases/tag/v9.2-20191126

beta-tester commented 4 years ago

again, thank you very much !!!

cworth33 commented 4 years ago

I just ran into similar issues with the blank screen when attempting to run games from Kodi using I'd like to put this pre release 18.6 build on my RPi3 but not sure where to get the artifacts or how to do a CLI update from pre release branch. Any help?

garbear commented 4 years ago

Can't you just copy the release to the "Update" share?

beta-tester commented 4 years ago

with official LibreELEC 9.2.1, stella is working thanks.