Found the easter egg! Is that effect normally possible on the DMG? Or is this the result of your sorcery once again?

You probably have an old version on LSDj. In newer versions, the WAV channel correctly indicates the octave by show C2 as the lowest note, not C3.

So half clocking effectively gives you C1 as your lowest note on the WAV channel, and C2 on the pulse channels.

3

(11 replies, posted in Nintendo Handhelds)

what does the HF stand for?

edit: High Frequency. Right.

What kind of waveform does this sound resemble?

egr wrote:

I get what the rom does, I just don't know what it means.  Looking forward to the technical explanation!

Except from what I understand, this is impossible because there isn't enough room in the ROM file for six full-screen images, only three. Unless it's possible to expand the graphics memory on a ROM?

I'm probably going to make a 9-color version of this with three frames at some point.

Wow, so I just read the part in the article about there only being 384 tiles available on a DMG game. FML

I should probably read the whole article next time...

http://blog.gg8.se/wordpress/2013/01/06 … -of-green/

After reading about Nitro's endeavors with expanding the color range of the Gameboy, I wanted to take it further. Over the past few days I've put together a program in MaxMSP that converts any image into six images that can be cycled on the Game Boy screen to give the appearance of 13 colors.

Here's the App:
https://www.dropbox.com/s/f4ekhnbhvonkntw/13Color.zip

(Sorry, Mac only for now. I can look into making a Windows build if there's enough interest.)

Why six images instead of three, (as per Nitro's article,) you say? I'm not sure how Nitro did his demo, but in order to get things flashing every three frames AND every 2 frames, the lowest common denominator is six.

Instead of cycling the colors in a pattern, I decided I'd try randomizing the phases of each pixel. This way the picture doesn't look like it's moving anywhere. Since the phases are randomized, each individual frame looks very noisy, however when cycled, the composite looks surprisingly good.

The thing is, I have no way of testing this on a real Game Boy. It would be great if Nitro or anyone else could test it out. Here's some image comparisons:


Original // 13 Color Redux // Single Frame (4 color) // Animated GIF (4 color)

While I set the GIF to cycle at 50 fps (the closest I could get to 60fps in Photoshop), the fps you actually view it highly depend on your browser, OS, computer, monitor refresh rate etc.. On my computer it stutters a little bit, but I was surprised at how those Game Boy Camera-esque stills merged into something that really does look much more detailed! And it should look even better on a DMG with its laggy pixels.

Let me know what you guys think smile

9

(2 replies, posted in Nintendo Handhelds)

I'm looking to buy a couple USB cables that I can plug into my computer to power my DMGs. I saw some for sale on ASM Retro a long time ago, but they're not for sale anymore.

Anyone have any info? I'm starting to work on some LSDJx2 songs, and it's a pain having to deal with recharging the batteries.

Thanks!

Well I did some math of my own, and generated a frequency look-up table using MaxMSP, dividing each semitone into 128 parts.

https://www.dropbox.com/s/bgcok8265ixpe … -table.txt

There are 9216 values total. The first value is the lowest C, and every 128th value after that is the equivalent of a non-pitch-bended note one semitone higher than the previous. (the 129th value is C#, 257th value is D, etc).

Not pressuring you Trash80 or anything, I just thought maybe I could help out a bit smile

What is your current math, out of curiosity?

Thank you Trash80! I will most likely try it out tomorrow.

The 32-step pitch bend is apparent even on low to mid range notes. Is the NanoUSB at fault here then? Is it only sending mGB a 5-bit pitchbend signal?

Can anyone with an Arduinoboy confirm that mGB will interpret higher-res pitch-bend messages sent from one?

To correct myself-- It's actually overlapping same-velocity notes that enable non-retrigger.

Thank you for making this thread, I was going to bring this up as well. I think it would be great to be able to set the pitch bend resolution higher within mGB, because when you are using higher pitch bend ranges, 32 steps is just not enough.

For arpeggios, the documentation states that if you send another note the same velocity as the previous note, it will not retrigger a note-on message, which allows for the arps you're looking for without any pitch bends required. In my experience, only PU2 consistently demonstrates this feature, and for PU1 you need to mess will the channel parameters a little bit (change pulse with, envelope, sustain on/off) and then the feature kicks in.

I remember somebody saying that the pitch-bend algorithm is particularly CPU intensive, as it calculates the frequency on-the-fly. This might be the reason the PB resolution is so low, so it doesn't affect speed of playback. Would it be possible to: instead of having the DMG calculate the frequencies every time there is a pitch bend into 32 steps, have a table of frequencies built into mGB, dividing each semitone into something like 32 steps? Then even with very high PB ranges (that maximum I believe is ±48) the mGB could start to interpret the finetune low-byte messages and have smooth, non-jumpy, tunable pitch bends.

Not to look a gift-horse in the mouth. mGB is great, however with the event of the NanoUSB being much more accessible than ArduinoBoys, an update would benefit a much larger group of people than in the past.

15

(234 replies, posted in Nintendo Handhelds)

oliver wrote:

Here is a new windows binary:
You can set the throttling with -midi <value> where <value> should be roughly between 20 and 50. Default is 26.

So this throttling dictates the effective MIDI timing resolution? And this is in milliseconds, right?

1 second / .026 seconds = about 38 MIDI state changes per second on the Game Boy?

Well I just discovered that there's no way to turn a channel into the MUTE position with the pan CC, that's a bummer.