Dec 162017
New Hebrew calander that optionally displays Hebrew.
File TJC.ZIP from The Programmer’s Corner in
Category Databases and related files
New Hebrew calander that optionally displays Hebrew.
File Name File Size Zip Size Zip Type
TJC.DOC 20975 6844 deflated
TJC.EXE 47615 24988 deflated

Download File TJC.ZIP Here

Contents of the TJC.DOC file

THE Jewish Calendar (TJC)

Copyright (C) 1989 Dataform Corporation
All Rights Reserved

With THE Jewish Calendar (TJC) program, you can dispense with
your Jewish calendar book or perpetual calendar. All Jewish
dates, holidays, and the Sabbath Torah reading (Shabbat parshiot)
are available online at the touch of a key.

The program is fully menu driven with the menu window popping up
at the touch of the F1 key. The program is executed by entering
its name, TJC. The following features are currently available by
use of the respective function key:

(F1) Menu of options display.

(F2) By entering a civil year, January of that year will
appear on the screen. The left and right arrow keys will advance
the months in either direction. The equivalent Jewish calendar
month and days will appear next to the civil date information.
Dates in the range of 1827 through 2205 may be entered.

(F3) By entering a Hebrew year, the Jewish month of Tishrei
will appear on the screen. The left and right arrow keys will
advance the Jewish months in either direction. The equivalent
civil month and days will appear next to the Jewish date
information. Dates in the range of 5587 through 5965 may be

(F4) Pressing this key will display all of the Jewish holidays
for the currently displayed year.

(F5) This key will display various statistics about the Jewish
year that is currently being displayed. Among the statistics is
the molad (the exact beginning of the lunar month) for each
Jewish month. Note: these are not the direct molads needed to
calculate the last time that Birkat Lavanna (the blessing of the
New Moon) can be recited. Rather, these are the true mathematical
molads as needed in performing calculations for Jewish calendars.
(See below for a discussion of the meaning of the molad.)

(F6) Pressing this key will display the parshiot (weekly Torah
readings) in the column along side of the Shabbat. With this
display on the screen, entering a right or left arrow will
advance the month in the proper direction and automatically
redisplay the parshiot. This alleviates the need to press escape,
right arrow, and then F6 again in order to redisplay the
successive month's parshiot.


Calendar Orientation

TJC always displays two calendars, the civil calendar and the
Jewish calendar. The current orientation of TJC is determined by
which calendar is displayed above the other (and is in bold
characters). The calendar advances forwards and backwords on a
month to month basis whenever the right or left arrow keys are
entered. A month is defined by the orientation. If the program is
currently displaying March (i.e., civil orientation), then
hitting the right arrow will display April and the appropriate
Jewish dates that correspond to April. By entering F3, the user
is requesting TJC to display the first month of whatever Jewish
year he entered. This will always be the month of Tishrei. The
corresponding civil months (usually September and October will
appear underneath. When he now hits the right arrow key, TJC will
advance one Jewish month to Cheshvan since that has now become
the current orientation. The corresponding civil months are
appropriately updated underneath.

To return to a civil orientation, enter F2 and the particular
civil year you want to see. Then use the left or right arrow keys
to get to the particular month of interest.

In addition to the above features available within the program,
there are a number of "switches" that can be used when initially
running the program. For example, to display a list of all the
available switches, enter "TJC -H". All switches must start with
a minus sign.

Display in English or Hebrew:
TJC automatically displays all of its output in English. If you
have a computer that displays the Hebrew alphabet or if you have
an EGA display, you can optionally request TJC to display all
information in Hebrew. The screen output will appear with the
proper Hebrew orientation, i.e., from right to left (Sunday will
appear on the right side of the screen). For computers having
EGA displays, TJC automatically downloads the Hebrew alphabet
into the EGA adapter card. This option is invoked as follows:
"TJC -LH". The default is "TJC -LE".

Screen Display Mode:
Certain IBM compatible computers aren't so IBM compatible. While
writing directly to the display screen is much faster than using
the ROM BIOS, a much higher degree of compatibility is achieved
when using the BIOS. By default, direct screen I/Os are
performed. To change the display method to use the BIOS, enter
"TJC -SB".

Introductory Header:


The introductory header displayed when first invoking TJC can be
bypassed by using the switch "U", as follows: "TJC -U".

Black/White & Laptops:
TJC utilizes color to enhance its output. If you are using a
black and white monitor or are using a laptop computer, then run
the program with the following switch: "TJC -B".

Help output:
A list of all available switches can be printed by entering
"TJC -H". The following output is then displayed:

-l defines the language orientation:
-le (default) is for English.
-lh is for Hebrew.
-s defines how screen I/O is to be performed:
-sd (default) is for direct screen I/O.
-sb uses the system BIOS calls.
-u skips the introductory output header.
-b changes display to black/white for laptops.

The Future

In future versions of this program, the following features will
be added (but not necessarily all at one time nor in the order

(1) The F7 key will be implemented making direct Bar Mitzvah
calculations available without having to count forward 13 years.

(2) The program will be made into a TSR program so that a user-
specified "hot key" will automatically bring the program up from
whatever application you are in.

(3) A switch will be added allowing the program to display
holidays and parshiot for Israel as opposed to just for outside
of Israel.

(4) A print option will be added, allowing printout of the
currently displayed month or of an entire year.

(5) Yahrzeit data maintenance, display and retrieval will be

(5) Mouse support will be added.


If you uncover any errors, mistakes, bugs, etc., please call or
write to me:

Joseph Berry
1498-M Reisterstown Rd.
Suite 272
Baltimore, MD 21208




Many hours of work went into the development of this program. If
you feel that the program is of value to you and that you will
benefit from its use, I ask you to please register it with me. I
am requesting a $7.50 registration fee (much cheaper than buying
a Jewish Perpetual Calendar book!).

In addition, I am offering an additional incentive. For $14.00,
you will not only become a registered owner of TJC but will also
receive one free update of the program as soon as it is released.

For those of you who are programmers or programmers to be, I am
offering one last incentive. For a total price of only $30.00,
you will become a registered owner of TJC and receive one free
update of the program as soon as it is released. In addition, you
will immediately receive a diskette containing all of the source
code to TJC. You can use the source code to study the calendar
algorithms and to customize the program by changing the displays
and display formats. In addition, you can add your own features
to the program (if your additions might be of interest to other
people, please let me know what you did). The windowing portion
of this program was developed using The Window BOSS windowing
package from Star Guidance Consulting, Inc., 273 Windy Drive,
Waterbury, Conn., 06705. This, too, is a Shareware product. By
purchasing the source code diskette to TJC, you will additionally
receive from me the two-diskette Shareware BOSS windowing
package. This package includes the libraries that you will need
for linking TJC. It comes with a comprehensive manual that
describes the dozens of procedures that are used to create and
maintain windows and manage data input. You can use this package
for any other applications that you may have.


The Jewish Calendar


The Jewish calendar is one of the oldest calendars in the world.
Certainly it is the oldest calendar in the world that is in
active use today. This calendar enjoys an additional unique
property in that it is based both on the solar and lunar cycles.

Our civil calendar (also known as the Gregorian calendar) that
uses the familiar months January, February, etc., is strictly
solar based. This means that each year corresponds to the
(apparent) return of the sun to the same place in the sky that it
was a year ago. Stated another way, it means that the earth has
rotated once in its orbit around the sun.

In a lunar based calendar (for example, the Moslem calendar),
each month is defined as one complete cycle of the moon. While at
first glance, this time period would seem to be the same as the
solar cycle, it isn't. Our solar year is based upon 12
approximately equal months which total to 365 days (I'm ignoring
the leap year since it only adds one additional day every four
years). Our moon rotates around the earth every 29 1/2 days. In
a lunar 12 month year, that totals to 354 days, a difference of
11 days. After two years, the solar and lunar calendars are 22
days apart. The effect of this difference is most apparent with
religious holidays. A holiday based on a lunar calendar will from
time to time fall out not only on different dates within the
solar calendar but also in different seasons of the year. For
example, assume for a certain year there was a religious holiday
that corresponded to January 1st of that year. In the next year,
this holiday would occur 11 days earlier, on December 21. After
three years, it would occur on Nov 29. After ten years, this same
holiday would occur in the summer months.

As stated earlier, the Jewish calendar is both lunar and solar
based. Primarily, it is a lunar calendar. Each month corresponds
to the rotation of the moon around the earth. Each month usually
starts when the moon is new (i.e., when the moon is between the
earth and the sun). The word "usually" is used since certain
phenomena may lengthen the month by one or more days. In general,
however, the Jewish months alternate between being 29 days and 30
days long. This corresponds to the true lunar cycle of 29 1/2
days. However, we are still left to deal with the 11 day
discrepancy that occurs at the end of each year. This problem is
resolved in a similar manner to the leap day that is added every
four years in the civil calendar. But instead of adding 11 days
every year, the calendar adds one whole month every two to three
years. The month of Adar is the month that precedes the Jewish


holiday of Pesach (Passover). When the leap month is added, Adar
becomes Adar I and Adar II. It is for this reason that Pesach can
sometimes occur as early as mid-March and as late as the end of


As stated above, the Jewish calendar consists of 12 and sometimes
13 months. Each month contains either 29 or 30 days. While the
months basically alternate in their count, there are two months
that are not fixed. These months, Cheshvan and Kislev, can each
sometimes contain 29 or 30 days. If they each contain 29 days,
then the length of the year will be one less than 354 days, i.e.,
353 days. If they both contain 30 days, then the year will be 355
days long. We see then that the Jewish calendar can contain 353,
354, or 355 days. Add on top of that the fact that the year may
also contain an additional month, we now have a year which may
also contain 383, 384, or 385 days.

Why are the months of Cheshvan and Kislev not fixed? The Jewish
sages instituted certain rules for the Jewish holidays to avoid
particular problems. For example, the Jewish Shabbat is a day
when no manner of work is allowed to be performed, including the
preparation of food. If Yom Kippur were to occur on Friday or
Sunday (this day has the same restrictions as the Shabbat), then
there would be two such restricted days in a row. To avoid such a
situation, the declaration of the Jewish New Year (Rosh HaShana)
is sometimes delayed by a day from its true determination by the
addition of a day in the preceding year's month of Cheshvan or
Kislev. Actually, there are three additional reasons why Rosh
HaShana may be delayed. A full explanation of these reasons is
beyond the scope of this paper.

Molad and Jewish Year

The Jewish year (this year, 1989-1990, is now the Jewish year
5750) is based on the Biblical beginning of the world. It
assumes that the seven days of creation as discussed in Genesis
were seven 24 hour days long (there are Jewish sources which
understand this time period differently). All subsequent
calculations are based on time periods inferred from the Bible,
Talmud, and other Jewish sources.

The years used in the Jewish calendar that have the extra month
of Adar II vary from year to year. They are based on a 19 year
cycle, as follows: years 3, 6, 8, 11, 14, 17, and 19 all contain
13 months. The other years contain 12 months. This cycle
continuously repeats itself.


The Jewish sages (Maimonides, almost 1,000 years ago) knew the
actual period of the rotation of the moon to be 29 days 12 hours
44 minutes 3 1/2 seconds. This is the average time between one
new moon and the next new moon. This length of time is called the
molad and constitutes the true theoretical beginning of each

We assume that the length of the molad has not noticeably changed
between 5,000 years ago and today. Therefore, it is not difficult
to calculate the molad, for example, for the month of Tishrei
(which is Rosh HaShana) for any year. Simply count up all of the
months that have passed (remember, there are 12 month years and
13 month years) and multiply them by the molad. This will give an
exact determination for Rosh HaShana for any year, past or
present. Note, however, as we have discussed above, that the
actual date that is used for the beginning of the celebration of
Rosh HaShana may vary from its true molad.

The entire Jewish calendar system is based upon the molad. All
calculations in TJC revolve around its use.


During the Jewish Shabbat morning services each week, a portion of
the Torah is read. The Torah consists of the Biblical books
Genesis, Exodus, Leviticus, Numbers, and Deuteronomy. These books
are divided into weekly portions so that at the end of each year,
the complete Torah has been read in synagogue. These weekly
readings, or parshiot, may sometimes vary from year to year
depending on whether a holiday occurs on the Shabbat. When this
happens, a special portion of the Torah is read instead. In
order to fulfill the requirement of reading the entire Torah each
year, certain parshiot are doubled up. Additionally, other
parshiot are always doubled during a 12 month year. Only when a
leap month is present in a particular year are these parshiot
read individually.


Hebrew is the language of the Jewish people. The Jewish calendar
is likewise best known by its Hebrew names. TJC accommodates both
English-speaking users and Hebrew-speaking users.

For English-speaking users, the program displays all Hebrew words
in their transliterated form. Remember, the letters "ch" are not
pronounced like "ch" in cheese; but, rather, they have a guttural
sound like the Irish "Loch Ness" or the German "Ich!". This is
the default mode of TJC when executed with no overriding



For Hebrew-speaking users, TJC displays its calendar in Hebrew
using the standard Israeli definition of the location of the
Hebrew aleph-bet in the ASCII code sequence. For example, the
letter aleph is represented by the ASCII code 128. If your
computer is equipped with a Hebrew character chip, then TJC will
work fine. For users that do not own a Hebrew character chip, but
do own an EGA monitor (now you know why it's worth having EGA!),
TJC will automatically download a Hebrew font into the EGA card
and utilize this font. Even if you don't speak or read Hebrew,
you might enjoy trying this option. Remember, though, Hebrew is
read from right to left. Sunday will appear on the right side of
the calendar display instead of the left side.


Registration Form

Dataform Corporation
1498-M Reisterstown Rd
Suite 272
Baltimore, MD 21208

Name: _______________________________________

Address: _______________________________________


City, State, Zip: _______________________________________

Country: _______________________________________

Phone: _______________________________________

___ Shareware registration of your current version. $7.50

___ Shareware registration of your current version PLUS one
free update diskette upon release of the new version of
TJC. $14.00

___ Shareware registration of your current version PLUS one
free update diskette upon release of the new version of
TJC PLUS immediate receipt of the source code diskette
of current version of TJC plus 2-diskette Shareware
package of The Window BOSS. $30.00

All funds must be in US Dollars, personal checks Accepted.
All checks must be drawn against a US Bank and payable in
US Dollars.

 December 16, 2017  Add comments

Leave a Reply