A r t i c l e s
Navigation

Note: This site is
a bit older, personal views
may have changed.

M a i n P a g e

D i r e c t o r y

Quake2FreePascal


Download:
Notes:

  • First you must download the quake demo (3.14), unless you have quake already installed and it is 3.21 or later.

  • Copy the quake2delphi.exe and the quake2fpc.exe from the zip file you downloaded above, in the same place of your old quake exe. Run the two exe's and notice the difference. They are the same portable source code base, but compiled with two different compilers.

Compiling:
  • I used LazarusRB Alpha with FPC 2.0.2 but any version of Lazarus or FPC should work along with FPC 2.0.0 and up.

  • it will compile with Freepascal 2.0.2 and Delphi 6, but NOT delphi 5. I did some work to get delphi 5 working, but delphi 5 was missing variable paramaters for functions and procedures (VarArgs).

  • Open the Quake2Delphi.DPR file if you want to compile it in delphi. Open the Quake2FPC.LPR file if you want to compile it in Lazarus

  • You can compile at the command line, I did, once. However, I've included the lazarus project files which should have all the search paths included, so you might want to use Lazarus.

  • Compile with -Cs1000000 compiler option (stack). Without this, you will get:
     run time error 202
    If you are using lazarus, you set this compiler option up using the compiler options dialog window in the OTHER tab (custom options edit box).

  • If no quake directory/files are found, you will get error:
    "couldn't fallback to software refresh". 
    Download the Quake2 demo, if that is the case. It includes all the data files needed to run the QUAKE2FPC.EXE file. It includes the PAK files (like WAD files) and other data files necessary to run Quake2 exe engine.

  • if you see in the source code "PLEASE DON'T MODIFY" I'm not exactly sure if this is true. Go ahead and modify if you want to. It's not my comment, but other people's. I'm not sure if it is still applicable.

  • if you make any changes that are compiler specific, please use an {$IFDEF FPC} or similar.
Contributing:
  • I'm a text kind of guy, with lots of text and web projects on the go. I just started this project to spur it on. If you want to help don't hesitate. I can put it on SVN for you guys to hack away at, or you can do the same. I will help with the project but can't promise anything - I've got lots of software programming to do, you know ;-)


About
This site is about programming and other things.
_ _ _