Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.programming > #6634 > unrolled thread
| Started by | Chad <cdalten@gmail.com> |
|---|---|
| First post | 2016-05-20 14:59 -0700 |
| Last post | 2016-05-24 10:55 -0700 |
| Articles | 3 — 3 participants |
Back to article view | Back to comp.programming
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
| From | Chad <cdalten@gmail.com> |
|---|---|
| Date | 2016-05-20 14:59 -0700 |
| Subject | Maybe this isn't the right place to post.... |
| Message-ID | <144f28ed-5b1e-4982-911d-f753ef0e535d@googlegroups.com> |
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?
[toc] | [next] | [standalone]
| From | luser droog <mijoryx@yahoo.com> |
|---|---|
| Date | 2016-05-23 22:20 -0700 |
| Message-ID | <3149c112-82c8-46bb-b75c-dd489b3d4566@googlegroups.com> |
| In reply to | #6634 |
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.
[toc] | [prev] | [next] | [standalone]
| From | commodorejohn <commodorejohn@gmail.com> |
|---|---|
| Date | 2016-05-24 10:55 -0700 |
| Message-ID | <cd0ac6cc-596b-4b27-8d40-f97f7af278f2@googlegroups.com> |
| In reply to | #6634 |
On Friday, May 20, 2016 at 2:59:05 PM UTC-7, 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? Simple: memory. If you wanted the same bitdepth (4-bit) but just the pattern table, you'd double the size of the pattern table from 4KB to 8KB; whereas by using 2-bit tiles with a 2-bit palette index, the total size is 4KB + 240B. Plus, you wouldn't have a palette index per-tile anymore, so any color variants of individual tiles would have to be stored as duplicates in the pattern table, taking up extra space.
[toc] | [prev] | [standalone]
Back to top | Article view | comp.programming
csiph-web