[Lazarus] delphi 4 project w/ database support
Howard Page-Clark
hdpc at talktalk.net
Wed Dec 24 22:41:41 CET 2008
On Wed, 24 Dec 2008 11:38:00 -0500
"Michael Edwards" <miedward at gmail.com> wrote:
> I am familiar with pascal and I became aware of a project (a mud
> client called Portal) that I use a fair bit that has been open
> sourced. It was written using Borland Delphi 4. It has some
> significant database components and currently uses whatever database
> borland uses by default (I think). I am not familiar with Delphi or
> Lazarus but I would like to take the code and make it more cross
> platform friendly since many of our users are Mac or Linux clients.
>
> Is this sort of project reasonable? Is Lazarus a good place to start
> with this given that I am a noob?
Lazarus/FPC is definitely a better option for cross platform
development of Pascal based applications than the abandoned Kylix.
However, a quick look at the source code you pointed to makes me think
your ambitions will not be realised. It is definitely 'legacy' code
with no concessions to object oriented design at all. The main form has
over 80 global variables! "I am not familiar with Delphi" - so you
won't easily comprehend what is a large and complex Delphi application.
While it may be open source, it depends on two commercial libraries from
Woll2Woll (Infopower and 1stClass). You would have to ask Woll2Woll if
these are still available (or supported) for Delphi 4. The Woll2Woll
routines (even if available for Delphi 4) would not be compatible with
FreePascal runtime database library routines. The databases are all
Paradox tables which are not going to port to Linux or Mac easily, if
at all. I would say it is a non-starter. Better to write your own game
from scratch using Lazarus/FPC (or whatever Pascal you are familiar
with) based on the best ideas in the source code and using a
contemporary open source database that is actively developed and
supported such as Firebird or one of the sql versions.
Howard
More information about the Lazarus
mailing list