{ Configuration routine for MAP.PAS for the CP/M family of Turbo Pascal compilers } const MachineType = 'CP/M'; QuantizationSize = 128; PaddingByte = $00; TerminatingByte = $C9; var Buffer: array[1..QuantizationSize] of byte; function EndOfOverlay(var Fyle: BinaryFile; var Index,AmbiguousCount: integer; RetryCount: integer): boolean; { Return true if last sector of an overlay is in the buffer } begin Index := QuantizationSize; if Buffer[QuantizationSize]=TerminatingByte then begin { If last byte in record is a return instruction, } EndOfOverlay := not odd(RetryCount shr AmbiguousCount); { Check how to handle the ambiguity this time } AmbiguousCount := succ(AmbiguousCount) end else begin { Look for a return instruction padded out with 00's } while (Index>=1) and (Buffer[Index]=PaddingByte) do Index := pred(Index); EndOfOverlay := Buffer[Index]=TerminatingByte end end; procedure CheckVersion; { This routine is not executed, it only serves to check that the correct configuration module is being used. } (****************************************************************************** You are attempting to compile this program with the wrong configuration file. You need to change the include file directive located about 20 lines from the beginning of MAP.PAS to: {$I MAPDOS.PAS} ******************************************************************************) var Address: byte absolute $0000; begin end;