home *** CD-ROM | disk | FTP | other *** search
- { 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;