[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Apple II ROMs?



Ernest replied:

>Michael J. Mahon wrote:
>
>> Ernest wrote:
>> 
>> (Hi, Ernest!)
>
>Hello, Michael!

<snip>

>> BTW, a 32k (bit) ROM is usually organized as 4Kx8, or 4KB(ytes), etc.
>
>My ignorance of this stuff is showing, eh? I assumed that a 2732 was a 32k
>ROM, and the 2716 was 16k. 

I always have to think twice and do the mental division for ROMs...

<snip>

>>>I have a Basis 108 that uses six 32k ROMs. Each ROM is somehow divided
>>>into two halves. By using a switch before startup, the system can be set
>>>to use either Basis Basic or Applesoft. In otherwords, each of the six
>>>ROMs contains code for both versions of Basic. Could the six Basis Basic
>>>ROMs be compressed into three 32k ROMs instead of six 16k ROMs? Or does
>>>the computer look for different parts of the software at different address
>>>locations?
>> 
>> It could be, but the Basis is designed to address only 2KB per ROM socket,
>> with a switch (soft or otherwise) controlling the high-order address pin. 
>> This allows either the low 2KB or high 2KB of each 4KB ROM to be selected
>> by flipping the switch.
>
>That makes sense. So do both the 2716 and 2732 ROMs have High and Low areas?
>My Basis is using six 2732 ROM chips because the 2716 wouldn't work for
>what they were trying to do. I have copies of the modified ROM contents if
>you want to look at them, as a .DSK image.

They all have static address lines, so they can be "bank switched" with
almost anything.  The ROM doesn't know who's pulling its address line,
so, as far as it's concerned, there is no such thing as "high areas" or
"low areas".

ROMs simply have a certain capacity in bytes (=bits/8) and can be
wired up anyway a designer wants.  If you had a 2764 (8KB), or 13
address lines, you could wire 11 address lines to an Apple II's 11 ROM
address lines, and use two switches to set the upper two address bits.
This would give you 4 "banks" of 2KB each.

BTW, the labelling of the address lines for static RAMs/ROMs is just
a convention--any line can be used for any address bit.  Each unique
combination of address bits addresses a unique byte.  But it is convenient
to follow the convention, since ROM burners and most other equipment
sticks to the conventional ordering, and that makes it easier to read and
to burn them (in the contents are in conventional "order").

In the specific case of the Basis 108, if the 11 Apple address lines
were connected to A1..A11 and the "switch" were connected to
A0, then one set of ROM code would be in the even addresses
and one set of code would be in the odd addresses--but it would
be a little messier to build the burn image than simply concatenating
the two 2KB images--they would have to be interleaved.

>>>If a board does not have an Autostart ROM (or expansion room for one) can
>>>you use work around that problem by using a ROM expansion card, like those
>>>old six ROM cards that I've seen on ebay?
>> 
>> Yes, that should work.
>
>Thanks for your help.

You're very welcome.  ;-)

-michael

Check out amazing quality sound for 8-bit Apples on my
Home page:  http://members.aol.com/MJMahon/