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


Groups > comp.programming > #6653

Re: Maybe this isn't the right place to post....

Newsgroups comp.programming
Date 2016-05-23 22:20 -0700
References <144f28ed-5b1e-4982-911d-f753ef0e535d@googlegroups.com>
Message-ID <3149c112-82c8-46bb-b75c-dd489b3d4566@googlegroups.com> (permalink)
Subject Re: Maybe this isn't the right place to post....
From luser droog <mijoryx@yahoo.com>

Show all headers | View raw


On Friday, May 20, 2016 at 4:59:05 PM UTC-5, Chad wrote:
> I'm learning how to program the 8 bit nes game console that was popular in the 80s. Anyways,at the following link 
> 
> http://nintendoage.com/forum/messageview.cfm?catid=22&threadid=4291 
> 
> It shows the pixel color index is taken from both the Pattern Table and the Attribute Table. Why split it up like this? Ie, why not have all the bits in one table? 

It's part of "the way things used to be done". That probably doesn't explain
much, but consider this unrelated example that popped into my head.

The original Manchester Machine, one of the earliest stored-program computers
was one of the first to use cathode-ray tubes (tv-screens). But it used them
as its RAM. That's right, the memory was actually stored in a bank of screens
that you could look at and see the bits. But they took that idea I just
explained and did it all weird-like: They had 40 screens, and made the 
machine operate over a 40-bit word so the first word of memory was stored
as 1-bit on each screen, all in the same position.

It makes no sense from the point of view of structured programming and
abstract design, but it makes perfect sense from the point of view of
wiring up the data-bus. You're going to need 40 wires at least to connect
to the 40 screens, so by spreading a word over each screen, you can 
fetch all 40 bits simultaneously and have them all available to the
arithmetic unit at the same time.

So, I suspect a similar thing is going on with the Nintendo's 6502 and
the way it's mapping memory to the hardware devices. There may be
two separate chips dealing with the patterns and attributes separately,
and so separate interfaces made it easier to access the hardware for
the designers. 

Back to comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Maybe this isn't the right place to post.... Chad <cdalten@gmail.com> - 2016-05-20 14:59 -0700
  Re: Maybe this isn't the right place to post.... luser droog <mijoryx@yahoo.com> - 2016-05-23 22:20 -0700
  Re: Maybe this isn't the right place to post.... commodorejohn <commodorejohn@gmail.com> - 2016-05-24 10:55 -0700

csiph-web