Multiple OS Support
Changelog for Weasel Reader
Weasel Reader v1.61
Monday, July 21, 2008
- Bugfix: Fix the version bitmap to show the correct value.
- Bugfix: Fix 5-way/D-pad support.
- Removed the "Use Hardware Button" option from the preferences form.
- Add a user adjustable key mapping for the DocView form to let users
decide what keys should do.
- Add a Key Prefs form to allow changing of the key map.
- Removed autoscroll pause/resume feature because it was tied to a
particular hard button (app button #2) and cannot be easily generalized to
the key key handling layer.
- Added a directory stack so Weasel now remembers the previous list
selection when you browse back to the previous directory. It's a very
simple method, however, and Weasel will not, for example, select the
correct entry if Weasel starts in a directory three levels down and you
browse to the parent directory because the directory stack will be empty
at that point.
- Bugfix: If you had >160 documents in any one location, Weasel would try
to allocate to much memory for the index and crash. Weasel now uses an
alternate method of allocating space for the index array and the limit is
now around 12000.
- Add a "Most Recently Read" list to Weasel which tracks recently read
documents. The list may be found in the root level of the index browser.
It keeps track of the last 10 opened documents. This number can be
altered in weasel.h to something higher/lower.
- Bugfix: When importing a doc from VFS to main mem, Weasel would fail
with the wrong error message if a doc with the same name already existed
in main memory. Weasel now falls back to readonly mode in this case.
- Added a 16bpp hi-res logo for the About dialog and removed the 8bpp
hi-res logo. The 8bpp hi-res logo doesn't look very good and most devices
that can display it can also do 16bpp. The only downside is that the
16bpp logo adds 42K to the size of the PRC. But... devices have so much
storage these days. And you can still turn it off in the Makefile.
- Cleaned up the way DebugHostMsg works for non-UNIX platforms so that the
debug output sent to the Palm Reporter (the only way to get useful output
on Windows) isn't such a pain to read.
- Bugfix: When reaching the end of a document, Weasel would display 0.00%
instead of 100.00% in the status bar. Reported by c_hintz.
Weasel Reader v1.60
Wednesday, June 27, 2007
- At last, a new stable release!
- Spanish translation updated by Javier Donaire Segarra
for the new release.
Weasel Reader v1.59.6 (* devel: not released *)
Thursday, June 21, 2007
- Big changes to document index. Now features a directory browser
allowing user to choose new directories at will.
- Category system removed in favor of categorizing books by storing them
in different directories.
- Removed option of doing full document decompression. Only partial
decompression (random access) is now available.
- Removed most cache management functions which are no longer needed.
- Added an alert dialog if user tries to open an old-style non-random
access zTXT document.
- Added an "Import from memory card" option to the Prefs form. This is the
same option which used to be in the VFS Prefs form.
- User is now prompted after every 100 executions of Weasel that the
DocInfo database should be occasionally cleaned of useless data.
- Updated help and alert text in the English translation to account for
all of the new features/changes in Weasel.
- Weasel is now distributed with the enhanced armlet version of ZLib.
This library is twice the size of the old one, but it includes code for
both ARM and older non-ARM devices. The new library will run much faster
on newer devices.
- If the user is upgrading from version 1.59.5 or older delete the DocInfo
DB due to changes in its internal structure.
- Fix small list bug in annotation list dialog.
Weasel Reader v1.59.5 (* devel: not released *)
Wednesday, June 6, 2007
- Updated zTXT format support to 1.60.
- Completely rewritten graphics code to handle more devices properly.
Should fix outstanding problems with Sony/OS5 support.
- Added PalmResize Dynamic Input Area support. This code is from
http://palmresize.sf.net. Should, mostly, transparently handle screen
resizing (i.e. Graffitti area hiding). For devices which support
changing orientation, this should handle that too.
- Rewrote autoscroll code. Moved from weasel_ascroll.c to
weasel_widget_text.cc. Autoscroll code now much more efficient.
- Removed the "Use hires fonts" option. For older Sony models, all
hardware fonts are now listed in the popup list. For OS5 models, if you
want small fonts, you will need to find new font file on the Internet
which include high density font glyphs. Older font files will still
work, but they will not look as nice since they will be scaled.
- Weasel no longer puts all devices into B&W mode. Weasel will now
try to use 8bpp, falling back to 4bpp, and finally B&W. This allows
for higher depth bitmaps to be used.
- Applied modified patch from Sanito Lastov: Cycling fonts with a hardware
button now includes Sony and custom fonts in the cycle list.
- Rotation code from CSpotRun has been replaced with a RotateBitmap
function from Plucker (http://plucker.sf.net). Unlike the modified
CSpotRun code, this new function can rotate at several bit depths and
handles non-square bitmaps properly. However, you can no longer rotate
to 180 degrees like before, just +/- 90 degrees.
- Fix a crash when changing fonts while displaying a document.
- Fix 5-way nav button handling.
- Weasel now uses an armlet (ARM native code) for screen rotation when
available. This results in much faster screen rotation on newer
Weasel Reader v1.59.4 (* devel: not released *)
Tuesday, January 27, 2004
- Sony support *really* fixed this time. The problem was due to some code
"cleaning" performed just before the 1.59.3 release. Oops.
- Autoscroll and status bar updates will pause if a menu is open. This
should fix some graphical artifacts.
- Patch submitted by Tom Holroyd: Fix a few Makefile bugs.
- Patch submitted by Dilshod Mukhtarov: Fixes a hyphenation bug where a
word could sometimes be hyphenated twice.
- Using hi-res fonts over their smaller versions is now the default (for
devices which have them).
- Anthony Bennett has made a new icon for Weasel. He shrunk down the
Weasel logo, but actually made it look good. He also made a B&W
outline version for use as the 1bpp icon. Much better than the two-tone W
- Bugfix: On Sony devices, selecting a user font would work, but the prefs
form would always revert back to Standard when you opened the dialog.
The font label now shows the proper selection.
- Bugfix: The button #4 font cycle did not work in non-fullscreen mode.
- The partial line displayed at the bottom of the screen is now displayed
only if >= 70% of the line will be displayed. Previously, the line
would always be displayed, even if only the top couple of pixels were
- Small fix in the battery display.
- The tappable area for switching between text and icon views for battery
charge is now the same size for both cases.
- Bugfix: When exporting a doc to a VFS volume, if the entire export path,
except the last portion, did not exist, then the export would fail.
Weasel will now create any parts of the export path which do not yet
- Patch submitted by Dmitry Astapov: The meanings of the up/down buttons
are now reversed when the screen is rotated by 180 degrees. This way
the buttons perform a more logical function when holding the device
- Patch submitted by Mikhail Gusarov: Progress bar is now erased when
deactivated with menu item.
- Patch submitted by Mikhail Gusarov: Status bar updates are now paused
when a menu is open.
- Bugfix: Improperly sequenced code in the Weasel exit function would
cause crashes on exit when reading either an old-style zTXT document
(type 2) or when enabling the "decompress whole doc" option. Fixed.
- Bugfix: When renaming categories, if you didn't actually rename the
category but just pressed "OK", Weasel would rename the category to
"Unfiled" and sometimes crash. Fixed.
- Bugfix: When renaming categories the category list would not be kept it
alphabetical order. Fixed.
- Bugfix: When tapping the screen to stop autoscroll, Weasel would page
forward once after stopping. Fixed.
- Bugfix: Proper display of bookmark list popup on OS5 devices.
- Removed "Skip PG License" ability. For some very odd reason, this
function would make opening a doc on certain devices a very slow
process. I was never able to figure out why since the function appears
fine. Since it can be so confusing to users, and because this is a
non-critical function, I have removed it.
- Changed font handling as visible to user. Phasing out useHiresFonts and
instead have popup list show all fonts on device.
- Feature submitted by Greg Weeks: Adds support for DRM as found on
CSpotRun. This DRM does not add any functionality directly to Weasel.
Instead it allows the user to install DRM libraries found on
http://csrdrm.sourceforge.net/ and read PalmDOC books which make use of
- Update zTXT format to version 1.44. A new UInt32 named crc32 has also
been added. crc32 contains a CRC32 computed over all text records in
the database. This will be useful for checking a file for errors and is
faster than the check-by-decompression method.
- Patch submitted by user nike000: Adds an option to the preferences
dialog to have Weasel ignore PalmDOC files in the document index. With
this option enabled, Weasel will only show zTXT docs in the index.
- Fixed fonts handling, largeFont and boldFont were mixed up for
- Switch to using GCC's C++ compiler instead of plain GCC. This is to
facilitate new display code. This switch necessitates numerous
modifications to the source to make some type casting more explicit.
- Patch submitted by Patric Mueller: Fix hyphenation after switch to ANSI
C++. Handling of pointers is slightly different than what the ANSI C
- Patch submitted by Sanito Lastov: As per Palm OS design guidelines, set
the default button for several alert popups to the least destructive
option in case user exits Weasel at that point (which will cause the
default button to be tapped automatically).
Weasel Reader v1.59.3
Tuesday, December 24, 2002
- Some more Sony fixes. Autoscroll now displays properly if started when
not in drawmode. Screen tap scrolling is now correctly processed.
- Stopped using the Palm OS Glue library. This shaves a few KB off the
final size of the PRC and I don't think it will make much of a
difference. The glue functions should help with multi-byte chars, but
since the rest of Weasel doesn't support this, it doesn't make sense to
use the larger Glue functions where simple macros will suffice.
- Patch submitted by David McNab: Adds a 'random' button to the "jump to"
form. Pressing this will position the user to a random point within the
- Sony fixes: autoscroll when using hi-res fonts is fixed as is an
autoscroll bug when the screen is inverted. Reported and fixed by
- Bugfix: On occasion, some books would move themselves back into the
Unfiled category. This was due to the DocList sorting ignoring case in
title strings, but the function which culls the DocInfoList checked
case. They now both use StrCompare, so there shouldn't be any more bin
search problems. Fix provided by Patric Mueller.
- Hyphenation support for Russian codepage 1251. Code submitted by
- Alternate Russian hyphenation code submitted by Vasja J. Petrov. This
code is now being used. Somebody needs to let me know if one performs
better than the other. This code works for both cp1251 and koi8-r and
does not require a compile-time change.
- Patch submitted by Rob Tillotson: Adds support for the D-pad on the
Tungsten T device. Note that to compile this additional code you need a
header file 'PalmChars.h' which is not in the regular OS5 SDK (at least,
not yet). It can be had from the PluggedIn hardware dev program.
Because this is a Palm copyrighted file, it is not distributed with
Weasel. From his description:
- In the main doc screen, up and down move the selection by one
line, the center button opens the selected document, and left and
right move through categories. Unfortunately this means there is
no way to scroll by a whole page without tapping the screen, but
it matches the d-pad behavior on other TT apps. (This change
doesn't apply to devices without a d-pad, and according to the
docs it will also *only* apply to the d-pad if the device has
separate page-up/page-down keys eg. on a keyboard.)
- In the doc view screen, up and down work as normal, right opens
the bookmark popup, left goes back to the doc selector, and center
button opens the menu.
- And... a third hyphenation patch has been submitted. This one is very
general and expands on the TeX hyphenation databases. The new code was
submitted be Dilshod Mukhtarov along with new hyphenation databases for
English and both Russian encodings (cp1251 and koi8-r). I believe this
will be the code that stays. :)
- Bugfix: Dmitry Astapov sent in a small patch which fixes a display
issue on Sony devices when resuming reading (rather than going through
in the index).
- Bugfix: Dmitry Astapov sent in a patch to fix exported filenames on VFS
volumes. They cannot contain 8bit characters, only 7bit.
- An Italian translation has been provided by Marco De Felice.
- Added a battery display in the status bar. Tapping on the battry icon
will switch it to a textual displayo of remaining percentage. Tapping
again switches it back.
- Patch submitted by Vasja Petrov: Pressing button #4 will cycle the
currently used font. It will cycle through the standard Palm fonts
- Hyphenation database is now selectable at runtime. The hyphenation
checkbox in the display prefs dialog is replaced with a button to open
the hyphenation prefs dialog where the user can select the DB they
want. Hyphenation DBs must have a type ID of 'Hyph'. If you can't seem
to get more than one in the list box, make sure they all have unique DB
names. The DBs that come with Weasel have been modified to have names
of the form 'Weasel_hyphen_LANGUAGE'.
- Per-document preferences now includes the selected font, even if it is a
custom font. The currently selected hyphenation database is also
- The progress bar now defaults to enabled.
- Bugfix: Dmitry Astapov sent in a patch that fixes some problems with the
various states Weasel can be in (fullscreen, copy mode, etc.) when you
switch from one to another.
- Weasel now uses a different FontID for its custom fonts. Some hacks
may use the same value and if they don't restore everything properly,
the display can become effected. Chaning the ID should help reduce
these problems, but will have no other effect otherwise.
- The status bar at the bottom of the screen now rotates with the screen.
This is done by not using any standard Palm widgets. Instead all items
on the status bar are positioned with Gadgets and are drawn by
- Bugfix: Dilshod Mukhtarov submitted a patch to fix entering in long VFS
path names in the VFS prefs dialog. Previously you could not see what
you were writing if the name exceeded the visible length of the
- Preliminary Palm OS 5.0 support now exists. You can now switch between
hi and low resolution fonts (except in the text field). Autoscroll now
works. Rotation still does *not* function properly. Support is not
perfect yet. Using the "large" fonts actually means using the small
fonts and letting the OS enlarge the screen. This is not the right way
to do it. :) Also, I hate the Palm OS Simulator. It's nowhere near as
nice as the emulator and it only works under Windoze. Any developers
with OS 5.0 devices want to help?
Weasel Reader v1.59.2
Sunday, September 29, 2002
- The DocInfo list code has been completely overhauled. The list is now
implemented as a Palm database. Should probably have done this to begin
with, but I didn't think it would get so large. This will allow new
data to be stored in the future without the requirement that all records
be the same size. Of course, this move also invalidates the old DocInfo
list... again... hopefully this will be the last time.
- Weasel now supports reading documents which do not have uniform record
sizes. The document will be scanned when first opened to determine the
state of records. If they are not uniform in length, a list of lengths
will be generated and stored in the DocInfo list for later use. This
support is above the decompression layer, so it applies to both zTXT and
PalmDoc documents. This support exists primarily to allow reading of
the many PalmDoc files which are created in such a manner. Please
- Weasel now supports hyphenation of the displayed text when justification
is turned on. The code to do this was taken from CSpotRun, so it should
behave just as it does. In order for hyphenation to work, you must
install an auxiliary database named "CSpotRun_hyphen_english.pdb". This
DB is distributed with Weasel. If you've already installed CSpotRun's
version, you can skip this, since it is the same file.
- Hyphenation requires that the PalmOSGlue library be linked in. Edit the
Makefile to point to the correct location and it will be linked.
- Added a new checkbox to the Display Prefs form to toggle
- Added a menu item under "Edit" in the DocView form to toggle copy mode.
Copy mode is when most display options are off and you can select text
to copy. This toggle item will turn off all display options, as well as
tap scrollinh, and let you select text. Toggle it back, and the display
will return to exactly the way it was before.
- Updated KillGute to have the ability to delete the new-style DocInfo
- New option in the Prefs dialog to control when the DocInfo list is
cleaned up. It defaults to culling the list at program start. With
this option you can disable this and clean the list at your own leisure
with the new menu item in the Options menu in the main index form.
- Bugfix: If the VFS path list was empty (all entries deleted by the user)
then Weasel would crash if the user attempted to export a document to
- New Russian translation provided by Dmitry Artamonow. He has provided
both cp1251 and koi-8r encodings for Windows and UNIX users,
- Bugfix: If the progress bar was enabled and the screen was rotated 270
degrees, Weasel would crash when you got near the end of a document.
Weasel Reader v1.59
Sunday, July 7, 2002
- Bugfix: Weasel was not allocating enough space in the memo database for
an exported annotation. This would cause a crash and a garbage entry in
the memo DB. Fixed. Reported by Dmitry Artamonow.
- Patch submitted by Dmitry Artamonow: Removes unprintable characters from
annotation/bookmark titles and replaces them with NULLs. This prevents
the little box characters from appearing in the anno list or the
- Bugfix: A serious bug in the DocInfoAddEntry function has been
corrected. The DocInfo list was being sorted with an incorrect number
of items. This would result in the list becoming partially sorted, but
with a correct count of items. When renaming, or installing a new
document, doc info data could be lost or cause a crash. Because Weasel
>= 1.58 uses a binary search function to search through the DocList, the
current doclist cannot be easily repaired. Upon upgrading to 1.59, the
DocInfo list data is removed. This will reset all resume positions as
well as stored prefs. Oops.
- The version number is now represented internally as a 32 bit number
instead of a 16 bit number. This will allow for more minor versions.
Since 1.60 will be the next stable, and Weasel is already a 1.59, there
needs to be some way of squeezing more in. :)
Weasel Reader v1.58
Saturday, June 29, 2002
- Translation: A German translation has been added to Weasel, courtesy of
Karin Herm (email@example.com).
- Bugfix: When you delete a document in the index, the list selection no
longer jumps back to the beginning of the list unless you delete the
last document in the list.
- Bugfix: For PalmOS < 3.5, the category list wasn't being erased before
being redrawn on the Categorize form. Now it is.
- Bugfix: The hardware buttons now scroll the table in the Categorize form
by a full page. This is the same behavior as the document index.
- The precentage indicator in the bookmarks popup now shows hundredths
precision like the status bar does.
- Patch submitted by Patric Mueller: Adds a rename function to Weasel. At
the document index, select the "Rename" menu item to rename a document.
It works for VFS documents too (if they're not readonly), though it only
changes the DB name, not the filename, and they must first be
- Bugfix: If you pressed the export button in the annotation view dialog,
but the annotation was empty, Weasel would crash. Fixed.
- The title of an annotation is now exported along with the annotation
text. It will be the first line of the annotation (hence it will also
be the memo's title).
- The time displayed in the status bar of the DocView form is now updated
once every 15 seconds. This will eliminate the problem of seeing the
wrong time when powering on the device after having it off for a
- Patch submitted by Patric Mueller: When you categorize documents, it
will only display the same documents as shown in the index. So, to
recategorize all of your documents, set your category to "All Docs" and
then select Categorize from the menu. This can save time if you have a
large number of documents.
- Added a VFS Preferences dialog. Now users with a VFS capable device can
choose which directories will be searched (if at all) and can change the
list at will. This should greatly improve startup times for people with
large memory cards because those users will be able to prune the list.
Changes to the list, however, only take effect when Weasel is
- Weasel should now spend half as much time scanning VFS volumes as it
used to. Weasel was incorrectly scanning through all VFS files twice,
once for each doc type, rather than scanning once and checking for both
doc types at the same time.
- Bugfix: There was a rounding error in the percentage display. Sometimes
it would show an incorrect value. Reported and fixed by Jurgen
- Bugfix: When stating autoscroll, Weasel would usually skip a line.
Reported by Tom Benedict.
- Bugfix: Weasel stores the sizes of PalmDoc files because the size in the
header is often wrong and it takes time to calculate. If the doc text
was changed by another program, Weasel wouldn't use the new size.
Weasel now checks dates at startup to see if any sizes need to be
recalculated. Reported by Tom Benedict.
- Bugfix: Some characters which are valid in Palm DB names are invalid for
VFAT filenames. Weasel now munges the DB name to produce a valid
filename when exporting to VFS or beaming. Invalid characters will be
replaced with underscores. Reported by Jurgen Stuber.
- Feature request: Weasel now displays a message at startup when scanning
VFS since this can take a while. Don't want the user to think the
device has died. Also shows a "Please wait..." dialog when importing or
exporting from/to VFS.
- Feature request: Writing the name of a document in the doc index will
jump to that doc. It works very much like Emacs I-Search function.
Writing a backspace or delete char will remove the last char from the
search string and jump back to the last match (again, just like
- Patch submitted by Tom Benedict: changes the behavior of button #2
(toggle autoscroll) to be more intelligent. If simply pressed, it
behaves as before. If you are NOT autoscrolling and press and hold the
button, autoscroll will turn on and then stop when you let go of the
button. Conversely, if you ARE autoscrolling, press and hold button #2
to pause the scroll. It will begin again when you let go of the
- Weasel now uses a binary search routine in many places where it used to
just use simple iteration. This should greatly improve internal search
times and thus improve start-up time if you have many documents.
- Translation: Javier Donaire Segarra (firstname.lastname@example.org) has
graciously translated Weasel into Spanish. That makes four languages
- Weasel now supports Handera's hi-res mode (240x240). It is
automatically used if you have a Handera device. In the display prefs
dialog, there is a new checkbox to toggle usage of the built-in hi-res
fonts. Using them will result in a nice display. Using the standard
fonts will let you fit more on the screen. I have no actual Handera
device to test these things on... so please report any problems!
Extended mode (minimizing the silkscreen area) is also supported, but
only if rotation is not enabled. You can only rotate the screen if it
is square (silkscreen visible).
- Cleanup of code in weasel_docinfo.c and places where it's used in the
rest of the code. This is in preparation for changes which will allow
one to store the current font on a per-document basis and to allow for
non-uniform record sizes in some documents.
- Weasel now supports Sony's hi-res mode (320x320) as well. Huzzah! This
was *MUCH* more of a pain to get working properly than was Handera's...
mostly due to Sony implementing a new library rather than extending the
existing calls. Luckily, the new functions were basically just mirrors
of the existing ones. One caveat: when reading with the text field
(when not in drawMode), you MUST use the larger fonts. You can only use
the smaller fonts (that is, the original Palm fonts) with drawMode
(which is how most people read anyway). The Handera hi-res does not
have this limitation.
Weasel Reader v1.57
Friday, March 1, 2002
- Feature request: Weasel now listens to the sysAppLaunchCmdOpenDB launch
code. Other program can use this to make Weasel open a particular
document at start. In particular, the Launcher replacement "Launcher
III" allows one to associate a program with PalmDoc files.
- Some broken converters put wrong values in document headers (such as the
recent Jmakeztxt workaround). Some PalmDoc converters are storing the
wrong value for document size. The one I was sent had a compressed size
of 119K and an uncompressed size of only 15K. So Weasel now works
around this by calculating PalmDoc sizes when you open the document.
This slows opening down a bit, but those broken docs will now display
- Bugfix: Wasn't checking for the existance of any categories in the
document categorization form which caused a crash. Fixed.
- Added a menu item in the doc view form to popup the bookmark list.
- Patch submitted by Wout Mertens: Wout has added a progress bar to
Weasel. It displays progress through the book as a bar which fills up.
Bookmarks are displayed in their relative positions on the bar as
oppositely colored dots. Wout is also a Weasel developer now.
- The size of PalmDoc documents is now stored in the DocInfo database.
Since the size must be computed always for PalmDoc documents (since it
could be wrong), it is now stored after being calculated so it doesn't
have to be done again.
- PalmDoc documents can now be fully decompressed and take advantage of
Weasel's persistent cache. That is, both decompression methods are now
supported for PalmDoc format documents.
- Patch submitted by Patric Mueller: Corrects a bug in the beaming code
for OS < 4.0. These older OS's wouldn't beam properly if there was a
'.' in the filename of the data being transmitted. Also adds menu items
to toggle fullscreen and progress bar in the docview form.
- Patch submitted by Patric Mueller: Adds arrow buttons to the bottom of
the main form to cycle forewards/backwards through the available
- Text is now drawn (when in draw mode) such that small line spacings do
not cut the extenders off the previous line. This allows line spacings
of -2 or less without mangling the text. Thanks go (again) to CSpotRun
for an easy method of doing this.
- Bugfix: there were a few non-critical errors generated when you tried to
switch to a category with no documents in it.
- Fullscreen mode can now be toggled by simply tapping on the Graffiti
area. In a text form, this would enable the punctuation shift mode, but
in the text display form it toggles fullscreen mode.
- First Weasel translation! Cseke Balazs has translated Weasel into
Hungarian. Many thanks!
- Some PalmDoc converters generate horribly broken files in which the size
of text records is not constant (they should all, except that last one,
be recordSize in length). Weasel now detects this and warns the user so
they can cancel the operation. If you continue reading the likely
result is that Weasel will crash.
- Redesigned the status bar at the bottom of the screen. Done button is
replaced with a back-arrow button. Percentage indicator now includes
hundredths place precision (feature request). The "Bookmarks" popup has
been changed to "Marks" to make more room available.
- Feature Request: There is now an option in the Display Prefs dialog to
show the title of the most recently passed bookmark in in bookmark popup
label. When you pass a bookmark, the label will be updated to reflect
- Patch submitted by Sergey Erokhin: Display the time in the status bar at
the bottom of the screen. If the "Display Bookmark Titles" option is
on, the time will not be displayed since there is not enough room.
- Bugfix: The readonly detection was flawed. If you had any readonly
documents, many others would incorrectly be made readonly as well.
- Bugfix: When exporting a book to VFS, if the destination directory
(/PALM/Books) did not exist, the export wouldn't work and would give a
misleading error. The directory is now created if not present.
- Bugfix: If you import a book from VFS, Weasel will crash on exit.
- A rotated screen no longer requires the use of fullscreen mode. They are
now independent of one another. This way you can still have the
status/control bar visible at the bottom of the screen while using
- Option to choose between progress and time when displaying bookmark
- Bugfix: If you opened a doc with "Decompress whole document" enabled,
then turned it off while reading, the cache would often enter into an
unstable state, often resulting in a zLib error and/or crash. This has
- Changed graphical done button to be a normal blank button with a
FormBitmap on top of it. Palm OS < 3.5 didn't support graphical
buttons. This method gives the same result, but is more compatible.
- Weasel now compiles with the Palm OSs 4.0 SDK Update 1. As of update 1,
access to structure internals is no longer allowed. Weasel is very well
behaved, but in order for the rotation code to work, access is
necessary. There are some #define's at the top of weasel_rotate.c to
make it work.
Weasel Reader v1.56
Sunday, January 13, 2002
- Weasel now looks in the following directories for books: /PALM/Books,
/PALM/Launcher, /PALM/programs/msfiles, and /PALM/programs/Weasel. The
first three are the ones that Palm Reader also uses.
- Bugfix: Annotation code now properly handles read-only docs. You can
view annotations, but cannot make any changes to them.
- Reorganized the menu on the index form. Changed "Beam" menu to a "Book"
menu. Moved "Categorize" option to Book menu instead of Options.
- Feature request: Added "Move to Expansion Mem" and "Move to Main Mem"
items under the index Book menu. These allow documents to be moved to
and from a VFS volume. An exported book will be moved to
- Feature request: The "Goto" button in the annotation view form has been
replaced with an "Export" button. It will copy the annotation to a new
memo in the Memo Pad and then switch to that memo. The "Goto" ability
is still available in the annotation list form.
- Temporal Wierdo has added the necessary checks/ifdefs to allow for
compilation without VFS. If you do not have the 4.0 SDK, VFS support
will not be used. Also, you can define NOVFS which will cause VFS
support to not be compiled even if available.
- Bugfix: The CSpotRun author made some fixes to his rotation code. Since
Weasel also uses that, I incorporated those changes. If you use
rotation on OS 3.0 <= x < 3.5, it now uses the "correct" method. It
was using an older, but functional, method before.
- Bugfix: The UpdateLineBuffer function was not doing proper length
checking when crossing a record boundary. Shouldn't have caused any
crashes, but it's fixed now anyway.
- Bugfix: When generating random-access zTXTs with Jmakeztxt, the record
count is one too high. Since Weasel uses this number a lot, this would
cause many bad things to occur. Weasel now does a sanity check on the
record count to fix this. Jmakeztxt needs to be fixed, though.
- Modification: Plucker author Michael Nordstrom was kind enough to
actually email with some code for improving the beaming of documents in
VFS memory. They no longer have to be imported to main memory before
being beamed. This saves a lot of memory and a lot of time. Thank
- Feature request: If you regularly use Weasel, chances are that you
rarely, if ever, read any of the help text in the program. There's
approximately 14K of help text in Weasel since text resources are not
compressed in any way. If you define NO_HELP_TEXT=1 in the Makefile,
Weasel will be built without help text. A build of Weasel with no VFS
support and no help text is only 64K in size versus 80K with everything.
Granted, this isn't much, but waste not, want not.
- Bugfix: The "last line wrong" problem has been fixed. This would occur
if you had lines of context greater than zero, even if you weren't
actually scrolling with context. The if statement where context info
was being saved was erroneously opening the wrong text record (it
shouldn't have been opening any records at all).
- Bugfix: Stupid mistake on my part. If one of the directories searched
by Weasel on a VFS volume did not exist, it could crash or give errors.
Moved the misplaced VFSFileClose to the proper location.
Weasel Reader v1.55
Tuesday, January 1, 2002
- Recompiled with newest version of prc-tools. If you had Weasel stored
in Flash, it could crash when exiting. This should fix that problem.
- Forgot to increase the internal version number when 1.54 was released.
Since the preferences structure DID change, this could cause some
Weasel Reader v1.54
Tuesday, January 1, 2002
- Added VFS support. This entailed a number of significant changes to how
document databases are handled in a few locations, so it will need to be
tested a bit. Added a DocDB abstraction layer between operations on doc
DBs and the underlying Palm stuff. This way there is one interface to
either the Data Manager or the VFS Manager. It also allows for
importing docs from the VFS, using them, then exporting them back when
done. Alternatively, you can simply read from the VFS without writing
and then no importing needs to be done.
- Added a new item to the Preferences dialog to allow user to
enable/disable importing DBs from VFS memory (as above). Default to
- Added a new menu item in the DocView form to jump to a location. When
in fullscreen mode, you can't tap on the percentage field.
- Modified the "beam book" code to allow beaming a database that's in VFS
- Modified the jog dial support to allow accept input when the jog dial is
pressed as well as when it's not. Hopefully this should resolve any
problems people were having with it not working. Since I have no device
with a dial and the emulator doesn't do it, I can't test it myself.
- Added a new function to determine the amount of free space available in
the storage heap(s). The old method of checking the card's free space
wasn't accurate enough.
Weasel Reader v1.53
Tuesday, December 25, 2001
- Thanks to some information from Pyrite guy Rob Tillotson, Weasel now has
support for PalmDoc bookmarks. They function just like zTXT bookmarks
as far as users are concerned. The representation in the DB is a little
different. I suspect that not ALL PalmDoc readers do it in this fashion
and some may even store *other* information in the same place... so this
isn't foolproof, but it's better than none at all, right?
- Feature request: User adjustable line spacing. There is now a place in
the Display Prefs dialog to specify line spacing. It is a signed
value. Negative numbers move the lines closer together, positive values
move them farther apart. These are measured in pixels, so use small
values. A value other than zero implies draw mode (since you can't
change the spacing of a text field).
- Feature request: The jog dial available on Sony PDAs (and a few others)
is now supported. It behaves exactly as the normal up/down buttons do,
so when you configure up/down in the scroll prefs dialog, you are also
configuring the jog dial.
- Bugfix: Fixed a bug where switching from draw mode back to text field
mode would cause all sorts of problems. It was related to the
PercentageField indicator at the bottom of the screen. I seem to have
fixed the problem, though I don't know WHY it was a bug, or why it
didn't manifest itself sooner since that code hasn't changed in some
- Added "Kill GutenPalm" utility (killgute.prc). This utility will allow
you to delete GutenPalm from your Palm. This is only necessary if the
Launcher does not show BOTH programs (usually in Palm OS < 3.5).
Weasel Reader v1.52 (* devel: not released *)
Sunday, December 23, 2001
- Category support is finished! You can now categorize your documents,
both zTXT and PalmDoc, into whichever categories you wish using the
'Categorize' menu option under Options. You can also edit the available
categories via the 'Edit Categories' option in the category popup list
on the index screen. I've tested it quite a bit and I think most of the
bugs are worked out, but you never know...
Weasel Reader v1.51 (* devel: not released *)
Monday, December 17, 2001
- Added a new document information database. It stores semi-transient
information about docs such as the category ID and resume position.
It's abstracted this way so tha it works for all doc types. This also
means no more resume bookmark (__CURRENT_POS__) anymore, so those can be
deleted. All this stuff is in weasel_docinfo.c and weasel_docinfo.h.
- Cleaned up category code a bunch. The pre-cleaned code had two category
IDs to account for the ID being stored in the zTXT/PalmDoc and the
possibility that it was readonly. What a mess. Now it's stored in the
above info database, things are simpler. And more bug free. Still
needs a UI, though.
- Stored per-doc prefs are now in the DocInfo DB instead of the document
itself. Updated weasel_common.h and moved zTXT version up to 1.42 to
account for changes.
Weasel Reader v1.50 (* devel: not released *)
Friday, December 7, 2001
- New name? Yup! The friendly people at Palm Inc. sent their nasty
lawyer hordes after anybody listing on PalmGear with the word 'Palm'
anywhere in the program name. It's stupid and I don't like it, but free
projects usually can't take lawsuits. Just lawyer letters for now, but
who knows how far they might actually go. So... new name... and I don't
even WANT to be a stupid Palm Powered Partner. Blehhhh....
- Support for custom user fonts. You can find them everywhere on the
Internet. Just install them and Weasel will find them. Two caveats: 1)
This needs much more testing. There is VERY little info on the net
about how to *USE* these fonts, but plenty regarding making them. 2)
Use at your own risk. My POSE testing shows that it (currently) works
just fine for a while, but eventually spits up some errors after many
font changes. Don't know what's causing it just yet. It could very
well be the fonts themselves as this is a bit of a hack, you know.
- Patch submitted by James Aspnes: Support for doing title searches in the
document index. This also moves the items in the 'Cache' menu to the
'Options' menu and adds an 'Edit' menu for the new search commands.
- Patch submitted by Dieter Baron: Add support for keeping x lines of
context while paging forward or backwards. This is a much requested
feature. Also moves the text display over by one pixel when in inverted
mode as many people dislike having the text start right at the edge,
because in inverted mode, those characters at the edge won't have a
border on the left side.
- Patch submitted by Michael Panteleit: Add option to use wraparound
scrolling a la ReadThemAll. This method keeps the text stationary and
instead has a bar which moves down the screen from top to bottom. As it
goes, it draws new lines of text behind it.
- Patches for search improvements. Temporal Wierdo submitted a patch to
speed up searching by using a skip table lookup. Scott Bamford sent in
a patch which adds simple regex abilites, namely ^ and $ for beginning
and end of line matching.
- You can now read PalmDoc (DOC files, not Word files) documents in
Weasel Reader! A few more Huzzahs all around. They function just like
a zTXT as far as Weasel is concerned, except for bookmarks and
annotations. That also means no resume bookmark, unfortunately. Maybe
if I can find (or somebody sends me) information about how bookmarks are
handled in PalmDoc (if at all), I'll see about adding that.
GutenPalm v1.41 "Kotaru"
Thursday, August 2, 2001
- Feature request: Lots of people want line by line scrolling so I've
added it. You can now enter in a scroll amount from 1 to 30 and there
is now a "Scroll line by line" checkbox which will set it to the correct
amount for the current font. This will affect both manual and automatic
- Patches submitted by Craig Curtis: The first allows the copy Graffiti
shortcut to work when copying text in the DocView form. The second
makes the up/down hardware buttons function for scrolling the annotation
- Bugfix: Read-only memory based zTXTs should now function correctly and
not give any errors. Tested using Romeo (http://romeo.sf.net) with
GutenPalm, SysZLib, and GPL.pdb all in ROM, though any combination
should work fine. Auto-resume does not work for read-only zTXTs because
the resume bookmark cannot be created. The exception is if the zTXT
already has a resume bookmark when it is put into read-only memory.
- Additional read-only related changes. All records are opened for
read-only access (DmQueryRecord) unless they need to be written to. The
bookmark and annotation indices are now queried initially, and will be
reopened for writing only when changes are made to them, after which
they will be closed and then queried again. This should bring to a
minimum the number of records open for writing, which will also reduce
the number of checks in the code to see if we are in read-only mode.
- GutenPalm now notifies the user that their preferences have been reset
due to a version change. It already did the reset, it just did it
- Bugfix: Rotation now works on color devices. This is done by setting
the colordepth to 1bpp upon entering the DocView form and putting it
back to the original value on return to the index or exiting. Since
GutenPalm doesn't use any color (aside from the logo) this is perfectly
fine until somebody fixes gutenpalm_rotate.c to handle color pixels.
- Versioning fixes: The big Document struct (gCurrentDoc) was storing the
zTXT version as a UInt8 when it should be a UInt16. The prefs database was
storing the GutenPalm version as a UInt32 when it should be a UInt16.
GutenPalm now checks to see if it knows how to display the selected zTXT
by checking its version. If it's newer than the zTXT version this
version of GutenPalm was made to work with, it will ask the user if
he/she wishes to continue (since it could crash).
- Bugfix: Fixed a back-paging crash. It was really rare, actually, as you
had to back-page to exactly the beginning of a record. It was
calculating the new record offset incorrectly because I forgot a pair of
parentheses. They're in the right place now... no more crash.
- Change: The "Jump to location" form now has a popup list with a range of
percentage values in it, rather than the previous 0% and 100% buttons.
A number of people have requested this change.
- New feature: The bookmark popup list now extends across the width of the
screen to allow for bookmark titles that are wider (lots of M's). Also,
the percentage position of each bookmark is now displayed in the list so
you can better guage where they are.
- Patch submitted by Craig Curtis: The last selected annotation is now
remembered in the annotation index listing and will be selected next
time you open the annotation index.
- Feature request: Several people have asked for a progress indicator
during long search operations as well as a way to cancel. This has been
added. Any search which searches more than 500 characters will pop up a
small window with a rotating character animation in it to show you that
it is working and not hung (sine searching can take awhile). Tapping
the screen will cause the search to be cancelled.
- Patch submitted by James Aspnes: Cleanups and speedups to the new search
progress indicator. It now only updates every 8192 characters instead
of 500 so as to have less impact on the search speed.
- Bugfix: The annotation 'A' indicator would not always be displayed even
if there was an annotation on the page. This was caused by giving
DrawAnnoGadget the wrong values for the end position of the page.
- Bugfix: When (heaven forbid) GutenPalm crashes, it will leave around the
cache file of whatever was being read at the time. If the user then
tries to read the same zTXT again, more problems occur since the cache
(and GutenPalm) were left in a bad state. To prevent this, the user is
now notified of the unclean exit, and all caches are deleted.
GutenPalm v1.40 "Kotaru"
Wednesday, June 6, 2001
- Patch submitted by James Aspnes: Delete documents while reading them
instead of just from the index screen. Very handy if you're going
through a lot of docs.
- Patch submitted by James Aspnes: Option in Preferences form to allow
use of hardware buttons #3 and #4 while reading. Previously these
buttons were always used for GutenPalm functions, now the user can
- Patch submitted by James Aspnes: Hardware up/down buttons will now
scroll the document index
- Bugfix: Cache indicator dots in index would not go away after you
erased the cache if you were using Palm OS < 3.5. Now, those OS's will
first erase the list area before redrawing the list.
- Bugfix: Rotation fixed? Could be. The rotation code from CSpotRun
had three cases for Palm OS 3.5, 3.x, and 2.x. The first and last work,
while the 3.x one causes immediate firey death. So, I commented out that
section. Now anybody not using 3.5 will use the old routine which seems
to work okay (in the emulator anyway). I assume this code worked fine
in CSpotRun, so it's likely the trouble is due to my having had to adapt
the code to compile with the 3.5 SDK. Rotation does not work on color
Palm's, however it will not cause a crash. I do not know how to fix
- Feature request: The selection in the document index is now remembered,
so when you go back to the index, it will be reselected and made
- Feature request: If you are in a display mode that makes use of the text
field, you can select text and have it used as the title of a bookmark.
If no text is selected, or you are in a mode that does not make use of
the text field, the old method of taking the top line will be used.
- The same title creation/selection as above for bookmarks has been
implemented in the annotation code as well.
- Patch submitted by James Aspnes: Major overhaul of the persistant cache
system. The old method was... unfortunate, and could result in lost
caches eating up memory until you deleted GutenPalm. The new method
will not lose caches and will automatically delete orphaned caches and
is, overall, better written.
- GutenPalm now acknowledges read-only zTXT databases that are in ROM or
Flash. It will not attempt to modify them and will display an error
message if the user tries to. This should make Flash equipped Palms
into small libraries.
- Patch submitted by James Aspnes: Speedups and small bugfix in Find
code. Speedup is approximately 1kB/sec - 5kB/sec. The Find settings
are now also stored between sessions, so you won't have to keep checking
the "Ignore case" box if you want that option on all the time.
- Bugfix: The "Jump To Location" form used a function from the "Text
Manager" which is only present in Palm OS 3.5 and later. This has been
fixed, and should no longer cause a crash on pre-3.5 Palms.
- New feature: There is now an option under 'Preferences' to have the zTXT
size displayed in the document index.
- New feature: Excerpt 4096 characters to the Memo Pad from current page
in document. This is under the 'Edit' menu while reading. It will copy
characters into a new memo starting at the top of the current page and
going for up to 4096 chars. Thanks go to James Aspnes for the patch.
GutenPalm v1.40beta2 "Kotaru"
Tuesday, April 3, 2001
- Back-paging didn't work properly if you paged backwards over a record
boundary. Some of the arithmetic needed some extra parentheses. Also,
that code hadn't be updated to account for different font sizes.
- Requested feature: Justified text display. With this option, the text
will be drawn fully justified with the left and right sides of the
screen. This option precludes use of the TextField since the field
seems to dislike all the extra spaces and doesn't draw it properly.
- Small speed up in DisplayCurrentPage when using the text field.
- Bugfix: Resets auto-off timer when autoscrolling so Palm doesn't turn
- Autoscroll updates: Palm button #2 now toggles autoscroll on/off. 'S'
is now the menu shortcut for turning on autoscroll.
- Button #3 will popup the bookmark list under any display conditions
except for when autoscrolling.
- Added several more menu shortcuts in the DocView form.
- Had to get rid of the nice 8bpp color logo. It looks very good, but
it added a little over 8K to the program size, which is approximately 15%
of the total program size. Oh well. The greyscale one looks very nice,
- Bugfix: The About form switches to 4bpp if possible which erases the
screen. However, it was only redrawing the old form when leaving the
About form. If you were in the DocView form, the text would not get
redrawn if you had some display options turned on.
- New feature: For people using Palm OS versions earlier than 3.5, tapping
on the title bar of the document index form will now pop up the menu, just
as it does for people using 3.5.
- You can now edit the autoscroll speed in the display preferences.
- The scroll speed control has been made more fine grained at higher
GutenPalm v1.40beta "Kotaru"
Sunday, February 11, 2001
- Lots of changes, so the version has been bumped to 1.40
- Decided to start naming the releases. Why not? I am taking my release
names from Paul Kidd's book "Whisper of Wings". Go read it!
- GutenPalm now has a new About box complete with super cool logo by
DocTiki. The new About box also switches your Palm into 4bpp greyscale
if such a mode is supported (and you're not already in color).
- At last! On-demand decompression has been implemented. The compressed
data will now be decompressed as you read it. A small "partial cache"
has also been added when reading in this mode to keep excess
decompression to a minimum. Documents can only be read in this manner
if they have been compressed with Z_FULL_FLUSH, which makeztxt now does
- A lot of the code has been reorganized. OpenTmpRecord is now
OpenCacheRecord and is located in gutenpalm_cache.c. The decompression
functions have been moved to gutenpalm_compression.c.
- Took a few more strings out of GutenPalm and put them in the resource
file so that they can be internationalized.
- Modified the on-demand cache to use an aging scheme instead of the
previous counter scheme. The old method kept records which were
accessed the most. The new scheme only keeps records that were accessed
recently. I'm not really sure which is the most efficient for this type
of application, though I doubt one over the other will make any
noticable speed difference since the cache isn't hit that often.
- Change in Find: When you searched for text it would advance the currently
displayed text to where the match occured. This isn't correct. It should
advance up to the word containing the match. It does this now.
- Bugfix in Find: If you were in a display mode that did not use the text
field for display, GutenPalm would crash when trying to highlight your
- Requested feature: Per-document display preferences. From the 'Book'
menu you can store the current display preferences into a zTXT and they
will be used when you next read that book, overriding your current
preferences. Your current prefs will be restored when you stop reading
that book. You can also clear the stored prefs from a zTXT. Note that
the autoscroll speed and pixel rate are not stored in a zTXT.
GutenPalm v1.22 (* not released *)
Thursday, February 1, 2001
- Bugfix in bmrkFindMark(). 0 was used as an error value, but could also
reference to the beginning of a zTXT. In this case, the resume bookmark
"__CURRENT_POS__" would get left behind and would keep auto-resume from
functioning until you manually deleted the bookmark. Bug reported
by Jonathan Badger (email@example.com).
- Misspelled translation string for the "Delete ALL Cache" dialog.
- Fonts! Huzzah! You can now pick from 5 different fonts. Standard,
Bold, and Large are available for all (PalmOS 2.0 and above, but that's
also the minimum for GPlm). LargeBold and HK40 Fixed are available to
Palm OS 3.0 and higher.
- Requested feature: Invert text display. Check this option and the text
area will be inverted. Because this involves drawing to the screen
directly, the text is not in a field and so cannot be
- Autoscrolling has been much improved. It now renders to an offscreen
window and is able to scroll pixel by pixel instead of a whole line of
text. You can autoscroll and have inverted text at the same time.
- Nasty bug in cache. If you have books cached, delete the caches, then
quit and restart GPlm, the cache will be back as it was before. If you
then try to access one of these, firey death will rain down upon you.
The cache list is now cleared whenever you quit. Reported by ono_it.
- Requested feature: Tap paging. With this option on, tapping the upper
half of the screen will page up and tapping the lower half will page
- Requested feature: Full screen display and rotation. Full screen will
simply hide the controls at the bottom and use the area for text
display. Rotation allows you to rotate the display in 90 degree
increments (measured clockwise). You can use an inverted display and/or
autoscroll with either full screen or rotation. A rotated screen
implies full screen operation. The tapping areas "top" and "bottom", when
using tap paging, will rotate with the text.
Sunday, January 21, 2001
- The distribution has been split into two separate directories: one for
GutenPalm and one for makeztxt. Hence, the ChangeLog has been split as
- GutenPalm now uses PalmZLib, a Palm port of ZLib. Unlike the static
library port I used before, this one is a separate shared Palm library.
This reduces the size of GutenPalm by at least 20K. Of course, now you
must download and
install PalmZLib to use GutenPalm, but it's small and really useful, so go
do it. The patch to incorporate this was supplied by Tom Zerucha
(firstname.lastname@example.org). Thank you! You can get the library at
- The text display in the view form is now a text field. This means you
can now select and copy text out of books and paste it elsewhere.
- Beaming!! Yes, GutenPalm now supports beaming. Since you never need to
transfer anything less than a whole database, the code was very easy to
implement. Of course, I didn't know this, otherwise I would have done it
- Support for user annotations. Just pick it from the menu. You give
your annotation a title and then write away. The annotations are limited
to 4096 characters which should be enough. If it's not, just let me
- Find support. It's in the edit menu. You can also search without case.
There is also a Find Again menu item to repeat the last search.
- Autoscrolling support. No more sore fingers and broken buttons.
- Better error checking. Makes sure PalmZLib is installed. Makes sure
there is enough memory to decompress a zTXT. Better than dying or
killing your Palm.
- Startup code which loads preferences now checks version info. This
should make it so that you don't have to delete GutenPalm to install a new
version just because the preference layout changed.
- Internationalization support. The rcp file has been cleaned up a great
deal to allow for translations. Now it is a simple matter of redefining a
few tags in a translation file. If you would like to translate
GutenPalm, please let me know! It's really a small amount of work.
- Lots and lots of code cleanups. Especially with the bookmarking
Saturday, September 23, 2000
- First official release of GutenPalm!
- No program changes from last beta.
- My testing has continued and thus far, all is well.
- A few doc updates regarding compiling the source yourself. There was
some confusion due to the use of two copies of zLib (Palm and host
- Added a file called FILES which briefly describes what each file is
- Many website updates at http://gutenpalm.sourceforge.net
Saturday, September 16, 2000
- Got rid of the bookmarks menu item under Options. Didn't have anything
to use it for.
- Completely overhauled the bookmarks system. The old way was stupid and
separated the zTXT provided bookmarks and user bookmarks. More complex and
didn't really add much. Now it's simpler and all bookmarks are kept with
the zTXT DB.
- As a consequence, removed the last modification data checking in the
cache code. This was to determine if the cache was still valid, but now
when you add/remove bookmarks, that timestamp is changed frequently.
- You can now add bookmarks while reading AND delete them.
- Added a whole bunch more documentation in the README file including some
examples of the regex bookmark generation.
Monday, September 11, 2000
- Miscellaneous bug fixes all around.
- makeztxt now accepts regular expressions on the command line to generate
bookmarks in the generated database.
- GutenPalm now supports bookmarks! Huzzah! Well, mostly huzzah. Most
of the code is present for user bookmarks added within GutenPalm, but it
isn't implemented yet.
- Tapping on the percentage display now allows you to jump to an arbitrary
position in the zTXT.
- Even more testing. This version will likely become 1.0 even if I
don't get the user bookmarks added. If I don't get them added in time,
that will be in version 1.1. But... you never know...
- The bookmarks menu option still doesn't do anything... don't know if it
will. It might be used for some options dealing with user bookmarks.
Monday, September 4, 2000
- Finally fixed that stupid back-paging bug. It was caused, more or
less, by bad code. To that end, all of the document display code has been
mostly rewritten to use integer offsets into the text records rather than
storing pointers. This should have been done from the beginning.
- Options now exist to keep the cached data and to skip the Project
Gutenberg license text (if it is present).
- A little dot appears in front of the document name in the document
list if a cache exists for that doc.
- There are now menu options to delete the saved caches. You can delete
the cache from the currently highlighted zTXT or delete them all.
- Fixed a file naming bug in makeztxt which occured if the input file
did not have any extension.
- Did a bunch of testing with POSE and several different text files.
GutenPalm didn't crash. Huzzah!
Wednesday, August 30, 2000
- Cache stuff relied on LocalID's not changing. They do. So now it
stores the DB names instead of their LocalIDs. Safer this way.
- Restoring an in-progress document died horribly if the user stopped
reading on a record boundry.
- Progress indicator while decompressing
- Progress while reading (given as a percentage)
- There still exists a nasty bug that will freeze GutenPalm when you are
paging backwards. However, it only occurs *sometimes* and I've yet to
figure out the circumstances. It only seems to occur on the boundry
between records 0 and 1. Hmmmmm...
Tuesday, August 29, 2000
- Added preference databases
- Caching structure for storing uncompressed data
- Persistant position when you quit while reading
- Options to keep uncompressed data around (no way to set it yet
- Bug fixes...
Monday, August 28, 2000
- started keeping a changelog