
; Copyright 2004-2005 Christopher Evans
; email:   axiomfinity@ymail.com
; Website: http://nxdos.sourceforge.net/
;                                                                           ;
;       This program is copyrighted, but may be freely distributed          ;
;       under the terms of the Free Software Foundation's GNU General       ;
;       Public License v2 (or later.)  See the file COPYING for the         ;
;       legalities.  If you did not receive a copy of COPYING, you          ;
;       may request one from the Free Software Foundation, Inc.,            ;
;       59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.           ;
;       ABSOLUTELY NO WARRANTY -- use it at your own risk!                  ;
;                                                                           ;

code            segment byte public
                assume  cs:code, ds:code
                org     100h
genpw           proc    far

start:          jmp     initialize
include         \nxdos\src\toolbox.asm
                
password db 8 dup(0),0

initialize:
           lea  si, password
           mov ax, 65
           mov bx, 90
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al
           inc  si
           mov ax, 65
           mov bx, 90
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al
           inc  si
           mov ax, 65
           mov bx, 90
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al
           inc  si

           mov ax, 48
           mov bx, 57
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al

           inc  si
           mov ax, 48
           mov bx, 57
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al
           inc  si

           mov ax, 65
           mov bx, 90
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al
           inc  si
           mov ax, 65
           mov bx, 90
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al
           inc  si
           mov ax, 65
           mov bx, 90
           mov cx, 0
           push si
           call random
           pop  si
           mov  byte ptr ds:[si], al
           inc  si

           _print password, 1
           _newline

exitptr:        call dosexit
                int 20h      

genpw           endp

code            ends

ProgramEnd      EQU $-01h

                end     start
