Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #1484

Re: Method to address both Legend and Saturn RAM cards

From D Finnigan <dog_cow@macgui.com>
Newsgroups comp.sys.apple2.programmer
Subject Re: Method to address both Legend and Saturn RAM cards
Date 2015-01-18 10:09 +0000
Organization Mac GUI
Message-ID <dog_cow-1421575793@macgui.com> (permalink)
References <dog_cow-1421349003@macgui.com> <crCdnUWW-uNNDCXJnZ2dnUU7-dednZ2d@earthlink.com> <276de793-dd18-47b7-87b7-f9c5f5316798@googlegroups.com>

Show all headers | View raw


gids.rs wrote:
> 
> I think you had better re-read David's first post.
> 
> This next line is not possible.
> 
>> The Saturn RAM cards use a series of addresses to select a bank, starting
> with $C084 for bank 0, $C085 for bank 1, $C086 for bank 2, and so on.
> 
> 
> A Saturn card can have up to 128 kb which is 16 banks of 16 kb.  Your code
> would be accessing $C084 - $C093.  You have a bug in your code.
> 
> Ergo, how the cards are stated to be accessed, are more than likely turned
> around.

Links to documentation in my first post.

The Legend card definitely uses only 1 address, and that's $C084, as a bank
select. It's write-only. Refer to PDF page 15.

The problem is that Saturn uses multiple addressses, but they're not
contiguous. Once you get above a certain bank number, there's a jump. Refer
to PDF page 73.

> 
> See what you started David?  You listed buggy code.

OK, here's the code that came to my head this morning. This is closer to
what I had in mind.

As with my first listing, this is completely untested.

So you start out with

RAMTYPE EQU $06 ; ZERO-PAGE LOCATION
BANKSEL EQU $C084

same as last time, but now your subroutine looks like this:

AND RAMTYPE
TAX
STA BANKSEL,X
RTS

The premise here being that an earlier subroutine has either stored a 0 in
RAMTYPE for the Legend, or it has stored the maxinum number of banks for the
Saturn card. The desired bank number is still sent in A. So there's a mask
to set up the X-register to use either the bank index for Saturn, or just
$C084,0 for the Legend.

Short and sweet.

Except that apparently it will still fail on the high bank numbers for
Saturn because it jumps from $C087 to $C08C.

-- 
]DF$
Apple II Book: http://macgui.com/newa2guide/
Usenet: http://macgui.com/usenet/  <-- get posts by email!
Apple II Web & Blog hosting: http://a2hq.com/

Back to comp.sys.apple2.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Method to address both Legend and Saturn RAM cards D Finnigan <dog_cow@macgui.com> - 2015-01-15 19:09 +0000
  Re: Method to address both Legend and Saturn RAM cards "Anton Treuenfels" <teamtempest@yahoo.com> - 2015-01-15 22:21 -0600
    Re: Method to address both Legend and Saturn RAM cards gids.rs@sasktel.net - 2015-01-16 09:41 -0800
      Re: Method to address both Legend and Saturn RAM cards D Finnigan <dog_cow@macgui.com> - 2015-01-16 19:08 +0000
      Re: Method to address both Legend and Saturn RAM cards qkumba <peter.ferrie@gmail.com> - 2015-01-17 21:32 -0800
        Re: Method to address both Legend and Saturn RAM cards gids.rs@sasktel.net - 2015-01-17 22:33 -0800
          Re: Method to address both Legend and Saturn RAM cards gids.rs@sasktel.net - 2015-01-17 22:54 -0800
            Re: Method to address both Legend and Saturn RAM cards Leandro Polimeno <leandro.polimeno@gmail.com> - 2015-02-10 04:53 -0800
              Re: Method to address both Legend and Saturn RAM cards gids.rs@sasktel.net - 2015-02-10 21:19 -0800
                Re: Method to address both Legend and Saturn RAM cards Leandro Polimeno <leandro.polimeno@gmail.com> - 2015-02-11 05:22 -0800
          Re: Method to address both Legend and Saturn RAM cards D Finnigan <dog_cow@macgui.com> - 2015-01-18 10:09 +0000
            Re: Method to address both Legend and Saturn RAM cards "Anton Treuenfels" <teamtempest@yahoo.com> - 2015-01-19 08:33 -0600
              Re: Method to address both Legend and Saturn RAM cards D Finnigan <dog_cow@macgui.com> - 2015-01-19 18:29 +0000
              Re: Method to address both Legend and Saturn RAM cards qkumba <peter.ferrie@gmail.com> - 2015-01-20 09:33 -0800
                Re: Method to address both Legend and Saturn RAM cards "Anton Treuenfels" <teamtempest@yahoo.com> - 2015-01-20 17:06 -0600

csiph-web