Overview Features Coding ApolloOS Performance Forum Downloads Products Order Contact

Welcome to the Apollo Forum

This forum is for people interested in the APOLLO CPU.
Please read the forum usage manual.
Please visit our Apollo-Discord Server for support.



All TopicsNewsPerformanceGamesDemosApolloVampireAROSWorkbenchATARIReleases
Information about the Apollo CPU and FPU.

Q AMMX.doc About Bank Switching.

Tommo Noorduin

Posts 129
25 Sep 2021 16:05


ammx instruction:
$FE00 0000 > extract bits ABD AAAAAA BBBB DDDD ooooo

extension before normal instruction:
$7180 > extract bits AA BB CCCCC DD

About the last one.
AA are the extended bits for operand a.
and BB are the extended bits for operand b.
and we get a new operand: C.

Now,
in AA or BB
Data become 4 banks (default D0..7 and 3 new E0..23)
and Address : lsb switch A0..7 and B0..7(if lsb=1)

So does the other bit of Address
when <ea> is present
switches <ea> to <vea>  (for $7100, line7 unused moveq)
like the lineF does?

I am thinking how a debugger would interpret it.

Thanks.


Tommo Noorduin

Posts 129
25 Sep 2022 16:05


Yes, it does.

see:
Cpu Instructions, Color Mapping.
EXTERNAL LINK 
And in the 080 debugger "MonAm 3.09" you can see it by switching bank decoding on & off.
EXTERNAL LINK 
 
Documentation about 080 instructions:
EXTERNAL LINK 

posts 2