mirror of
https://github.com/jrk/QuickDraw.git
synced 2025-03-12 04:31:31 +00:00
46 lines
933 B
OpenEdge ABL
Executable File
46 lines
933 B
OpenEdge ABL
Executable File
PROGRAM FixMove;
|
|
|
|
{ Assembler restrictions require procedure Move to assembled as MQVE. }
|
|
{ This program back patches the object file replacing 'MQVE' with 'MOVE' }
|
|
|
|
VAR f: FILE;
|
|
fileName: String[30];
|
|
buffer: PACKED ARRAY[0..1023] OF CHAR;
|
|
i,hitCount: INTEGER;
|
|
|
|
BEGIN
|
|
|
|
REPEAT
|
|
WRITE('file to patch:');
|
|
READLN(fileName);
|
|
RESET(f,fileName);
|
|
UNTIL IORESULT = 0;
|
|
|
|
i := BlockRead(f,buffer,2,0);
|
|
|
|
hitCount := 0;
|
|
FOR i := 0 TO 1020 DO
|
|
BEGIN
|
|
IF (buffer[i ] = 'M')
|
|
AND (buffer[i+1] = 'Q')
|
|
AND (buffer[i+2] = 'V')
|
|
AND (buffer[i+3] = 'E')
|
|
THEN
|
|
BEGIN
|
|
buffer[i+1] := 'O';
|
|
hitCount := hitCount + 1;
|
|
END;
|
|
END;
|
|
|
|
WRITE(hitCount:1,' matches found.');
|
|
IF hitCount = 0 THEN WRITELN(CHR(7))
|
|
ELSE
|
|
BEGIN
|
|
i := BlockWrite(f,buffer,2,0);
|
|
IF IORESULT <> 0 THEN WRITELN('Oops, trouble writing');
|
|
END;
|
|
|
|
CLOSE(f,lock);
|
|
|
|
END.
|