Boot Up Reminder

Authors

Publication

Pub Details

Date

Pages

See all articles from QL Hacker's Journal 25

Productivity tools for the QL are far and few between. On the PC, there is a dearth of these tools; Meeting Maker, Lotus Organizer, Maximizer, etc. One feature of most productivity tools is the ability to remind you of special days, such as birthdays, anniversaries, appointments, and so on.

Without doing much development work, a simple day reminder can be written for the QL. A good way to setup a reminder program is to have it check for special days when the QL boots up. During boot up, the program reads in the reminder data file and outputs any special days that are set for today. These special days can be set up to appear yearly (a birthday), weekly (trash day), or monthly (bills, bills, and more bills). Of course, this program will only work well if you boot up your QL at least once a day. If you boot it up less than that, you will need to set your reminders to appear days before the special day.

The format of the reminder file ( reminder_dat ) is as follows:

      T:XXXXXX:.....................

Where T is the type of reminder
W for weekly, M for monthly, and Y for yearly
XXXXXX is the date of the reminder
...... is the text of the reminder
Colons separate each field.

The program is case insensitive.

There are three types of reminders, weekly, monthly, and yearly. A weekly reminder is based on the day of the week. If you must take out the trash every Wednesday night, then you could set a reminder for Wed to say “Take out Trash.” The first field has a W and the second field has a three letter abbreviation for the day of the week. Mon for Monday, Tue for Tuesday, etc. This is all based on the format returned from DAY$.

A Monthly reminder is based only on the day of the month. If you have to pay a bill on the 1st of each month, you could set a monthly reminder to “Pay Bill” for the 1st. The first field has an M and the second field is the day of the month in a two number format. The 6th of the month would be listed as 06.

A yearly reminder is based on the month and day. This is for reminding you of things like birthdays. The first field has a Y and the second field has a three letter abbreviation for the month (Jun), a space, and the day of the month listed as two digits (06 for the 6th). The 4th of Jul would be listed as “Jul 04”.

The text of the reminder is the last field. It goes from the second colon to the end of the line. You can put anything in this text, as it is copied from the reminder file and printed to the screen.

This program can easily be included into a Boot program or it can be called from the Boot program. It simply prints out the reminders, but you can liven it up with flashing letters or beeping noises, what ever will get your attention.

100 OPEN #3,scr_350x75a75x50
110 PAPER #3,0: INK #3,2: BORDER #3,3,4
120 CLS #3
130 month$ = DATE$
140 month$=upper$(month$(6 TO 11))
150 daym$ = DATE$
160 daym$=upper$(daym$(10 TO 11))
170 dayw$=upper$(DAY$)
180 OPEN_IN #4,flp1_reminder_dat
190 REPeat loop
200 IF EOF(#4) THEN EXIT loop
210 INPUT #4,in$
220 IF LEN(in$) < 3 THEN END REPeat loop
230 colon = ":" INSTR in$
240 type$ = upper$(in$(1 TO colon-1))
250 in$ = in$(colon+1 TO )
260 colon = ":" INSTR in$
270 remind$ = upper$(in$(1 TO colon-1))
280 reminder$ = in$(colon+1 TO )
290 IF type$ = "W" THEN
300 IF remind$ = dayw$ THEN
310 BEEP 1000,10
320 PRINT #3,dayw$;" ";reminder$
330 END IF
340 END IF
350 IF type$ = "M" THEN
360 IF remind$ = daym$ THEN
370 BEEP 1000,10
380 PRINT #3,daym$;" ";reminder$
390 END IF
400 END IF
410 IF type$ = "Y" THEN
420 IF remind$ = month$ THEN
430 BEEP 1000,10
440 PRINT #3,month$;" ";reminder$
450 END IF
460 END IF
470 END REPeat loop
480 CLOSE #4
490 CLOSE #3
500 DEFine FuNction upper$(up$)
510 LOCal x, temp
520 FOR x = 1 TO LEN(up$)
530 temp = CODE(up$(x))
540 IF temp > 96 AND temp < 123 THEN up$(x)=CHR$(temp-32)
550 NEXT x
560 RETurn up$
570 END DEFine upper$

Example Reminder File:

   w:tue:This is a Tuesday Reminder
w:wed:This is a Wednesday Reminder
m:04:This is a 4th day of the month Reminder
m:13:This is a 13th day of the month reminder
y:jun 04:This is a June 4th reminder
y:jul 19:This is a July 19th reminder

Products

 

Downloadable Media

 

Image Gallery

Scroll to Top