[comp.sys.amiga] Manx large array problems...

kvitek@pro-sparklin.cts.com (Keith Vitek) (07/27/88)

If I remember correctly, that may be a problem with the cpu.
 
I remember reading somewhere that the 68000 can have page sizes of
2/4/8/16/32/64k only, and the compiler may only be able to use a
page at a time for data.

Keith

ps: so I don't know what I'm talking about...

dave@dms3b1.UUCP (Dave Hanna) (07/28/88)

In article <3252@crash.cts.com> kvitek@pro-sparklin.cts.com (Keith Vitek) writes:
>If I remember correctly, that may be a problem with the cpu.
> 
>I remember reading somewhere that the 68000 can have page sizes of
>2/4/8/16/32/64k only, and the compiler may only be able to use a
>page at a time for data.
>
>Keith
No, you're confusing the cpu and mmu (at least the 68451 version).
The MMU is limited by its architecture to page (or segment, or whatever
term you want to use) sizes that are a power of 2, though they
can go all the way to 16M.  1) That is transparent to the program,
assuming the memory management software is properly written. 2) Amiga
has no memory management anyway, so it doesn't matter.

The CPU limitation that is relevant to variable addressing is that
relative addressing mode (Address register plus displacement) 
uses 16 bit signed offsets, which limits
the structure sizes or number of local variables that can be addressed
_using that mode_ to 32K.  It just means the compiler has to have
a little bit more smarts and go to a little bit of extra work
to go beyond that.

NOTE:  I know nothing about the structure of the Manx compiler.  I
am thoroughly familiar with 68000 architecture.


-- 
Dave Hanna,  Daltech MicroSystems    |  "Do or do not -- There is no try"
P.O. Box 584, Bedford, TX 76095      |                        - Yoda
(214) 358-4534   (817) 540-1524      |
UUCP:  ...!killer!gtmvax!dave        |