Skip to content
This repository has been archived by the owner on Feb 3, 2023. It is now read-only.

Commit

Permalink
Move documentation to GitHub
Browse files Browse the repository at this point in the history
  • Loading branch information
shred committed Jan 23, 2016
1 parent 74d0184 commit a435f0a
Show file tree
Hide file tree
Showing 8 changed files with 142 additions and 57 deletions.
32 changes: 32 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# PdbConverter

_PdbConverter_ is a too for converting PalmOS PDB files into more common file formats.

![Screenshot](./src/site/resources/img/screenshot.png)

## Features

* Calender can be converted to iCalendar and imported into most calendar applications.
* Address can be converted to vCard and imported into many address books.
* Also supports Memo, ToDo and Notepad.
* Also supports `DateBook.mdb` files.
* All other PDBs can be converted into a ZIP file containing the raw record data, for further processing.
* Optional category filter and separate export of each category.
* Developers can use PdbConverter to parse PDB files in their own application, just by adding a Maven dependency.
* Completely written in Java, and runs on Linux, MacOS X and Windows. Also usable as Android library (untested).

## Usage

Just run the compiled jar file:

```
java -jar target/pdbconverter.jar --gui
```

See the [online documentation](http://www.shredzone.org/maven/pdbconverter/) for further details.

I have been providing a WebStart version and also a converter web site for some years. These sites have been closed because even though there were hundreds of visitors every month, not a single one felt obliged to give a small donation for it.

## License

_PdbConverter_ is distributed under [Gnu Public License v3](http://www.gnu.org/licenses/gpl-3.0.html).
23 changes: 0 additions & 23 deletions src/site/apt/index.apt

This file was deleted.

59 changes: 59 additions & 0 deletions src/site/markdown/icalendar.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# How to convert Calendar to ICalendar

So, you finally replaced your good old Palm with a new cool smartphone? And now you wonder how you could easily move all your schedules to the new device? You have found the solution!

Basically you'll need to do three steps in order to move your schedule database to any iCalendar compliant calendar.

1. Get a copy of the Calendar database of your Palm
2. Convert the database file to an iCalendar file
3. Import the iCalendar file in your new calendar

Let me give an example of how I moved my Palm calendar to an Android phone.

## Extract the database

There are two ways to get the Calendar database.

If you use the HotSync Manager, it's pretty easy. In your PalmOS Desktop directory, you will find a file called `DateBook.mdb`. This is the file you need.

If you don't use HotSync Manager, it's a little more tricky. What you need is a file called `CalendarDB-PDat.pdb`.

What I did was inserting a SD card into my Palm. Then I installed a tool called [_FileZ_](https://www.google.com?q=FileZ+PalmOS). With _FileZ_ it was rather easy to locate the _Internal_ file `CalendarDB-PDat`, mark it and copy it to the SD card.

After that, I put the SD card into a card reader, and _voilà_, there is the file I need for the next step.

## Convert the database

The MDB or PDB file has a proprietary PalmOS file format. Other tools are unable to read those files, so we have to convert them into something more common. For calendars, the [iCalendar](http://en.wikipedia.org/wiki/ICalendar) file format is a standard that can be read by nearly any calendar application.

Using the PdbConverter, we convert the PDB into an iCalendar file in a few seconds:

```
java -jar PdbConverter.jar -c icalendar-mdb -i DateBook.mdb -o CalendarDB.ics
```

Of course you can also use the GUI to convert the file.

`CalendarDB.ics` is a standard iCalendar file that contains all of your Palm's schedules.

PdbConverter does its job pretty well. Virtually all of your calendar data is converted into the iCalendar format. Your secret entries will even be marked as `PRIVATE`. If you miss some details in your calendar application after importing the iCalendar file, it is rather likely that your application is unable to fully handle the generated iCalendar file.

## Importing the schedules

In a final step, the iCalendar file needs to be imported. I opened the Google Calendar, and created a new calendar called "Palm". This is because I want to keep the Palm schedules separate from the schedules of my standard Google Calendar. If the import turns out to be faulty, I just need to delete that calendar and start again. It is also possible to import the iCalendar file to the standard calendar immediately. But be warned that you would have to manually delete every single Palm schedule from your calendar if something went wrong.

In the settings area of Google Calendar, there is an option to import a calendar file. In the subsequent dialog, I select the `CalendarDB.ics` file, and chose the "Palm" calendar as target.

The upload process can take quite some time, so don't be alarmed if the new entries are not shown immediately. Anyhow, after a couple of minutes your Palm schedules should show up in the Google Calendar. Congratulations! You just migrated your calendar.

On my Android phone, I triggered a calendar synchronization. It takes a few minutes to complete. After that, I chose the "Palm" calendar, and my Palm schedules finally appeared on my Android phone.

## No categories?

Google Calendar ignores the categories of your schedules, which means that all your categories are effectively lost during migration. There is a way to simulate the categories, though. If you enable the "Split Categories" option (or pass `--split` at the command line), every category is exported into a separate file.

Now you can create a new calendar for every category, pick the color you prefer, and import the respective iCalendar file.

## Need a CSV file instead?

PdbConverter only offers to generate an iCalendar file, because it wants to convert as much of your data as ever possible. A CSV file is rather limited, and data loss will occur. Anyhow if you really need a CSV file, you will find converters in the interwebs that convert iCalendar files to CSV files. The Google Calendar is also able to export a calendar as CSV file.
32 changes: 32 additions & 0 deletions src/site/markdown/index.md.vm
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
pdbconverter
============

_PdbConverter_ is a too for converting PalmOS PDB files into more common file formats.

![Screenshot](./img/screenshot.png)

The source code can be found at [GitHub](https://github.com/shred/pdbconverter) and is distributed under the terms of [GNU General Public License Version 3](http://www.gnu.org/licenses/gpl-3.0.html).

Usage
-----

Just run the compiled jar file:

```
java -jar target/pdbconverter.jar --gui
```

There is also a command line interface. You will get help if you omit the `--gui` option.

Installation
------------

_pdbconverter_ is not just a conversion tool, but also serves as a library for reading PalmOS pdb files. To use it your project, just add this to your `pom.xml`:

```xml
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</dependency>
```
5 changes: 5 additions & 0 deletions src/site/markdown/vcard.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# VCard

*Note*: Unfortunately, more recent PalmOS devices store some parts of the address book in an invisible second database. For this reason, the export lacks a few parts of the address book, like photos and birthdays.

Also note that the vCard format is not able to represent the address database accurately, since it's difficult to evaluate the PalmOS' address database programmatically. The resulting vCard file may be rather unusable or even invalid. If you want to convert your address book for post-processing with other tools, I suggest to use the XML output format, which is more accurate.
25 changes: 0 additions & 25 deletions src/site/resources/css/site.css

This file was deleted.

Binary file added src/site/resources/img/screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 14 additions & 9 deletions src/site/site.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,22 +26,27 @@
<version position="right"/>
<body>
<links>
<item name="Home" href="index.html"/>
<item name="Project Management" href="http://www.shredzone.org/projects/show/pdbconverter"/>
<item name="API javadoc" href="./apidocs/index.html"/>
<item name="GitHub" href="https://github.com/shred/pdbconverter"/>
</links>
<breadcrumbs>
<item name="shredzone.org" href="http://www.shredzone.org"/>
<item name="pdbconverter" href="index.html"/>
</breadcrumbs>
<menu name="Main">
<item name="Introduction" href="index.html"/>
<item name="Wiki" href="http://www.shredzone.org/wiki/pdbconverter"/>
<item name="Project Management" href="http://www.shredzone.org/projects/show/pdbconverter"/>
<menu name="Documentation">
<item name="Convert a Calendar" href="icalendar.html"/>
<item name="Convert a VCard" href="vcard.html"/>
</menu>
<menu name="Download">
<item name="Download" href="http://www.shredzone.org/projects/pdbconverter/files"/>
<menu name="Development">
<item name="PdbConverter API" href="./apidocs/index.html"/>
</menu>
<menu ref="modules"/>
<menu ref="reports"/>
</body>
</project>

<skin>
<groupId>org.apache.maven.skins</groupId>
<artifactId>maven-fluido-skin</artifactId>
<version>1.4</version>
</skin>
</project>

0 comments on commit a435f0a

Please sign in to comment.