A downloadable virtual computer for Windows, macOS, and Linux
What is Prism?
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
Congratulations on your purchase of the Grapefruitopia Industries Prism-384 Home Computer System
- 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.
- Visual Studio Code integration for code editing and debugging.
- Specifications subject to change in later revisions.
What do you get
- 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!
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!
Take a look in the fs\ folder - this contains the computer's virtual filesystem. .js files are executable - type:
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")
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
|Platforms||Windows, macOS, Linux|
|Made with||Paint.net, SDL|
|Average session||About an hour|
|Inputs||Keyboard, Mouse, Gamepad (any)|
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:
- 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