- How to send assembly programs with TI-Connect for Chrome OS
- 06 Dec 2020 06:06:48 pm
- Last edited by commandblockguy on 16 Apr 2021 02:52:43 pm; edited 3 times in total
I was messing around with the TI-Connect Chrome app the other day while trying to figure out some quirks in the linking protocol. The app refuses to send protected programs, including most assembly programs, but I found a relatively simple way to make it not do that:
You'll have to do this each time you start the app - I haven't yet found a way to make it permanent, without unpacking and repacking the app. I tried making a Chrome extension to patch it, but apparently, because of Chrome's permission model, it's impossible for extensions to modify other extensions even with the user's permission. Even stuff like the debugging API seems to be really restricted when dealing with other extensions.
Also, I have zero clue how angular works - if anyone knows how to get the controller without getting a random element from the page, please let me know.
edit: thanks to _iPhoenix_ for golfing help, 0x5
- Open the TI Connect app
- Go to chrome://extensions
- In the Chrome apps section, find "TI Connect CE App for Chrome OS" and click "Details"
- Turn on the "Developer mode" toggle in the top right of the screen.
- Under "Inspect views", click "index.html" (The TI Connect app has to be currently running for this to appear)
- Switch to the Console tab
- Run the following code:
Code:
angular.element('#toolbar_add_from_comp').controller().fileTypes.PROTECTED_PROGRAM={name:"Protected Program",icon:"images/filetype_program.svg"}
- Send your program
- Send your program
You'll have to do this each time you start the app - I haven't yet found a way to make it permanent, without unpacking and repacking the app. I tried making a Chrome extension to patch it, but apparently, because of Chrome's permission model, it's impossible for extensions to modify other extensions even with the user's permission. Even stuff like the debugging API seems to be really restricted when dealing with other extensions.
Also, I have zero clue how angular works - if anyone knows how to get the controller without getting a random element from the page, please let me know.
edit: thanks to _iPhoenix_ for golfing help, 0x5