home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Hall of Fame
/
HallofFameCDROM.cdr
/
dos
/
passwrd9.lzh
/
PASSWORD.DOC
< prev
next >
Wrap
Text File
|
1989-03-18
|
9KB
|
151 lines
PASSWORD DOCUMENTATION
Written by John Jaeger
Date: 3/15/89
Included in password.pak: PASSWORD.DOC
PASSWORD.BIN
PASSWORD.ASM
PWINT .ASM
PWINT .EXE
LOCK .COM
HISTORY
This program is a major change to PASSWRD6.ARC that was supplied by Bob
Montgomery on 1/5/87. I downloaded his program a few weeks ago while
looking for a reasonably simple password program. His program revolved
around having the ANSI system driver operating on the computer. He was
kind enough to supply the A86 assembler source code with his program,
and since I do not use ANSI or have the A86 assembler, I added all the
necessary assumes, segments, etc. as per his documentation and compiled
it with MASM. It did not work. I tried loading the ANSI driver and
used his supplied object code and everything worked as advertised.
After comparing his supplied object code with the object code produced
by MASM with symbug, I found a couple small errors in his source code
from what his object code was. This may be from two possibilities, 1)
I am not very familiar with A86 source code, and 2) the possibility
exists that after he compiled his object code he may have done some
cosmetic typing on the source before uploading and he just dropped a
couple characters. In any event his object code program does work!
Since I had to retype the source code for MASM, I started making some
changes. First, for those who do not have A86, changing the password
with Debug leaves a lot to be desired. Especially since it was stated
that you may use up to 16 characters +1 for the character count. If
someone were to do that, there is no padding in the object code for
anything over 8, therefor I suspect anyone modifying the code and
attempting more than 8 characters had the program crash. Hence, I have
made a installation program (PWINT.EXE). This program provides an
interface between the user and the ultimate .SYS file for the device
driver. Anyone can install his/her password without difficulty and
without either Debug, A80, or MASM. Second, I did not like the idea of
having anyone accidentally view the .SYS file with XTREE or any other
like program and have all the prompts and PASSWORD leap out on the
screen. I then used a small routine to remove the ASCII representation
of the characters when the PASSWORD.SYS file was written to the disk
with the user password installed. No more viewing! Third I changed
the program LOCK.COM to add the preferred 4Ch Int 21h DOS call to
terminate the program. I also added a IRET to the main program where
it returns to LOCK.COM to keep it standard.
The resident portion of the program from Mr. Montgomery was 590 bytes
long. This one is 820 byte long, however it does not need the ANSI
system for snappy screen displays as I have included direct writing to
the video RAM (Sometimes not recommended). I have tried the program on
three machines in the office here, and all are of different manufacture
with two being 286 machines (1 Portable) and one a turbo PC-XT. It
seems to function well with no glitches in the display. If for some
reason you have difficulty in that area, let me know where your display
RAM is located, and I will shoot you a copy that will work.
This is my first offering back to the GEnie IBM Software library. I
have done a reasonable amount of assembly language programming but am
far from being a whiz, so some of my ways of getting there may be
antiquated or clumsy. Please, feel free to comment both positive
and/or negative on the results of the program.
INSTALLATION
Un-archive all the files indicated above preferably on a floppy. If
you have already done this on a fixed disk, copy to the floppy (which
must have boot system and the file CONFIG.SYS in the root directory)
the following files: 1) PWINT .EXE
2) PASSWORD.BIN
3) LOCK .COM
Be sure to SAVE a original copy of PASSWORD.BIN so that if you desire
to change the password in the future you'll have the uninitialized file
to start with.
At the DOS prompt type PWINIT (ie: A>PWINIT). You should see a box
displayed in the center of the screen with a prompt to enter a
password. If it does not appear then you have neither a monochrome or
color display card in your system. PWINIT looks for either a 3 or a 7
by using the DOS interrupt 10h, Function 0FH and checking the video
mode number. If it isn't a 7 (Monochrome Display), it assumes Color
and assumes the video RAM is at 0B800H. If no display, I apologize.
I know what assume means! Just let me know what type you have and I'll
correct it.
Once you have the box with the prompt all else will work fine. The
password you enter can be up to 15 characters. Careful with spaces or
non-printing characters. The program WILL remember them exactly as you
enter them. A RETURN will enter the string and then re-display the
password for your approval. A 'N' at this point will return you to the
original prompt for password. A Control-C will exit the program.
A 'Y' answer records the password in the PASSWORD.BIN file in memory
and encodes the ASCII display. It then writes the memory image to a
file called PASSWORD.SYS. At this point for tests you may leave it
named as is. Add the device name to your CONFIG.SYS file as:
DEVICE=PASSWORD.SYS
OPERATION
Now do a boot of the system with the floppy in drive A: and you should
see the familiar box asking for your password. You have three (3)
tries to get it correct! If the correct password is given, the box
should display **** Password Accepted **** , and the floppy should
continue the boot as normal. The device is loaded into memory before
the complete image of COMMAND.COM and before any reading of the
AUTOEXEC.BAT file. If the program resides on the boot disk (Your
floppies or Hard Disk) it cannot be bypassed!
If you should fail to enter the correct word in 3 tries, the program
disables all interrupts and displays ***** Access Denied ***** and
jumps in a closed loop. This requires either Reset Switch (If you have
one) or power down!
The file PASSWORD.BIN must be on the same disk and in the same
directory as PWINT.EXE.
The program PWINT.EXE has a brief description of disk errors in the
window to assist with problems. If a disk error occurs with PWINT.EXE
(other than DOS critical errors like not having the drive door closed
etc.) the program will abort via normal DOS operations which will keep
files in order and issue a related message.
Once you are satisfied that all functions normally, rename the device
driver in your CONFIG.SYS file to something not related to a password
program and change the name of PASSWORD.SYS to match.
LOCK.COM
LOCK.COM is provided to lock the computer and require the password from
the command line at any DOS prompt. Store it with your other system
files where DOS can find it and type LOCK. It does a interrupt 66h
which is how the device driver for PASSWORD.SYS gets hold of the
system. Once you are back to the password window everything remains
the same as above. If you are using a custom shell for menus etc. you
can program the shell to issue an INT 66H with a certain key or
keystrokes and the result will be the same as running LOCK.COM.
Comments can be directed to GEnie Mail address J.JAEGER1 or by a letter
addressed to: John Jaeger
21 8th St. West
Billings, MT 59102
P.S. All donations of $10.00 would be appreciated if you find this easy
to use and a helpful program.