PicoCalc
A downloadable spreadsheet app for Windows, macOS, and Linux
Your Pico-8 just got down to business.
The full-featured, high-precision spreadsheet application for the Pico-8 that nobody asked for has finally arrived! PicoCalc is a feature-complete1 clone of the 1979 classic VisiCalc, which introduced the world to an entirely new category of business application. Steve Jobs said of VisiCalc, it's "what really drove -- propelled -- the Apple ][ to the success it achieved."
PicoCalc taps into the dormant power inside your Pico-8, allowing it to run circles around VisiCalc on an Apple ][2 :
- Faster calculations
- 18.18 integer/fractional precision vs. VisiCalc's 12.
Handles numbers as big as 999999999999999999.999999999999999999 - Granular error reporting!
Get informed of division by zero, number overflow, and more. - Color representation of active/inactive cursor, locked titles, truncated values, and error messages
- Full arrow-key support! (this joke only makes sense if you've ever used an Apple ][)
- (see the bottom of this page for a few usage notes)
PicoCalc runs locally on your registered copy of Pico-8 so you can store/load your work and uses your keyboard for data entry (no mouse required!) A perfect companion for a PocketCHIP.
A Full Spreadsheet in a File Smaller than the MS Excel Icon
Here at Picosoft we hate software bloat. That's why our team of highly trained software engineers3 worked hard for one year to compress everything you need in a spreadsheet application into a file smaller than the icon alone in major software products. At just 33Kb, PicoCalc respects your system to provide maximum productivity with minimal computing resources.
Uses the VisiCalc Training You Already Know4
In bringing the power of VisiCalc to the Pico-8, we knew it was important to let you leverage the VisiCalc muscle memory you've honed over the years. All keyboard commands, formula editing, mathematical functions are available for your visual calculation needs.
For information on how to use PicoCalc, simply consult the VisiCalc manual! VisiCalc manual available here!
System Requirements
- For Pico-8 users, v0.2.2 of Pico-8 or higher is required
- A keyboard
- If you wish to save your work, please have at least 30K free hard disk space!
About This Release
At the request of a kind soul, I have uploaded standalone executables of PicoCalc for those who do not own a copy of Pico-8. In revisiting this code after some time, I realize there are problems with it that I need to address. However, to do so will require a non-trivial refactoring of the codebase.
So for now I am uploading these executables as-is, with all known issues unresolved. (for now; I will add this project to my to-do list going forward)
- NPV function not implemented
- # and ! commands for value copying are not implemented (and can even crash PicoCalc, so please don't use them for now)
- Some split-window preferences aren't saved with your document
Usage Notes
There are a few small things to keep in mind when using PicoCalc in any non-trivial capacity.
- If you've never used VisiCalc, the usage of PicoCalc will be very difficult to understand. Please do look at the manual to get yourself started.
- Save/load of files occurs in the same location as your PicoCalc cartridge.
- Files are saved with the file extension .pcalc (but are really just .p8 files with a cute extension). Every save gets its own .pcalc file.
- When entering calculation ranges, for example with
@sum()
function, use..
to separate the start and end values as@sum(a1..a7)
(to get the sum of all cells from a1 to a7, inclusive) - 3 orange dots means that the value is longer than can be displayed in the cell. Make the cells wider to see more of the value. The full value, even if you cannot see it, will be used in calculations.
- Special function only available in PicoCalc:
@round(val,precision)
Just wrap any value or formula that evaluates to a single value with@round
and comma separate the decimal precision you want as@round(a7/b9,4)
will give 4 decimal precision for the division operation.
1 OK, let's say 99.5% complete; I ran out of tokens. @npv function not available. Some split-window prefs aren't saved. Still working to squeeze these in!
2 Based on really nothing but a gut feeling as I ran VisiCalc side-by-side with PicoCalc.
3 Team of one. And "highly trained?" Hmm... subjective! Mostly I just needed something to keep my mind occupied during pandemic lockdown.
4 Seriously! If you know VisiCalc (for some reason), you already know how to use PicoCalc. I intentionally tried to imitate the classic as closely as possible.
Status | Released |
Category | Tool |
Platforms | Windows, macOS, Linux |
Rating | Rated 5.0 out of 5 stars (3 total ratings) |
Author | Christopher Drum |
Made with | PICO-8 |
Tags | business, excel, PICO-8, productivity, spreadsheet, visicalc |
Average session | A few minutes |
Inputs | Keyboard |
Download
Install instructions
Pico-8 version requires a registered copy of Pico-8, v0.2.2 or higher.
Windows, Mac, Linux, and RPi versions are standalone and do not require a copy of Pico-8.
Development log
- PicoCalc Updated to 1.0.1Feb 28, 2021
Comments
Log in with itch.io to leave a comment.
This is impressive! PICO-8 is so great for creating that retro-computing experience. I'm having flashbacks to my early days as an accountant.
Thank you, I'm glad you enjoyed it and I apologize for any accountant-related PTSD it may have inflicted. I should put a warning screen at the start.
this is an interesting tool, but sadly i cant afford pico-8 right now, could there be an executable file for windows?
That's a reasonable request. In fact, I can't remember why I didn't post executables for other platforms before. I guess I didn't think anyone outside of the Pico-8 community would want it, but I'm happy to provide it. I'll have time over the coming weekend to do some builds and alert you when they're posted.
oh dont worry, i would love if u can do it, and sorry for bothering u with this, thanks you for the reply
any news about the exe version?
Sorry for the delay. I’ve been deep in preparing a major update v2.0 update for one of my other projects. That will be released in a day or so then I can build (and test) these exe files. I’ll post them this week for sure.
I have uploade exe files for four major platforms. I have also added a few notes under "About This Release" that I highly recommend you read. I hope the program is of value to you.
OMGosh ! I am so impressed ! If you would please post a version where a money amount is suggested that I may send you. Stellar work here.
Thanks for the kind words, I'm glad you like it. For me, money would only add stress to a hobby that helps keep me sane. I'm happy to share my learnings with the community :)
Well alright, Christopher, but all I can say is WOW ! This is the most amazing Pico-8 program I have ever seen. Yes I like games, but I also like the depths of data too, deep thinking, chess, and the like. Calculators make the best toys. This to me is absolutely EPIC and is now my #1 favorite Pico-8 cart of all time.
That's extraordinarily nice of you to say. Thank you very much!
You are more than welcome !
You’re a genius!
Very kind of you to say, thank you.
I love the idea for this program, however....on my 0.2.4b Pico-8, it seems to crash whenever I try to do a SUM formula, and gives me "overflow" when I use decimals. Any idea what might be causing this? It's doing it on both my Windows desktop and Raspberry Pi.
@comchia Hmm... I'm on Windows 10 and just installed Pico-8 0.2.4b. I put in 3 decimal values (1.123, 2.234, 3.345) into cells A1, A2, A3 and in A4 entered @sum(a1..a3) (note: two dots between cell labels, not three)
Next, I put in horizontal entries using very large decimal values: 1.123456789, 2.23456789, 3.3456789486 and ran a summation on those to properly receive 6.7037(etc...)
So far, it is working as expected for me. Could you please provide more detail about the values you entered and the summation formula you attempted?
I am able to make it crash using the # symbol (used for value copying, rather than formula copying). But this is unrelated to @sum or decimal values; it is a string parser error. I suspect this particular bug has existed for a while though :/