Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
I'm not sure you will actually get anywhere with it anyway in reality as I did a clean install of Xcode 7.2 on another mac here to be safe and exported the bird example ipa and it still crashed with bitcode enabled on export. Must be a specific bug to TV given hgy29 tried the same thing with iphone and it worked. That will take some finding with no useful crash logs :P
Have you tried deleting the contents of the assets folder in the xcode project and seeing if it starts up as a player when exported - that way we will know if it's a problem before a specific point.
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
Finally sending that down as a bitcoded development ipa to the TV via devices - WORKS!
Conclusion: the only thing I removed was the sprites part of the bird demo and .pngs - strange, as it breaks with those in. I will test that again just to be 100% sure!!!
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
If I run the code to the Apple TV direct from xcode I now even see this error in the output log window with no lua code or asset encryption so something is deffo going on.
Crazy that I can run directly from Xcode WITH Lua code and asset encryption - meh?
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
Full export of your game with encryption turned off. Not just assets only.
I think there may be a bug (with ios export) with the full export being the same as the assets export regarding encryption. Eg if you originally exported with encryption then when you export assets then they also need to have encryption. If you export fill without encryption then the same applies.
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
I've not been able to test that on iOS as I don't have bitcode enabled gideros libs for iOS of course. It looks like hgy29 tried it and was OK but then I don't know if he exported his Lua code and assets for the test with encryption before his own test.
It 100% screws up encrypted stuff for tvOS tho of that I am now sure.
All my 3 tvOS apps are now working on TV hardware from exported bitcoded .ipa's. None are encrypted tho
Maybe the location where the key is copied into is the wrong place - maybe the bitcode has a signature by coincidence that make the thing that inserts the key insert in the wrong place?
OR
The byte data that you have in a bitcode program may be stored differently than in an Arm or x86 program.
Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!). https://deluxepixel.com
Turns out that bitcode stores data bitwise (not bytewise), but gideros only perform bytewise replacements. For this to bitcoded encryption we need to make gdrexport replace key pattern bitwise...
Here it is. You have to place it into your Gideros Studio package, Tools subdirectory. Make a backup of the existing file in case it doesn't work, because I didn't have time to check myself.
Hope it works.
EDIT: Just tried, pattern matching works but replacement doesn't. Don't bother trying then...
Comments
Likes: MobAmuse
https://deluxepixel.com
Likes: MobAmuse
https://deluxepixel.com
Results are as follows...
Removing assets folder makes TV player .ipa work with bitcode on!
Removing Luafiles.txt but leaving assets folder results in it working .ipa with white screen but NO crash.
Sending Lua code down from Gideros to what is now a working bitcoded TV player .ipa = everything works regards that at least.
I see this warning a fair bit on the xcode output log just doing that when I send it down to the now working bit coded tvOS player tho...
'GL Program log:WARNING: Could not find vertex shader attribute 'vVertex' to match BindAttributeLocation request.'
Conclusion: the only thing I removed was the sprites part of the bird demo and .pngs - strange, as it breaks with those in. I will test that again just to be 100% sure!!!
Jumping Balls 2 demo (original) when not bitcoded and sent to TV = works
Jumping Balls 2 demo (original) when bitcoded and sent to TV = White screen only but no crash.
But then nop out the bit that adds them as a bitmap, eg Bitmap.new( and the bit that makes them a child of the screen eg. scene:addChild(
If that works then bring back the Bitmap.new( and see if that also works...
Likes: MobAmuse
https://deluxepixel.com
Likes: MobAmuse
https://deluxepixel.com
Putting the sprites back in the bird demo and turning off code and assets encryption WORKS!
I will try which encryption next is affected when output bitcoded as a final test.
I imagine my original app will now work if I export it without any encryption into Xcode before I archive and bitcode it. Just going to find out :P
Crazy that I can run directly from Xcode WITH Lua code and asset encryption - meh?
Mind blown.
Can you test loading the png bitmaps eg Texture.new(
But then nop out the bit that adds them as a bitmap, eg Bitmap.new( and the bit that makes them a child of the screen eg. scene:addChild(
If that works then bring back the Bitmap.new( and see if that also works...
Likes: MobAmuse
https://deluxepixel.com
Likes: MobAmuse
https://deluxepixel.com
Full export of your game with encryption turned off. Not just assets only.
I think there may be a bug (with ios export) with the full export being the same as the assets export regarding encryption. Eg if you originally exported with encryption then when you export assets then they also need to have encryption. If you export fill without encryption then the same applies.
https://deluxepixel.com
New conclusion then: Gideros encryption breaks it on tvOS.
If yes, then is it bitcode stuff messing up encryption, when removing debug stuff from binaries or something like that?
It 100% screws up encrypted stuff for tvOS tho of that I am now sure.
All my 3 tvOS apps are now working on TV hardware from exported bitcoded .ipa's. None are encrypted tho
OR
The byte data that you have in a bitcode program may be stored differently than in an Arm or x86 program.
Likes: MobAmuse
https://deluxepixel.com
Likes: MobAmuse, SinisterSoft
Likes: MobAmuse
Hope it works.
EDIT: Just tried, pattern matching works but replacement doesn't. Don't bother trying then...
Likes: MobAmuse
I won't try then in that case.