Zaval Creative Engineering Group Zaval Logo
 Product Overview
 Software Architecture
 Technical summary
 Competitive Analysis
 - IT Specification
 - SW Accompanying Report
 - User's Guide
 - Test Plan
 - Deployment Plan
 Software Acquisition
 - Download
 - Data Files
 - Additional Resources
 - Success Stories
 Quality Assurance
 - Quality policy
 - Test Protocol
 - Test Suite
 Maintenance and Support
 - Bug Database
 - Branch Versioning
 - Further Product Plans
 - Contact Info
 Legal Information
 - Distribution License
 User's Guide English | Russian 
This User's Guide is available as a PDF document(pdf/zip/gz) and in HTML form(see below/zip/gz) respectively.

Zaval Advanced TV Guide

Version 2.0

User's Guide

Zaval Creative Engineering Group


Introduction to the Zaval Advanced TV Guide (ATV).

  What Can You Do with the Zaval Advanced TV Guide?

Installing the Zaval Advanced TV Guide.


  Installation procedure.

Installing the Zaval Advanced TV Parser.


  Installation procedure.

Using Zaval Advanced TV Guide.


  Data Files.

Using Zaval ATV Parser.

  Parse command.

  Load/save commands.

  List/fulllist commands.

  Now command.

  Purge command.

  atv.ini configuration file.

  TimeZone, time difference, etc.

  Include/exclude rules.


  Usage examples.

  Working with different OS and encoding.

Further product plans.

Support available.

Stay informed!

Introduction to the Zaval Advanced TV Guide (ATV)

Zaval Advanced TV Guide (also known as ATV) is a small and nifty program that allows TV schedule viewing with your PDA, so you will be always informed on what's on TV. With our product you can do TV programs tracking and much more!

Zaval Advanced TV Guide is easy to use software with user-friendly interface and rich set of features to manage and control TV programs. Now it has parse-and-download modules for:

  • Euro TV (
  • NTV+ (
  • Ajara TV (
  • Evening Minsk (
  • Cosmos TV (
  • CityCat (
  • RBC (
  • VseTV (

This listing covers EuroTV, BBC World, CNN, Discovery and many others well-known TV channels. Moreover, this list can be easily extended to support any others sites.

Zaval Advanced TV Guide comes with English, German, French and Russian support pre-configured. Alternatively, you can add your own language support.

Zaval Advanced TV Guide consists of two programs:

  1. ATV-Palm - TV schedules viewer for Palm.
  2. ATV Parser - TV schedule download/view/convert utility

What Can You Do with the Zaval Advanced TV Guide?

Zaval Advanced TV Guide allows you various TV schedule manipulations: you can select programs you don't want to miss and control them, browse schedules for any day of the week (it depends on the TV schedule data files), etc.

Installing the Zaval Advanced TV Guide

This section describes Zaval ATV Guide installation process in details.


PalmOS 3.x or higher.

Installation procedure

  1. Unpack zip/tarball with ATV to an empty directory.
  2. Uninstall any previous product version and its data files before installation.
  3. Install version of atvpalm_LL_XXX.prc with appropriate localization into you PDA. The following versions are available:
    1. atvpalm_ru_XXX.prc - russian interface translations;
    2. atvpalm_de_XXX.prc - german interface translations;
    3. atvpalm_en_XXX.prc - english interface translations;
    4. atvpalm_fr_XXX.prc - french interface translations;

When you complete the steps above ATV itself is ready to use. To start, you need to download TV schedule data files. See Using Zaval Advanced TV Guide -> Data Files section for more details.

Installing the Zaval Advanced TV Parser

This section describes Zaval ATV Parser installation process in details. Actually, this is not necessary if you don't want to prepare TV schedule files yourself. See Using Zaval Advanced TV Guide -> Data Files for more details.


In order to run the program you will need the Java Runtime Environment (or JDK) version 1.4.x. It can be downloaded from the (choose the International version).

Installation procedure

  • Unpack zip/tarball with ATV Parser to an empty directory.

When you complete the steps above ATV Parser is ready to use.

Using Zaval Advanced TV Guide

This section explains all tips and tricks in Zaval Advanced TV Guide usage.


Working area of the Zaval Advanced TV Guide is as follows (see Figure 1):

Figure 1. ATV main screen

There are 3 columns: program start, program title (underlined, if there is annotation available) and checkbox (Alarm).

Zaval Advanced TV Guide supports 3 basic filter types:

  • by channel
  • by time
  • by selection

Below we show these filters usage by example.

Note: you can scroll through listings either by using scrollbar or with "up" and "down" keys.

On this sample screen you can see channels available and schedule that are on right now (have a look at the "Now" selector at the top). Alternatively, you can see what is on today, any day of the week or even get full listing available - see Figure 2.

Figure 2. ATV - choosing schedule date/time range

Suppose, you have already selected programs that you don't want to miss and want to make a brief overview of this selection. It can be done by another selector - see Figure 3. Now you can see only selected programs, only unselected or both.

Figure 3. ATV - show All programs/Selected only/Unselected only

Sometimes it is useful to see only one channel per screen or several channels instead of all of them. This task can be simply accomplished with left-top selector - see Figure 4.

Figure 4. ATV - channels selection

The result of this selection is Figure 5.

Figure 5. ATV - single channel selected

Some programs go with a brief annotation (Figure 6). To see it make a click on the desired program.

Figure 6. ATV - view program details

Additionally, you can customize several settings, such as:

  • Time when "day" starts;
  • How many hours should be shown when "Now" is selected;
  • Sorting rules;
  • Your TimeZone(only for Palm OS 3.x. For PalmOS 4 and newer we detect TimeZone settings automatically - please, check your device TimeZone settings if there is a problem);

And more - see Figure 7.

Figure 7. ATV - preferences

New features that were added in version 2.0:

Alarms support - it means that you can set up sound alert to notify you before selected TV show will begin.

Figure 8. ATV - Alarms settings

Different fonts support for Sony Clie (4 fonts).

Figure 9. ATV - Fonts settings

Data Files

Data files are files that contain all TV schedule data. There are several ways to get them:

  1. You can download them from our site We collect them periodically from various sites - full list is available.
  2. You can make them yourself using our ATV parser utility - see below.

Note: All channels are stored in the pdb format.

After you get desired channels TV schedule files you need to install them into your PDA.

Using Zaval ATV Parser

Zaval ATV Parser allows you to make data files by hands.

Command syntax: java -jar atv.jar <command>

where <command> can be one of the following:

  • parse
  • load/save
  • list, fulllist
  • now
  • purge

Let's go through this list.

Parse command

This is on of the most useful commands; it serves for loading TV schedule from external sources.

Full command syntax:

java -jar atv.jar parse [module_name] [--charset=<>] [file1]...[fileN]


  • module_name - module name that should be used to parse the TV-schedule.
    Currently supported:
    • eurotv (
    • tvtodayde (
    • cosmostv (
    • vm (
    • citycat (
    • ajara (
    • vsetv (
    • kulichki (
    • ntvplus (
    • caravankz (
    • albadpua (
    • rbcru (
    If module name is not given, the program will print names of all available options.
  • --charset=<charset> - you can specify the cahrset of files to parse. This option may be used several times, i.e.
    --charset=Cp1251 <files_for_this_charset> --charset=UTF-8 <files_for_UTF-8>
  • [file1...N] - names of files for parsing; if they are specified, the program will try to parse these files. If files are not specified, the module will try to download TV schedule from the corresponding site directly.

Load/save commands

It is used to convert between various TV-schedule formats.

Full command syntax:

java -jar atv.jar load [module_name] [file1]...[fileN]


java -jar atv.jar save [module_name] [file_name]

If module name is not specified, all available modules are listed. Modules currently supported: listtv (for ListTV), palm (for ATV-Palm), jtv (for JTV), internal (for ATV). This command loads/saves data into specified format. Usually using save command does not need to have the file expressly - this way the default file name will be used. Load command can also use defaults.

JTV module has some specifics. Command save uses file names as prefix, i.e. you specify folder name where the files will be saved. Load command needs files without extensions since there are 2 files per each channel with different extensions. It is also possible to specify after "load jtv" a key --fromdir= - then all files will be loaded from that folder.

Palm module has some additional parameters for save command too. Schedules of various channels can be put to separate files. To use this feature try --separate-channels parameter. Alternatively all data from various channels but from one site can be put in one pdb file, but for each site it will be different file. This feature is available through --separate-sites parameter.
Syntax: java -jar atv.jar save palm [--separate-channels | --separate-sites] [file_name_prefix_with_path_to_file]

List/fulllist commands

Show the list of channels or list of all saved programs.

Now command

Shows programs currently on air.

Command syntax:

java -jar atv.jar now [number_of_hours]


  • number_of_hours - you can specify period of time for which you want the programs to be listed starting from "Now".

Purge command

Removes old TV schedule data. This is the only way to clean it up.

Command syntax:

java -jar atv.jar purge [since_when]

If no since_when date is specified, all data older than 24 hours is removed.

atv.ini configuration file

General rule - lines beginning with '#' are comments and are ignored.

Proxy setup commands:

  • local.proxy_host - sets the local proxy name. If it is not specified, direct connection will be used;
  • local.proxy_port - specifies proxy port(8080 by default);
  • local.proxy_auth - if necessary, sets the proxy authorization in username:password format;

Schedule list setup commands:

  • list.override - by default "no"; if "yes", schedule will be overwritten when new data is downloaded, otherwise old data will be retained;
  • list.defaultlength - length of last program in minutes if length cannot be determined;
  • local.TimeZone - see TimeZone, time difference, etc. chapter; system timezone by default;
  • <module_name>.charset - see Charset chapter;
  • list.include - see below;
  • list.exclude - see below;

TimeZone, time difference, etc

Because we live in different time zones, the time zone difference should be accounted. Inside ATV all time is tracked in GMT which simplifies time zone calculation. When printing data for you on the screen (and saving to most formats) the time zone is calculated using system timezone settings. In UNIX systems, you can set the TZ environment variable or using file /etc/timezone. In Windows - use a mouse ;)

Because of all time is calculated on TimeZone but not on time offset, daylight savings time is supported automatically. If you don't like the time of your system, use a line atv.ini local.TimeZone, where you specify necessary time zone.

Full modules listing with their default TimeZones:

  • eurotv.TimeZone=Europe/EST;
  • tvtodayde.TimeZone=Europe/Berlin;
  • cosmostv.TimeZone=Europe/Minsk;
  • kulichki.TimeZone=Europe/Moscow;
  • ajara.TimeZone=Asia/Tbilisi;
  • citycat.TimeZone=Europe/Moscow;
  • vm.TimeZone=Europe/Minsk;
  • vsetv.TimeZone=Europe/Moscow;
  • ntvplus.TimeZone=Europe/Moscow
  • caravankz.TimeZone=Asia/Almaty
  • albadpua.TimeZone=Europe/Kiev
  • rbcru.TimeZone=Europe/Moscow

Include/exclude rules

There are following rules for loading/not-loading channel data (see atv.ini file):


  • list.include
  • list.exclude

Custom for each module:

  • <module_name>.include
  • <module_name>.exclude

Each of these parameters may enumerate channels separated by semicolon (';'). Parameters for each module have priority, i.e. if list.exclude specifies some channel but it is included in <module_name>.include - the channel will be loaded, but using only this module, and vice-versa. If only one channel is specified in include, no other channels will be loaded. If no include (local or global) are specified - module will be loading all channels but excluded.


All modules that support load/save command make use of <module_name>.charset parameter. This parameter tells which encoding to use when loading and saving data. It should be any charset used by Java. If this parameter is not specified, your system encoding is used.

Usage examples

"java -jar atv.jar parse citycat" - loads schedule from internet form CityCat site

"java -jar atv.jar parse vm --charset=Cp1251 1.html 2.html 3.html" - load TV schedules from files 1.html,2.html,3.html, downloaded from site using 1251 code page

"java -jar atv.jar save palm" - converts TV listing to palm format (TVProgram.pdb)

"java -jar atv.jar load jtv CNN TV6" - loads schedule using jtv format from files CNN.* and TV6.*

"java -jar atv.jar now 3" - shows current schedules and those within 3 hours on air

"java -jar atv.jar purge" - purges old data

Working with different OS and encoding

When using Russian language in Regional settings, Windows uses Cp1251, so file atv.ini is saved in this encoding.

There is a different story for UNIX. Encoding is set using LANG environment variable, but, because of java tricks, it can't work with 1251 predictably. There are two options - to use KOI8-R, then the following settings should be used: LANG=ru_RU.KOI8-R, or Unicode(UTF8), for which the following settings should be used: LANG=ru_RU.UTF-8. Second one, IMHO, is the right way.

atv.ini file should be in system encoding, otherwise java will not be able to read it.

Further product plans

In the future the following features are going to be added:

  • improvements in *.pdb creation
  • direct data files download from Internet
  • disable/enable checkboxes
  • multiline support for names
  • sort of channel list (automatic and by hand)
  • save different "Selected..." channels list
  • black list, white list, and select list of program
  • different mode of selection (with program types)
  • find by title and by announce, with global find support
  • timezone from OS
  • loadable fonts
  • font changes for announces
  • separator between fields in top string
  • separate program time and announce in details(by underling ?)
  • separate programs by day in main table
  • vibra
  • right date sorting and output in 00.00 mode
  • check box for program in detail form
  • memory stick support
  • database on card support
  • labels for list call(channels,date, sel) - to buttons
  • showview support

Support available

All support for software installation and problems should be sent directly to with 'Re: Zaval ATV Guide Support' in subject line and plain text in the message body, describing your request and/or your problem. Since this software is distributed under the General Public License and is maintained by its authors on non-commercial basis, your request will be answered as soon as possible, but no later than 5 business days.

The Zaval Creative Engineering Group carries out its software customization/new software development on the regular basis. For more info contact us at

Stay informed!

Now you can receive information on latest products' updates and hotfixes via email.
This is a low-traffic list (1-2 messages per month). To subscribe, send blank mail to

For more information about the product, please contact Zaval CE Group directly in a free form.

Thank you,
The Zaval CE Group.