nitro2k01
Game Boy hardware and software specialist, and one of the recurring technical voices on chipmusic-org — the person who answers why the chip does that, usually with the register-level reason.
Facts#
- The volume click, explained (2011-02-04). Against the usual advice to smooth the volume column, he named the hardware cause: "It's a hardware limitation. To change the volume, the phase of the waveform needs to be restarted, which causes a click. You can get away with using E commands in a table, where one continues where the other left off, but the volume column is essentially useless, unless you actually want a static-ey sound." (source: s-chipmusic-lsdj-faq; the consequence is on volume-slides and adsr-envelope.)
- The ghost channel's arithmetic (2013-07-11). Supplied the overtone → interval table and the spacing rule that turned tyler-barnes's hand method into something calculable — "you calculate 16/x and that's the number of steps between each alternation" — plus a one-line JavaScript generator, the wave-editor selection and mirroring shortcuts, and the verdict that only the octave + fifth is musically usable because the higher partials are "slightly detuned from our modern equal temperament tuning" and alias unevenly (source: s-chipmusic-lsdj-ghost-channel; see ghost-channel, harmonic-series).
- Why the wave channel's four volume steps are worth less than four (2013-05-14). "The wave channel volume lower[s] the volume by shifting each sample and discarding the lower bits. So in effect, wave channel only has 3 and 2 bits of resolution for the lower volume settings. The master volume does not have THIS problem but obviously affects all sound channels routed to that stereo channel." (source: s-chipmusic-lsdj-wav-channel-release; on game-boy-apu and volume-slides.)
- The KiGB tuning-table bug (2009-03-22). little-scale credits him for "his help and double checking the KiGB bug" behind the finding that "regardless of emulator settings, KiGB only reads from the SGB table, not the standard one" — so a retuned LSDj ROM tested in KiGB is testing the second of the two 216-byte tables, not the one a DMG plays (source: s-little-scale-lsdj-tuning-tables).
- He retuned LSDj to just intonation, and changed how he hears keys (2009-03-22). Commenting on little-scale's 18-TET nanoloop: "I hacked the frequency table for LSDj, but that time for a justly intonated 12 tone scale. I look how it gives each scale it's own character. After doing that I've started to like F better than C when I need a major scale, even when working with the ET-12 scale" (source: s-little-scale-nanoloop-18-tet; on alternative-tunings).
- The exactly-halved crystal (2009-06-25). His forum post "Re: [underclocking] tracking the elusive 2.097152mhz crystal oscillator" is the reason the wiki can distinguish the two underclocking routes: 2.097152 MHz is exactly half of the DMG's 4.194304 MHz and needs no ROM patch, where the easily-bought 2.000000 MHz crystal lands nearly a semitone past the octave. He also pointed little-scale's readers at "the microtuner tool" instead of hand-patching; little-scale's answer was that "it seems it hasn't worked for everyone" (source: s-little-scale-underclocking-and-retuning, comments).
- He fact-checked the Game Boy sync landscape (2008-10). little-scale's survey thanks him first for "pointing out my mistakes and inacurracies", and the two rounds are in the comments: distinguish MIDI thru from out, note that the Nanoloop MIDI cable also syncs LSDj in MIDI mode, add the PS/2 keyboard, Pushpin and mGB, and make the chart readable. little-scale rebuilt it and conceded most of it — "what a bad mistake of mine" — but refused the last suggestion, "nah, i disagree". He also has an entry of his own in the chart, Multi Boot Sync, a DIY LSDj sync with soft MIDI in (source: s-little-scale-sync-options-for-game-boys; the chart is on sync).
- His Pushpin interface schematic is what little-scale built from in June 2008 — "Thanks to Nitro2k01's post with the schematic. Works great." (source:
raw/little-scale/game-boy-pushpin-midi-interface.txt, not summarised). - Advice to the 2019 channelhacking project. Quint's RetroChallenge logs close by thanking "utz and nitro2k01 for their blood/sweat/tears and excellent advice, respectively" (source: s-hackaday-gameboy-channelhacking).
- Appears in a moderating role on chipmusic.org threads (fixing another poster's markup in the 2012 Kotlinski interview thread,
raw/chipmusic/interview-with-johan-kotlinski-t6612.txt) — inference from the raw, not a stated role.
To verify#
- He writes the Gameboy Genius blog (blog.gg8.se) and has released Game Boy ROMs of his own (Rez, Pushpin), both of which turn up repeatedly next to his forum posts; neither is documented from a source in this wiki yet (unverified).
Related#
ghost-channel · harmonic-series · game-boy-apu · lsdj · volume-slides · chipmusic-org · tyler-barnes · sync · rom-retuning · alternative-tunings · nanoloop · little-scale · abrasive
Sources#
s-chipmusic-lsdj-ghost-channel · s-chipmusic-lsdj-faq · s-chipmusic-lsdj-wav-channel-release · s-hackaday-gameboy-channelhacking · s-little-scale-lsdj-tuning-tables · s-little-scale-nanoloop-18-tet · s-little-scale-underclocking-and-retuning · s-little-scale-sync-options-for-game-boys