Category : Utilities for DOS and Windows Machines
Archive   : JULIANV3.ZIP
Filename : JULIAN.DOC

Output of file : JULIAN.DOC contained in archive : JULIANV3.ZIP
10 October 1987

Warren E. Fuller
1211 HolmeWood Dr.
Pasadena, Md. 21122

The JULIAN Program

The program JULIAN.EXE is designed for those offices like mine where too
many people have access to my PC when I'm not sitting in front of it.

JULIAN is a "SPECIAL" program, that is a program that pretends to do one
thing when its real purpose is quite another. Though it will give you the
correct Julian date, the real purpose is to lock the keyboard so that no one
can use the system unless they know the sequence to unlock it. Even the Alt
Ctrl Del sequence will not boot the system. If JULIAN is put in the
AUTOEXEC.BAT file, it will lock the keyboard on a power off reboot. Hopefully,
the person trying to use the system will then think that something is wrong
with the system and give up. Of course, if he boots with another disk, he
will then be able to use the system. If the keyboard is inactive for ten
minutes, then the keyboard will become locked, as if you had depressed the
Alt Left Shift L keys. Once JULIAN has been loaded into memory, it can be
used again to display the Julian Date without a second copy of the program
becoming memory resident.

I have debugged JULIAN with other memory resident programs, and have found
the following list of memory resident programs to work well in my PC:

SPS - Special Print Screen from Paul Troiano
KEY - SuperKey from Borland Inc.
CED - Command EDitor from C.J.Dunford
JULIAN - Keyboard Locker from W.E.Fuller
SK - SideKick from Borland Inc.
In the following list of memory resident programs, notice that I had to
change the order for the DOSKEY program to be compatible with JULIAN:
SPS - Special Print Screen from Paul Troiano
KEY - SuperKey from Borland Inc.
JULIAN - Keyboard Locker from W.E.Fuller
DOSKEY - DOS Command Editor from Jeff Prosise, Ziff-Davis Publishing
SK - SideKick from Borland Inc.

JULIAN initially comes with the default to lock the keyboard when run. The
sequence to unlock it is Alt Left Shift U. The sequence to lock it again is
Alt Left Shift L. These values may be changed by renaming the program
JULIAN.EXE to JUNK and loading it under the debugger. The locations to
change are:

32F Hex scan code of the character to lock the keyboard - originally 26 (U).
330 Hex scan code of the character to unlock the keyboard - originally 16 (L).
331 Hex code of the keyboard with the following meanings:

B7 = Insert state 80
B6 = Caps state 40
B5 = NumLock state 20
B4 = Scroll Lock state 10
B3 = Alt key depressed 08
B2 = Ctrl key depressed 04
B1 = Left shift key depressed 02
B0 = Right shift key depressed 01

Thus the original 0A is Alt Left Shift. Note that Insert, Caps lock, Num
Lock, and Scroll lock are toggles. That is, the bit is set when pressed
and then reset when pressed again. There is no indication of weither you
are in any of these states. For this reason, this byte is anded with the
keyboard mask byte (333 below) so that any or all of the state keys may
be masked out and not used.

332 Lock default, originally FF to lock the keyboard when run. Change to 00
and the keyboard will not be locked when the program is first run.

333 Keyboard mask byte, originally 0F so that only the Alt, Ctrl, and Left and
Right shift keys only are used in 331 above. This avoids getting into an
unknown state so that you have to do a power off/on boot because you can
not figure the state out. If you desire to use the state keys, put a one
in the bit position of the state you desire to use, such as 8F to enable
all of the shift keys and must be in the insert state for them to work. It
is recommended that you enable only one of the state keys so that you never
get into an unknown state that you can't get out of.

334-335 Is a WORD that contains the value A8 2A which equals 2AA8 (10920) and
this value is determined by ((18.2 * 60) * 10). 18.2 timer interrupts per
second equals 1092 per minute and 10920 for ten minutes. If you change
this value, remember to reverse the upper and lower halves of the word so
that 334 contains the LSB and 335 contains the MSB.

After the locations are changed to the values you wish, do a w command to write
the file back to disk. Exit the debugger and rename the program back to
JULIAN.EXE. The program is now ready to run with the new parameters.


This three key combination can be changed by using DEBUG in the
following manner:

the bytes at location
32F equals 26 which is the scan code for the letter "L" or "l"
330 equals 16 which is the scan code for the letter "U" or "u"
331 equals 0A which is the bit map within KB_FLAG
LEFT_SHIFT = 02H...:
ALT_SHIFT = 08H...:

the following Debug commands will change the program so that it is
necessary to use the letter "S" or "s" to lock the keyboard and
the letter "G" or "g" to unlock the keyboard in conjunction with
the "Ctrl key", and the "Alt key":

(3) -e32F 1F 22 0C
(4) -w
(5) -q

next, issue this DOS Command: RENAME JUNK JULIAN.EXE

Any question concerning this DOS resident utility should be directed
to :
Warren E. Fuller
1211 HolmeWood Dr.
Pasadena, Md. 21122

You can also leave me a message on the following Bulletin Boards:

BBS Name SysOp Phone Nr.
-------- ----- ---------
OverBoard Tom Collins (301) 850-5839
Saloon Mike Trubow (301) 757-9075
GoodNite Kyle Goodnight (301) 655-3996
Brungot George Brungot (301) 268-5821
Chesapeake Vince Castelli (301) 267-4930
PainFrame Marek Majewski (301) 488-7461
AviTech Tom Hendricks (301) 252-0717
Futurists Stephen Hendricks (301) 529-0716
Balt. Online John Madill (301) 484-2831
AmVets Barry Davis (301) 551-7376
SyncPoint Bob Gawryck (301) 682-2731
Comp-U-Type Jim Hamby (301) 761-0802


  3 Responses to “Category : Utilities for DOS and Windows Machines
Archive   : JULIANV3.ZIP
Filename : JULIAN.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: