Prism-384
A downloadable virtual computer for Windows, macOS, and Linux
What is Prism?
The Prism-384 is a fantasy computer with a 80s/90s style memory mapped graphic system based around the JavaScript programming language.
Why?
The intent of the Prism project was twofold:
- Provide a computer programming learning environment stripped back from modern complications - it is intentionally limited in many ways, mimicking the sort of limitations developers had to work around in the 80s and.90s
- Use an industry standard language, so to provide a valuable educational learning environment which is directly applicable to the real world - someone who's mastered JavaScript within Prism can easily move on to using frameworks such as Node.js or JavaScript on the web
Welcome
Congratulations on your purchase of the Grapefruitopia Industries Prism-384 Home Computer System
Technical Specs
- High resolution widescreen 384x216 pixel display, able to display 5376 different colours.
- Display 512 sprites with advanced alpha blending technology.
- 60fps flicker free screen updates.
- Tile based display system - each 8x8 pixel cell can display a blend of 3 different colours, with one of 16 brighness levels, mapped from the 512x512 pixel (4096 tile) buffer.
- Programmable FM Synthesis audio.
- Mouse, keyboard and gamepad support.
- Create your own computer applications and video games using the industry standard JavaScript programming language.
- Visual Studio Code integration for code editing and debugging.
- Specifications subject to change in later revisions.
What do you get
- A JavaScript console that lets you run JavaScript statements.
- A rudimentary Paint program that demonstrates how the colour attributes work.
- Assorted mostly undocumented examples.
- Online Documentation for the API
- A big discount on the final version
Still to do
- A gui frontend to complement the JS console.
- Improve the Paint program - create sprite and tileset definitions and a game map editor.
- Built in editor (currently everything needs to be edited in an External editor, such as VS Code.)
- Improve VS Code integration - the debugger isn't currently working fully on all platforms, but that should be resolved with a future release of the plugin
- Finish the audio system ( you can build FM Synth voices, and simple music patterns, but it's all still very manual, and driven by JS code)
- Improve documentation, and write some tutorials
- Lots more examples.
- Ability to create standalone packages that can be distributed.
- Helper tools, such as an image colour converter to allow importing graphics into the correct colour modes.
- ..and lots more!
Please note
This is currently pre-alpha level software, so there's no guarantees that it'll actually work yet! Lots of things are still to be done, and lots of things will change regularly until everything stabilises. Also, there's next to no documentation as of yet, other than what is on this page!
First steps
Take a look in the fs\ folder - this contains the computer's virtual filesystem. .js files are executable - type:
run("filename")
to run the javascript file "filename.js"
You can type "IO.cat()" to get a directory listing.
Here's a few things to try
run("Tools:paint") run("Demo:mandlebrot") run("Demo:bounce") run("Demo:waveform")
Further Documentation
Further documentation (including documentation of the Prism JavaScript API can be found In the Wiki)
Supported Platforms
You can currently download and run Prism on a Windows based computer (only Win10 has been tested).
Linux and Mac are supported too (the Linux package contains both x86 and x64 compatibility)
Raspberry Pi support is very nearly ready for release too - currently only tested on a 3b
Status | In development |
Category | Tool |
Platforms | Windows, macOS, Linux |
Rating | Rated 5.0 out of 5 stars (2 total ratings) |
Author | Grapefruitopia Industries |
Made with | Paint.net, SDL |
Tags | 8-Bit, DRM Free, fantasy-console, javascript, linux, mac, Pixel Art, raspberry-pi |
Average session | About an hour |
Languages | English |
Inputs | Keyboard, Mouse, Gamepad (any) |
Links | Wiki Documentation |
Purchase
In order to download this virtual computer you must purchase it at or above the minimum price of $5 USD. You will get access to the following files:
Development log
- Android support coming soon (hopefully!)Oct 14, 2020
- Build 2944 - Raspberry Pi and VS Code DebuggingJul 31, 2019
- Build 2608 - Small updates and SUMMER SALE!!Jun 25, 2019
- Build 2352 - Linux builds, and many improvementsFeb 24, 2019
- html5 demo now liveAug 24, 2018
- Build 1750 - Hello MacOS!Jul 14, 2018
- A little pixel paintingMay 21, 2018
- Build 1505 - Lots of audio improvementsMay 13, 2018