Author Topic: Glide GL ES 2.0 Port (WIP)  (Read 44133 times)

Offline xperia64

  • Moderator
  • double
  • *****
  • Posts: 591
    • View Profile
    • My Apps
Re: Glide GL ES 2.0 Port (WIP)
« Reply #45 on: April 04, 2013, 05:28:57 PM »
Whoops, looks like its actually framebuffer->RDRAM copy thats needed, not framebuffer->vram. Curious as to if Glide64 even has that, I know napalm does..

Offline Kris

  • Developer
  • int
  • *****
  • Posts: 91
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #46 on: April 04, 2013, 06:09:43 PM »
Whoops, looks like its actually framebuffer->RDRAM copy thats needed, not framebuffer->vram. Curious as to if Glide64 even has that, I know napalm does..
I've found most of the framebuffer stuff to work as it does with glide64mk2 on the PC. The large screen in Mario Kart is blank for me on android and pc unless I enable fb_read_always. You can change this in glide64mk2.ini [DEFAULT] not [SETTINGS] section. I don't think exposing every gfx option in the app is a good idea.

Offline xperia64

  • Moderator
  • double
  • *****
  • Posts: 591
    • View Profile
    • My Apps
Re: Glide GL ES 2.0 Port (WIP)
« Reply #47 on: April 04, 2013, 06:26:28 PM »
Wow!! The puzzle piece intro in banjo-kazooie actually works, albeit a lot slower

Offline mudlord

  • bit
  • Posts: 2
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #48 on: April 06, 2013, 08:12:19 PM »
of course its slower, you need to read every single frame for a CPU based fb effect to work.

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #49 on: April 16, 2013, 02:05:44 PM »
Can this be mirrored over to the github repo now?  I'd like to start test merges with the new ae-bridge library and SDL 2.0.
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #50 on: April 16, 2013, 07:57:06 PM »
Just got around to checking this out again.  I was getting force closes on launch due to a segfault, regardless of whether I merged to master first or not.  I traced it down to some SDL initialization stuff in main.cpp, which was easily solved by reverting some lines of code back to the upstream version:

Spoiler: "patch" • show
[code]
diff --git a/jni/gles2glide64/src/Glitch64/main.cpp b/jni/gles2glide64/src/Glitch64/main.cpp
index 664cf26..1983768 100644
--- a/jni/gles2glide64/src/Glitch64/main.cpp
+++ b/jni/gles2glide64/src/Glitch64/main.cpp
@@ -426,32 +426,21 @@ grSstWinOpen(
   viewport_offset = 0; //-10 //-20;
 
   // ZIGGY not sure, but it might be better to let the system choose
-//  CoreVideo_GL_SetAttribute(M64P_GL_DOUBLEBUFFER, 1);
-//  CoreVideo_GL_SetAttribute(M64P_GL_SWAP_CONTROL, vsync);
-//  CoreVideo_GL_SetAttribute(M64P_GL_BUFFER_SIZE, 16);
-     SDL_GL_SetAttribute(SDL_GL_BUFFER_SIZE, 32);
-     SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8);
-     SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 8);
-     SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 8);
-     SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24);
-  //CoreVideo_GL_SetAttribute(M64P_GL_DEPTH_SIZE, 24);
-
-//  printf("(II) Setting video mode %dx%d...\n", width, height);
-
-  if (SDL_InitSubSystem( SDL_INIT_VIDEO ) == -1)
+  CoreVideo_GL_SetAttribute(M64P_GL_DOUBLEBUFFER, 1);
+  CoreVideo_GL_SetAttribute(M64P_GL_SWAP_CONTROL, vsync);
+  CoreVideo_GL_SetAttribute(M64P_GL_BUFFER_SIZE, 16);
+  //   SDL_GL_SetAttribute(SDL_GL_BUFFER_SIZE, 32);
+  //   SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8);
+  //   SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 8);
+  //   SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 8);
+  //   SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 8);
+  CoreVideo_GL_SetAttribute(M64P_GL_DEPTH_SIZE, 16);
+
+  printf("(II) Setting video mode %dx%d...\n", width, height);
+  if(CoreVideo_SetVideoMode(width, height, 0, fullscreen ? M64VIDEO_FULLSCREEN : M64VIDEO_WINDOWED) != M64ERR_SUCCESS)
   {
-      LOGINFO( "Error initializing SDL video subsystem: %s\n", SDL_GetError() );
-      return false;
-  }
-
-
-
-  SDL_Surface* hScreen;
-  if (!(hScreen = SDL_SetVideoMode( width, height, 32, SDL_HWSURFACE )))
-  {
-     LOGINFO("Problem setting videomode %dx%d: %s\n", width, height, SDL_GetError());
-      SDL_QuitSubSystem( SDL_INIT_VIDEO );
-      return false;
+    printf("(EE) Error setting videomode %dx%d\n", width, height);
+    return false;
   }
 
   char caption[500];
[/code]


This might fix the issue Paul was having with the depth buffer, possibly.

Anyhow, some recent bugfixes and cleanups on master have removed the need to even touch the java code for glide plugin compatibility.  E.g. CoreVideo_SetCaption is now safe and the config file is now populated with the correct screen dimension.
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #51 on: April 16, 2013, 08:35:43 PM »
Ok once again I spoke too soon. ::)  Nevermind what I just said, turns out the glide library wasn't even loading so the core was quietly reverting to Rice instead of crashing.
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline Kris

  • Developer
  • int
  • *****
  • Posts: 91
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #52 on: April 16, 2013, 09:28:27 PM »
This might fix the issue Paul was having with the depth buffer, possibly.
I haven't heard back about whether it worked when when I first disabled CoreVideo_SetCaption. As things are setup with the java egl code neither SDL_GL_SetAttribute or CoreVideo_GL_SetAttribute probably do anything useful anyway. I will try remote testing a PowerVR device again soon although yesterday when I tried it just timed out.

Anyhow, some recent bugfixes and cleanups on master have removed the need to even touch the java code for glide plugin compatibility.  E.g. CoreVideo_SetCaption is now safe and the config file is now populated with the correct screen dimension.
The fewer changes needed the better. I think there is room to simplify some things further maybe just being source files to pick and choose instead of being a library. I mentioned that the polygon offset stuff should be possible without passing the hardware type from java but as they are used differently in rice vs glide I don't think it can be shared.

Has it been considered to pass all the frameskip, screenstrech, bit-depth etc by config or as one big struct instead of separately?

Ok once again I spoke too soon. ::)  Nevermind what I just said, turns out the glide library wasn't even loading so the core was quietly reverting to Rice instead of crashing.
I ran into that too, when CoreVideo_SetCaption worked it changed the title so you could tell. It might be the removal of SDL_InitSubsystem you mention in that patch.

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #53 on: April 16, 2013, 09:51:02 PM »
As things are setup with the java egl code neither SDL_GL_SetAttribute or CoreVideo_GL_SetAttribute probably do anything useful anyway.
You're right, they don't do anything in SDL 1.3, but they actually do get used in SDL 2.0.  Which is now integrated in a test branch on github.

The fewer changes needed the better. I think there is room to simplify some things further maybe just being source files to pick and choose instead of being a library. I mentioned that the polygon offset stuff should be possible without passing the hardware type from java but as they are used differently in rice vs glide I don't think it can be shared.
I agree, would be best not to involve java at all for polygon offset.  I just noticed your code that grabs the gl renderer.  Pretty slick, definitely worth developing on, as it would be much more transparent to the user and java, and easier to maintain in the long run.

Has it been considered to pass all the frameskip, screenstrech, bit-depth etc by config or as one big struct instead of separately?
That's actually next on my agenda after we get the last kinks out of the SDL 2.0 integration.  Most of the custom JNI functions in the ae-bridge are just this kind of static stuff, which really belongs in the config file.

I ran into that too, when CoreVideo_SetCaption worked it changed the title so you could tell. It might be the removal of SDL_InitSubsystem you mention in that patch.
Yeah, could be.  Either way, using the mupen CoreVideo abstraction rather than the SDL api directly is more in the "mupen spirit" and would sit better with me if it works.
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #54 on: April 16, 2013, 10:02:43 PM »
By the way, I just tested glide with SDL 2.0 and it worked without a hiccup 8) (on my xperia play that is).  First impression, didn't notice any performance improvement (or regression) in a quick run around the outside of the mario 64 castle (~18-25 FPS).

Still getting a segfault with glide on my Nexus 7, no matter where I merge.  Any suggestions on how to track it down?  Looks like something in the Tegra gles2 drivers.  Here's the logcat (with backtrace) in case it helps:

Spoiler: logcat • show
[code]
04-16 22:57:47.132: V/front_end(26425):  __  __                         __   _  _   ____  _             
04-16 22:57:47.132: V/front_end(26425): |  \/  |_   _ _ __   ___ _ __  / /_ | || | |  _ \| |_   _ ___
04-16 22:57:47.132: V/front_end(26425): | |\/| | | | | '_ \ / _ \ '_ \| '_ \| || |_| |_) | | | | / __| 
04-16 22:57:47.132: V/front_end(26425): | |  | | |_| | |_) |  __/ | | | (_) |__   _|  __/| | |_| \__ \ 
04-16 22:57:47.132: V/front_end(26425): |_|  |_|\__,_| .__/ \___|_| |_|\___/   |_| |_|   |_|\__,_|___/ 
04-16 22:57:47.132: V/front_end(26425):              |_|         http://code.google.com/p/mupen64plus/ 
04-16 22:57:47.132: V/front_end(26425): Mupen64Plus Console User-Interface Version 1.99.5
04-16 22:57:47.132: I/UI-Console(26425): Info: attached to core library 'Mupen64Plus Core' version 1.99.5
04-16 22:57:47.132: I/UI-Console(26425): Info:             Includes support for Dynamic Recompiler.
04-16 22:57:47.132: I/Core(26425): Info: Updating parameter set version in 'Core' config section to 1.01
04-16 22:57:47.752: I/Core(26425): Info: Goodname: Super Mario 64 (U) [!]
04-16 22:57:47.752: I/Core(26425): Info: Name: SUPER MARIO 64     
04-16 22:57:47.752: I/Core(26425): Info: MD5: 20B854B239203BAF6C961B850A4A51A2
04-16 22:57:47.752: I/Core(26425): Info: CRC: 635a2bff 8b022326
04-16 22:57:47.752: I/Core(26425): Info: Imagetype: .z64 (native)
04-16 22:57:47.752: I/Core(26425): Info: Rom size: 8388608 bytes (or 8 Mb or 64 Megabits)
04-16 22:57:47.752: I/Core(26425): Info: Version: 1444
04-16 22:57:47.752: I/Core(26425): Info: Manufacturer: Nintendo
04-16 22:57:47.752: I/Core(26425): Info: Country: USA
04-16 22:57:47.762: D/UI-Console(26425): Status: Cheat codes disabled.
04-16 22:57:47.762: I/UI-Console(26425): Info: using Video plugin: 'Glide64mk2 Video Plugin' v1.99.4
04-16 22:57:47.762: I/UI-Console(26425): Info: using Audio plugin: 'Mupen64Plus SDL Audio Plugin' v1.99.5
04-16 22:57:47.762: I/UI-Console(26425): Info: using Input plugin: 'Mupen64Plus Android Input Plugin' v1.0.0
04-16 22:57:47.762: I/UI-Console(26425): Info: using RSP plugin: 'Hacktarux/Azimer High-Level Emulation RSP Plugin' v1.99.5
04-16 22:57:47.762: I/Video(26425): Info: opening data/Glide64mk2.ini
04-16 22:57:47.862: I/Video(26425): Info: Using TEXUMA extension.
04-16 22:57:47.862: I/SDL(26425): [STUB] GL_LoadLibrary
04-16 22:57:47.862: V/GameSurface(26425): Starting up OpenGL ES 2.0
04-16 22:57:47.872: I/SDL(26425): [STUB] GL_SetSwapInterval
04-16 22:57:47.872: I/SDL(26425): [STUB] GL_GetSwapInterval
04-16 22:57:47.912: I/Video(26425): Info: Your video card doesn't support GL_ARB_texture_env_combine extension
04-16 22:57:47.912: I/Video(26425): Info: Your video card doesn't support GL_ARB_multitexture extension
04-16 22:57:47.912: I/Video(26425): Info: Your video card doesn't support GL_ARB_texture_mirrored_repeat extension
04-16 22:57:47.912: I/Video(26425): Info: use_fbo 1
04-16 22:57:47.912: I/Video(26425): Info: Renderer:NVIDIA Tegra 3 biasFactor:0.200000
04-16 22:57:47.982: A/libc(26425): Fatal signal 11 (SIGSEGV) at 0x5469613a (code=2), thread 26451 (d.mupen64plusae)
04-16 22:57:48.082: I/DEBUG(124): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
04-16 22:57:48.082: I/DEBUG(124): Build fingerprint: 'google/nakasi/grouper:4.2.2/JDQ39/573038:user/release-keys'
04-16 22:57:48.082: I/DEBUG(124): Revision: '0'
04-16 22:57:48.082: I/DEBUG(124): pid: 26425, tid: 26451, name: d.mupen64plusae  >>> paulscode.android.mupen64plusae <<<
04-16 22:57:48.082: I/DEBUG(124): signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 5469613a
04-16 22:57:48.622: I/DEBUG(124):     r0 00000001  r1 643e1960  r2 5469610e  r3 69845c38
04-16 22:57:48.622: I/DEBUG(124):     r4 5469610e  r5 643e1960  r6 69845c34  r7 69845c38
04-16 22:57:48.622: I/DEBUG(124):     r8 00000000  r9 643e1a98  sl 11698462  fp 00000001
04-16 22:57:48.622: I/DEBUG(124):     ip 00000005  sp 69845c08  lr 696175df  pc 695f48ca  cpsr 20000030
04-16 22:57:48.622: I/DEBUG(124):     d0  4010000040800000  d1  402a2dd63f800000
04-16 22:57:48.622: I/DEBUG(124):     d2  41cef8fd0368b75b  d3  c190000000000010
04-16 22:57:48.622: I/DEBUG(124):     d4  c18d0400c1890400  d5  40c0000041300000
04-16 22:57:48.622: I/DEBUG(124):     d6  41800000ffffffeb  d7  4080000000000000
04-16 22:57:48.622: I/DEBUG(124):     d8  0000000000000000  d9  0000000000000000
04-16 22:57:48.622: I/DEBUG(124):     d10 0000000000000000  d11 0000000000000000
04-16 22:57:48.622: I/DEBUG(124):     d12 0000000000000000  d13 0000000000000000
04-16 22:57:48.622: I/DEBUG(124):     d14 0000000000000000  d15 0000000000000000
04-16 22:57:48.622: I/DEBUG(124):     d16 4010000000000000  d17 4030000000000000
04-16 22:57:48.622: I/DEBUG(124):     d18 41c257e054800000  d19 41cef8fd03000000
04-16 22:57:48.622: I/DEBUG(124):     d20 0000000004040404  d21 0000000000000000
04-16 22:57:48.622: I/DEBUG(124):     d22 0707070703030303  d23 0000001200000011
04-16 22:57:48.622: I/DEBUG(124):     d24 0000000000000001  d25 000000000000018a
04-16 22:57:48.622: I/DEBUG(124):     d26 0100010001000100  d27 0100010001000100
04-16 22:57:48.622: I/DEBUG(124):     d28 0100010001000100  d29 0100010001000100
04-16 22:57:48.622: I/DEBUG(124):     d30 0000000100000001  d31 0000000100000001
04-16 22:57:48.622: I/DEBUG(124):     scr 60000090
04-16 22:57:48.632: I/DEBUG(124): backtrace:
04-16 22:57:48.632: I/DEBUG(124):     #00  pc 0018c8ca  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #01  pc 001af5dd  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #02  pc 001af703  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #03  pc 001af7db  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #04  pc 001af8ff  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #05  pc 0018c811  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #06  pc 001afcb1  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #07  pc 00193721  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #08  pc 0019c96b  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #09  pc 0018a033  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #10  pc 001787e1  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #11  pc 000fbb45  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #12  pc 000a618b  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #13  pc 000a6455  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #14  pc 000a4123  /system/lib/libcgdrv.so (CgDrv_Compile+374)
04-16 22:57:48.632: I/DEBUG(124):     #15  pc 00009320  /system/lib/egl/libGLESv2_tegra.so
04-16 22:57:48.632: I/DEBUG(124):     #16  pc 000095fc  /system/lib/egl/libGLESv2_tegra.so
04-16 22:57:48.632: I/DEBUG(124):     #17  pc 00035708  /system/lib/egl/libGLESv2_tegra.so
04-16 22:57:48.632: I/DEBUG(124):     #18  pc 00004d94  /system/lib/libnvos.so
04-16 22:57:48.632: I/DEBUG(124):     #19  pc 0000e3d8  /system/lib/libc.so (__thread_entry+72)
04-16 22:57:48.632: I/DEBUG(124):     #20  pc 0000dac4  /system/lib/libc.so (pthread_create+160)
04-16 22:57:48.632: I/DEBUG(124): stack:
04-16 22:57:48.632: I/DEBUG(124):          69845bc8  643e7b18 
04-16 22:57:48.632: I/DEBUG(124):          69845bcc  643e19d8 
04-16 22:57:48.632: I/DEBUG(124):          69845bd0  643e7b18 
04-16 22:57:48.632: I/DEBUG(124):          69845bd4  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845bd8  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845bdc  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845be0  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845be4  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845be8  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845bec  643e1960 
04-16 22:57:48.632: I/DEBUG(124):          69845bf0  00000042 
04-16 22:57:48.632: I/DEBUG(124):          69845bf4  643e1960 
04-16 22:57:48.632: I/DEBUG(124):          69845bf8  00000042 
04-16 22:57:48.632: I/DEBUG(124):          69845bfc  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845c00  df0027ad 
04-16 22:57:48.632: I/DEBUG(124):          69845c04  00000000 
04-16 22:57:48.632: I/DEBUG(124):     #00  69845c08  69845c38 
04-16 22:57:48.632: I/DEBUG(124):          69845c0c  69845d58 
04-16 22:57:48.632: I/DEBUG(124):          69845c10  69845d1f 
04-16 22:57:48.632: I/DEBUG(124):          69845c14  695f48af  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):          69845c18  00000001 
04-16 22:57:48.632: I/DEBUG(124):          69845c1c  643eca70 
04-16 22:57:48.632: I/DEBUG(124):          69845c20  11698462 
04-16 22:57:48.632: I/DEBUG(124):          69845c24  696175df  /system/lib/libcgdrv.so
04-16 22:57:48.632: I/DEBUG(124):     #01  69845c28  69845c34 
04-16 22:57:48.632: I/DEBUG(124):          69845c2c  00000002 
04-16 22:57:48.632: I/DEBUG(124):          69845c30  00000042 
04-16 22:57:48.632: I/DEBUG(124):          69845c34  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845c38  00000000 
04-16 22:57:48.632: I/DEBUG(124):          69845c3c  00000001 
04-16 22:57:48.632: I/DEBUG(124):          69845c40  ffffffff 
04-16 22:57:48.632: I/DEBUG(124):          69845c44  00000000 
04-16 22:57:48.642: I/DEBUG(124):          69845c48  00000001 
04-16 22:57:48.642: I/DEBUG(124):          69845c4c  00000000 
04-16 22:57:48.642: I/DEBUG(124):          69845c50  ffffffff 
04-16 22:57:48.642: I/DEBUG(124):          69845c54  00000000 
04-16 22:57:48.642: I/DEBUG(124):          69845c58  00000002 
04-16 22:57:48.642: I/DEBUG(124):          69845c5c  00000000 
04-16 22:57:48.642: I/DEBUG(124):          69845c60  ffffffff 
04-16 22:57:48.642: I/DEBUG(124):          69845c64  00000000 
04-16 22:57:48.642: I/DEBUG(124):          ........  ........
04-16 22:57:48.642: I/DEBUG(124):     #02  69845d10  00000001 
04-16 22:57:48.642: I/DEBUG(124):          69845d14  69845d1f 
04-16 22:57:48.642: I/DEBUG(124):          69845d18  69845e50 
04-16 22:57:48.642: I/DEBUG(124):          69845d1c  643e1960 
04-16 22:57:48.642: I/DEBUG(124):          69845d20  643eca70 
04-16 22:57:48.642: I/DEBUG(124):          69845d24  00000000 
04-16 22:57:48.642: I/DEBUG(124):          69845d28  69845e50 
04-16 22:57:48.642: I/DEBUG(124):          69845d2c  643eca70 
04-16 22:57:48.642: I/DEBUG(124):          69845d30  643e1960 
04-16 22:57:48.642: I/DEBUG(124):          69845d34  00000000 
04-16 22:57:48.642: I/DEBUG(124):          69845d38  69845e50 
04-16 22:57:48.642: I/DEBUG(124):          69845d3c  00000001 
04-16 22:57:48.642: I/DEBUG(124):          69845d40  0000000c 
04-16 22:57:48.642: I/DEBUG(124):          69845d44  696177df  /system/lib/libcgdrv.so
04-16 22:57:48.652: I/DEBUG(124): memory near r1:
04-16 22:57:48.652: I/DEBUG(124):     643e1940 00000000 00000000 00000004 00000000 
04-16 22:57:48.652: I/DEBUG(124):     643e1950 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     643e1960 643e1250 643e2458 0000005e 000001f6 
04-16 22:57:48.652: I/DEBUG(124):     643e1970 643ece50 643e8748 00000000 643eb320 
04-16 22:57:48.652: I/DEBUG(124):     643e1980 00000002 00000002 0000003a 643e60a8 
04-16 22:57:48.652: I/DEBUG(124):     643e1990 00000006 000001f6 00000001 00000028 
04-16 22:57:48.652: I/DEBUG(124):     643e19a0 643ec238 00000007 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     643e19b0 00000000 00000000 643e4d70 643e8490 
04-16 22:57:48.652: I/DEBUG(124):     643e19c0 643e55d0 00000001 000001f4 643e4db8 
04-16 22:57:48.652: I/DEBUG(124):     643e19d0 00000000 000001f4 643e7b18 00000008 
04-16 22:57:48.652: I/DEBUG(124):     643e19e0 000001f6 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     643e19f0 643e8950 00000028 000001f6 643e9150 
04-16 22:57:48.652: I/DEBUG(124):     643e1a00 00000001 000001f6 00000000 00000008 
04-16 22:57:48.652: I/DEBUG(124):     643e1a10 ffffffff 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     643e1a20 00000000 643e8938 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     643e1a30 00000001 00000001 643ed380 00000003 
04-16 22:57:48.652: I/DEBUG(124): memory near r2:
04-16 22:57:48.652: I/DEBUG(124):     546960ec 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     546960fc 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469610c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469611c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469612c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469613c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469614c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469615c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469616c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469617c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469618c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469619c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     546961ac 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     546961bc 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     546961cc 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     546961dc 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124): memory near r3:
04-16 22:57:48.652: I/DEBUG(124):     69845c18 00000001 643eca70 11698462 696175df 
04-16 22:57:48.652: I/DEBUG(124):     69845c28 69845c34 00000002 00000042 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845c38 00000000 00000001 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845c48 00000001 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845c58 00000002 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845c68 00000003 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845c78 00000005 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845c88 00000006 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845c98 00000007 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845ca8 00000008 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845cb8 00000009 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845cc8 0000000a 00000000 ffffffff 00000000 
04-16 22:57:48.652: I/DEBUG(124):     69845cd8 0000000b 00000000 643e88a8 643e1960 
04-16 22:57:48.652: I/DEBUG(124):     69845ce8 643eb3f0 69845e50 00000000 69846101 
04-16 22:57:48.652: I/DEBUG(124):     69845cf8 69845d58 643e1960 643eca70 11698462 
04-16 22:57:48.652: I/DEBUG(124):     69845d08 00000001 69617707 00000001 69845d1f 
04-16 22:57:48.652: I/DEBUG(124): memory near r4:
04-16 22:57:48.652: I/DEBUG(124):     546960ec 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     546960fc 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469610c 00000000 00000000 00000000 00000000 
04-16 22:57:48.652: I/DEBUG(124):     5469611c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469612c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469613c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469614c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469615c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469616c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469617c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469618c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     5469619c 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     546961ac 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     546961bc 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     546961cc 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     546961dc 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124): memory near r5:
04-16 22:57:48.662: I/DEBUG(124):     643e1940 00000000 00000000 00000004 00000000 
04-16 22:57:48.662: I/DEBUG(124):     643e1950 00000000 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     643e1960 643e1250 643e2458 0000005e 000001f6 
04-16 22:57:48.662: I/DEBUG(124):     643e1970 643ece50 643e8748 00000000 643eb320 
04-16 22:57:48.662: I/DEBUG(124):     643e1980 00000002 00000002 0000003a 643e60a8 
04-16 22:57:48.662: I/DEBUG(124):     643e1990 00000006 000001f6 00000001 00000028 
04-16 22:57:48.662: I/DEBUG(124):     643e19a0 643ec238 00000007 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     643e19b0 00000000 00000000 643e4d70 643e8490 
04-16 22:57:48.662: I/DEBUG(124):     643e19c0 643e55d0 00000001 000001f4 643e4db8 
04-16 22:57:48.662: I/DEBUG(124):     643e19d0 00000000 000001f4 643e7b18 00000008 
04-16 22:57:48.662: I/DEBUG(124):     643e19e0 000001f6 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     643e19f0 643e8950 00000028 000001f6 643e9150 
04-16 22:57:48.662: I/DEBUG(124):     643e1a00 00000001 000001f6 00000000 00000008 
04-16 22:57:48.662: I/DEBUG(124):     643e1a10 ffffffff 00000000 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     643e1a20 00000000 643e8938 00000000 00000000 
04-16 22:57:48.662: I/DEBUG(124):     643e1a30 00000001 00000001 643ed380 00000003 
04-16 22:57:48.662: I/DEBUG(124): memory near r6:
04-16 22:57:48.662: I/DEBUG(124):     69845c14 695f48af 00000001 643eca70 11698462 
04-16 22:57:48.662: I/DEBUG(124):     69845c24 696175df 69845c34 00000002 00000042 
04-16 22:57:48.662: I/DEBUG(124):     69845c34 00000000 00000000 00000001 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845c44 00000000 00000001 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845c54 00000000 00000002 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845c64 00000000 00000003 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845c74 00000000 00000005 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845c84 00000000 00000006 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845c94 00000000 00000007 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845ca4 00000000 00000008 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845cb4 00000000 00000009 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845cc4 00000000 0000000a 00000000 ffffffff 
04-16 22:57:48.662: I/DEBUG(124):     69845cd4 00000000 0000000b 00000000 643e88a8 
04-16 22:57:48.662: I/DEBUG(124):     69845ce4 643e1960 643eb3f0 69845e50 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845cf4 69846101 69845d58 643e1960 643eca70 
04-16 22:57:48.662: I/DEBUG(124):     69845d04 11698462 00000001 69617707 00000001 
04-16 22:57:48.662: I/DEBUG(124): memory near r7:
04-16 22:57:48.662: I/DEBUG(124):     69845c18 00000001 643eca70 11698462 696175df 
04-16 22:57:48.662: I/DEBUG(124):     69845c28 69845c34 00000002 00000042 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845c38 00000000 00000001 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845c48 00000001 00000000 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845c58 00000002 00000000 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845c68 00000003 00000000 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845c78 00000005 00000000 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845c88 00000006 00000000 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845c98 00000007 00000000 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845ca8 00000008 00000000 ffffffff 00000000 
04-16 22:57:48.662: I/DEBUG(124):     69845cb8 00000009 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845cc8 0000000a 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845cd8 0000000b 00000000 643e88a8 643e1960 
04-16 22:57:48.672: I/DEBUG(124):     69845ce8 643eb3f0 69845e50 00000000 69846101 
04-16 22:57:48.672: I/DEBUG(124):     69845cf8 69845d58 643e1960 643eca70 11698462 
04-16 22:57:48.672: I/DEBUG(124):     69845d08 00000001 69617707 00000001 69845d1f 
04-16 22:57:48.672: I/DEBUG(124): memory near r9:
04-16 22:57:48.672: I/DEBUG(124):     643e1a78 00000000 00000000 00000000 0001d528 
04-16 22:57:48.672: I/DEBUG(124):     643e1a88 00000001 643e1a98 643e2260 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1a98 6973ed88 643e1960 643e2048 643e2108 
04-16 22:57:48.672: I/DEBUG(124):     643e1aa8 00000000 00000000 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1ab8 00000000 00000000 00000000 00010000 
04-16 22:57:48.672: I/DEBUG(124):     643e1ac8 00000001 00000001 00000001 00000001 
04-16 22:57:48.672: I/DEBUG(124):     643e1ad8 00000000 00000101 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1ae8 00000001 00000001 00000001 00000001 
04-16 22:57:48.672: I/DEBUG(124):     643e1af8 00000001 00000001 00000001 00000001 
04-16 22:57:48.672: I/DEBUG(124):     643e1b08 00000001 00000001 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1b18 00000000 00000000 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1b28 00000000 00000000 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1b38 00000000 00000000 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1b48 00000000 00000000 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1b58 00000000 00000000 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124):     643e1b68 00000000 00000000 00000000 00000000 
04-16 22:57:48.672: I/DEBUG(124): memory near sl:
04-16 22:57:48.672: I/DEBUG(124):     11698440 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698450 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698460 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698470 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698480 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698490 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     116984a0 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     116984b0 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     116984c0 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     116984d0 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     116984e0 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     116984f0 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698500 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698510 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698520 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124):     11698530 ffffffff ffffffff ffffffff ffffffff 
04-16 22:57:48.672: I/DEBUG(124): memory near sp:
04-16 22:57:48.672: I/DEBUG(124):     69845be8 00000000 643e1960 00000042 643e1960 
04-16 22:57:48.672: I/DEBUG(124):     69845bf8 00000042 00000000 df0027ad 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c08 69845c38 69845d58 69845d1f 695f48af 
04-16 22:57:48.672: I/DEBUG(124):     69845c18 00000001 643eca70 11698462 696175df 
04-16 22:57:48.672: I/DEBUG(124):     69845c28 69845c34 00000002 00000042 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c38 00000000 00000001 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c48 00000001 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c58 00000002 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c68 00000003 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c78 00000005 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c88 00000006 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845c98 00000007 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845ca8 00000008 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845cb8 00000009 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845cc8 0000000a 00000000 ffffffff 00000000 
04-16 22:57:48.672: I/DEBUG(124):     69845cd8 0000000b 00000000 643e88a8 643e1960 
04-16 22:57:48.672: I/DEBUG(124): code around pc:
04-16 22:57:48.672: I/DEBUG(124):     695f48a8 20c3f3c0 e92dbd10 200147f0 461f9e08 
04-16 22:57:48.672: I/DEBUG(124):     695f48b8 912cf8d1 0800f04f 4614460d 8000f8c6 
04-16 22:57:48.672: I/DEBUG(124):     695f48c8 6ad36058 5380f423 d0162bc2 2b38d805 
04-16 22:57:48.672: I/DEBUG(124):     695f48d8 2b39d03b 80c9f040 2bf4e03c 2bf5d03a 
04-16 22:57:48.672: I/DEBUG(124):     695f48e8 80c3f040 f7f34610 230cfa83 fb031e42 
04-16 22:57:48.672: I/DEBUG(124):     695f48f8 6ba14402 f140034a 210080b8 f04f2201 
04-16 22:57:48.672: I/DEBUG(124):     695f4908 f1b830ff d0190f04 f8996833 eb0743e8 
04-16 22:57:48.672: I/DEBUG(124):     695f4918 f0141c03 bf140401 2004f8cc 4004f8cc 
04-16 22:57:48.672: I/DEBUG(124):     695f4928 011b6833 8003f847 eb076833 f8cc1c03 
04-16 22:57:48.682: I/DEBUG(124):     695f4938 f8cc0008 6833100c 60333301 0801f108 
04-16 22:57:48.682: I/DEBUG(124):     695f4948 0f0cf1b8 e8bdd1dd 683087f0 1a00eb07 
04-16 22:57:48.682: I/DEBUG(124):     695f4958 8004f8ca f04f4620 f7f3080c 1ec1fa49 
04-16 22:57:48.682: I/DEBUG(124):     695f4968 4001fb08 30384629 fc69f7f3 46826845 
04-16 22:57:48.682: I/DEBUG(124):     695f4978 d12b2d04 46206833 50bd011a 2d026b25 
04-16 22:57:48.682: I/DEBUG(124):     695f4988 f7f3d10a 1e45fa35 4805fb08 1038f8d8 
04-16 22:57:48.682: I/DEBUG(124):     695f4998 000ff001 e0090085 fa2af7f3 fb083801 
04-16 22:57:48.682: I/DEBUG(124): code around lr:
04-16 22:57:48.682: I/DEBUG(124):     696175bc 20004770 e92d4770 461d4ff0 6803b0b1 
04-16 22:57:48.682: I/DEBUG(124):     696175cc af03ac04 681f9700 f8dd4623 9e3b80e8 
04-16 22:57:48.682: I/DEBUG(124):     696175dc 270047b8 e02b46bb a000f8d5 458259e0 
04-16 22:57:48.682: I/DEBUG(124):     696175ec f1b8d123 d0030f01 685119e2 d11c2901 
04-16 22:57:48.682: I/DEBUG(124):     696175fc 100beb04 f7ff4629 b1b0ffb1 e0092700 
04-16 22:57:48.682: I/DEBUG(124):     6961760c 58230138 d1044553 46291820 ffc0f7ff 
04-16 22:57:48.682: I/DEBUG(124):     6961761c 3701b110 dbf3454f f04f454f bf080001 
04-16 22:57:48.682: I/DEBUG(124):     6961762c d00a7030 70312100 f10be007 37100b01 
04-16 22:57:48.682: I/DEBUG(124):     6961763c 900cf8dd dbcf45cb b0312000 8ff0e8bd 
04-16 22:57:48.682: I/DEBUG(124):     6961764c 47ffe92d 681b461e 46044690 1c9a460f 
04-16 22:57:48.682: I/DEBUG(124):     6961765c 2022f850 6850b112 d0284580 f04f3316 
04-16 22:57:48.682: I/DEBUG(124):     6961766c f10d0900 f8540a0f e00f5023 0600e88d 
04-16 22:57:48.682: I/DEBUG(124):     6961767c 46394620 4633686a ff9df7ff 4620b128 
04-16 22:57:48.682: I/DEBUG(124):     6961768c 686a4639 f7ff4643 682dff5b d1ed2d00 
04-16 22:57:48.682: I/DEBUG(124):     6961769c 20086839 f97bf72e 8004f8c0 1c8b6831 
04-16 22:57:48.682: I/DEBUG(124):     696176ac 2023f854 68316002 f8441c8b e8bd0023 
04-16 22:57:48.682: I/DEBUG(124): memory map around fault addr 5469613a:
04-16 22:57:48.682: I/DEBUG(124):     421e5000-427c3000 /dev/ashmem/dalvik-heap (deleted)
04-16 22:57:48.682: I/DEBUG(124):     427c3000-59a9f000 /dev/ashmem/dalvik-heap (deleted)
04-16 22:57:48.682: I/DEBUG(124):     59a9f000-61a9f000 /dev/ashmem/dalvik-mark-stack (deleted)
04-16 22:57:48.802: I/BootReceiver(484): Copying /data/tombstones/tombstone_07 to DropBox (SYSTEM_TOMBSTONE)
04-16 22:57:48.822: W/InputDispatcher(484): channel '42cf4068 paulscode.android.mupen64plusae/paulscode.android.mupen64plusae.MenuActivity (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
04-16 22:57:48.822: E/InputDispatcher(484): channel '42cf4068 paulscode.android.mupen64plusae/paulscode.android.mupen64plusae.MenuActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
04-16 22:57:48.822: W/InputDispatcher(484): channel '425b1d48 paulscode.android.mupen64plusae/paulscode.android.mupen64plusae.PlayMenuActivity (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
04-16 22:57:48.822: E/InputDispatcher(484): channel '425b1d48 paulscode.android.mupen64plusae/paulscode.android.mupen64plusae.PlayMenuActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
04-16 22:57:48.822: W/InputDispatcher(484): channel '42b25330 Toast (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
04-16 22:57:48.822: E/InputDispatcher(484): channel '42b25330 Toast (server)' ~ Channel is unrecoverably broken and will be disposed!
04-16 22:57:48.822: W/InputDispatcher(484): channel '42bee600 paulscode.android.mupen64plusae/paulscode.android.mupen64plusae.GameActivity (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
04-16 22:57:48.822: E/InputDispatcher(484): channel '42bee600 paulscode.android.mupen64plusae/paulscode.android.mupen64plusae.GameActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
04-16 22:57:48.892: D/Zygote(126): Process 26425 terminated by signal (11)
[/code]
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #55 on: April 17, 2013, 09:27:28 AM »
Segfault is occurring in init_combiner(.) in combiner.cpp, on line 292.  This is the first line where glCompileShader is called.  If I put a return statement right before this line, I can successfully launch the emulator (though I get a black screen of course).  If I put a return statement right after this line, I get the segfault.  Hope this helps...

Edit: When I comment out this line, the emulator successfully launches and the video appears to be fine.  Getting full 30 FPS in mario on my nexus 7.
« Last Edit: April 17, 2013, 09:31:33 AM by littleguy »
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3496
  • Developer
    • View Profile
    • PaulsCode.Com
Re: Glide GL ES 2.0 Port (WIP)
« Reply #56 on: April 17, 2013, 10:15:07 AM »
This might fix the issue Paul was having with the depth buffer, possibly.
I haven't heard back about whether it worked when when I first disabled CoreVideo_SetCaption.

Sorry, I didn't realize that commit was related to the depth buffer problem (thought it was just to address the black screen behavior).  I just built the latest commit on Metricity/glide branch, and it still has the problem.  I haven't had much free time to run diagnostics to see whether it is just not picking a config with a depth buffer or what (been busy with a couple of contracts when I'm not at work).
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline Kris

  • Developer
  • int
  • *****
  • Posts: 91
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #57 on: April 17, 2013, 10:29:53 AM »
Segfault is occurring in init_combiner(.) in combiner.cpp, on line 292.  This is the first line where glCompileShader is called.  If I put a return statement right before this line, I can successfully launch the emulator (though I get a black screen of course).  If I put a return statement right after this line, I get the segfault.  Hope this helps...

Edit: When I comment out this line, the emulator successfully launches and the video appears to be fine.  Getting full 30 FPS in mario on my nexus 7.
I thought I remembered an un-merged commit from the pc version with this removed but couldn't find it when I had a quick look. That shader writing to fragdepth needs an extension in ES although it should just fail to compile it shouldn't crash.
« Last Edit: April 17, 2013, 10:31:27 AM by Kris »

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #58 on: April 17, 2013, 10:43:32 AM »
That shader writing to fragdepth needs an extension in ES although it should just fail to compile it shouldn't crash.
I know practically nothing about shader programs, but a quick scan of the internet suggests the same... the driver should fail gracefully -- a total crash indicates a poorly written driver.

I looked through the original mupen history of this plugin, and then to gonitz's history even farther upstream.  This chunk of code hasn't changed since the start gonitz's repository in march 2009.  More evidence to suggest a driver bug.
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline Kris

  • Developer
  • int
  • *****
  • Posts: 91
    • View Profile
Re: Glide GL ES 2.0 Port (WIP)
« Reply #59 on: April 17, 2013, 11:29:56 AM »
I couldn't find any device that supports the extension anyway. I guess it will need to be disabled for ES although I haven't found out which games use it yet either.

I must have misremembered that there was a change removing set_depth_shader...

Yep it does sound like a driver bug.