Re: [Altair Computer Club] Re: help designing S100 board
- On 8/16/12 at 9:20 PM, rjones@... (cyberquipment) wrote:
>--- In email@example.com, Craig Landrum <craigl@...> wrote:
>>>As a way-too-ambitious project, I want to design an S100
>>>board to make an SDHC flash memory card available to my Altair.
>>>Any hints you guys can share with a hardware newbie?
>>What a great project. I would actually buy one if you manage
>>to do it.
>>Some suggestions that I'm sure you have thought of:
>>- Put an 8 pos DIP switch in there to allow the board address to be
>>- Put the flash card socket/holder external to the board so
>>that we can
>>run a ribbon cable out of the cabinet, allowing us to easily change
>>Chief Technical Officer
>>Phone: (540) 347-2552 x 229
>>Fax: (540) 347-2556
>With the adress buss limited, how would you address that much
>mem? some kind of pageing? Perhaps address a block at a time? Hmmmmm.
Board address is different than the flash address. The board
what you use with 8080/Z-80 I/O statements to talk the on-board registers
that are used to perform whatever functions the board performs.
a serial board address might be 20H and 21H to talk to a configuration
register to set a baud rate and a data register to send and receive
I would assume that a flash board would have a base I/O address
type (say 80H), with other on board addresses based off the base address.
Off the top of my head, this might be:
80H - Configuration register, set or clear control bits for read
81H - Byte I/O - read or write a byte for a block/sector
82H - Low (LSB) byte of target block of flash mem
83H - Mid byte of target block of flash mem
84H - High (MSB) of target block of flash mem
Operation would consist of setting config bits to
set the target sector/block address, then read or write bytes
data register to read or write a block-size chunk of data.
The above board registers are accessed using 8080/Z-80 I/O
as OUT (80H),A or IN A,(80H) for Z-80. All S-100 boards
same scheme. Only actual memory boards respond to memory access
instructions such as LD (HL),A to deposit a byte to the memory address
pointed to by the HL register pair or other similar instruction.
program execution generates memory read cycles also.
In any case, that DIP switch I mentioned was for setting the
address for the board and was a common way for S-100 boards
make their boards configurable allow users/buyers to assign it
address that did not conflict with their existing systems.
Chief Technical Officer
Phone: (540) 347-2552 x 229
Fax: (540) 347-2556