Und noch ein neuer "Alter"

Hier könnt ihr euch vorstellen, wie lange ihr programmiert, wie ihr dazu gekommen seit und was ihr sonst noch so macht.
Antworten
Iceman_03
Beiträge: 8
Registriert: Fr 18. Jun 2010, 11:57

Und noch ein neuer "Alter"

Beitrag von Iceman_03 »

Hallo zusammen,

ich beschäftige mich seit den '90gern mit Programmierung. Eingestiegen ins Thema Pascal bin ich mit Borlands Pascal 5.5. Später habe ich mich auch mal kurz mit Borlands C++ beschäftigt, bin dann aber irgendwie bei BP70 hängen geblieben. Natürlich habe ich später parallel diverse Delphi Versionen bis Version 5 angeschaut und programmiere nebenher auch mal was in VBA (vornehmlich für Excel). Mein Hauptprojekt, welches ich bis heute aktiv betreue, ist aber nach wie vor in BP70 programmiert. Hier mal ein paar Eckdaten zum Projekt: ca. 310 Units mit 275.000 Programmzeilen, Größe der EXE 164 KB, Größe der OVR 3400 KB. Das Programm ist eine Warenwirtschaft für mehrere User welche unter Dos/DosBox unter XP läuft und seine Daten auf einem Novell-Server ablegt. Die zugrunde liegende Datenbank habe ich selbst programmiert. Das File-/Recordlocking läuft dabei über die Novell/Netware requests.

Ich spiele nun schon länger mit dem Gedanken das Projekt auf Free Pascal umzuschreiben/umzustellen, da es abgesehen von der Benutzeroberfläche (DosBox) bei BP70 noch weitere Einschränkungen gibt (lange Dateinamen u.s.w.) die einem Programmierer immer mal wieder das Leben schwer machen. Soweit ich mich schon mal durch die Dokumentation gelesen haben, soll sich ein BP70 Programm ja ohne weiteres unter Free Pascal compilieren lassen, na da bin ich mal gespannt ob das mit meinem Projekt auch geht. Jedenfalls möchte ich, sobald ich es hinbekommen habe, dass FP mein Projekt compiliert mal schauen ob sich da nicht das eine oder andere neu Feature einbauen läßt. Ich wäre jedenfalls für alle Tipps und Tricks diesbezüglich dankbar, vielleicht gibt es ja den einen oder anderen unter Euch der schon mal ein größeres Projekt von BP70 auf FP umgestellt hat, der mir ein paar Tipps geben kann.

Viele Grüße

Iceman_03
Borland Pascal 7.0 | Delphi 5 Enterprise | Delphi XE6 Enterprise | Lazarus 1.2.2 - FPC 2.6.4 Win7

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Und noch ein neuer "Alter"

Beitrag von Socke »

Willkommen im Forum!

Bei 310 Units mit 275.00 Zeilen Code solltest du nicht erwarten, dass alles sofort reibungslos funktioniert, aber probieren kannst du das natürlich. Den TurboPascal-Modus (ist das der Richtige?) des FPC hab ich nie gebraucht und genutzt, deswegen weiß ich nicht obs funktioniert. Meisten sind aber bei den Delphi->Lazaurs-Konvertierungen die VCL und externe Bibliotheken schuld daran, dass etwas nicht klappt; aber das scheint es bei dir ja eh nicht zu geben.

Viel Erfolg wünsche ich noch
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Re: Und noch ein neuer "Alter"

Beitrag von Euklid »

Hallo,

von mir auch ein herzliches Willkommen!
Ich glaube, die Chancen für eine erfolgreiche Portierung liegen garnichtmal so schlecht. Kompatibilität mit Borland Pascal wurde laut Projektseite schon lange hergestellt...
... Probleme kann es teilweise bei Delphi-Projekten wegen fehlender Komponenten geben. In jedem Fall viel Erfolg bei der Portierung!

Viele Grüße, Alexander Staidl

Iceman_03
Beiträge: 8
Registriert: Fr 18. Jun 2010, 11:57

Re: Und noch ein neuer "Alter"

Beitrag von Iceman_03 »

Euklid hat geschrieben:Hallo,

von mir auch ein herzliches Willkommen!
Ich glaube, die Chancen für eine erfolgreiche Portierung liegen garnichtmal so schlecht. Kompatibilität mit Borland Pascal wurde laut Projektseite schon lange hergestellt...
... Probleme kann es teilweise bei Delphi-Projekten wegen fehlender Komponenten geben. In jedem Fall viel Erfolg bei der Portierung!

Viele Grüße, Alexander Staidl
Hallo Alexander,
Hallo Socke,

vielen Dank fürs Mut machen. Heute morgen war ich da auch noch sehr optimistisch, bin inzwischen jedoch auf dem Boden der Tatsachen angekommen. Hier mal ein paar Kleinigkeiten, die mir bereits in der Startphase das Leben schwer machen:

- Complierschalter: Unter BP70 gibt es {$L+/-} und {$N+/-} welche von FP offensichtlich nicht unterstützt werden, da kann ich mir ja noch helfen und diese aus dem Quelltext mittels {$IFDEF BP70} verbannen, ohne gleich den Quellcode so zu verändern, dass ich ihn dann nicht mehr unter BP70 compilieren kann.
- MemAvial und MaxAvail: Die beiden fehlen im FP wohl komplett unter einer nativen Dos-Anwendung machen die aber sehr wohl Sinn.
- farpointer : Ich greife mit meiner Anwendung direkt auf den Speicherbereich für den Bildschirm zu Ptr($B000, $0000) bzw Ptr($B800, $0000). Unter Free Pascal gibt es wenn ich das richtig verstanden habe nur noch farpointer. Hier habe ich dazu schon mal was gefunden : http://www.hu.freepascal.org/lists/fpc- ... 06841.html" onclick="window.open(this.href);return false; aber gelöst habe ich das Problem noch nicht.

Und das ist, denke ich, erst die Spitze des Eisberges. Ergo, so wie ich das (im Moment) sehe wird das kein Zuckerschlecken, aber vielleicht sehe ich im Moment einfach nur den Wald vor lauter Bäumen nicht und ich bin einfach auf einer komplett falschen Fährte. Unter BP70 habe ich immer als Zielplattform "Real Mode" genommen, weil der "Protected Mode" nie richtig funktioniert hat. FRAGE: Muss ich bei Free Pascal als Traget Win32 nehmen und eine Consolen Applikation draus machen oder muss ich da eher in Richtung GO32 gehen? Und für was ist der WDOSX Dos extender?

Eine weitere Frage die sich mir stellt ist, muss oder sollte ich das besser alles unter der FreePascal IDE erstellen oder geht das auch mit der Lazarus IDE? Klassisch bin ich natürlich erst einmal auf die FP-IDE gegangen, da diese ja sehr ähnlich mit BP70 ist.

Ich befürchte, da gibt es noch eine Menge Dokumetation durch die ich mich durchkämpfen muss, bevor ich da auf einen grünen Zweig komme, deshalb wäre ich für ein paar Anfänger-Tipps dankbar, die mich dann vielleicht etwas schneller auf die richtige Spur bringen.

Viele Grüße

Wolfgang
Borland Pascal 7.0 | Delphi 5 Enterprise | Delphi XE6 Enterprise | Lazarus 1.2.2 - FPC 2.6.4 Win7

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Und noch ein neuer "Alter"

Beitrag von Socke »

Ob du Lazarus oder die FP-IDE verwendest ist in deinem Fall reine Geschmackssache. Mit visuellen Komponenten und ’ner Maus hast du ja nichts zu tun. Welche Unterschiede es beim Debugging gibt, weiß ich nicht.

DOS ist ein 16 Bit OS (soweit ich mich erinnere); Der FPC kann aber nur 32bit-Programme erstellen, far und near Pointer gibt es da nicht mehr (soweit ich das mit meinen jungen Jahren beurteilen kann). Du solltest dir auf jeden Fall den GO32 V2 DOS-Extender anschauen. Aber auch hier wirst du nicht drumherum kommen, dein Programm auf 32bit zu portieren. Wenn du Win32 als Ziel auswählst, erhältst du native Win32-Programme, also nichts mehr mit DOS, die können trotzdem mit einem Konsolen-Fenster laufen.

Zu den Compilerschaltern, kann dir die Dokumentation etwas sagen, wichtig wäre der "Programmers guide" http://www.freepascal.org/docs.var.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6770
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Und noch ein neuer "Alter"

Beitrag von af0815 »

Willkommen :-)

Ich würde dir zum leichteren Einstieg/Umstieg das FPC-Buch empfehlen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten