Oh and where to get it? 
as mentioned earlier:
it doesn't exist. Someone (you?) need to write it.
Can you explain a bit more how fpcc works? Does it use some kind of file mapping?
But it works very simple and straight forward.
here's the input file
program MyPrg;
{$ASMMODE intel}
procedure GetTen;assembler;
asm
mov eax, 10
ret
end;
{$MODE C_code}
int strLen(char* p)
{
char* s=p;
while(*p++!=0);
return s-p;
}
{$MODE FPC_code}
var
Mystr : String;
len : longint;
Begin
Mystr := "combing pascal and c like c++builder is good";
len := strLen(@Mystr);
end.
FPCC parses the input pascal file and extracts all inline C out of it. Generating a .c file
#include ...whatever is needed...
int strLen(char* p)
{
char* s=p;
while(*p++!=0);
return s-p;
}
Then it compiles the file via external C compiler into an object file, i.e. "unitname_cinline.o"
After than the remaining Pascal unit is prepared, replacing C-inline declarations with Pascal function headers (<- the biggest trick) and the proper object file linking
program MyPrg;
{$ASMMODE intel}
procedure GetTen;assembler;
asm
mov eax, 10
ret
end;
function strLen(p: Pchar): integer; cdecl; external;
{$L unitname_cinline.o}
var
Mystr : String;
len : longint;
Begin
Mystr := "combing pascal and c like c++builder is good";
len := strLen(@Mystr);
end.
Now this file is actually being passed to FPC for final complication/linking.