Subscribe via RSS
25Mar/190

Setting up a Palm OS/Sony Clie Development Environment

Why would I do this in 2019? Because fun! I found this unit in Malaysia and wanted to try and control my BeoVision MX 7000 with it. Turns out that none of the software I tried wanted to work! Actually, even at first, I had trouble trying to install the applications. Everything wanted HotSync? Muhahaha... I remember those old days! The I found this forum thread where everyone is just like "duh, copy the files to the LAUNCHER folder"... and so, I did.. and so, well, the apps worked... but that was about it.

DSC07182 DSC07184 DSC07186

Of course, before even getting the MS to read, I needed to find a reader that would support it. There seems to be (at least) three types of MemoryStick and this thing uses the very first version. I tried my standard card-reader that I use constantly for my camera's SDHC card, but this wouldn't read the MS at all. Fortunately, there was an older reader (with CF slot!) in my box-o-junk that happily read the MS. Of course, it then didn't read the SDHC, so there was a lot of juggling to get data transfered.

DSC07199 DSC07196 DSC07189

So, the apps.. OmniRemote Pro was the closest to work. It supported learning and even supposedly 'recognised' my fake BeoVision remote. But no attempt to send the signal back to the TV worked.

DSC07201

DSC07202 DSC07205 DSC07207

At least I now knew how to run external programs... let's write one!?

Cygwin + PRC-Tools

GCC for Palm OS (or PRC Tools) is a self-contained compiler that sits on top of Cygwin. It even comes with source code examples. I've recorded the steps below to set up a functional development environment... the code even worked on the Sony!

Firstly, download Cygwin 32-bit Setup from here. 64-bit won't work! Once downloaded, run setup-x86.exe -X from the command line to allow unsigned packages. Choose a local mirror and then add http://prc-tools.sourceforge.net/install in the User area below. After adding, both mirrors will be selected... hit next. Search for prc and check the selections...

2019-03-25 21 40 14-Window

Make sure you then also choose to install make and pilrc. Hit next and let it all install. Whilst that's happening, go and download the Palm OS SDKs from here. Yes, you'll need to download the whole lot (Download as Zip from the root github folder), but it's not that big. Once downloaded, extract the contents to a new directory called c:\Cygwin\PalmDev.

If everything has been done correctly, then open the Cygwin Terminal and run palmdev-prep.exe.

$ palmdev-prep.exe
Checking SDKs in /PalmDev
  sdk-1         headers in 'include', no libraries
  sdk-2         headers in 'include', no libraries
  sdk-3.1       headers in 'include', no libraries
  sdk-3.5       headers in 'include', libraries in 'lib'
  sdk-4         headers in 'include', libraries in 'lib'
  sdk-5r3       headers in 'include', libraries in 'lib'
  sdk-5r4       headers in 'include', libraries in 'lib'

When GCC is given no -palmos options, SDK '5r4' will be used by default

Writing SDK details to configuration files...
...done

Yes, we got it installed!... Now grab the code from this link and try and compile it...

$ make
m68k-palmos-gcc -O2 -Wall -g -c -o helloworld.o helloworld.c
      3 [main] m68k-palmos-gcc (11268) C:\cygwin\bin\m68k-palmos-gcc.exe: *** fatal error in forked process - couldn't allocate heap, Win32 error 487, base 0xEF0000, top 0xF50000, reserve_size 389120, allocsize 393216, page_const 4096
    915 [main] m68k-palmos-gcc (11268) cygwin_exception::open_stackdumpfile: Dumping stack trace to m68k-palmos-gcc.exe.stackdump
      1 [main] m68k-palmos-gcc 1983 dofork: child -1 - forked process 11268 died unexpectedly, retry 0, exit code 0xC0000142, errno 11
m68k-palmos-gcc -O2 -Wall -g -o helloworld helloworld.o
pilrc -q -ro -o helloworld.ro helloworld.rcp
build-prc -n helloworld -c helo helloworld helloworld.ro

That error looks a little scary... but whatever... let's see what happens?! Noooo waaaaay....

DSC07190

We got an icon! Does it work?

DSC07191

Look at that glorious string of redundant text! Next I'll come back and write actual source to talk via IRDA. Maybe even to my Matsucom On Hand PC?

avatar

About stevenh

Trains... trains... trains... + Electronics + Japan.
Filed under: Retro Leave a comment
Comments (0) Trackbacks (0)

No comments yet.


Leave a comment


*

No trackbacks yet.