;NO-ERRS FOR CP/M 2.2 AS OF 11/28/87 ;COPYRIGHT (C) 1987 ROBERT GREENLEE, P.O. BOX 23286, SAN DIEGO CA 92123 ;PHONE VOICE 619-268-0112 ; MODEM 619-569-8613. ; ;THIS PROGRAM IS A PAL OF EDIR'S. REFER TO EDIR.DOC. ; ;THIS PROGRAM PREVENTS THE BIOS DISK READ FUNCTION FROM REPORTING READ ERRORS. ; ORG 0100H JMP START MESSAGE: DB 0DH,0AH DB 'NO-ERRS v1.0 (C) 1987 by Robert Greenlee, P.O. Box 23286,',0DH,0AH DB 'San Diego, CA 92123. 619-268-0112 Voice. Modem 619-569-8613.',0DH,0AH DB 0DH,0AH DB 'This program prevents the DISK READ function in the CP/M BIOS',0DH,0AH DB 'from reporting disk read errors. That will prevent CP/M and',0DH,0AH DB 'most CP/M programs from detecting and responding to bad disk',0DH,0AH DB 'sectors. Please refer to EDIR.DOC for examples of how this',0DH,0AH DB 'program can be of use.',0DH,0AH DB 0DH,0AH DB 'To terminate NO-ERRS you must reset your computer.',0DH,0AH DB '$' START: MVI C,9 LXI D,MESSAGE ;GIVE SIGNON MESSAGE CALL 5 LDA 2 MOV D,A MVI E,28H ;DE POINTS TO BIOS READSEC VECTOR (LSB) LXI H,84 ;HL POINTS TO HOPEFULLY UNUSED LOCATIONS IN LOW MEM MVI M,0CDH ;OPCODE FOR CALL INX H LDAX D MOV M,A ;LSB FOR CALL WHICH WILL CALL READSEC IN BIOS MVI A,84 STAX D ;SWITCH BIOS JMP TO READSEC TO COME TO LOW MEMORY CALL INX H INX D LDAX D MOV M,A ;SET MSB MVI A,0 STAX D INX H MVI M,0AFH ;DOING XRA A AFTER EACH CALL TO READSEC WILL STOP INX H ; ERRORS FROM GETTING THROUGH MVI M,0C9H RET END