Freier 16-bit Compiler für Windows 3.x?
- ChrisR3tro
- Administrator
- Beiträge: 1723
- Registriert: Mo 7. Mär 2005, 23:33
- Wohnort: NRW
- Kontaktdaten:
Freier 16-bit Compiler für Windows 3.x?
Hallo zusammen!
Ich habe diesmal nur eine kleine Frage an die Programmierer unter Euch. Kennt jemand einen brauchbaren, frei erhältlichen Compiler für 16-bit Windows-Anwendungen?
Welche verwendet Ihr?
Gruß,
locutus
Ich habe diesmal nur eine kleine Frage an die Programmierer unter Euch. Kennt jemand einen brauchbaren, frei erhältlichen Compiler für 16-bit Windows-Anwendungen?
Welche verwendet Ihr?
Gruß,
locutus
Im Prinzip kann von "Auswahl" nicht die Rede sein:
(1) http://www.openwatcom.org/
(2) http://www.digitalmars.com/
(3) http://www.profan.de/download.htm
(4) Assembler + viel Handarbeit
Alles andere dürfte Löhnware (z.B. Borland C++ 3.1, Turbo Pascal für Windows 1.5, Delphi 1) oder zu exotisch (z.B. FORTRAN) sein.
(1) http://www.openwatcom.org/
(2) http://www.digitalmars.com/
(3) http://www.profan.de/download.htm
(4) Assembler + viel Handarbeit
Alles andere dürfte Löhnware (z.B. Borland C++ 3.1, Turbo Pascal für Windows 1.5, Delphi 1) oder zu exotisch (z.B. FORTRAN) sein.
- ChrisR3tro
- Administrator
- Beiträge: 1723
- Registriert: Mo 7. Mär 2005, 23:33
- Wohnort: NRW
- Kontaktdaten:
Danke für die Links. Watcom kenne ich vom Namen her, den werde ich mal zuerst probieren. Die Frage ist jetzt nur, wo es die 16-bit API-Dokumentation gibt. Das MSDNhat diese nicht mehr, schätze ich. ;-)
Gruß,
locutus
Gruß,
locutus
Da mußt du mal die OWC-Community fragen.
IMHO gib's bei Borland einen Download der Win32-API-Hilfedatei. Dort steht AFAIR auch gelistet, was vom Win16-API unterstützt wird.
Aber geht's nicht auch ohne API?
Das Buch "Programming Windows (3.1)", also 3. Ausgabe, von Charles Petzold könnte auch helfen. Bei eBay gibt's grad die, für dich nutzlose, 1. Ausgabe für Windows 1.0.
IMHO gib's bei Borland einen Download der Win32-API-Hilfedatei. Dort steht AFAIR auch gelistet, was vom Win16-API unterstützt wird.
Aber geht's nicht auch ohne API?

Das Buch "Programming Windows (3.1)", also 3. Ausgabe, von Charles Petzold könnte auch helfen. Bei eBay gibt's grad die, für dich nutzlose, 1. Ausgabe für Windows 1.0.

- ChrisR3tro
- Administrator
- Beiträge: 1723
- Registriert: Mo 7. Mär 2005, 23:33
- Wohnort: NRW
- Kontaktdaten:
Natürlich. Bei Borland heißt das wohl OWL und bei MS, wie schon richtig vermutet, MFC.
Hier gibt's ein paar Infos zur fehlenden (ab 11.0c) bzw. inzwischen wieder nachgereichten Windows-Entwicklung (SDK):
http://www.azillionmonkeys.com/qed/watfaq.shtml
http://www.scitechsoft.com/products/dev ... ntent.html
http://www.openwatcom.com/index.php/History
Hier gibt's ein paar Infos zur fehlenden (ab 11.0c) bzw. inzwischen wieder nachgereichten Windows-Entwicklung (SDK):
http://www.azillionmonkeys.com/qed/watfaq.shtml
http://www.scitechsoft.com/products/dev ... ntent.html
http://www.openwatcom.com/index.php/History
- ChrisR3tro
- Administrator
- Beiträge: 1723
- Registriert: Mo 7. Mär 2005, 23:33
- Wohnort: NRW
- Kontaktdaten:
Das ist ja gut zu wissen. :-)
Allerdings programmiere ich nicht gerne mit irgendwelchen Frameworks. Dadurch werden die EXE-Dateien größer und benötigen dann noch zusätzliche DLLs wie etwa mfc42.dll.
Ich denke, wenn man die Windows API (egal, ob jetzt Win16 oder Win32) nutzen kann, dann sollte man das tun. Kann nur die Effizienz des Programms steigern.
Bei Großprojekten mit riesiger GUI ist es natürlich fast unmöglich, alles mühselig zu coden. Da sehe ich's ja dann ein, daß ein Framework da Vorteile bringen kann, oder vielleicht doch lieber ein simpler RC-Editor? ;)
Gruß,
locutus
Allerdings programmiere ich nicht gerne mit irgendwelchen Frameworks. Dadurch werden die EXE-Dateien größer und benötigen dann noch zusätzliche DLLs wie etwa mfc42.dll.
Ich denke, wenn man die Windows API (egal, ob jetzt Win16 oder Win32) nutzen kann, dann sollte man das tun. Kann nur die Effizienz des Programms steigern.
Bei Großprojekten mit riesiger GUI ist es natürlich fast unmöglich, alles mühselig zu coden. Da sehe ich's ja dann ein, daß ein Framework da Vorteile bringen kann, oder vielleicht doch lieber ein simpler RC-Editor? ;)
Gruß,
locutus
Re: Freier 16-bit Compiler für Windows 3.x?
Dabei wollte ich soeben Delphi 1 vorschlagen. Im Buch Delphi für Kids ist das auch dabei neben Borland Pascal. Da ist eine WIndoes IDE dabei.
Da auch Windows 9x jetzt hier im Forum erlaubt ist, gingen auch höhere Delphi Versionen, bis Delphi 7, glaub ich. Oder Lazarus. Besser Lazarus bis Version 1.2 oder tiefer, leider weiß ich nicht, welche da die letzte Version ist, die noch unter Windows 9x läugt und auch die Plattform Go32 unterstützt. Mit Go32, dem Freepascal Dos Extender ist es aber schwierig anzupassen, da standardmäßig nur die Windows-Version des Pascal Compilers installiert wird. Leider wird die DOS Version nicht ganz im selben Bin Pfad installiert, weshalb dann unter Go32 der Linker nicht gefunden wird. Ich habe das leider noch nicht hinbekommen. Denke aber, das eine Installation des DOS Compilers im gleichen Bin Pfad aber dort unterverzeichnis go32v2 und bei den Units unter Units/go32v2 funktionieren sollte.
Das Problem ist, dass die Dos Version unter Lw:\fp\bin\go32v2\ und die Units unter Lw:\fp\units\go32v2 installiert werden. UNter Windows aber unter Lw:\fp\<Versions-Nr>\bin\i386-win32\ bze. Lw:\fp\<Versions-Nr>\units\i386-Win32
ALso so:
-Windows:
C:\lazarus\fpc\2.6.4\bin\i386-win32 die bintools
C:\lazarus\fpc\2.6.4\units\i386-win32 die freepascal Units
aber unter go32
C:\lazarus\fpc\bin\i386-win32 die bintools
C:\lazarus\fpc\units\i386-win32 die freepascal Units
statt
C:\lazarus\fpc\2.6.4\bin\go32v2 die bintools
C:\lazarus\fpc\2.6.4\units\go32v2 die freepascal Units
Sollte daher auch für DOS Programme funktionieren, wenn der untere Installationspfad beim Installer eingestellt werden kann. NIcht auf die Standardeinstellungen des Installers verlassen, wie ich das getan habe.
Die Lazarus Units befinden sich in einem anderen Pfad und sind nur für Windows Programmierung wichtig.
Locutus:
Klar, mit WinAPI ohne Widgetsets werden die Programme schön klein, aber reine API Programmierung ist doch ganz schön mühsam. Allerdings wohl doch nicht ganz zu vermeiden, da auch die bekannten Widgetsets keine Alleskönner sind und gelegentlich werden dann Windows API AUfrufe benötigt. Daher ist es auf jeden Fall gut, die wichtigsten Windows API Funktionen zu kennen.
MIch hat der Ehrgeiz gepackt. Motiviert durch die argerliche Tatsache, das für Windows jede Menge GUIs entwickelt werden, die dann doch wieder im System-Windowslook erscheinen, suche ich eine solche Windows GUI, die möglichst nur sehr wenige Windows API Funktionen aufruft. Die will ich dann mit DOS Grafik nachbauen und auf DOS aufsetzen. Die zugrunde gelegte GUI, ürsprünglich für Windows konzipiert, sollte dann auch ohne Windows unter DOS laufen.
ANdererseits haben auch hier sogar die größten DOS Fans einen Windows Rechner als Zweitrechner, oder gleich Windows 9x mit richtigem DOS darunter, nutzen also, wenn sie GUI wollen dann auch wieder Windows. Da stört mich aber der Umstand, das ein Windows Programm, das im DOS Modus von Windows gestartet wird, die allgemein bekannte Fehlermeldung auswirft:
"This program cannot run in DOS mode".
Mir wäre lieber, Windows würde im DOS Modus prüfen, ob Windows installiert ist und wenn ja, in den Windows Modus umschalten und das Programm dann starten und nur wenn pures DOS ohne Windows auf dem Rechner ist, die berühmte Felhermeldung auswerfen. :)
Wenn ich aber eine WIndows GUI mit nur wenigen Win-API Aufrufen für DOS fit machen will, muss ich ja die Windows API Funktionen nachbauen und lerne dabei deren Funktionsweise.
Da auch Windows 9x jetzt hier im Forum erlaubt ist, gingen auch höhere Delphi Versionen, bis Delphi 7, glaub ich. Oder Lazarus. Besser Lazarus bis Version 1.2 oder tiefer, leider weiß ich nicht, welche da die letzte Version ist, die noch unter Windows 9x läugt und auch die Plattform Go32 unterstützt. Mit Go32, dem Freepascal Dos Extender ist es aber schwierig anzupassen, da standardmäßig nur die Windows-Version des Pascal Compilers installiert wird. Leider wird die DOS Version nicht ganz im selben Bin Pfad installiert, weshalb dann unter Go32 der Linker nicht gefunden wird. Ich habe das leider noch nicht hinbekommen. Denke aber, das eine Installation des DOS Compilers im gleichen Bin Pfad aber dort unterverzeichnis go32v2 und bei den Units unter Units/go32v2 funktionieren sollte.
Das Problem ist, dass die Dos Version unter Lw:\fp\bin\go32v2\ und die Units unter Lw:\fp\units\go32v2 installiert werden. UNter Windows aber unter Lw:\fp\<Versions-Nr>\bin\i386-win32\ bze. Lw:\fp\<Versions-Nr>\units\i386-Win32
ALso so:
-Windows:
C:\lazarus\fpc\2.6.4\bin\i386-win32 die bintools
C:\lazarus\fpc\2.6.4\units\i386-win32 die freepascal Units
aber unter go32
C:\lazarus\fpc\bin\i386-win32 die bintools
C:\lazarus\fpc\units\i386-win32 die freepascal Units
statt
C:\lazarus\fpc\2.6.4\bin\go32v2 die bintools
C:\lazarus\fpc\2.6.4\units\go32v2 die freepascal Units
Sollte daher auch für DOS Programme funktionieren, wenn der untere Installationspfad beim Installer eingestellt werden kann. NIcht auf die Standardeinstellungen des Installers verlassen, wie ich das getan habe.
Die Lazarus Units befinden sich in einem anderen Pfad und sind nur für Windows Programmierung wichtig.
Locutus:
Klar, mit WinAPI ohne Widgetsets werden die Programme schön klein, aber reine API Programmierung ist doch ganz schön mühsam. Allerdings wohl doch nicht ganz zu vermeiden, da auch die bekannten Widgetsets keine Alleskönner sind und gelegentlich werden dann Windows API AUfrufe benötigt. Daher ist es auf jeden Fall gut, die wichtigsten Windows API Funktionen zu kennen.
MIch hat der Ehrgeiz gepackt. Motiviert durch die argerliche Tatsache, das für Windows jede Menge GUIs entwickelt werden, die dann doch wieder im System-Windowslook erscheinen, suche ich eine solche Windows GUI, die möglichst nur sehr wenige Windows API Funktionen aufruft. Die will ich dann mit DOS Grafik nachbauen und auf DOS aufsetzen. Die zugrunde gelegte GUI, ürsprünglich für Windows konzipiert, sollte dann auch ohne Windows unter DOS laufen.
ANdererseits haben auch hier sogar die größten DOS Fans einen Windows Rechner als Zweitrechner, oder gleich Windows 9x mit richtigem DOS darunter, nutzen also, wenn sie GUI wollen dann auch wieder Windows. Da stört mich aber der Umstand, das ein Windows Programm, das im DOS Modus von Windows gestartet wird, die allgemein bekannte Fehlermeldung auswirft:
"This program cannot run in DOS mode".
Mir wäre lieber, Windows würde im DOS Modus prüfen, ob Windows installiert ist und wenn ja, in den Windows Modus umschalten und das Programm dann starten und nur wenn pures DOS ohne Windows auf dem Rechner ist, die berühmte Felhermeldung auswerfen. :)
Wenn ich aber eine WIndows GUI mit nur wenigen Win-API Aufrufen für DOS fit machen will, muss ich ja die Windows API Funktionen nachbauen und lerne dabei deren Funktionsweise.
Re: Freier 16-bit Compiler für Windows 3.x?
Ich sehe gerade: Der Threadersteller sucht freie Compiler für 16 BIt. Von Borland geht da nur Delphi 1 oder Borland Pascal für Windows, das es mit dem Buch "Delphi für Kids" auf CD dazu gibt. Watcom wurde schon genannt.
Lazarus ist definitiv 32 Bit, läuft also nicht auf Win 3.1x
Lazarus ist definitiv 32 Bit, läuft also nicht auf Win 3.1x
Re: Freier 16-bit Compiler für Windows 3.x?
.
Zuletzt geändert von der_computer_sammler am Mi 2. Nov 2016, 18:36, insgesamt 1-mal geändert.
Re: Freier 16-bit Compiler für Windows 3.x?
Einfach Borland C Builder 3.1 mit Windows Frontend, erzeugt 16 und 32bit Code.
Läuft bei mir auf einen 286-16.
Leichenschänder :O
Läuft bei mir auf einen 286-16.
Leichenschänder :O