As a BrightScript developer since 2012, I always wanted a way to test my code without the need of a Roku device, in situations like a long flight or a place without any wireless network available. Back in 2016 I decided to learn about the ifDraw2D API in order to develop games for the platform, so I created a few open source remakes of classic games (see links below on Games and Demos). These projects were very challenging and exciting to develop, but brought me some frustration with it, as very few people outside the USA has access to the Roku platform, so a lot of my friends could only see videos of my games, but never play those.
The solution would be to develop an emulator for the platform, but that was, to me, a very complex endeavor to start as a side project, so I shelved the idea in my Brain Dump Trello board, until recently, when I learned about the BRS open source project, a command line interpreter for BrightScript created by Sean Barag.
I could immediatly see, that this project was the missing piece to turn my emulator project a reality! I forked BRS and started collaborating,
sending pull requests to the project, so the interpreter could have the minimum set of components that would make possible for me to work upon it.
In the same weekend I could develop a working proof-of-concept using HTML5
and exploring all sort of options to overcome different challenges, I finally came up with this prototype that is available here.
You can also find above, a couple of commercial channels I created for Roku that are available at the Channel Store.
In addition to this web application, I also developed a multi-platform desktop application (Windows, macOS & Linux) that uses the same library generated by this project, and has a lot of additional functionalities, including full screen mode and integration with VS Code Extension for debugging. The desktop app can be dowloaded from the project Release Page, the source code is also available at https://github.com/lvcabral/brs-emu-app.
To learn more about the project visit the repository at: https://github.com/lvcabral/brs-emu/
To download the Desktop Applications for Windows, macOS and Linux go to the releases page.
You can also clone the project with Git by running:
$ git clone git://github.com/lvcabral/brs-emu.git