Mike Pall wrote: r10 holds the GCfuncC object pointer and loads r12 with the 'f' > pointer (to a function+TOC entry on PS3). So either the 'f' field > is NULL or maybe the object pointer is wrong. You could check that > the 'ffid' field is really 1 (FF_C). > r10 points to this data block: 100E81B8 10 0E 40 E0 01 08 00 00 10 0A 01 40 00 00 00 00 ..@........@.... 100E81C8 10 0E 41 20 00 00 00 00 00 00 00 00 00 00 00 00 So I guess that means that ffid=FF_LUA and f=NULL. Since you've gotten to that point, lua_call() must be working ok. > But lua_pcall() is only minimally different and jumps to the same > code path in the assembler part. > > What happens if you temporarily replace the lua_pcall() with a > lua_call()? Replacing it with lua_call() doesn't change anything. I still get a crash in exactly the same place. I don't have any call to lua_call() before this in my code. The first time I call either lua_call() or lua_pcall() in my code I get this crash. // Niklas