Sida 1 av 1

Nes Hårdvara och Programmerings funderingar

Postat: 14 december 2012, 16:33:35
av ekman
Jag håller på att titta lite närmare på Nes'ens hårdvara och eventuellt hur man programmeringen ser ut till den. Jag kan väldigt lite om sånt här. Men tänkte testa ställa dumma frågor och funderingar här och se ifall det blir något klarare :)

Jag håller på att läser denna pdf : http://nesdev.com/NESDoc.pdf (sid. 10). Där jag läste:
Memory locations
$0000-$07FF are mirrored three times at $0800-$1FFF. This means that, for example, any
data written to $0000 will also be written to $0800, $1000 and $1800. The memory mapped
I/O registers are located at $2000-$401F. Locations $2000-$2007 are mirrored every 8 bytes
in the region $2008-$3FFF and the remaining registers follow this mirroring.
Och min första fundering är, Varför speglar man delar av minnet? Varför skulle man vilja det?

Re: Nes Hårdvara och Programmerings funderingar

Postat: 14 december 2012, 16:38:02
av Wedge
Det blir enklare HW om man inte behöver avkoda alla adressledningar fullständigt.

Re: Nes Hårdvara och Programmerings funderingar

Postat: 14 december 2012, 16:39:43
av Icecap
Att det speglas brukar antingen vara av en programmeringsteknisk orsak, det kan t.ex. vara att man på det sätt kan klämma in program + data på ett och samma 64k block vilket i C-programmering betyder minnesmodell Small.

Men i detta fall är jag ganska säker på att det är för att minnesdekodningen sparade in en eller två kretsar och för att det inte skadade något med denna spegling. Snikenhet helt enkelt!

Re: Nes Hårdvara och Programmerings funderingar

Postat: 14 december 2012, 16:49:41
av Fortran
Sugen på att bygga nått sånt här eller? :)
http://www.retrousb.com/product_info.php?products_id=34

Re: Nes Hårdvara och Programmerings funderingar

Postat: 14 december 2012, 17:00:52
av ekman
Okej, tack för dom snabba svaren! Då förstår jag bättre, även om jag inte ser hur det kan spara in kretsar. Men nu vet jag varför det är gjort så :)
Och det går hand i hand med det jag läste i början av dokumentet:
Hiroshi Yamauchi’s instructions to
design a console which would be
cheaper than the competition resulted in
Nintendo deciding to use an outdated
Central Processing Unit (CPU)
@Fortran
Ja :D Skulle vara kul att lära sig och göra själv. Men rinner det ut i sanden, så vet jag vart det finns färdigt i alla fall :roll: