Difference between revisions of "DOS/de"
m (wen -> wenn) |
|||
(15 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{LanguageBar}} |
=MS-DOS Crosscompiler= | =MS-DOS Crosscompiler= | ||
Line 5: | Line 5: | ||
Mit folgenden Schritten, kann man MS-DOS-Programme mit FPC erstellen. | Mit folgenden Schritten, kann man MS-DOS-Programme mit FPC erstellen. | ||
− | ==Windows== | + | ==Nur Windows== |
+ | |||
===Downloads=== | ===Downloads=== | ||
+ | |||
Dazu habe ich folgendes unter WinXP installiert (Sollte auch mit neueren Windows gehen, auch 64Bit): | Dazu habe ich folgendes unter WinXP installiert (Sollte auch mit neueren Windows gehen, auch 64Bit): | ||
− | * ftp:// | + | * ftp://ftp.freepascal.org/pub/fpc/dist/3.0.4/i386-win32/fpc-3.0.4.i386-win32.exe |
− | * ftp:// | + | * ftp://ftp.freepascal.org/pub/fpc/dist/3.0.4/i386-win32/fpc-3.0.4.i386-win32.cross.i8086-msdos.exe |
+ | |||
+ | Im englischen Wiki sind sind noch mehr Links vorhanden: | ||
+ | * [[DOS#Releases|DOS]] - (englisch) | ||
+ | |||
+ | |||
{{Note|Achtung, Links können sich ändern, wen ein neues FPC kommt.}} | {{Note|Achtung, Links können sich ändern, wen ein neues FPC kommt.}} | ||
− | + | ||
+ | |||
+ | Folgende Dateien werden noch gebraucht: | ||
* http://www.stack.nl/~marcov/fpc-i8086-msdos-r25379.zip | * http://www.stack.nl/~marcov/fpc-i8086-msdos-r25379.zip | ||
===Dateien vorbereiten=== | ===Dateien vorbereiten=== | ||
+ | |||
Aus diesem Archiv kopiert man folgende Dateien in C:\FPC\3.0.2\bin\i386-win32: ( Befinden sich in .\pp16\bin ) | Aus diesem Archiv kopiert man folgende Dateien in C:\FPC\3.0.2\bin\i386-win32: ( Befinden sich in .\pp16\bin ) | ||
* msdos-wlib.exe | * msdos-wlib.exe | ||
Line 21: | Line 31: | ||
* wlibd.dll | * wlibd.dll | ||
* wlinkd.dll | * wlinkd.dll | ||
− | + | Folgende Dateien müssen umbenannt werden: | |
* msdos-wlib.exe -> wlib.exe | * msdos-wlib.exe -> wlib.exe | ||
* msdos.wlink.exe -> wlink.exe | * msdos.wlink.exe -> wlink.exe | ||
===Hello World=== | ===Hello World=== | ||
+ | |||
Zum ausprobieren habe ich ein HelloWorld geschrieben. | Zum ausprobieren habe ich ein HelloWorld geschrieben. | ||
+ | |||
<syntaxhighlight lang="pascal"> | <syntaxhighlight lang="pascal"> | ||
program helloworld; // test.pas | program helloworld; // test.pas | ||
Line 40: | Line 52: | ||
WriteLn(); | WriteLn(); | ||
WriteLn(); | WriteLn(); | ||
− | TextAttr:=$07; | + | TextAttr := $07; // grau |
WriteLn('<Taste> = weiter'); | WriteLn('<Taste> = weiter'); | ||
repeat | repeat | ||
Line 48: | Line 60: | ||
===Kompilieren=== | ===Kompilieren=== | ||
+ | |||
Kompilieren muss man es noch mit <pre>ppcross8086 -WmLarge helloworld.pas</pre> | Kompilieren muss man es noch mit <pre>ppcross8086 -WmLarge helloworld.pas</pre> | ||
'''-WmLarge''' ist wichtig, wen man das gleiche Speichermodell wie von Turbo-Pascal will. | '''-WmLarge''' ist wichtig, wen man das gleiche Speichermodell wie von Turbo-Pascal will. | ||
Line 53: | Line 66: | ||
===Starten=== | ===Starten=== | ||
− | |||
− | [[Category: | + | Anschliessend die EXE in einem MS-DOS Emulator laufen lassen (zB. [https://www.dosbox.com/download.php?main=1 DOSBox]).<br> |
+ | Bei einem '''64Bit Windows''', ist ein DOS-Emulator '''zwingend'''. | ||
+ | |||
+ | ==Alle gängigen OS== | ||
+ | |||
+ | Wenn es nichts fertiges gibt, wie bei Windows kann man das ganze mit folgendem Tool erledigen: | ||
+ | * [[fpcupdeluxe/de|FPCUPdeluxe]] (deutsch) | ||
+ | * [[fpcupdeluxe|FPCUPdeluxe]] (englisch) | ||
+ | Dabei ist folgendes zu beachten: | ||
+ | * [[fpcupdeluxe/de#MS-DOS|FPCUPdeluxe MS-DOS]] | ||
+ | Es läuft auf allen gängigen Plattformen und erzeugt Cross-Compiler für die meisten gängigen Plattformen. | ||
+ | |||
+ | Autor: [[User:Mathias|Mathias]] | ||
+ | |||
+ | [[Category:DOS]] {{AutoCategory}} |
Latest revision as of 10:11, 14 March 2024
│ Deutsch (de) │ English (en) │
MS-DOS Crosscompiler
Mit folgenden Schritten, kann man MS-DOS-Programme mit FPC erstellen.
Nur Windows
Downloads
Dazu habe ich folgendes unter WinXP installiert (Sollte auch mit neueren Windows gehen, auch 64Bit):
- ftp://ftp.freepascal.org/pub/fpc/dist/3.0.4/i386-win32/fpc-3.0.4.i386-win32.exe
- ftp://ftp.freepascal.org/pub/fpc/dist/3.0.4/i386-win32/fpc-3.0.4.i386-win32.cross.i8086-msdos.exe
Im englischen Wiki sind sind noch mehr Links vorhanden:
- DOS - (englisch)
Folgende Dateien werden noch gebraucht:
Dateien vorbereiten
Aus diesem Archiv kopiert man folgende Dateien in C:\FPC\3.0.2\bin\i386-win32: ( Befinden sich in .\pp16\bin )
- msdos-wlib.exe
- msdos.wlink.exe
- wlibd.dll
- wlinkd.dll
Folgende Dateien müssen umbenannt werden:
- msdos-wlib.exe -> wlib.exe
- msdos.wlink.exe -> wlink.exe
Hello World
Zum ausprobieren habe ich ein HelloWorld geschrieben.
program helloworld; // test.pas
uses
Crt;
var
i: Integer;
begin
for i := 1 to 15 do begin
TextAttr := i;
WriteLn('Hello World !');
end;
WriteLn();
WriteLn();
TextAttr := $07; // grau
WriteLn('<Taste> = weiter');
repeat
until KeyPressed;
end.
Kompilieren
Kompilieren muss man es noch mit
ppcross8086 -WmLarge helloworld.pas
-WmLarge ist wichtig, wen man das gleiche Speichermodell wie von Turbo-Pascal will. Macht sich besonders bemerkbar, wen man Speicher hin und her schiebt, zB. VRAM. In ASM macht es sich mit LDS und LES bemerkbar.
Starten
Anschliessend die EXE in einem MS-DOS Emulator laufen lassen (zB. DOSBox).
Bei einem 64Bit Windows, ist ein DOS-Emulator zwingend.
Alle gängigen OS
Wenn es nichts fertiges gibt, wie bei Windows kann man das ganze mit folgendem Tool erledigen:
- FPCUPdeluxe (deutsch)
- FPCUPdeluxe (englisch)
Dabei ist folgendes zu beachten:
Es läuft auf allen gängigen Plattformen und erzeugt Cross-Compiler für die meisten gängigen Plattformen.
Autor: Mathias