|
Atari coding BBS
Re: Disabling 68030 PMMU + caches |
Posted by: Klaz
|
Feb,07.2012-18:27
|
Hi Mikro,
I was thinking along the same lines first, but $ffffxxxx or $xxxx.w addressing works fine when PMMU *and* CPU caches are disabled. Indeed everything works as it should, even swapping the system back in (after restoring the PMMU). So I don't think that it's the cause.
Also, I'm not quite sure if the PMMU is responsible for this on the Falcon (i.e translating $ffff8260 to $00ff8260)? I thought the STE bus compatibility mode does this? I may be wrong there, though.
In the meantime, I have tried another way of translating logical to physical addresses transparently and also disabling memory protection:
lea tc_buf(pc),a0 * disable all address translation on 68030 PMMU:
pmove.l tc,(a0) * get current tc status
and.l #$dffffff,(a0) * clear supervisor root enable bit, just use crp
pmove.l (a0),tc * "
lea my_crp(pc),a0 * crp: dt = page descriptor, table adr = 0
pmove (a0),crp * -> transparent translation for all addresses
pflusha * flush ATC cache
nop *
bsr flush_caches * flush CPU caches
my_crp:
dc.l $80000001,0 *
I thought this might be 'cleaner' as the PMMU is kept enabled, while having the same result as regards address translation and memory protection.
Same story: it works great with CPU caches off, but is unstable with caches on.
Another problem with all this is that it's hard to find 'comprehensible' information on PMMU coding. I've read through pink's/RG MMU article and while it's a great piece of information it sadly didn't help my special cause. ;)
|
[All messages in this thread] [Start new thread]
Topic
|
Posted by
|
Date
|
Disabling 68030 PMMU + caches
|
Klaz
|
Feb,07.2012-10:55
|
Re: Disabling 68030 PMMU + caches
|
mikro
|
Feb,07.2012-17:52
|
Re: Disabling 68030 PMMU + caches
|
Klaz
|
Feb,07.2012-18:27
|
Re: Disabling 68030 PMMU + caches
|
ggn
|
Feb,07.2012-19:28
|
Re: Disabling 68030 PMMU + caches
|
Klaz
|
Feb,08.2012-09:35
|
Re: Disabling 68030 PMMU + caches
|
ggn
|
Feb,09.2012-19:22
|
Re: Disabling 68030 PMMU + caches
|
mikro
|
Feb,08.2012-12:08
|
Re: Disabling 68030 PMMU + caches
|
Klaz
|
Feb,08.2012-13:44
|
Re: Disabling 68030 PMMU + caches
|
mikro
|
Feb,08.2012-17:23
|
Re: Disabling 68030 PMMU + caches
|
Klaz
|
Feb,09.2012-09:17
|
Re: Disabling 68030 PMMU + caches
|
sqward
|
Feb,09.2012-16:01
|
Re: Disabling 68030 PMMU + caches
|
Klaz
|
Feb,09.2012-16:37
|
Re: Disabling 68030 PMMU + caches
|
mikro
|
Feb,10.2012-10:31
|
What's the anti-troll code? That's your personal code to be able to add comments and messages on the dhs.nu site.
Don't have a code or forgot it? Fix it here.
|