- Important note:(Jun-2000)
I still haven't my PowerPC Blizzard (now for eight months!). But in last
months I learnt a lot about the ppc assembler so I started to support it
nevertheless I haven't the hardware here yet. Here I have to thank a lot
to Robert Kihl for his patiency when I wanted
him to test all my PowerPC stuff.
- Important note:(Oct-2000)
I finally got my ppc blizzard :))) Now it's for about month I got it and
lots of work is already done. Nevertheless this release has some limitations
and not everything may work. If You found sth (probably yes), please report.
Not all functions from powerd.lib are rewritten to ppc native assembly.
Some functions I converted, some rewrote as D (not assembly) source and
some aren't rewritten at all. Be sure I'm working on it and I'll release
v1.0 what should have most such disadvantages and limitations removed.
There are several ((very) important) things, that currently doesn't work.
These will be fixed sooner or later. But be sure, that You can write
as normally for 68k, because the only difference is OPT PPC added on Your
source, so if it now does work with 68k and doesn't with ppc, be sure it
will in (near) future.
- watch included example (rtg.d) and compile it with OPT PPC enabled
- I know that those 'screen contents' routine is slow as hell in 68k,
this is because of non-optimized 68k code, it can be made much faster,
but when You compile the same under powerpc, it's fast enough, here
You can see the speed difference between 68k and ppc :)
- There is also rtgppc.d example, which use powerpc native rtg functions,
which doesn't require any context switches and it's also quite faster
than the rtg.d compiled for powerpc.
- To compile ppc sources:
- pasm - powerpc assembler by Frank Wille, it might be found on Frank
- vlink - powerpc/m68k object file linker also by Frank Wille.
- rest is the same as for non-ppc programms
- To run ppc programms:
- some PowerPC equipped Amiga :) and powerpc.library v14+ It might work
also under v7 of this library, but I haven't tested it.
- Better support for mixed binary executables
- PPC and 68k in one source!!!
You can simply add to Your source OPT PPC or
compile the source with parameter cpu=603 (eg.: dc
Pay attention that the 'OPT PPC' is placed before the first procedure,
because initial code generator is 68xxx and it will try to compile that
procedure as 68k code and it currently doesn't work.
(btw: the PPC keyword after OPT keyword is defined in dmodules:powerd/options.m
module, so it isn't anything hardcoded ;)