I'm surprised the GNU tools don't support 65816. What are the "real" Super
NES tools?
- Jay
Dave Lowry wrote in message <7e91l5$2e6$1...@chico.htc.honeywell.com>...
>Could someone point me to some 65C816 cross development tools?
>Preferably Macintosh hosted, but PC would be OK. I'm looking
>to develop for a standalone '816 system... not a GS. Thanks.
>
>-Dave
>
Charlie Springer
>Could someone point me to some 65C816 cross development tools?
>Preferably Macintosh hosted, but PC would be OK.
http://www.hypermall.com/byteworks Byte Works sells MPW
Orca C, which generates 65C816 object code on a Mac.
While it may be possible to use Orca/C for general purpose (non-IIgs)
65816 development, I'd hesitate to recommend it for this task.
The main problems with using Orca/C for non-IIgs 65816 development:
1. It generates executable files in IIgs object module format. This
would have to be turned into a binary image for anything else. (I
assume there is a MakeBinGS utility available under Orca/C for MPW; if
not, you would need a IIgs or at least a IIgs emulator to run MakeBin.)
2. Many of the library modules/functions are heavily dependent on GS/OS,
and some are dependent on parts of the toolbox (the Memory Manager is a
major example that comes to mind). I think the low-level libraries
(e.g. long integer arithmetic) are self contained, so it is mainly the
standard I/O library that would cause problems.
This would mean writing another set of libraries for the target
environment, which is not a trivial task.
3. Assumptions about the IIgs environment may be inappropriate on
another 65816 system. For example, an embedded system may require the
use of the Direct Page register to point to an I/O space, while Orca/C
uses it as a frame pointer. I don't think this is a biggie.
There are bound to be other problems, but those are the main ones I can
think of at present.
--
David Empson
dem...@actrix.gen.nz
Snail mail: P.O. Box 27-103, Wellington, New Zealand
>>for Super NES). Even if that isn't the case, you could surely "retarget" it
>
>You still have the problem that ORCA/MPW/C doesn't output assembly
>code but object files which would have to be dissassembled,
>grokked, and then reassembled.
Actually, ORCA/C has been used effectively by at least three teams doing
commercial development for SNES. While it's true that the compiler outputs
OMF files, and the linker outputs the same, you're missing the fact the both
the native and cross development systems already come with utilities to
convert OMF executable files into binary images. Using a shell script you
can easily automate the entire process of starting from source and creating
a binary image for SNES.
ORCA/C does generate Apple IIGS dependent code for some floating-point
operations, but these can be turned off with a pragma. The libraries are, of
course, Apple IIGS dependent, but the source is available, and as I said, at
least three different teams have successfully converted the parts of the
libraries they cared about for SNES.
If you're interested in persuing this, chat with Burger Bill Heineman. He
may be willing to shar his library hacks.
Mike Westerfield