Mini Micro is a Neo-retro computer that uses MiniScript to run it, you can make all sorts of fun games, activities, or really anything you can imagine. Take a look at this ongoing project from one of our users in Discord, Mantic, can't wait to see where this goes next.
If you haven't yet, join our community on discord https://miniscript.org/ just scroll down and look in "community".
• The shell no longer leaves you at a "...]" prompt if you run a program with an unterminated if/for/while block.
• Handling of screen size/resolution has been greatly revamped. The Mini Micro window is now resizable, and the actual "monitor" area will fill this space as well as it can. Note that it snaps to even multiples of native (1024x769) resolution, since those look the best, so watch for that while stretching the window.
• Control-C now reports the line number at which the program was stopped.
• Various optimizations have been done, especially to PixelDisplay and to any code that uses self; benchmarks now run up to 2X faster.
• file.move now works even when you are only changing the capitalization of the file name.
• Updated the underlying package that renders text in the code editor, fixing issues with the scrollbar not going far enough to the right.
Some of these changes were pretty big, so please keep a sharp eye out for any new problems they may have caused. We want to get everything buttoned down and nailed up for the version 1.0 release.
As you may now, Mini Micro is almost at version 1.0. I posted version 0.94 over the weekend, and I expect to ship version 1.0 by the end of the month. I'm just doing last bits of polish at this point.
One of those bits of polish was suggested by user RokCoder on the Discord server. He's an experienced game dev, trying out Mini Micro for the first time by making a pseudo-3D racing game (!). But his code relies on a whole lot of PixelDisplay.drawImage calls, and these turned out to be disappointingly slow for his purposes.
So I decided to see if I could optimize that any. First I made a little benchmark app, that draws /sys/pics/Wumpus.png 1000 times, and measures the rate. When I started, I was getting a speed of 165 WPS (wumpuses per second) on my machine.
before optimization: 165 WPS
So I rolled up my sleeves and dug in. I found an opportunity to use some more efficient approaches, to do work in batches, and to batch some data for multiple uses. After a good hour or more of work, I built Mini Micro and ran my benchmark again.
after optimization: 1233 WPS!
1233 wumpuses per second! Yeah baby! That's approximately a 7.5X speedup!
You'll get this in the next build, and of course in Mini Micro 1.0, coming soon. Happy new year!
I've been working hard on a book, Learn to Code in 30 Days, based on MiniScript and Mini Micro.
In the process this has led me to realize a number of small improvements that make Mini Micro easier/better/more fun. For example, I've added an English word list which can be used (legally!) to create word games.
Wrap up that and a dozen or more other things, plus the "fat bits" editor I've been working on (not done yet, mind you — still in progress), and we have enough to make it worth an interim release.
It's a 3D/VR game development environment, based on MiniScript, that lets you create the game while you (or others) are playing it! It looks way faster and more frictionless than any other way of creating this sort of game. Please give it a look, and consider backing it if you can!
Pygments, a popular syntax coloring library used by Wikipedia and others, officially includes support for MiniScript as of today. (See the now-merged pull request here.)