File PA.TK

Directory of image this file is from
This file as a plain text file

/******** MULTI8 PASSWORD TASK ********
/CREATED 8-JANUARI-75, ELC
/
/THIS TASK INTERROGATES THE TELETYPE OPERATOR AND ASKS
/HIM FOR A PASSWORD. IT COMPARES THE RESPONSE WITH SYSTEM PASSWORD
/AND TELLS THE CALLER WETHER IT WAS RIGHT OR WRONG VIA THE LINK.
/ON ENTRY THE AC SHOULD CONTAIN THE NAME OF THE TELETYPE
/INPUT HANDLER. ON EXIT, THE AC IS STILL THE SAME.
/THE USERS INPUT IS OVERPRINTED AND HE IS INFORMED WETHER HE
/CAN HAVE ACCESS TO THE SYSTEM.

PASSWRD="S^3+"E^3+"S^3+"A^3+"M^3+215 *200 "P^100+"A&3777 /NAME IS PA 200 /ONE PAGE SHOULD BE OK PATMP, 0 PA, DCA PASAVE TAD PASAVE DCA PAIDEV /SET UP INPUT REQUEST TAD PASAVE TAD ("T-"K^100 DCA PAODEV /SET UP OUTPUT REQUEST JMS PACRLF JMS PAPRNT /GIVE INITIAL DIALOGUE TEXT *PASSWORD: * JMS PAREAD TAD PANUMB /GET INPUT WORD TAD (-PASSWRD SNA CLA JMP PAOK /PASSWORD IS OK JMS PAPRNT /PASSWORD IS WRONG TEXT *SORRY, YOU FAILED* JMS PACRLF AC4000 JMS PATYPE /RELEASE TELETYPE CLA STL /SET LINK MEANS NOT OK PAEXIT, TAD PASAVE /RETURN TELETYPE HANDLER'S NAME TO CALLER JMS MONITOR EXIT SWPOUT PAOK, JMS PAPRNT TEXT *OK!* JMS PACRLF AC4000 JMS PATYPE /RELEASE TELETYPE CLA CLL /ZERO LINK MEANS OK JMP PAEXIT PATYPE, 0 /SINGLE CHARACTER OUTPUT ROUTINE TAD (4000 /SET TELETYPE HOLD-BIT JMS MONITOR CALL PAODEV, 0 JMP .-3 /BUSY ? LOOP CDTOIF JMP I PATYPE PACRLF, 0 /CARRIAGE-RETURN-LINEFEED ROUTINE TAD C215 JMS PATYPE TAD C212 JMS PATYPE JMP I PACRLF
PAPRNT, 0 /PACKED ASCII OUTPUT ROUTINE TAD I PAPRNT RTR RTR RTR JMS PAPR /OUTPUT LEFT BYTE TAD I PAPRNT ISZ PAPRNT /BUMP POINTER JMS PAPR JMP PAPRNT+1 /GET NEXT WORD PAPR, 0 /SIXBIT-TO-ASCII CONVERSION AND C77 SNA JMP I PAPRNT /YES, RETURN TAD C240 AND C77 TAD C240 JMS PATYPE /OUTPUT IT JMP I PAPR PAREAD, 0 /ROUTINE THAT READS AND HASHES PASSWORD JMS PAGET DCA ZTEM1 TAD PANUMB TAD PANUMB TAD PANUMB TAD ZTEM1 DCA PANUMB /UPDATE HASHED WORD WITH NEW CHAR ISZ PACNT /COUNT NUMBER OF INPUT CHARS TAD ZTEM1 TAD M215 SZA CLA JMP PAREAD+1 /NOT END, GET NEXT CHAR JMP I PAREAD /READY, RETURN PAGET, 0 /SINGLE CHARACTER INPUT ROUTINE CLA CLL JMS MONITOR CALL PAIDEV, 0 /NAME OF INPUT HANDLER JMP .-3 /BUSY ? LOOP CDTOIF DCA PATMP TAD PATMP JMP I PAGET PASAVE, 0 /SAVED NAME OF INPUT HANDLER PACNT, 0 /COUNTER FOR INPUT CHAR'S PANUMB, 0 /ACCUMULATED INPUT WORD $



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search