;==> fixed bug caused by type 11/5/80--RGF ; ; This patch modifies the cp/m 2.2 MOVCPM program for remote operation. ; This sets up the movcpm itself for the ccppatch mod, which causes ; the ccp to look on drive A for a com file not found on the current ; logged-in drive. In addition, this patch allows changing the ccp ; commands. This is useful for remote system security. ; ; REQUIREMENTS FOR USE ; -------------------- ; This file will only work on cpm2.2 versions of movcpm. Also, the ; movcpm must have the ccp located at 0A00H. If it does not, then ; change the CCPBIAS equate to whereever it is in your system. If ; your BIOS is a non-standard size, you will have to change the SIZE ; equate. You can determine your system size by examining locations ; 802 and 801 of your movcpm program with ddt or sid, then set the ; SIZE equate accordingly. ; ; HOW TO PATCH THE MOVCPM PROGRAM ; ------------------------------- ; After making any changes necessary to this file, use ASM or MAC ; to assemble it, and produce a HEX file. Read in the movcpm program ; with the ccp command: ; A>DDT MOVCPM.COM. ; Then read in the patch hex file with ; *IMOVPATCH.HEX ; *R ; After doing this, exit to cp/m command level with ^C, and ; A>SAVE XX MOVCPMR.COM ; where XX is the size (in 256 byte pages) of your movcpm program. ; It is a good idea to change the name (as done above) to make the ; program easily recognizable as being the remote-cp/m version. ; ; Ron Fowler ; 11/2/80 ; ; Notes from original version of CCPPATCH.ASM: ; ; This patch causes the CCP of a cp/m 2.x system to look on drive A ; when you are logged into a drive other than A and call for a .COM ; file that does not exist on that drive. Giving an explicit drive ; reference overrides this feature, so that you can always force ; the file to be loaded from a specific drive. ; ; ; ; ; equates (set up for standard digital research movcpm pgm) ; SIZE EQU 1B00H CCPBIAS EQU 0A00H ; ; SET-UP OF NEW CCP COMMANDS ; NOTE: all command names must fill a 4-character field ; ORG CCPBIAS+310H ;where the commands are ; DB 'DIR ' ;<== put your new "DIR" cmd here DB 'ERA ' ;<== put your new "ERA" cmd here DB 'TYPE' ;<== put your new "TYPE" cmd here DB 'SAVE' ;<== put your new "SAVE" cmd here DB 'REN ' ;<== put your new "REN" cmd here DB 'USER' ;<== put your new "USER" cmd here ; ; ; Modify the CCP for A-drive check for COM files ; ORG CCPBIAS+6DBH JZ 7F2H ;jump to patch ; ORG CCPBIAS+7F2H ;replaces an unused area of NOP's LXI H,7F0H ;get drive from current command ORA M ;accum was 0 on entry, so this fetches drive JNZ 76BH ;command has explicit drive...give error INR M ;force explicit reference to drive A LXI D,7D6H ;we need to do set up when.. JMP 6CDH ;..we enter ccp ; ; ; update the cpm bitmap for this patch ; ORG CCPBIAS+SIZE+20H-2 DB 8,89H ;these locations need relocation ; END