Welcome to the Nethack-Palm porting project homepage!

The Nethack-Palm porting project is an effort to port the classic game Nethack to the Palm platform. Currently, the goal is to support devices with an ARM processor (Palm OS 5.x devices), since doing so avoids many of the issues that plagued this project in the past.

People looking for a similar game available now to play on their Palm devices should check-out the Roguelike-Palm homepage.

There is a mailing list for developers and other parties interested in this project. To join, click the link below:

Click here to join nethack-palm
Click to join nethack-palm


July 21st, 2005

All but 6 of the platform-dependant function stubs have been implemented, and stubs have been created for the UI code. Once I implement these, along with some quick and dirty implementations of some of the UI functions, I'll share my code. Basically I want to get it to the point where NetHack does something, even if it's just drawing the first level before crashing.

I don't have any estimates as to when this will be done, but now feel like it's no longer an impossible amount of work to get from here to there.

July 5th, 2005

For the first time, I've gotten the NetHack code to link! Mind you, this was done by creating stubs for a number of missing functions, and it completely omits the UI code, but it is still a big step.

The next step is creating stubs for the UI code (as described in the NetHack 3.4.3 source under doc/window.doc), and slowly filling these stubs with real code

Speaking of the UI, my plan is to use the traditional ASCII interface instead of tiles, but use Palm OS dialogs for stuff like naming objects, prompting the user, etc.

I'll be updating this site slowly with more current, relevant information. For now, I've moved the older stuff into a seperate directory, and taken-down some obsolete links. No more fake screenshots or long-term design plans until the project is in later stages of development.

June 23rd, 2005

I've decided to attempt to revive this project again. When I started it, I quickly realized that I was a level 3 Tourist trying to defeat a Balrog, so I passed the project into the hands of someone with more levels in a more useful class (Chris Mennie).

Since that time, developments in the Palm OS world have made the possibility of a Palm OS NetHack port much more feasible from a technical standpoint. I've also gained a few more levels in Tourist since then, as well. :-)

For now, development efforts will be aimed at newer devices based on Palm OS 5.

Karl Garrison

February 22nd, 2003

Suddenly, a bolt of lightning strikes you!
You fry to a crisp.

Do you want your possessions identified? [ynq] (n) y

a - a +1 gcc cross-compiler (weapon in hand)
b - a lot of free time (alternate weapon; not wielded)
c - a cursed +1 PalmOS emulator
d - a cursed -5 PalmOS 32k segment size limit
e - lots of cursed +3 Cokes
f - an uncursed source of Nethack
g - a SourceForge CVS archive

Do you want to see your attributes? [ynq] (n) y

Final Attributes:

You were fervently aligned.
You were extremely unlucky.
Kos was very angry with you.
You are dead.

Do you want to see your conduct? [ynq] (n) y

Voluntary challenges:

You went without food.
You were a pacifist.
You never genocided any monsters.
You never polymorphed an object.
You never linked.
You used no wishes.

                      /          \
                     /    REST    \
                    /      IN      \
                   /     PEACE      \
                  /                  \
                  |   nethack-palm   |
                  |       0 Au       |
                  |  killed by the   |
                  |   wrath of Kos   |
                  |                  |
                  |                  |
                  |       2003       |
                 *|     *  *  *      | *

Goodbye nethack-palm the Rogue...

You died in The Dungeons of Doom on dungeon level 9 with 21361 points,
and 0 pieces of gold, after far too many moves.
You were level 10 with a maximum of 68 hit points when you died.


I haven't worked on this project much in quite some time, so I thought I'd at least get around to saying so. I appreciate all the interest in the project and wish I could've completed it. Unfortunately with my doing a graduate degree, and the limitations of the Palm OS being too severe to work with without rewriting Nethack entirely (IMHO), I can't see this project being completed anytime soon. I think it'd be a worthy goal to rewrite Nethack, but I won't be taking it on. If anyone wishes to see the state of the project, then please take a look at the CVS archive and the postings on the mailing list.

January 20th, 2001

Sorry for the lack of updates in the last several months. The project is still alive, and is gaining momentum again! Chris Mennie is the new maintainer, and the project is now focusing on the current 3.3.1 version of Nethack. The site docs will be updated when more of the details are hammered-out.

August 24, 2000

For those of you who are interested, here's a first crack at the 3.3.0 code. It's messy and doesn't run, but it least compiles and might give you an idea as to where we need to go. Anyways, check it out here

May 30, 2000

The Nethack-Palm Porting Project homepage is now at it's new home on SourceForge, which provides web hosting and numerous other services for free software projects.

SourceForge also provides shell accounts to developers, and I have used mine to compile and install PRC-tools 2.0 for potential developers who want to participate but don't have access to a system that can run this toolchain.

May 12, 2000

A project info page has been added which gives more details on the project goals, interface considerations, etc. Please take a look and let me know what you think. There's more to come in this section as well.

This page also has a link to the Nethack 3.0.10 source tree converted to HTML and fully cross-referenced. This makes wading through the code much easier at times.

May 1, 2000

A new application skeleton with icons, menus and approximate layout of controls is now available. The screenshot at the top of the page was taken from that. Note that this doesn't contain any Nethack code; it merely gives an idea how it will look when it's done. The gameboard was copied from a screenshot of Nethack being played on an NT Command Prompt with a 4x6 font, resized to fit a Palm screen. The result is a 21 row by 40 column wide screen, which shows 1/2 of a given level at a time. This still leaves plenty of room for The status bar and game messages as well.

April 28, 2000

A new code snapshot and a patch to the original sources are now available.

All of the platform-independant sources now compile, and I have implemented palmunix.c as well as part of palm.c as well. In addition, I have added/fixed many declarations in palmconf.h, and added a good amount of documentation on what still needs to be done to the palm directory.

Note that although all of the main Nethack sources compile, many still need reworking. See the current todo list for details.

April 25, 2000

The project is coming along nicely so far: currently, all but one of the source files builds, and one of the palm-specific files has been written. That still leaves 3 other palm-specific files to be written, along with the user interface and debugging as well, all of which will be a lot of work.

I plan to release another code snapshot soon which will give more details on what still needs to be done in the TODO file.

April 17, 2000

There is a new FAQ available. Please let me know if you have any questions that are not answered here.

April 16, 2000

We have decided to switch the porting effort to using the 3.0.10 codebase due to the fact that it's about 1/3 of the size. We want the end-result to be something that will fit on 2 MB Palms with room to spare, and most of the Palms out there today are 2 MB.

Porting 3.3.0 to the Palm is still a worthy goal, and by porting 3.0.10, most of the groundwork will already be in place for a later 3.3.0 port.

Here is the latest code snapshot based-on the 3.0.10 sources. Most of the sources compile here, with the exception of those that do file I/O. Palm-specific files (palmmain.c, etc.) have not yet been written. See Install.palm and TODO in the palm directory for details.

April 11, 2000

The first code snapshot has been released. This includes Makefiles and modified config files for use with PRC-tools 2.0. Currently, this will compile only some of the sources in the src directory. See the file sys/palm/Install.plm for details.

Current snapshot (obsolete -- no longer available)

Patch for Nethack 3.3.0 source tree (obsolete -- no longer available)

This site is generously hosted by SourceForge.