Original Post

My best friend and I enjoy doing chiptunes for fun in our spare time. We already play with a synth cart called MSSIAH for the Commadore 64 and are investing in another made for the Atari2600. Now, we personally find the Virtual boy’s sound to be enticing and thought it would be quite neat to have a VB synth cart similar to those on various old gen consoles and portables. What do you guys think about the idea?

12 Replies

Sounds like a great idea. Gameboy has already been used for that, VB seems only logic to be the next one. Especially, when you have to sit down and lookt into it while making music with it πŸ˜‰

I’d write such a program, but I think there should be a way to connect the VB to a computer. This way, you could save and load compositions, use a keyboard to edit music, or use the VB as an instrument by letting a computer control it.

A program like this exists – I can’t remember where I saw it but maybe the right person will notice this thread and help you out. I agree, A VB tracker woulod be an amazing cart alkl by itself, especially with the stereo sound opportunities the VB has and speech samples.

The sound & music is my secon favourite feature of the VB. The first is the colour palette and the 3rd is the 3D πŸ˜‰

yess! Directly connecting to the computer sounds much better! Now if only we could get that link cable project over with… We could easily make a USB device that way.

All for it ! As I said in the games soundtrack topic I love the chiptune sound of the VB so actually making music with it ? Sweet πŸ™‚

Virtual Boy has been demonstrated outputting PCM audio, so conceivably if you can construct an output waveform, the Virtual Boy can play it. One of my planned experiments involves a music + SFX audio engine that composes a PCM stream rather than use the stock features of the hardware channels.

By itself, Virtual Boy doesn’t have “a sound”. All wave patterns are defined by software in special audio RAM that is rapidly sampled to produce output. So you want a square wave? Give it a square wave. Want a sine wave? Give it a–you get the idea. A convenient benefit is that you can use pulse waves with customized duty cycles. And in the case of “welcome to space world”, you can rig it up to play PCM audio.

In any case, my point is that sound on Virtual Boy is what you make of it. You get 5 channels of 6-bit samples. What those samples are is entirely up to the program.

Oki..please forgive my ignorance πŸ™‚ what exactly is a synth cart ?

-Eric

Guy Perfect : if the only outputs on the VB are 6-bit sample outputs, why doesn’t it sound more like SNES then ? Apart from the very obviously sampled voice snippets not much else sounds like sampled instruments but more like chiptunes, like what the NES or Genesis do. It may be entirely true but then why would all the developers chose to go for this very chiptune-based sound instead of using all digitized instrument samples like what was done on the SNES ?

bigmak : a synth-cart is a cartridge which allows to use the audio components of a game console, and basically from then use the console as a synthesizer.

I’d been thinking for a while how cool it would be to have a VB tracker or synth or sequencer or whatever you want to call it, akin to LSDJ. It sounds like it’d be a cool coding project, and maybe even a decent one to learn on, if only I had spare time…

Octaedre wrote:
if the only outputs on the VB are 6-bit sample outputs, why doesn’t it sound more like SNES then ? Apart from the very obviously sampled voice snippets not much else sounds like sampled instruments but more like chiptunes, like what the NES or Genesis do. It may be entirely true but then why would all the developers chose to go for this very chiptune-based sound instead of using all digitized instrument samples like what was done on the SNES ?

The premise of the VB’s sound hardware is that rather than using built-in wave types (square, triangle, sawtooth), they let the programmer decide what the wave should be. All five non-noise channels give the programmer access to 32 samples, the whole representing a single cycle of a wave. For example, if you give it 16 ups followed by 16 downs, you get a simple square wave.

The reason Virtual Boy sounds are typically chiptune-y, and the reason developers almost exclusively used them that way, is because that was the intent of the stock features of the hardware. Using the simple square wave from the previous paragraph, you could play a note by cycling through those 32 samples at whatever frequency. Middle C is around 261 cycles per second, if I recall correctly. That is to say, the audio hardware would go through all 32 samples of the square wave 261 times every second to produce sound.

You can’t do a lot with 32 samples. You can’t construct complex wave patterns like the ones produced by real-world musical instruments. You specify one cycle of one wave, and the hardware will play that cycle at the specified frequency. That’s a very chiptune-esque procedure.

Having said that, a typical PCM stream is also possible. Galactic Pinball has a famous catch phrase at the title screen demonstrating that capability. Thing is, I’m not entirely sure how the Galactic Pinball program pulls it off. It would need to rapidly update those 32 samples zillions of times per second in order to play a continuous stream of pre-recorded audio. The specifics of how this works is something I intend to research.

My logic is that, if you can strongarm a PCM stream into the VB’s audio unit, then what’s to stop you from generating that stream programmatically at runtime? You’d be free of the chiptune restraint, and could use that to your advantage for music and sound effects alike.

Gee, I gotta admit this is a lot for my head! I’ve only just started learning about hardware functions, so a lot of this went over my head and I had to wiki it. This is some very interesting information, however. I appreciate all your input, Guy!

Oh ok so it works like Chip32 then… http://www.kvraudio.com/product/chip32_by_sam

So yeah indeed I find hard to understand how they would be able to include vocals in the games (remember too the “T and E soft presents” vocal at the beginning of Red Alarm). On the other hand, when you listen back to those vocals, they do sound very lo-fi, and have a significant amount of noise when played (the aforementioned Red Alarm sample even pops at times), so it’s possible that it’s just the 32-bytes being used as audio channels, but if it is indeed how that works it’s impossible that they coded these vocals “by hand”, they had to devise a process to convert the PCM samples into 32-byte waves.

I’m interested in how you understood the inner workings of the sound chip, did you just find some specs online ? Dissected a rom ?

In parallel to that synth cart research I have often wondered if it would be possible to finally create a dedicated VB music file format, similar to the way the SPC or GYM file formats work (SNES and MegaDrive music respectively) ?

 

Write a reply

You must be logged in to reply to this topic.