Add Audio Ch Period constants for classical harmonic frequencies
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 55/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Ambito
- audio-video-rtc, embedded-iot
Direzione di ricerca
The payload gives full ASM mockup tables for AUDPULSE_PERIOD_* (channels 1 and 2) and AUDWAVE_PERIOD_* (channel 3), so the work is adding these def constants to the project's include file. Check the GameBoy Sound Table and the Pan Docs NR33 section to confirm the channel 3 values are half the pulse values, and check the frequency column against the period. Done means the constants are added, the naming matches the existing file, and the maintainer agrees on whether to ship the full table.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Classical harmonic tuning sets the pitch of A5 the fundamental frequency of 440 Hz.
See GameBoy Sound Table for known Ch1 & Ch2 period values that are the closest match to the perfect Hertz frequencies.
Note: Ch3 period values would be half those values for an equivalent output frequency. See Audio Registers - Pan Docs for frequency calculation differences between Ch1 & Ch2 vs Ch3.
Mockups:
Converted values for pulse ch1 & ch2:
def AUDPULSE_PERIOD_C3 equ $002C ; 65.406Hz
def AUDPULSE_PERIOD_C#3 equ $009C ; 69.295Hz
def AUDPULSE_PERIOD_D3 equ $0106 ; 73.416Hz
def AUDPULSE_PERIOD_D#3 equ $016B ; 77.781Hz
def AUDPULSE_PERIOD_E3 equ $01C9 ; 82.406Hz
def AUDPULSE_PERIOD_F3 equ $0223 ; 87.307Hz
def AUDPULSE_PERIOD_F#3 equ $0277 ; 92.499Hz
def AUDPULSE_PERIOD_G3 equ $02C6 ; 97.998Hz
def AUDPULSE_PERIOD_G#3 equ $0312 ; 103.82Hz
def AUDPULSE_PERIOD_A3 equ $0356 ; 110.00Hz
def AUDPULSE_PERIOD_A#3 equ $039B ; 116.54Hz
def AUDPULSE_PERIOD_B3 equ $03DA ; 123.47Hz
def AUDPULSE_PERIOD_C4 equ $0416 ; 130.81Hz
def AUDPULSE_PERIOD_C#4 equ $044E ; 138.59Hz
def AUDPULSE_PERIOD_D4 equ $0483 ; 146.83Hz
def AUDPULSE_PERIOD_D#4 equ $04B5 ; 155.56Hz
def AUDPULSE_PERIOD_E4 equ $04E5 ; 164.81Hz
def AUDPULSE_PERIOD_F4 equ $0511 ; 174.61Hz
def AUDPULSE_PERIOD_F#4 equ $053B ; 184.99Hz
def AUDPULSE_PERIOD_G4 equ $0563 ; 195.99Hz
def AUDPULSE_PERIOD_G#4 equ $0589 ; 207.65Hz
def AUDPULSE_PERIOD_A4 equ $05AC ; 220.00Hz
def AUDPULSE_PERIOD_A#4 equ $05CE ; 233.08Hz
def AUDPULSE_PERIOD_B4 equ $05ED ; 246.94Hz
def AUDPULSE_PERIOD_C5 equ $060A ; 261.63Hz
def AUDPULSE_PERIOD_C#5 equ $0627 ; 277.18Hz
def AUDPULSE_PERIOD_D5 equ $0642 ; 293.66Hz
def AUDPULSE_PERIOD_D#5 equ $065B ; 311.13Hz
def AUDPULSE_PERIOD_E5 equ $0672 ; 329.63Hz
def AUDPULSE_PERIOD_F5 equ $0689 ; 349.23Hz
def AUDPULSE_PERIOD_F#5 equ $069E ; 369.99Hz
def AUDPULSE_PERIOD_G5 equ $06B2 ; 391.99Hz
def AUDPULSE_PERIOD_G#5 equ $06C4 ; 415.31Hz
def AUDPULSE_PERIOD_A5 equ $06D6 ; 440.00Hz
def AUDPULSE_PERIOD_A#5 equ $06E7 ; 466.16Hz
def AUDPULSE_PERIOD_B5 equ $06F7 ; 493.88Hz
def AUDPULSE_PERIOD_C6 equ $0706 ; 523.25Hz
def AUDPULSE_PERIOD_C#6 equ $0714 ; 554.37Hz
def AUDPULSE_PERIOD_D6 equ $0721 ; 587.33Hz
def AUDPULSE_PERIOD_D#6 equ $072D ; 622.25Hz
def AUDPULSE_PERIOD_E6 equ $0739 ; 659.26Hz
def AUDPULSE_PERIOD_F6 equ $0744 ; 698.46Hz
def AUDPULSE_PERIOD_F#6 equ $074F ; 739.99Hz
def AUDPULSE_PERIOD_G6 equ $0759 ; 783.99Hz
def AUDPULSE_PERIOD_G#6 equ $0762 ; 830.61Hz
def AUDPULSE_PERIOD_A6 equ $076B ; 880.00Hz
def AUDPULSE_PERIOD_A#6 equ $0773 ; 932.32Hz
def AUDPULSE_PERIOD_B6 equ $077B ; 987.77Hz
def AUDPULSE_PERIOD_C7 equ $0783 ; 1046.5Hz
def AUDPULSE_PERIOD_C#7 equ $078A ; 1108.7Hz
def AUDPULSE_PERIOD_D7 equ $0790 ; 1174.7Hz
def AUDPULSE_PERIOD_D#7 equ $0797 ; 1244.5Hz
def AUDPULSE_PERIOD_E7 equ $079D ; 1318.5Hz
def AUDPULSE_PERIOD_F7 equ $07A2 ; 1396.9Hz
def AUDPULSE_PERIOD_F#7 equ $07A7 ; 1480.0Hz
def AUDPULSE_PERIOD_G7 equ $07AC ; 1568.0Hz
def AUDPULSE_PERIOD_G#7 equ $07B1 ; 1661.2Hz
def AUDPULSE_PERIOD_A7 equ $07B6 ; 1760.0Hz
def AUDPULSE_PERIOD_A#7 equ $07BA ; 1864.7Hz
def AUDPULSE_PERIOD_B7 equ $07BE ; 1975.5Hz
def AUDPULSE_PERIOD_C8 equ $07C1 ; 2093.0Hz
def AUDPULSE_PERIOD_C#8 equ $07C4 ; 2217.5Hz
def AUDPULSE_PERIOD_D8 equ $07C8 ; 2349.3Hz
def AUDPULSE_PERIOD_D#8 equ $07CB ; 2489.0Hz
def AUDPULSE_PERIOD_E8 equ $07CE ; 2637.0Hz
def AUDPULSE_PERIOD_F8 equ $07D1 ; 2793.8Hz
def AUDPULSE_PERIOD_F#8 equ $07D4 ; 2960.0Hz
def AUDPULSE_PERIOD_G8 equ $07D6 ; 3136.0Hz
def AUDPULSE_PERIOD_G#8 equ $07D9 ; 3322.4Hz
def AUDPULSE_PERIOD_A8 equ $07DB ; 3520.0Hz
def AUDPULSE_PERIOD_A#8 equ $07DD ; 3729.3Hz
def AUDPULSE_PERIOD_B8 equ $07DF ; 3951.1Hz
Converted values for wave ch3:
def AUDWAVE_PERIOD_C3 equ $0016 ; 65.406Hz
def AUDWAVE_PERIOD_C#3 equ $004E ; 69.295Hz
def AUDWAVE_PERIOD_D3 equ $0083 ; 73.416Hz
def AUDWAVE_PERIOD_D#3 equ $00B5 ; 77.781Hz
def AUDWAVE_PERIOD_E3 equ $00E4 ; 82.406Hz
def AUDWAVE_PERIOD_F3 equ $0111 ; 87.307Hz
def AUDWAVE_PERIOD_F#3 equ $013B ; 92.499Hz
def AUDWAVE_PERIOD_G3 equ $0163 ; 97.998Hz
def AUDWAVE_PERIOD_G#3 equ $0189 ; 103.82Hz
def AUDWAVE_PERIOD_A3 equ $01AB ; 110.00Hz
def AUDWAVE_PERIOD_A#3 equ $01CD ; 116.54Hz
def AUDWAVE_PERIOD_B3 equ $01ED ; 123.47Hz
def AUDWAVE_PERIOD_C4 equ $020B ; 130.81Hz
def AUDWAVE_PERIOD_C#4 equ $0227 ; 138.59Hz
def AUDWAVE_PERIOD_D4 equ $0241 ; 146.83Hz
def AUDWAVE_PERIOD_D#4 equ $025A ; 155.56Hz
def AUDWAVE_PERIOD_E4 equ $0272 ; 164.81Hz
def AUDWAVE_PERIOD_F4 equ $0288 ; 174.61Hz
def AUDWAVE_PERIOD_F#4 equ $029D ; 184.99Hz
def AUDWAVE_PERIOD_G4 equ $02B1 ; 195.99Hz
def AUDWAVE_PERIOD_G#4 equ $02C4 ; 207.65Hz
def AUDWAVE_PERIOD_A4 equ $02D6 ; 220.00Hz
def AUDWAVE_PERIOD_A#4 equ $02E7 ; 233.08Hz
def AUDWAVE_PERIOD_B4 equ $02F6 ; 246.94Hz
def AUDWAVE_PERIOD_C5 equ $0305 ; 261.63Hz
def AUDWAVE_PERIOD_C#5 equ $0313 ; 277.18Hz
def AUDWAVE_PERIOD_D5 equ $0321 ; 293.66Hz
def AUDWAVE_PERIOD_D#5 equ $032D ; 311.13Hz
def AUDWAVE_PERIOD_E5 equ $0339 ; 329.63Hz
def AUDWAVE_PERIOD_F5 equ $0344 ; 349.23Hz
def AUDWAVE_PERIOD_F#5 equ $034F ; 369.99Hz
def AUDWAVE_PERIOD_G5 equ $0359 ; 391.99Hz
def AUDWAVE_PERIOD_G#5 equ $0362 ; 415.31Hz
def AUDWAVE_PERIOD_A5 equ $036B ; 440.00Hz
def AUDWAVE_PERIOD_A#5 equ $0373 ; 466.16Hz
def AUDWAVE_PERIOD_B5 equ $037B ; 493.88Hz
def AUDWAVE_PERIOD_C6 equ $0383 ; 523.25Hz
def AUDWAVE_PERIOD_C#6 equ $038A ; 554.37Hz
def AUDWAVE_PERIOD_D6 equ $0390 ; 587.33Hz
def AUDWAVE_PERIOD_D#6 equ $0396 ; 622.25Hz
def AUDWAVE_PERIOD_E6 equ $039C ; 659.26Hz
def AUDWAVE_PERIOD_F6 equ $03A2 ; 698.46Hz
def AUDWAVE_PERIOD_F#6 equ $03A7 ; 739.99Hz
def AUDWAVE_PERIOD_G6 equ $03AC ; 783.99Hz
def AUDWAVE_PERIOD_G#6 equ $03B1 ; 830.61Hz
def AUDWAVE_PERIOD_A6 equ $03B5 ; 880.00Hz
def AUDWAVE_PERIOD_A#6 equ $03B9 ; 932.32Hz
def AUDWAVE_PERIOD_B6 equ $03BD ; 987.77Hz
def AUDWAVE_PERIOD_C7 equ $03C1 ; 1046.5Hz
def AUDWAVE_PERIOD_C#7 equ $03C5 ; 1108.7Hz
def AUDWAVE_PERIOD_D7 equ $03C8 ; 1174.7Hz
def AUDWAVE_PERIOD_D#7 equ $03CB ; 1244.5Hz
def AUDWAVE_PERIOD_E7 equ $03CE ; 1318.5Hz
def AUDWAVE_PERIOD_F7 equ $03D1 ; 1396.9Hz
def AUDWAVE_PERIOD_F#7 equ $03D3 ; 1480.0Hz
def AUDWAVE_PERIOD_G7 equ $03D6 ; 1568.0Hz
def AUDWAVE_PERIOD_G#7 equ $03D8 ; 1661.2Hz
def AUDWAVE_PERIOD_A7 equ $03DB ; 1760.0Hz
def AUDWAVE_PERIOD_A#7 equ $03DD ; 1864.7Hz
def AUDWAVE_PERIOD_B7 equ $03DF ; 1975.5Hz
def AUDWAVE_PERIOD_C8 equ $03E0 ; 2093.0Hz
def AUDWAVE_PERIOD_C#8 equ $03E2 ; 2217.5Hz
def AUDWAVE_PERIOD_D8 equ $03E4 ; 2349.3Hz
def AUDWAVE_PERIOD_D#8 equ $03E5 ; 2489.0Hz
def AUDWAVE_PERIOD_E8 equ $03E7 ; 2637.0Hz
def AUDWAVE_PERIOD_F8 equ $03E8 ; 2793.8Hz
def AUDWAVE_PERIOD_F#8 equ $03EA ; 2960.0Hz
def AUDWAVE_PERIOD_G8 equ $03EB ; 3136.0Hz
def AUDWAVE_PERIOD_G#8 equ $03EC ; 3322.4Hz
def AUDWAVE_PERIOD_A8 equ $03ED ; 3520.0Hz
def AUDWAVE_PERIOD_A#8 equ $03EE ; 3729.3Hz
def AUDWAVE_PERIOD_B8 equ $03EF ; 3951.1Hz
Could potentially be helpful / useful to have these as defined constants, especially for anyone building audio samples from scratch.
- Lingua principale
- Assembly
- Stelle
- 165
- Fork
- 26
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di gbdev/hardware.inc
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
gbdev/hardware.inc#100 ·
-
Document the release strategy in CONTRIBUTING.mdForse già presa @Rangi42 l’ha presa 83 giorni fa. Aperta
gbdev/hardware.inc#93 · 1 commento · 1 reazione · 1 assegnatario ·
-
Add constants for SGB command `MLT_REQ`'s use of `rJOYP`Forse già presa @dmitry-shechtman l’ha presa 447 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 52/100
gbdev/hardware.inc#76 · 2 commenti ·
-
Support the homebrew TPP1 MBCForse di nuovo libera @ISSOtm l’ha presa 498 giorni fa e non c’è nessuna pull request aperta. Apertaenhancement
gbdev/hardware.inc#52 · 5 commenti · 2 reazioni · 1 assegnatario ·
Tutte le issue di gbdev/hardware.inc
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
area:ui bug could good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
itzjk/explainkit#18 ·
-
CompositionPlayer.release() leaks its playback thread and FrameProcessor when no composition was setAperta
Difficoltà 2/5 Mezza giornata Idoneità per principianti 62/100
I maintainer di solito rispondono entro 5 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100