Subject: Re: LCII Memory Layout
To: None <M.Hitter@trier.fh-rpl.de>
From: Sunny Daniels <sdan002@cs.auckland.ac.nz>
List: port-mac68k
Date: 04/28/1996 16:46:27
>> Hello Again!
>>
>> In an attempt to discover a little more about the LCII's memory layout, I
>> booted up MacOS on my LCII with virtual memory switched off.  I then used
>> MacsBug to carefully examine the contents of the page tables ("Translation
>> Tree" in 68030 terminology) and MMU registers.  I did this in both 24 bit
>> and 32 bit modes.  I also looked at the information on the LC and LCII
>> memory layouts in the Apple Tech Info Library.
>
>I know about MMU's not much more as published in Inside Macintosh and
>the tech notes. Have you perhaps some more info in electronic form which
>I could fetch? I'm afraid our library at school isn't that
>well-equipped.

The "Apple Tech Info Library" should be accessible through the web page:

        http://til.info.apple.com/til/til.html

The layout of the translation tree and MMU registers is documented in the
"MC68030 Enhanced 32-Bit Microprocessor User's Manual" published by
Prentice-Hall.

>
>> 1) The LCII DOES use the MMU to rearrange the address space, even when the
>> LCII has virtual memory turned off in the Memory control panel.
>
>Could you check about there are areas where physical address <> logical
>address. I didn't find such areas in my 4meg configuration when I
>checked with the GetPhysical() trap.

Yes, there do appear to be such areas.  I'll post a summary of my findings to 
the mailing list as soon as I get the time to do it.  

>This means you see only 10meg of physical RAM. So the MMU isn't used to
>disable the uppermost 2megs (?). There must be some on-board logic to do
>that.
>

I assume that it is done by on-board logic.

>
>But this still gives me no idea for the strange behaviour near the
>lo-mem-globals I posted recently.
>

The 68030 has a small on-chip cache.  I don't know the details of how the
cache works, but you can read all about the cache in the "MC68030 Enhanced 
32-Bit Microprocessor User's Manual".  The problem with the lo-mem-globals
sounds as if it might be caused by bad interactions between the virtual 
memory system and the cache.


--- Sunny Daniels,
--- Department of Computer Science,
--- University of Auckland,
--- Private Bag 92019,
--- Auckland,
--- New Zealand.
---
--- E-Mail: sdan002@cs.auckland.ac.nz