OK. I created a batch file just like yours:

H:\CairnsGames\fpc\bin\win32\ppc386 -S2 -FuH:\CairnsGames\Games\S2DL\S2DL\ -FuH:\CairnsGames\JEDI-SDL\ -Fu. -oH:\CairnsGames\Games\S2DL\S2DL\Balls\balls.exe H:\CairnsGames\Games\S2DL\S2DL\Balls\balls.pp >Compile.txt
The resultant output (As stored in compile.txt) was:
Hint: End of reading config file h:\cairnsgames\fpc\bin\win32\fpc.cfg
Free Pascal Compiler version 1.0.10 [2003/06/27] for i386
Copyright (c) 1993-2003 by Florian Klaempfl
Target OS: Win32 for i386
Compiling h:\cairnsgames\games\s2dl\s2dl\balls\balls.pp
syswin32.pp(3,1) Hint: Conditional I386 was set at startup in last compilation of syswin32.pp
Compiling h:\cairnsgames\games\s2dl\s2dl\logger.pas
logger.pas(67,10) Fatal: Can't find unit CLASSES
The error is clearly it cannot find unit CLASSES. This would indicate to me that something is incorrect in the paths used by FPC and should therefore be added to my list of directories to search for. After investigation classes.pp is in directory: H:\CairnsGames\fpc\source\fcl\win32

so we add it to the batch file

H:\CairnsGames\fpc\bin\win32\ppc386 -S2 -FuH:\CairnsGames\fpc\source\fcl\win32\ -FuH:\CairnsGames\Games\S2DL\S2DL\ -FuH:\CairnsGames\JEDI-SDL\ -Fu. -oH:\CairnsGames\Games\S2DL\S2DL\Balls\balls.exe H:\CairnsGames\Games\S2DL\S2DL\Balls\balls.pp >Compile.txt
Again an error - classesh.inc - found in H:\CairnsGames\fpc\source\fcl\inc - add to batch file: (Note this is an include!

H:\CairnsGames\fpc\bin\win32\ppc386 -S2 -FuH:\CairnsGames\fpc\source\fcl\win32\ -FiH:\CairnsGames\fpc\source\fcl\inc\ -FuH:\CairnsGames\Games\S2DL\S2DL\ -FuH:\CairnsGames\JEDI-SDL\ -Fu. -oH:\CairnsGames\Games\S2DL\S2DL\Balls\balls.exe H:\CairnsGames\Games\S2DL\S2DL\Balls\balls.pp >Compile.txt
Again an error - do same thing:

Now when I compile I get the following error: (right at the end of the compile.txt file).

Compiling s2dldraws.pp
s2dldraws.pp(91,22) Error: Illegal qualifier
s2dldraws.pp(91,22) Hint: Maybe pointer dereference is missing
s2dldraws.pp(91,22) Fatal: Syntax error, ; expected but identifier W found
Now in reality I am a Delphi Developer - not a freepascal developer. This means I often use Delphi standards and not the normal freepascal stuff.

You will notice that S2DL v1.04 will have Delphi Mode included in all files when released. When D2DL 1.0 and 1.02 were release I didn't know how to do this, so you need to set delphi mode when compiling - thats the -S2d switch in the following batch file:

H:\CairnsGames\fpc\bin\win32\ppc386 -S2d -FuH:\CairnsGames\fpc\source\fcl\win32\ -FiH:\CairnsGames\fpc\source\fcl\inc\ -FiH:\CairnsGames\fpc\source\fcl\win32\ -FuH:\CairnsGames\Games\S2DL\S2DL\ -FuH:\CairnsGames\JEDI-SDL\ -Fu. -oH:\CairnsGames\Games\S2DL\S2DL\Balls\balls.exe H:\CairnsGames\Games\S2DL\S2DL\Balls\balls.pp >Compile.txt
After all that it compiles just fine.

I hope that following this you can get it compiled.

[size=9px]I had to do this whole process because you did not indicate what error you were recieving. When asking for help please could you include all information you have. In this case the batch file you were using as well as the full output (or errors only if too long) of the compile.txt file would have helped. If you were not using S2DL I probably would have ignored this post.[/size]