Begrenzung der Variablengröße in Turbo-Pascal

derDUKE

Grand Admiral Special
Mitglied seit
09.07.2003
Beiträge
2.246
Renomée
5
Standort
in der Pampa
Prost Mahlzeit! ;D

Ich muss mal wieder an meinem selbst geschriebenen Optimierungsprogramm aus dem Jahr 1998 herumfrickeln. Programmiert habe ich es in - bitte nicht auslachen - Turbo-Pascal 7.0.
Jetzt muss ich nun für einen Anwendungsfall mein Datenarray deutlich erweitern. An sich kein Problen - wenn da nicht diese blöde (TP-interne) Beschränkung auf 64kB wäre.

Hat jemand eine Idee, wie ich das umgehen kann?

dD

PS: Bitte bedenkt bei Euren Antworten, dass ich programmiertechnisch ein DAU bin. Dieses Optimierungsprogramm war im Rahmen einer Projektarbeit meine erste und gleichzeitig letzte Programmierung. :]
 
Zuletzt bearbeitet:
Geht es hier um ein 16-Bit Programm unter DOS oder Win16?
Wenn ja, dann kannst Du wohl nur dein Array in mehrere Arrays jeweils < 64k aufsplitten.
Oder das Programm auf 32 Bit portieren. ;D
 
Das Programm lief ursprünglich unter DOS - läuft aber (gottlob) auch auf meinem WinXP. Auch mein TP habe ich wieder unter WinXP (Dos-Box) installiert - Quelltexte ect. alles vorhanden.

Die Datenstruktur kann (will) ich nicht mehr ändern. Der Aufwand ist einfach zu groß, zumal ich mittlerweile dirch die 1000der Zeilen Quelltext nicht mehr durchblicke und damals nur sehr sparsam kommentiert habe. :] :-[

Was mir vorschwebte wäre ein (Pascal?)Compiler, den ich einfach mit meinem Quellcode füttern könnte, und der nicht diese blöde 64k-Beschränkung hätte.

PS: Eine Aufspaltung des Arrays würde eh nichts bringen, da die 64k-Beschränkung IMHO nicht für einzelne Variablen sondern für deren Summe gilt.
 
Zuletzt bearbeitet:
Da scheint es um das Speichermodell Medium zu gehen (Code > 64k, Data <= 64k).
Kannst Du bei TP nicht ein Speichermodel vorgeben?
Du bräuchtest Large (Code > 64k, Data > 64k), wobei ein Daten-Element auch nicht größer 64k werden darf. Oder Huge ...
Ging das nicht auch durch Verteilung über Units?
Ist schon verdammt lang her bei mir mit TP. Die 6 war bei mir die letzte.

Probier doch das Ganze als 32 Bit App unter Delphi zum Laufen zu bringen, oder gleich in C umschreiben. :]

Oder nimm diesen TP7 kompatiblen 32-Bit Compiler: http://www.freepascal.org/ ;D
 
Zuletzt bearbeitet:
Zurück
Oben Unten