Contents of the DVCAL.DOC file
(c) Daniel T. Travison Jr., 1987
GEnie Email: D.TRAVISON
Hotel Henge 518-399-3073 (10pm-10am)
P.O. Box 165
Burnt Hills, NY 12027
DVCAL is a simple calendar display written for Desqview 2.0+.
The program has the capability to display a range starting with
January, 1592 to December, 9999. Three key groups are provided
for moving by month, year, and century. This is the third
addition to a series of 'desq-top' utilities for Desqview and
follows the same basic ideas as the previous programs by being
simple to use, quick to respond, and requiring a minimum of system
You are granted permission to distribute this program with the
stipulation that NO remittance is accepted for either the program
or handling and distribution charges. This program may not be
distributed with other programs on disk if a charge is incurred
for any program or for the medium. In other words, if there is
a charge involved then you do not have permission to include this
The author makes no warranties expressed or implied as to the quality or
performance of this program. The author will not be held liable for any
direct, indirect, incidental or consequential damages resulting from
the use of this program. Your use of this program constitutes your
agreement to this disclaimer and your releasing the author from any form
of liability or litigation.
I am slowly but surely learning assembler and this is my most
ambitious to date. I believe I have put together a compact
calendar that is both simple to use as well as being fairly
quick. The program is capable of displaying a monthly calendar
for the years 1592 through 9999. Three modes are provided for
moving through the calendar, month, year, and century.
Desqview routines used:
1: Checks for the presence of Desqview and exits with an error
if Desqview is not found.
2: The program writes directly to the screen buffer provided by
3: The program releases the rest of the time slice when ever it
finishes a screen and also after determining that no
key has been pressed.
Desqview 2.0 :You MUST have this version or later
Dvcal.com :the executable program
Dc-pif.dvp :the program information file used by desqview
(see next section)
Reasonable compatability with the 'standard' IBM is assumed when
running this program. I use interupt 16h to check for key
strokes pending and to retrieve the same.
Program information file:
I have provided the 2 screens from change a program to illustrate the
required settings should the Dc-pif.dvp be missing or incorrect.
Five points should be noted:
1: Memory size is set to 4k. More is not needed, less will
produce an error message.
2: Maximum and starting screen size is set to 16 for the height
and 34 for the width. Increasing values will distort the
display. Decreasing these values can cause serious problems
when the program tries to write to memory that is not
allocated to it.
3: All memory options on the Advanced screen are set to zero.
changing this will only allocate memory to the program
that will not be used and is therefore wasted.
4: The close on exit to DOS option is set to yes. This
allows Desqview to use its own shell.com instead of
command.com to load the program. This saves a nice
chunk of memory that would otherwise be wasted. In
addition, the escape key will close the window as well
as exiting the program.
5: The program will appear on the Add a program (other)
menu as Desqview Calendar. Keep this in mind in case
you have a problem finding it.
Change a Program
Program Name............: Desqview Calendar
Keys to Use on Open Menu: DC Memory Size (in K): 4
Writes directly to screen......: [N]
Displays graphics information..: [N]
Can be swapped out of memory...: [Y]
Requires floppy diskette.......: [N]
Press F1 for advanced options Press when you are DONE
Change a Program Advanced Options
System Memory (in K).......: 0 Maximum Program Memory Size (in K)..:
Script Buffer Size.......: 0 Maximum Expanded Memory Size (in K):
Text Pages: 1 Graphics Pages: 0 Initial Mode: Interrupts: 00 to FF
Maximum Height: 16 Starting Height: 16 Starting Row...: 1
Maximum Width.: 34 Starting Width.: 34 Starting Column: 45
Close on exit to DOS.........: [Y] Uses its own colors.........: [N]
Allow Close Window command...: [Y] Runs only in foreground.....: [Y]
Uses math coprocessor........: [N] Keyboard conflict (0-4).....: 
Press F1 for standard options Press when you are DONE
Three keys are used to control the program function.
1: Page Up: Displays the previous month
2: Page Down: Displays the next month
3: Ctrl-Page Up: Displays the previous year
4: Ctrl-Page Down: Displays the next year
5: Ctrl-Home: Display the previous century
6: Ctrl-End: Display the next century
7: Home: display calendar for current system date
8: F1: Toggles a quick reference display of the above
9: Escape: Exits the program. Close the window when
the 'Close on exit to DOS' option is set to Y.
This program has been successfully run on the following
1: Compaq 386 (color)
2: IBM 8mhz AT (monochrome graphics)
3: My 8mhz XT. (color) This machine is an example
of the extreme in that the parts were purchased
from at least 7 different manufactures, none of
which are known for their large market share.
The CPU is a NEC V20 and the BIOS is by PHEONIX
I have written this program because I have not found a
satisfactory alternative. I have learned a little more
about assembler along the way and consider that sufficient
compensation for the time and effort spent on this
program. I do have an EGO so feel free to send comments
using one of the methods provided above. Users that are
in the same stages of learning assembler as myself may
have a copy of the source as an example of actual uses
for the routines Quarterdeck provides. Experienced
assembler programmer's will be bored and only point out
all the different areas where my ignorance of assembler.