; =================================================== ; ; ZCPR2 BIOS PATCH OVERLAY FOR THE KAYPRO 10 ; ; Version for the original CP/M release (called 0) ; ; John C. Smith Manlius, NY ; ; Version 2.0 December 4, 1983 ; ; =================================================== ; ; ; ORG 0CC68H ; New PUTSYS sign on msg DB 0DH,0AH,'PUTSYS ZCPR2 V1.0',0DH,0AH,'$' ; ORG 0EA4DH ; Add cold boot buffer CALL PATCH1 ; initialization ; ORG 0EA63H ; New sign on message DB 1AH,0DH,0AH,'KAYPRO 10 CP/M 2.2 & ZCPR2' DB 0DH,0AH,0 ; ORG 0EAFEH ; Delete CPM CCP DB 0,0,0 ; reset on warm boot ; ORG 0EB4AH ; Add GRAPHICS control CALL PATCH2 ; and test patch ; ; *** ZCPR2 INITIALIZATION *** ; ORG 0EBFAH ; Overwrite CPM CCP patch PATCH1: STA 0004H ; Initialize Drive/User byte CMA STA 003EH ; Set WHEEL BYTE STA 004FH ; and GRAPHICS BYTE LXI H,PATH ; LXI D,0040H ; Initialize External LXI B,7 ; search path DB 0EDH,0B0H ;LDIR LXI H,MULTCMD ; LXI D,0F500H ; Initialize Multicommand LXI B,12 ; buffer DB 0EDH,0B0H ;LDIR LXI H,NAMDIR ; LXI D,0F300H ; Initialize Named Directory LXI B,5 ; buffer DB 0EDH,0B0H ;LDIR RET ; PATCH2: LDA 004FH ; Get GRAPHICS BYTE ORA A ; Is it set? JNZ R1 ; If so, jump out MOV A,C ; If not, put char in A ANI 7FH ; ...mask out the eighth bit MOV C,A ; ...put it back in C R1: LDA 0003H ; ...then get the IOBYTE RET ; and continue CONOUT routine ; PATH: DB 1,'$',1,0,0 MULTCMD: DB 4,0F5H,0C8H,0,'STARTUP',0 NAMDIR: DB 50,0,0,0,0 END