18.07.2013 Views

Nintendo Entertainment System

Nintendo Entertainment System

Nintendo Entertainment System

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

KAPITTEL 6. APU-EN<br />

$4008<br />

Bit Funksjon Valg<br />

0-6 Startverdi for lineærtelleren 0-127<br />

7 Lengdeteller/lineærteller 0: aktiver, 1: deaktiver<br />

I $400A skriver vi de 8 lave bitene av timerens periode.<br />

I $400B skriver vi de 3 lave bitene av timerens periode, samt de 5 indeks-bitene til lengdetellerens<br />

tabell:<br />

$400B<br />

Bit Funksjon Valg<br />

0-2 Høy del av periode -<br />

3-7 Indeks i lengdetabell 0 - 31<br />

La oss se på et kort eksempel der vi bruker triangel-kanalen:<br />

LDA #%00000100 ; aktiver triangle<br />

STA $4015<br />

LDA #%10000001 ; deaktiver tellerne , sett lineærtelleren<br />

; til noe annet enn 0<br />

STA $4008<br />

LDA #235 ; t = 235 gir f = ca. 220 Hz ( PAL )<br />

STA $400A ; lagre lav del av perioden<br />

LDA #0 ; vi har ingen høy del<br />

STA $400B<br />

Her er det ikke så mye mer å se på. En liten oppgave: Få triangelkanalen til å spille av en tone<br />

på 1234 Hz som varer i akkurat et halvt sekund.<br />

6.4 Noise-kanalen<br />

Noise-kanalen kan generere forskjellige former for støy. Dette er lydsignaler der det ikke er et<br />

enkelt, gjentakende mønster som repeterer. Noise-kanalen har en lengdeteller og en envelopegenerator,<br />

der begge fungerer helt likt som i square-kanalene. Disse er forklart i seksjon 6.2.4<br />

og 6.2.3.<br />

6.4.1 Støytyper og frekvens<br />

APU-en lager støy ved å sende ut en strøm av tilnærmet tildfeldige biter fra en spesiell tilfeldighetsgenerator.<br />

Når biten er 1 sendes envelope-verdien ut fra kanalen, ellers er kanalens verdi

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!