W E L C O M E !
This is a public binary release of the Free Pascal Compiler for MorphOS
platform. It's based on the current SVN version 2.0.4. To read more about
the compiler, be sure to check out the /doc directory, and if possible,
About MorphOS support, it's still in an early stage, but progressing well.
This release is intended for people who want to try out this new toy, and
write some simple stuff in it.
It only has a limited number of MorphOS specific units and features.
Currently it supports the following libraries and devices:
exec.library, dos.library, utility.library, timer.device,
graphics.library, layers.library, intuition.library, clipboard.device
asl.library, datatypes.library ahi.library/ahi.device, get9.library,
Some less used calls are still missing, but there was some progress
definitely. Be prepared for a lot more in the very near future.
You can find more MorphOS-specific information about FPC on the URL
With the contents of this package, and with some other tools from MOS SDK,
you should be able build new FPC for MorphOS binaries by yourself from
the FPC CVS. For more info about this, check the FPC homepage.
FPC on MorphOS now uses vlink by Frank Wille. vlink support page is
available at: http://sun.hasenbraten.de/vlink
A PowerPC CPU equipped computer, with latest MorphOS installed. (Any 1.4.x
will do, but 1.4.5 or better is recommended.) While FPC doesn't requires it
by itself, included GNU binutils from the MOS SDK require ixemul.library.
First, be sure to REMOVE your previous installation, since default paths
are changed, and overwriting old installation can cause troubles.
Currently, only manual installation is possible. After uncompressing the
archive, add the following lines into your S:user-startup file:
Assign FPC: <the_path_where_you_uncompressed_the_archive>
Path FPC:bin/powerpc-morphos ADD
Also, you should set PPC_CONFIG_PATH environment variable, to let
the compiler easiliy find its configuration file. This step is optional
SetEnv SAVE PPC_CONFIG_PATH FPC:bin/powerpc-morphos/
Then you should reboot, to make the new settings work. It's also
recommended to fine-tune your settings in FPC:bin/powerpc-morphos/fpc.cfg
then, to fit your needs. You can run the compiler without arguments to have
access to the help pages about the avaiable parameters.
HISTORY & RELEASE NOTES:
2006.08.22 (2.0.4) (STABLE)
- Fixed started-from-workbench problems both for the compiler, and the
- added MUI support
- some OpenGL fixes
- some other changes i can't remember now
2005.11.26 (2.0.2) (STABLE)
- Added datatypes.library support
- Added OpenGL/TinyGL support (partial, more to come, volunteers welcomed)
- Lot of cleanup + bugfixes in system unit file handling, the code is a lot
more robust now.
- Added RTL debug possibility, it sends messages to MorphOS logserver
(release RTL is built w/o this, you need to rebuild RTL to use this).
- Few other tiny things i've forgot.
- Added fancy new eyecandy truecolor icons for directory and documentation.
Thanks to Andre 'JoBBo' Siegel for the icons.
- Reverted core components to SVN version 2.0.1 (fixes branch) for more
stability, this means all the missing features from the previous version
- fixed an FPU initialisation problem in the RTL
- Updated core components to SVN version 2.1.1 (which is in heavy
development, so expect new bugs...)
- Amiga path conversion in linker script generation fixed (hopefully)
- Few other minor fixes
- This is a put together in hurry release. Not heavily tested. Expect bugs,
bugs, and more bugs. Only for the brave ones.
- Smartlinking is broken. Don't ask why. Will be fixed.
2005.05.16 (2.0.0) (STABLE)
- Updated core components to CVS version 2.0.0
- Few other minor fixes and additions
- Migrated linking process to use Frank Wille's vlink instead of the
(buggy) GNU LD from MOS SDK. This avoids linker errors when smartlinking,
and also means some speedup, especially when linking big projects
- Finally fixed startup code to avoid crashes when stack memory cannot be
- Changed stack to use task's memory pool
- Basic file I/O added to Sysutils unit
- FPCMake works now, and it's now in the distribution
- More sanity checks for System unit, to have more robust file I/O
- DeleteFile and CreateDir of DOSLib unit are now available as
dosDeleteFile and dosCreateDir, to avoid name conficts with Sysutils unit
- fixed exec.library calls using SysV ABI
- unit for using asl.library added
- added example of using asl unit
- unit for using ahi.library added
- added example of using AHI unit
- few more fixes/cleanups/additions i can't remember now
- Made smartlinking work. Hello World! size reduces from 180k to 42k...
- unit for using get9.library added (Sorry, i couldn't resist...:)
- fixed an alignment bug in TDOSList structure
- added example of getting list of Volumes/Assigns
- More SysV ABI madness added/changed. Check the Wiki page for details
(really, since it changed quite a lot since yesterday!). Hopefully
there will be no more changes.
- -Or switch should work now. Slight problems may still appear however,
handle with care
- SysV ABI library calls finally got implemented. It's still experimental
but should work. Check the Wiki page for detailed information.
- slight updates in some units (eg. some more wrappers with taglists)
- clipboard unit added
- some demos included
- h2pas utility included to help conversion of C header files
- Too many things changed since last release, to describe everything in
detail here. DOS and System unit is much cleaner now, has a lot of bugs
removed, so you can expect much more robust performance, both from the
compiler, and from the compiled programs.
- The above includes the removal of the biggest problem the compiler had,
namely leaking _huge_ amount of directory locks. Not any more!
- New units implemented for a few important libraries.
- -Or switch is currently broken. DON'T USE IT!!!
(Not a MorphOS port specific problem.)
- first version
I'd like to send thanks to the followings for making this port possible:
- Genesi, for sending me a Pegasos II/G4 machine to do the development on
- Florian Klaempfl, and the rest of the FPC Development Team for creating
my favourite compiler, and for their great effort to make the MorphOS
- Carl Eric Codere and Nils Sjoholm, authors of the original Amiga/68k port.
Without their work i couldn't be able to come this far
- Sigbjorn 'CISC' Skjaeret for his unlimited knowledge about MOS internals
- Michal 'kiero' Wozniak for his moral support & coding hints
- Jacek 'jacaDcaps' Piszczek for MUICON, the best shell environment ever
- Guys on MDC, for a lot of very useful hints and tips
- Pavel Kanzelsberger, author of Pixel32, because his software is a
great motivation for me
- Frank Wille for vlink and vasm, and for his great support
- Andre 'JoBBo' Siegel for the icons
- #amigahu guys on IRCNet, for not believing i'm able to do this
- Ralph 'laire' Schmidt for MorphOS, and for being a Pascal fan :)
Karoly 'Chain-Q' Balogh <charliescenergy.dfmk.hu>