Jump to content
IGNORED

Selfmade 256K Expansion for 800XL - Rambo & XE Compatibility Questions


Vigo

Recommended Posts

Hello together,

 

I am currently developing my own 256K expansion for my 800XL computer using spare 41256 DRAMs and GAL22V10 I have lying around here.

Since I am originally coming from the C64 and Amiga camp, I am mostly a newbie concerning the Atari 8-bit itself, and in particular the intricate requirements of software taking advantage of 128K/256K Ram.

 

However, I managed to get a fully working PLD implementation of the Rambo XL memory banking scheme using bits 2,3,5,6 for memory banking, which is, as I understand, not fully compatible with 130XE banking scheme.

Now I was thinking about an improvement, and maybe you guys can help me out here.

 

Normally, if I choose banking bits 5,6=00, a Rambo XL would actually map the main memory bank to the banking window, which is, sort of, a useless combination, since this memory is in any case accessible when banking is disabled for CPU with bit 4 = 1.

Now I was thinking about, what if I use this combination to allow ANTIC banking access to the second 64K of memory banking, as an original XE would allow?

 

It would look like this:

 

Bits: 6,5,4,3,2

000xx = select ANTIC & CPU bank xx in second 64K page (XE compatible)

001xx = select ANTIC bank xx in second 64K page (XE compatible)

010xx = select CPU bank xx in second 64K page (Rambo mode)

100xx = select CPU bank xx in third 64K page (Rambo mode)

110xx = select CPU bank xx in fourth 64K page (Rambo mode)

 

Some questions arise here:

 

- Does software written with RAMBO compatibility rely on the behavior that CPU bankswitch also switches the ANTIC memory bank?

- Does software written with RAMBO compatibility rely on the behavior that you can mirror the main memory bank using banking bits 5,6=00?

- Which software specifically requires 130XE compatible memory banking? Would this software use more than 128K memory?

 

Thanks a lot for your feedback!

Edited by Vigo
Link to comment
Share on other sites

Welcome!

 

For XL/XE banking, you will need to set the banking via PORTB at $D301.  I am not sure if you are referring to this location, or not, in your description.  There is some information on memory banking here:  https://www.atariarchives.org/mapping/appendix16.php

 

Also, you will need to be monitoring the /HALT line for ANTIC banking.

 

Answers to your questions....

 

1.  RAMBO banking excludes ANTIC banking.

2.  Bits 5 and 6, with RAMBO banking, just select additional banks, they don't mirror anything.  Some banking schemes do mirror main memory by allowing it to be banked.  Normally, with 256k of memory, banks 0-3 mirror the main memory.

3.  I understand there isn't much software that uses ANTIC banking.  I wouldn't expect it to use more than 128k of memory.  I don't have any numbers, though.

 

More information on types of banking upgrades created for the Atari:  http://www.atarimania.com/faq-atari-400-800-xl-xe-what-types-of-memory-upgrades-are-there-for-the-atari_68.html  (Please note that the XL/XE system only normally supports PORTB banking.)

 

 

Link to comment
Share on other sites

It's my understanding that banking systems that don't support seperate Antic/CPU banking will have all memory accesses directed as per PORTB setting.

Main memory mirroring - I'm not sure if this is relied on much.  I guess it's a side-effect of the way some expansions work.  The main useful purpose would be to get at the Ram under $D000-$D7FF that's normally not accessible on a stock machine.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...