https://github.com/migueletto/PumpkinOS Skip to content Toggle navigation Sign in * Product + Actions Automate any workflow + Packages Host and manage packages + Security Find and fix vulnerabilities + Codespaces Instant dev environments + Copilot Write better code with AI + Code review Manage code changes + Issues Plan and track work + Discussions Collaborate outside of code Explore + All features + Documentation + GitHub Skills + Blog * Solutions For + Enterprise + Teams + Startups + Education By Solution + CI/CD & Automation + DevOps + DevSecOps Resources + Learning Pathways + White papers, Ebooks, Webinars + Customer Stories + Partners * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Pricing Search or jump to... Search code, repositories, users, issues, pull requests... Search [ ] Clear Search syntax tips Provide feedback We read every piece of feedback, and take your input very seriously. [ ] [ ] Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Name [ ] Query [ ] To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} migueletto / PumpkinOS Public * Notifications * Fork 5 * Star 192 * PumpkinOS is a re-implementation of PalmOS. License GPL-3.0 license 192 stars 5 forks Branches Tags Activity Star Notifications * Code * Issues 5 * Pull requests 0 * Discussions * Actions * Projects 0 * Security * Insights Additional navigation options * Code * Issues * Pull requests * Discussions * Actions * Projects * Security * Insights migueletto/PumpkinOS This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. master BranchesTags Go to file Code Folders and files Name Name Last commit message Last commit date Latest commit History 293 Commits lib lib lib32 lib32 licenses licenses screenshots screenshots script script src src vfs/app_card vfs/app_card .gitignore .gitignore LICENSE LICENSE README.md README.md pumpkin.bat pumpkin.bat pumpkin.sh pumpkin.sh pumpkin32.bat pumpkin32.bat pumpkin_rpi.sh pumpkin_rpi.sh View all files Repository files navigation * README * GPL-3.0 license PumpkinOS PumpkinOS is a re-implementation of PalmOS that runs on modern architectures (x86, ARM, etc). It is not your average PalmOS emulator (it does NOT require a PalmOS ROM), but it can run m68K PalmOS applications. For a series of articles describing various aspects of PumpkinOS, look here: https://pmig96.wordpress.com/category/palmos/. [pumpkin] Launcher is the first application that runs when PumpkinOS starts. It shows a panel from which you can start other applications. Preferences will eventually contain all preference options for configuring PumpkinOS. Command is a command shell, still experimental. This release contains the four PIM applications found on PalmOS: AddressBook, MemoPad, ToDoList and DateBook. The source code for these applications were distributed in one or more PalmOS SDks and were adapted for correct compilation on PumpkinOS. Records created by AddressBook and MemoPad should be compatible with their PalmOS counterparts. Because of differences in word size en endianness, however, records created by ToDoList and DateBook are not compatible. These applications were tested just to the point where I could create and edit a few records. There are still some quirks, and some functions were not tested at all. The goal here is just to offer a view of what to expect from PumpkinOS in the future. I am planing to setup a bug tracker to document enhancements and bugs. Licensing PumpkinOS is licensed under the GPL v3. The license directory contains information on specific licenses of the various components used in PumpkinOS. If you think something is missing and/or incorrect, please let me know. Building You have to build PumpkinOS from source. No IDE is required, you can build from the command line. If you use 64-bits Windows, you can use MSYS2 (https://www.msys2.org/). Download the installer and follow the instructions there. Open a MINGW64 terminal (the one with the blue 'M' icon) and install these additional packages: pacman -S gcc binutils make git Next clone the PumpkinOS repository: git clone https://github.com/migueletto/PumpkinOS.git Finally go to the source directory of the PumpkinOS repository you have just cloned and run the make script: cd PumpkinOS/src ./mk.sh Msys 64 If everything goes well, you will have a pumpkin.exe in the root directory, some DLLs in the bin directory, and some PRC files in the vfs/app_install directory. There is also experimental support for 32-bits Windows (Vista or later. It will not work on Windows XP). Open a MINGW32 terminal (the one with the gray 'M' icon) and install this additional package: pacman -S mingw-w64-i686-gcc From there, compile using (note that now argument is 32, for 32-bits): cd PumpkinOS/src ./mk.sh Msys 32 If you are using a 64-bits Linux-based OS (like Debian, Ubuntu, etc), you also need gcc, binutils, make and git. If you are a developer, there is a chance you already have those. If they are not installed, follow the instructions to download additional packages on your specific Linux distribution. You must also install the SDL2 development package (the package that contains the libraries and the headers). On a Debian distribution, it is probably something like: sudo apt install gcc binutils make git libsdl2-dev Again, you must clone the repository and compile it using: cd PumpkinOS/src ./mk.sh GNU/Linux 64 On Windows 11 and recent releases of Windows 10, it is also possible to build PumpkinOS on WSL (Windows Subsystem for Linux, version 2). Open a WSL terminal and follow the same instructions for a Linux build. Running On 64-bits Windows, run pumpkin.bat. On 32-bits Windows, run pumpkin32.bat. On Linux or WSL, run pumpkin.sh. PumpkinOS will open on a new window. On WSL you may need to run a X-Window Manager, otherwise the PumpkinOS window will not have a border. When you run PumpkinOS, all PRCs inside vfs/app_install will be removed and expanded into folders inside vfs/app_storage. Please keep in mind that everything is pretty much experimental at this stage, so expect a few issues here and there. After either a successful or an unsuccessful run, you will find a pumpkin.log file on the root directory. If something goes wrong, look for lines marked with an "E" on the third column of this file. You can reach me for questions (and send me your log file if you wish). The Windows version implements Drag & Drop functionality. You can drag a PalmOS PRC over the PumpkinOS window and hopefully it will be installed and show up in the Launcher. The Linux version lacks this functionality. For now, you have to manually copy PRCs to the vfs/ app_install directory and restart PumpkinOS. If you really want to, you can debug PumpkinOS with gdb on Windows, Linux and WSL. On Windows, edit pumpkin.bat and change the last line to (you should also add the Windows equivalent of the /usr/bin directory of your MSYS2 installation the the PATH): gdb.exe --args .\pumpkin.exe -d 1 -f pumpkin.log -s libscriptlua.dll script\pumpkin_windows.lua On Linux and WSL edit pumpkin.sh and change the last line to: gdb --args ./pumpkin -d 1 -f pumpkin.log -s libscriptlua.so ./script/pumpkin_linux.lua I am writing a full Wiki article on source level debuging PumpkinOS. About PumpkinOS is a re-implementation of PalmOS. Resources Readme License GPL-3.0 license Activity Stars 192 stars Watchers 7 watching Forks 5 forks Report repository Releases No releases published Packages 0 No packages published Contributors 2 * @migueletto migueletto * @classilla classilla Cameron Kaiser Languages * C 88.9% * POV-Ray SDL 8.5% * C++ 0.7% * Assembly 0.7% * HTML 0.5% * Yacc 0.4% * Other 0.3% Footer (c) 2024 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact * Manage cookies * Do not share my personal information You can't perform that action at this time.