Rocksolid Light

Welcome to RetroBBS

mail  files  register  newsreader  groups  login

Message-ID:  

"I may be synthetic, but I'm not stupid" -- the artificial person, from _Aliens_


devel / comp.sys.apple2.programmer / Access to AUX mem at $D000

SubjectAuthor
* Access to AUX mem at $D000Marc Golombeck
+* Re: Access to AUX mem at $D000qkumba
|`- Re: Access to AUX mem at $D000qkumba
`- Re: Access to AUX mem at $D000I am Rob

1
Access to AUX mem at $D000

<d9dde3b8-b74b-4cfc-ac4d-2356956f1d44n@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=224&group=comp.sys.apple2.programmer#224

  copy link   Newsgroups: comp.sys.apple2.programmer
X-Received: by 2002:a05:622a:54c:: with SMTP id m12mr4803408qtx.300.1644687397092;
Sat, 12 Feb 2022 09:36:37 -0800 (PST)
X-Received: by 2002:a05:6808:3098:: with SMTP id bl24mr2676955oib.312.1644687396815;
Sat, 12 Feb 2022 09:36:36 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.sys.apple2.programmer
Date: Sat, 12 Feb 2022 09:36:36 -0800 (PST)
Injection-Info: google-groups.googlegroups.com; posting-host=2001:16b8:a4b7:fb00:2d09:caae:16ae:5489;
posting-account=9WIejgoAAADyywkYI2FcuCASZdahKKxC
NNTP-Posting-Host: 2001:16b8:a4b7:fb00:2d09:caae:16ae:5489
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d9dde3b8-b74b-4cfc-ac4d-2356956f1d44n@googlegroups.com>
Subject: Access to AUX mem at $D000
From: marc.andre.tichy@googlemail.com (Marc Golombeck)
Injection-Date: Sat, 12 Feb 2022 17:36:37 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 4
 by: Marc Golombeck - Sat, 12 Feb 2022 17:36 UTC

Is there a method to access AUX mem from $D000 in 128 k Apple IIe? AUXMOVE only covers the range up to $BFFF.

Is the area $D000-$DFFF also bank switched like the language card memory? How can that bank switching be achieved in AUX mem?

Thx for any hints!

Re: Access to AUX mem at $D000

<103b860b-9cf8-4db4-a494-5bb099d915c8n@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=225&group=comp.sys.apple2.programmer#225

  copy link   Newsgroups: comp.sys.apple2.programmer
X-Received: by 2002:a05:6214:2427:: with SMTP id gy7mr5013143qvb.71.1644692293875;
Sat, 12 Feb 2022 10:58:13 -0800 (PST)
X-Received: by 2002:a05:6870:1004:: with SMTP id 4mr1838519oai.100.1644692293522;
Sat, 12 Feb 2022 10:58:13 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.sys.apple2.programmer
Date: Sat, 12 Feb 2022 10:58:13 -0800 (PST)
In-Reply-To: <d9dde3b8-b74b-4cfc-ac4d-2356956f1d44n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2603:8001:7300:56d5:15cc:ed88:17eb:b8f3;
posting-account=bGpciwoAAACg2KT8pQMph7tnt3o_9vtu
NNTP-Posting-Host: 2603:8001:7300:56d5:15cc:ed88:17eb:b8f3
References: <d9dde3b8-b74b-4cfc-ac4d-2356956f1d44n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <103b860b-9cf8-4db4-a494-5bb099d915c8n@googlegroups.com>
Subject: Re: Access to AUX mem at $D000
From: peter.ferrie@gmail.com (qkumba)
Injection-Date: Sat, 12 Feb 2022 18:58:13 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 1
 by: qkumba - Sat, 12 Feb 2022 18:58 UTC

writing to $C009 enables access to $D000-FFFF, then $C083 or $C08B as usual to choose the $D000 page that you want.
write to $C008 to restore access to main $D000-FFFF.

Re: Access to AUX mem at $D000

<6a8cb086-2da6-4282-9297-70eabd6c70d6n@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=226&group=comp.sys.apple2.programmer#226

  copy link   Newsgroups: comp.sys.apple2.programmer
X-Received: by 2002:ac8:509:: with SMTP id u9mr4963611qtg.530.1644692462792;
Sat, 12 Feb 2022 11:01:02 -0800 (PST)
X-Received: by 2002:a05:6830:4118:: with SMTP id w24mr2650105ott.10.1644692462470;
Sat, 12 Feb 2022 11:01:02 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.sys.apple2.programmer
Date: Sat, 12 Feb 2022 11:01:02 -0800 (PST)
In-Reply-To: <103b860b-9cf8-4db4-a494-5bb099d915c8n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2603:8001:7300:56d5:15cc:ed88:17eb:b8f3;
posting-account=bGpciwoAAACg2KT8pQMph7tnt3o_9vtu
NNTP-Posting-Host: 2603:8001:7300:56d5:15cc:ed88:17eb:b8f3
References: <d9dde3b8-b74b-4cfc-ac4d-2356956f1d44n@googlegroups.com> <103b860b-9cf8-4db4-a494-5bb099d915c8n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <6a8cb086-2da6-4282-9297-70eabd6c70d6n@googlegroups.com>
Subject: Re: Access to AUX mem at $D000
From: peter.ferrie@gmail.com (qkumba)
Injection-Date: Sat, 12 Feb 2022 19:01:02 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 3
 by: qkumba - Sat, 12 Feb 2022 19:01 UTC

Note also that writing to $C009 enables both read and write access to $D000-FFFF (unlike $C003/C005 for the regular memory), and that $C009 switches to aux zero-page and stack, so you can't call it easily from a subroutine that doesn't also write to $C008 before returning.

Re: Access to AUX mem at $D000

<609e66f9-7c12-4c8b-9823-0cdb28732445n@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=227&group=comp.sys.apple2.programmer#227

  copy link   Newsgroups: comp.sys.apple2.programmer
X-Received: by 2002:a05:622a:4cb:: with SMTP id q11mr5465723qtx.597.1644712179369;
Sat, 12 Feb 2022 16:29:39 -0800 (PST)
X-Received: by 2002:a05:6870:1210:: with SMTP id 16mr2097236oan.145.1644712179150;
Sat, 12 Feb 2022 16:29:39 -0800 (PST)
Path: i2pn2.org!rocksolid2!i2pn.org!news.swapon.de!news.mixmin.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.sys.apple2.programmer
Date: Sat, 12 Feb 2022 16:29:38 -0800 (PST)
In-Reply-To: <d9dde3b8-b74b-4cfc-ac4d-2356956f1d44n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=142.165.85.128; posting-account=U4TNXwoAAABP4nIJHynAJZ69O_f3LY2g
NNTP-Posting-Host: 142.165.85.128
References: <d9dde3b8-b74b-4cfc-ac4d-2356956f1d44n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <609e66f9-7c12-4c8b-9823-0cdb28732445n@googlegroups.com>
Subject: Re: Access to AUX mem at $D000
From: gids.rs@sasktel.net (I am Rob)
Injection-Date: Sun, 13 Feb 2022 00:29:39 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: I am Rob - Sun, 13 Feb 2022 00:29 UTC

On Saturday, February 12, 2022 at 11:36:37 AM UTC-6, Marc Golombeck wrote:
> Is there a method to access AUX mem from $D000 in 128 k Apple IIe? AUXMOVE only covers the range up to $BFFF.
>
> Is the area $D000-$DFFF also bank switched like the language card memory? How can that bank switching be achieved in AUX mem?
>
> Thx for any hints!

You can copy the COPY routine at $FE2C in ROM to the lower Main 48k and use that. You can also use it to copy to both the Aux48k and the AuxLC instead of using the AUXMOVE.

From Main memory, flip switches $C009 and $C005 to copy routines from Main and write to anywhere in Aux. This has to be done first before setting up zero-page locations $3C.42 as the AuxZP is now in effect.

From Main you can now do a JSR $D000, or where the routine is in the AuxLC, but remember this will put the return address on the Aux stack, so you cannot flip the $C008 switch until the call is returned to Main memory.

Your AuxLC routine should flip the $C003 switch to enable reading from the lower Aux48k, then call the Aux48k routine. Your Aux48k routine should never flip any switches to Read Main memory (either lower 48k or MainZPLC), but can flip $C004 to write to Main. Upon return to the AuxLC routine, it should then flip the $C002 switch to read from Lower Main48k again before returning to the Main memory routine.

And lastly, immediately after the JSR $D000 from Main, you need to flip the $C008 switch to allow any return addresses on the Main stack and variables in MainZP to be used normally again.

Personally, I wouldn't use the LC banks at $D000.DFFF as they still require two softswitch accesses to do a write, just like MainLC does. And you still have all of $E000.FFFF you can use without extra switching. A lot of code can be packed in the upper 8 kb.

1
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor