Code of CFFA for Apple-1 relocatable ?

4 posts / 0 new
Last post
speedyG's picture
Offline
Last seen: 4 years 10 months ago
Joined: Nov 16 2011 - 07:45
Posts: 2493
Code of CFFA for Apple-1 relocatable ?

Hello to all AF-members here,

by description of the manual the adressing line of the CFFAcard is using the "T"-line of the board
and that line shall be jumpered to the "A"line of the 74154

- has anybody any kind of experience

using another line of the 74154 instead of fixing the wire to "A"
- for example "B", "C", "D" or "E" ?

in fact this would demand the code to be "relocatable" using only the 4kB "window"
provided by the wire-coded adressing.... giving the freedom of choice which area
of 4 kB window shall be used ?

sincerely
speedyG

Offline
Last seen: 9 years 10 months ago
Joined: Aug 3 2011 - 07:50
Posts: 33
Re: Code of CFFA for Apple-1 relocatable ?

Out of curiosity, what are you trying to accomplish?

I believe the manual says that the ROM needs to be modified to relocate that. And, you've still got $8000-9FFF taken and not relocatable ($8 for the scratch RAM, $9 for the first page of ROM), even if you relocate the T line.

And, $C is already used by the cassette interface (which is, admittedly, optional), $D is already used by the PIA (talk about a horrible waste of address space, the PIA is using four bytes (but mirrored throughout the address space thanks to how they did it), but it did save another address decoder chip or two) and you're not getting that space without modifying the monitor, and $E is already used by the 4 kiB segment of RAM for loading BASIC (or, on the Replica 1, BASIC in ROM).

Moving to $B is an option, but that probably doesn't get you anything, because $8 and $9 are still taken, so you've just moved the hole from $B to $A (if your goal is for the top of address space being contiguous).

I'll note that none of this is relocatable on the Replica 1 - the T line is hard-coded to A, S is hard-coded to B, R is hard-coded to C.

I was about to post another thread, actually, about address space usage by expansion cards...

speedyG's picture
Offline
Last seen: 4 years 10 months ago
Joined: Nov 16 2011 - 07:45
Posts: 2493
Re: Code of CFFA for Apple-1 relocatable ?

hello bhtooefr,

and just to continue your last sentence... that´s exactly the reason i posted the question.....
the cards i have designed, only use adress-decoding ( "parallel" ) by their own 74154 from
"on card" and without touching the "R", "S" and "T" line to keep the freedom of space-usage...
( see :
http://www.harrowalsh.de/Elektronik/APPLEBOX/appleboxApple1expansions.htm
and:
http://www.applefritter.com/content/interest-3-expansion-cards-mimeoapple1 )
and just having to set adressing by the DIP-switches "on the card"....

- but now after starting the tests with the CFFA for Apple-1 together i had to find out,
that a lot of 4-kB blocks are used by this card without seeming to be "relocatable"
- due to the fact that they have also been "hardwired" by internal logic of that card.....
( like the mentioned area from 8000 to 9FFF )

and the PIA ? well that seems to difer from used board and from the kind of adressing....
on the "real" replications ( like Obtronix, Newton-1, MIMEO and Newton NTI )
the PIA is also "hardwired" by the drop of solderingmaterial "Y" to "F"
to the F000 to FFFF space - unless a wire has been chosen to wire it to somewhere else....

and in such case i probably should think about a re-design (?) and alternate adressingranges pulled from the
"on card" 74154 of my cards to those switches....

at least it will become mandatory to equip a own chapter of used 4 kB space areas to each of the manuals
with warning to possible conflicts caused by "hidden" used space
- and a kind of "space"-table listing every other alternating card on the market
- and with special focus to the CFFA for Apple-1 card.

At least i`m lucky that i insisted not to release the cards i designed - before testing them in the
possible configurations ( including the possible conflicts with the CFFA for Apple-1 ).....

Just another question, because it seems to me that you are the owner of a replica-1:
is it fact that the PIA of the replica-1 is not to be set to different adressing location like "real" replica´s
( see listed ones above ) by choice of hard-wiring at the 74154
- and instead resulting to fixed adressing of the PIA at the replica-1 to D000 to DFFF ?

sincerely speedyG

Offline
Last seen: 9 years 10 months ago
Joined: Aug 3 2011 - 07:50
Posts: 33
Re: Code of CFFA for Apple-1 relocatable ?

The PIA is Z, not Y, and that's wired to $D.

Y is the ROM, and that's (well, kinda) at $F on the Replica 1.

I don't own a Replica 1 (currently building a Mimeo, though), but I did read the manual.

The Replica 1's memory map is:

32 kiB SRAM from $0 to $7
Nothing in $8 or $9
T, S, R on slot connector, in that order, connected to $A, $B, $C respectively
PIA at $D (there's no Z line that I know of)
8 kiB ROM (containing BASIC from $E0 to $EF, Krusader from $F0 to $FE, and the Woz monitor at $FF) from $E to $F

Compare to a 8 kiB original Apple-1, in a typical configuration:

4 kiB DRAM at $0
Nothing from $1 to $B
R on slot connector connected to $C
PIA at $D
4 kiB DRAM at $E
256 B ROM at $F

It's a generally compatible memory map, although with ROM instead of RAM in $E, and the Woz monitor only appears once, at $FF, not repeated throughout bank $F.

With a CFFA1, the Replica 1's memory map from $1 to $A (the only part that changes on any Apple-1, but on the R1, it's actually only $8 to $A that changes) becomes:

28 kiB motherboard SRAM from $1 to $7
4 kiB CFFA1 SRAM at $8
First half of 8 kiB CFFA1 ROM at $9
Second half of 8 kiB CFFA1 ROM connected to slot pin T, and therefore at $A

And a real Apple-1 or close reproduction becomes:

32 kiB CFFA1 SRAM from $1 to $8 (from $1 to $7 can be shut off, however, due to the Replica 1's memory requirements)
First half of 8 kiB CFFA1 ROM at $9
Second half of 8 kiB CFFA1 ROM connected to slot pin T, which must be connected to $A

Log in or register to post comments