home *** CD-ROM | disk | FTP | other *** search
- ; --- PATCH TO CP/M 2.X TO LIST USER # IN DRIVE PROMPT ---
- ; ( VALID FOR CP/M 2.0, 2.1, AND 2.2)
- ; BY BRUCE KENDALL (TKI)
- ; 7/12/80
- ; TIGHTENED UP BY BRUCE RATOFF
- ; 11/17/80
- ;
- ; IF YOU HAVE TRIED PLAYING WITH THE 'USER' COMMAND
- ; IN CP/M 2.X, YOU MAY HAVE BECOME ANNOYED THAT THERE
- ; WAS NO WAY OF TELLING WHAT USER AREA YOU WERE IN. THIS
- ; PATCH SOLVES THIS PROBLEM BY DISPLAYING THE USER NUMBER
- ; IN HEX ( A SINGLE CHARACTER SINCE USER # : 0-15 ARE VALID)
- ; BETWEEN THE DRIVE NAME LETTER AND THE '>'. THAT IS, A USER
- ; LOGGED INTO USER AREA #4 WOULD SEE THE STANDARD CP/M
- ; PROMPT (MODIFIED BY THIS PATCH) AS:
- ; A4> ( INSTEAD OF JUST A>)
- ;
- ;
- MSIZE EQU 64 ; CP/M SYSTEM SIZE IN KB
- ;
- DELTA EQU 000H ; OFFSET FROM STD CP/M SIZE
- ; THIS WOULD BE SET TO 400H IF
- ; THE 20K CP/M WAS ACTUALLY A 19K
- ; CP/M (WHEN COMPARED TO THE STD
- ; 20K CP/M DESCRIBED IN THE CP/M
- ; MANUALS FROM DIGITAL RESEARCH).
- ;
- BIAS EQU (MSIZE-20)*1024-DELTA ; OFFSET FROM 20K CP/M
- CCP EQU 3400H+BIAS
- ;
- OFFSET EQU 980H-CCP ; OFFSET USED WITH DDT IN
- ; SYSTEM CONFIGURATION (ASSUMES
- ; THAT 'CCP' OCCURES AT 980H IN THE
- ; SYSGEN MEMORY IMAGE).
- ;
- COUT EQU CCP+8CH ; CCP CONSOLE OUTPUT ROUTINE
- GTUSR EQU CCP+113H ; CCP GET USER # ROUTINE
- ;
- ;
- ORG CCP+38DH
- ;
- CALL PATCH ; THIS WAS A CALL COUT
- ;
- ;
- ; -----------------------------------------------
- ; NOTE THE CODE IN THE NEIGHBORHOOD OF THIS PATCH WAS
- ; USED TO PRINT OUT THE 'A>' PROMPT:
- ;
- ; CCP+382H:
- ; LXI SP,----
- ; CALL FLUSH ; RESET BUFFERS
- ; CALL GTDRV ; GET DRIVE #
- ; ADI 'A' ; ADD IN ASCII BIAS
- ; CALL COUT ; <--- MAKE PATCH HERE
- ; MVI A,'>' ; GET '>'
- ; CALL COUT ; PRINT IT OUT
- ; CALL GTCOMD ; GET CONSOLE COMMAND
- ; .
- ; .
- ; .
- ; -------------------------------------------------
- ;
- ;
- ORG CCP+15F0H ; PATCH AREA AT END OF BDOS
- ;
- PATCH: CALL COUT ; OUTPUT CHAR. IN ACC TO CONSOLE
- CALL GTUSR ; GET USER #
- ADI 90H ; USE INTEL HEX/ASCII TRICK
- DAA
- ACI 40H
- DAA
- JMP COUT ; PRINT OUT AND RETURN
- ;
- ; ------------------------------------------------------
- ; NOTE: THE 'GTUSR' COMMAND IS JUST A SHORT ROUTINE:
- ;
- ;GTUSR: MVI E,0FFH
- ; MVI C,32
- ; JMP 05
- ; ------------------------------------------------------
- ;
- END
-