FREM Sprite32! in Early Access
Hi!
I've been working on a simulator/sandbox/programming/retro-computer-y thing the past handful of months, and wanted to share it with the world! Right now, you can play around with the Sandbox and learn all about the language that powers the machine: FREMScript. The language is a high-level interpreted programming language, designed to be easy to learn, and to feel like a language that might have appeared sometime during the 1980s home computer era. Likewise, the Sprite32! system (that exclamation point really complicates sentences) was created to capture the feel of machines like the C64, Apple II, and other popular machines from that time period.
Current Features
- Write programs using the high-level FREMScript interpreted programming language
- Read the in-game manual to learn the language, discover system settings, and copy code examples to run in the editor.
- Display text and get keyboard input from the user as the program runs.
- Get feedback in the status window for current system state, including program errors and highlighting.
- Play with sprites, pixels, the color grid, and 3-channel waveform audio generation.
- Save and load files, even swap out the default boot program with your own!
- Download additional FREMScript examples using the GitHub repository.
What's Next?
- Scenarios: Go deeper into FREMScript with challenges and goals
- More Documentation and examples
- General improvements and UI polish
Roadmap/Timeline
In the immediate term, the main focus will be to address any reported bugs or issues. This is the first game I've released to other than a handful of friends, so I have to get a feel for what that's like. Drop some feedback in the comments or hit me up at the email provided on the game launcher.
I'm in the early stages of adding some kind of story elements, which I'm tentatively calling "Scenarios". I like the feel of the sandbox environment, as that's what I'm usually looking for in other programming games. This is why I've chosen to release the game in its current state, as the sandbox works pretty well and is generally feature complete. That being said, there's not much else there for anyone looking to be engaged with specific tasks to complete. I don't have any objectives, win conditions, etc. It's just a sandbox for you to do things with FREMScript. I have a bunch of rough storyboard ideas that I came up with in the preliminary inspiration stages, and there are several unfinished examples in the GitHub repo that derive from those. The plan is to take some of these ideas and turn them into scenarios for the player to complete. I'm not exactly sure where I'll land with those, but before calling this game "finished", the intention is to add some gameplay elements.
I guess that's about it for now.
Thanks for reading!
-- John
Negative(-11) Games Division
Files
Get FREM Sprite32! Programming Sandbox
FREM Sprite32! Programming Sandbox
Play, learn, and experiment with programming in a retro computing sandbox environment
Status | Released |
Author | Negative(-11) Games Division |
Genre | Educational, Simulation |
Tags | Casual, programming, Retro, Sandbox |
Languages | English |
More posts
- Celebrating 2nd Anniversary with Official Soundtrack & Lower Price!57 days ago
- Update 1.0.4.0 - Introducing Mouse SupportNov 04, 2022
- Making some optimizations to the Sprite & Grid LayersOct 28, 2022
- Additional Resolution and Window Sizing OptionsOct 22, 2022
- Version 1.0.1.1 addresses bug with Pixel Layer renderingOct 20, 2022
- Development Wrapped - Steam Release Live!Oct 17, 2022
- Just a few more days!Oct 16, 2022
- New Beta Build - Soundtrack Added!Oct 01, 2022
- FREM Sprite32! Beta release + Mac buildSep 29, 2022
- Leaving Early Access!Sep 14, 2022
Comments
Log in with itch.io to leave a comment.
This is very cool, great work! Are there any plans to make the files/programs you make exportable as binaries?
Thanks for checking it out! Exportable binaries is an interesting idea. Right now, FREMScript is tokenized, parsed, and evaluated on the fly using the underlying Godot game engine and its native GDScript language. So, in that sense, the machine code is really just a bunch of GDScript objects. I suppose if we think of the Sprite32! as a Virtual Machine for FREMScript, then to support exporting complete projects, there would need to be some low level "bytecode" representation, possibly serialized exports of the GDScript objects that could be deserialized and run by any Sprite32! system later. I like this approach, and early builds had the notion of ROM cartridges that could be loaded from files. Those early versions were just FREMScript saved to a file with .rom extension, and since this wasn't unique to other files saved with .frem extension, I ultimately simplified it down to just the latter file format.
Another approach, and possibly the one you may be thinking, would to be support complete executables that could be run standalone from the game itself, probably everything presented in the screen area. That approach is likely out of scope for this project, but I think it could be done by generating the equivalent GDScript code from a FREMScript program and putting that through the Godot build tools to generate a full executable.
A third idea comes to mind as I write this response and is a mix of the two previous ideas: a FREMScript runner VM application that is just the screen and input support, with all the extraneous game elements removed. Exported "bytecode" could be loaded into that virtual machine and run. The VM could open source/free and distributed with binaries that users of the Sprite32! write. I kind of like this idea, and thematically it fits into the FREM corporation's roadmap of releasing a consumer game console system based on a stripped down version of the Sprite32! I could definitely see them presenting that at COMDEX '87.
I'll definitely add a sticky to the dev board and noodle this some more for future versions of the project. Thanks for the feedback!
Thanks for taking the time to respond and for sharing your ideas. The third one sounds great. I look forward to future releases from FREM corp and am excited to hear what may be announced at the coming COMDEX '87.
Oh and a Sprite32! game console is right up my alley would be an insta-buy for me :).
Cheers!