
The Game Designer's Calculator - akkartik
https://dig1000holes.wordpress.com/2018/02/07/the-game-designers-calculator/
======
ryanianian
I really wish it went a bit further into _why_ a programmable RPN calculator
is better than an iPhone app or whatever.

Explain why RPN is so much better than infix. Explain why the simple,
distraction-free BASIC impl is so liberating for certain kinds of tasks.
Explain what kinds of tasks this little gizmo enables and why are these tasks
better on the gizmo than on a more "modern" alternative. Riff on the weeks of
battery-use, the lack of push notifications, the cool retro factor...any of
this to convey the coolness that is the gizmo.

Nice little one-off piece, but I'd love to see something similar with more
passion and explanation!

~~~
tobyjsullivan
The article links to this explanation of RPN and its benefits.
[https://www.swissmicros.com/what_is_rpn.php](https://www.swissmicros.com/what_is_rpn.php)

After reading, I discovered the macOS calculator supports RPN (Cmd+R) and it
is about as cool as described. Looks like the iPhone calculator does not but
I'm sure there are great apps.

~~~
Fwirt
The firmware for the DM42 is based on GPL'd software available for all major
operating systems (including iOS.)

[http://thomasokken.com/free42/](http://thomasokken.com/free42/)

------
zokier
I must say I can't see the connection to game design. Nevertheless, DM42 is
pretty damn nice looking thingy, so I'm not complaining too much finding it on
the front page. Too bad I don't really have any use for it to justify the
relatively steep (if understandable) price tag.

~~~
spartanatreyu
I'm pretty sure it's meant for tabletop games, as in a DM/GM would use this in
their roleplaying game they're running in a campaign they've designed.

~~~
camtarn
Still seems pretty tenuous. If you're designing a tabletop game, you're
probably not rolling dice during the design phase.

~~~
cableshaft
As someone who just designed a tabletop dice game...I totally rolled a bunch
of dice. Distribution charts are good for a sanity and balance check, but
rolling the dice gives you more of a feel for the game, what you can expect to
get with any given roll, and give you a feel for how to manipulate the dice
(physically), see how fiddly it can be, how much time it takes for turns, etc.

But you can't replicate that bit with a computer program too well.

~~~
camtarn
Ah. Different use of designing a game - I was thinking more like a D&D
campaign. I suppose it shows my affiliation: tabletop RPGs instead of board
games ;) I can certainly see how that would be useful for your case.

------
taneq
I have an HP 48G in my desk drawer. Back in highschool I spent months playing
with it obsessively, writing games and 3D graphing programs and whatnot.
Haven't touched it since then, although I'm still fond of it in some
theoretical sense. They're a great "pocket computer" for when you don't have
access to a "real" computer (ie. one with a programming environment) but I
don't think they're actually useful unless you're in some engineering
profession where you regularly use complex formulae in the field.

~~~
tzs
I have a 48SX. I never seriously got into programming it, but I did do one
program that I was inordinately pleased with.

I wanted a calendar, and found one online but it was very slow. It was written
entirely in the User RPL. So I wrote my own, also entirely in RPL, but managed
to get it fast enough that there was no perceptual difference between its
speed and the speed of assembly language calendars.

I got the speed by managing to do almost all of the formatting, which was the
slow part, using User RPL string functions, which were all internally
implemented as highly optimized assembly.

I'd start with these two strings (spaces replaced with _ for clarity):

days = "__1__2__3 ... _29_30_31"

pad = "_____________________" (that's 21 spaces)

Then I'd calculate

s = number of days month is shorter than 31 days, and

d = day of week of 1st day of month (Sunday == 0, Monday == 1, ...).

Shorten the days string by 3 * s, and prepend 3 * d spaces on front of days
(which can be obtained by taking an appropriate substring of the pad string).
Finally, append the pad string to days.

Display a header line:

"_Su_Mo_Tu_We_Th_Fr_Sa"

Now take the first 21 characters of days and display them on the next line
under the header, then the next 21 characters on the next line, and so on for
5 lines, and that's your calendar.

This could probably be improved a bit by starting with a days string that has
18 spaces in front and 12 spaces at the end. Then you just have to possibly
replace some numbers with spaces if the month is shorter than 31 days, and
then use the day of the 1st to choose where you start taking the 21 character
substrings from.

~~~
taneq
There's a much under-rated rush that comes with your first real optimisation
job. Mine was with a program to simplify square roots into surds - we'd had
the lesson on them in year 10, then been given a sheet of about 100 different
square roots to simplify. It was repetitive grunt work and so I wrote a
program to do it. The first version worked, but was too slow (it simply tried
number from 0 to N/2, checked if it was square, then checked if it was
divisible) so I did the obvious thing and instead only checked square numbers,
taking it from O(N) to O(SQRT(N)). Simple enough but it made me happy. :)

------
profsnuggles
Why is it impossible to find a small advanced calculator? I use an hp-35s now
but I hate it. I want a calculator with rpn, programmability and an equation
solver that is pocket sized. I understand rpn is niche, but relaxing that
restriction still only finds you huge graphing calculators.

SwissMicros has a range of credit card sized calculators that are so close to
what I want. However they are running hp firmware in emulation and I don't
believe that any of the firmware they are using have an equation solver.

We have the technology now to make an advanced pocket sized calculator I'm
sure. Why does no one want to release one? The calculator enthusiast community
seems content with just emulating 30 year old calculators and everyone else is
just selling calculators for people that need to take standardized tests.

------
aidenn0
Since it took me forever to find this info on swissmicro's page, this is for
all the portrait calculators:

DMXXL: Same size and features as HPXXC

DMXX: Credit-card sized HPXXC (but full sized display)

They all appear to take cr2032 batteries.

The 42 can run off of USB power (and will clock higher when doing so). It is
unclear if the portrait calculators will as well.

------
zeveb
Oh that looks awesome! I've got a real soft spot in my heart for old HP RPN
calculators — they're the only way to do figures!

------
kelchm
Why this over something like the HP Prime?

------
kyleperik
The site's wrapping on mobile is cancer

~~~
stevehb
You're being downvoted, but it is pretty bad. Looks like they set word breaks
to 'break-all' for those low-width media queries.

