From: MagerValp (MagerValp_at_cling.gu.se)
Date: 2002-11-27 13:34:18
>>>>> "PF" == Piotr Fusik <P.Fusik_at_elka.pw.edu.pl> writes:
PF> Actually it's not a "problem", just a limitation of cc65: e.g. I
PF> have 1 MB RAM in my Atari and want to use it in my C program, but
PF> cc65 sees nothing but base 64 KB. Or can it see more memory?
1) Write a custom library to use the extra ram
This is what I did for my SuperCPU (16 MB 65816 expansion) project.
Only suitable for data storage, but it's fast and easy to implement.
2) Write a generic platform independent library to access expansion ram
This is what Uz and David have been discussing, with loadable
modules to handle various kinds of memory expansions. Just like 1
above it's only suitable for data storage, but it isn't quite as
fast and requires a bit more work to implement.
3) Extend the compiler with 24-bit pointers
This would allow the coder to transparently use all of the
available ram in the code, without having to worry about the
underlying structure. There are two major problems though: it would
take a massive amount of work to implement and debug, and for
targets that can't access all available ram simultaneously the
generated code will be far from optimal. You'll need to implement
far pointers and function calls, with all of its probelms and
overhead.
To me, a 65816 backend would make the most sense, but I'm horribly
biased :) Of course, the only one (realistically) who can do this is
Uz, and until that day I'll just happily use my own custom routines.
--
___ . . . . . + . . o
_|___|_ + . + . + . Per Olofsson, arkadspelare
o-o . . . o + MagerValp_at_cling.gu.se
- + + . http://www.cling.gu.se/~cl3polof/
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.
This archive was generated by hypermail 2.1.3 : 2002-11-27 13:35:06 CET