A MiniGolf game for Palm OS(ctrl-c.club) |
A MiniGolf game for Palm OS(ctrl-c.club) |
Back in 1996 she thought maybe she needed a hobby. She was a housewife and we didn’t have any children yet. She said maybe she could do a game. At the time I was working in Microsoft C++ and the Microsoft Foundation Classes framework, building Windows apps. She had never programmed a language more challenging than Turbo Pascal.
When she asked how long it would take to even get started, I estimated about 18 months to learn C++ properly, another six months to learn Microsoft foundation classes. The six months after that to learn the windows API if she worked really hard at it. At the time I thought maybe there was a place in the Windows game market for a mini golf game.
She took less than a week to create a working, bug-free prototype, but then lost interest.
I hate people like that! Everything takes forever for me to learn.
Luckily she blessed me with a passel of pretty much bug-free and absolutely hilarious children, so I’m giving her a pass.
This is pretty common, no? Same reason why everyone thinks AI will change development: people mistake the initial time cost of building an initial prototype for being representative of the total cost of making the thing people actually demand (which mostly never happens).
I’m usually the learn before I start type as well, though I find it doesn’t really work for me in practice. It ends up becoming a form of procrastination.
I know you didn't mean anything by it, and it was a pretty funny joke, but children with bugs are pretty cool as well :)
I've just recently been trying to recover my nearly 35 year old sources and create disk images for use on an emulator. The first B&W attempt at MiniGolf is here: https://github.com/EngineersNeedArt/SoftDorothy-UnfinishedTa...
The second attempt (when I was a better programmer) was in color ... will make it on Volume 2. (I'm currently trying to put that disk image together.)
The shareware and commercial games (Glider, etc.) are on disk images in other repos. (You should be able to find them easily if you care to.)
That B&W pixel art definitely was a defining feature of the era.
Have you considered adding a "ball dropping into the hole" animation? In the video, it looks like a new level is loaded as soon as the ball and the whole overlap to a sufficient degree. I think from a user's perspective, it would be much more satisfying to somehow see the ball go in. It would give you more of a sense of achievement before the next level is loaded.
What do you think?
I'm starting to wonder whether Palm OS and other "retro" homebrew executable formats might have their actual practical uses these days, beyond the nostalgia:
I can run Palm OS .prcs, .gb homebrew ROM from itch.io etc. on my desktop, iOS, and Android, as well as on physical gaming devices; offline, efficiently, distraction-free, without any chance of in-app purchases...
Take Apotris, for example: I've bought (and probably will buy) a lot of official Tetris versions over the years, but here's an incredibly slick implementation I can play on all of my consoles, or even on any computer without installation (thanks to WASM-based GBA emulators like RetroArch Web and modern browsers having native gamepad support).
Besides that, there's just something comforting with having a single, self-contained executable that I know I can in all likelihood run one, ten, twenty years from now – which is probably not true for many iOS or even web indie games I otherwise really like.
As a result, it was completely distraction-free: I'd queue up news/articles (via Plucker), mail, and books for the day, HotSync in the morning/evening, and then that was it – no chance of any notification (other than pre-programmed local reminders/appointments) popping up and disrupting whatever I was doing.
Other than that, there was still more than enough to do ~forever: More Ebooks on a 64 MB MMC than I could reasonably read all summer, the top 100? 1000? Wikipedia articles, the CIA World Factbook as a PalmDoc, Space Trader... Ok, enough with the nostalgia :)
(If this brought back a fond memory or two, head on over to https://cloudpilot-emu.github.io/ right now!)
Well, I thought I was a reasonable competent C++ programmer and I was shocked at how quickly my application would crash using this tool. It was an extremely humbling experience that really opened my eyes. I often think of how effective that simple tool was at revealing bugs, but it's obviously not something that works in today's multitasking, Internet-connected devices.
The other thing I remember is CodeWarrior being the first IDE I used that had a drop-down box with all the functions in the current source file. That was a pretty big step forward in productivity.
Incidentally, I was still using a Palm Tungsten as late as 2010, when I was in Japan. There was a very simple Japanese dictionary application for Palm. Once you learn the basic rules for stroke order and direction, you could mimic any character you see using the stylus and do a dictionary search for matching Kanji. I was able to figure out a lot of navigation just by mimicking unknown Kanji that I saw on signs.
I remember the “#pragma -“ to separate the functions. We don’t have this anymore. As an alternative we have “#pragma region” to fold blocks of code but it’s different.
On one hand I hated it, for its infuriating loading times compared to its predecessors (due to the hard drive spinning up for ~every unexpected memory access of an OS designed for having everything in RAM/ROM and literally no concept of file/block based memory at first) and its relative bulk.
On the other hand: Four! Gigabytes! That could hold more than two full movies! It was also my first Palm having Wi-Fi, which was nice.
All in all, to me it was a symbol of Palm quickly losing touch with modern developments: For example Symbian was miles ahead from an OS point of view, even though usability was nothing compared to Palm OS, and then there was the iPhone and Android, of course.
I wouldn't actually go back if I could, but part of me misses that.
I like my phone too much to go back, but if I had to, I could make do.
They're not! It's actually a great UX!
The level editor is a nice touch, I would be curious on the implementation as something in the same vein existed for the Tony Hawk series of games and was responsible for "Tony Hawks Pro StrCpy" https://icode4.coffee/?p=954 . Though jailbreaking and arbitrary code execution is probably a lot easier achieved via PalmOS than a minigolf side project.
IMO: I'd love a port (or otherwise inspired by) version for Android / iOS / in-browser. It's really fun.
Display something like the text "Nice!", and try to avoid covering the hole, so that the player can see the ball disappearing into the hole.
Wait just half a second before you show the loading dialog. You can probably skip the loading dialog entirely if it is as short as it looks like in the video.
Also, I think you meant a .prc.
Palm OS doesn't really have a concept of files; everything's a record-oriented database, containing either resources, including executable code, or data. Palm Desktop would just queue up every .prc or .pdb for copying during the next HotSync. (I've never tested it, but presumably renaming a .prc to .pdb and installing it would lead to it being backed up as a .prc.)
For some reason, Mobipocket (which was originally a Palm OS based ebook format) has landed on using .prc over .pdb for their books, which are definitely not executable, so every once in a while I stumble over a book with a .prc extension and it annoys me ever so slightly – it'll work, but that should be a .pdb :)
[1] https://cloudpilot-emu.github.io/app-preview/#/tab/sessions
Eh. No, just kidding, of course, it's just that project^W site has a huge Fabrice Bellard-factor to it. Very, very impressive.
adb install --bypass-low-target-sdk-block apk.apk
...albeit it still does not resolve the issue of whether or not the app will run on 14/15.I also have a stack of V-Tech Helio's, which is a PalmPilot clone. I don't remember why I ended up with 3 of them, but I got them to reflash the OS and never got around to it. Their whole OS source code is available online. The compiler is not easy to make to work these days though. DJGPP and I think 16bit.