Skip to content

A simple, buildable Roku channel that executes arbitrary BrightScript files.

License

Notifications You must be signed in to change notification settings

sjbarag/brs-testbed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BRS Testbed

A simple Roku channel used to execute arbitrary BrightScript files.

Justification

This repo contains a Roku channel that shouldn't ever be published to the Roku store. That's pretty silly on the surface! In reality, this project exists purely to answer TODOs and other questions from the BRS project, which aims to build a BrightScript interpreter that runs on non-Roku platforms. A small test channel like this one helps to observe behaviors that are described ambiguously in the BrightScript documentation. After all, a BrightScript interpreter is only useful if it behaves the same way as the official interpreter 😄.

Hacking

Building

The channel builds with GNU Make, but that's just a wrapper around zip. Build with make, and remove compiled artifacts with make clean.

Adding Test Files

Test files are hosted in ./testfiles/, and should keep their code in a sub Main block. That's not strictly required, but it helps to isolate test files from each other.

NOTE: The list of files available to run is not generated automatically, so adding a new test file requires a modification to Main.xml to point to it. Simply add another <TestFile> element like the ones that already exist.

Installing

  1. Ensure your Roku has developer mode enabled. If you're not sure, go through Roku's Setup Guide again.
  2. Find your Roku's IP address from Settings > Network > About.
  3. Navigate to http://roku.ip.addr.ess in your browser and enter the username/password you set previously.
  4. Click "Upload", then "Install" or "Replace".
  5. The "BRS Testbed" channel will automatically launch (assuming there were no compile errors).

Debugging

Use telnet to connect to your Roku's IP address on port 8085 to see the output of any print commands in the testfiles files.

About

A simple, buildable Roku channel that executes arbitrary BrightScript files.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages