have you thought about using Famitracker instead and just importing the MIDI into it? granted you won't have a wav channel but it might be fairly close

urbster1 wrote:

have you thought about using Famitracker instead and just importing the MIDI into it? granted you won't have a wav channel but it might be fairly close

The project is a tribute to the gameboy so having the physical gameboy play the music is an important part of it. But that's a cool program.

herr_prof wrote:

You might have better results using midi to MML to gbs. This thread covers it:

http://chipmusic.org/forums/topic/2946/ … lsdj-cart/

Will have less headaches on the performance end, at the expense of some more work on the composition end.

Wow. Thank you. I wish I had known about this sooner. MML to gbs definitely seems to be the best way to go for what I'm doing, and having the song physically live on a cartridge and be able to play on it's own would be amazing. I'm definitely going to look into this deeper. But this is happening in two weeks and as easy as MML looks to code from a MIDI conversion, I don't think I'm going to have the time to figure out what to do as much as I would like. The music is a little complicated. Plus I don't have a cart flasher. And I tried getting the conversion programs to work just now, but XKMCP wasn't cooperating with the MML I converted...

For now I'm going to make work what I can with my current mGB setup for the first "performance" of this thing. It won't be perfect, but I'm building up the song now and it's sounding pretty good. It will work for a first performance. I'll look into converting to MML & gbs afterwards.

If anyone is able to shed some light with what's going on with mGB that'd be a great help.

Thanks so much!

It's not as simple as people like to state it.

To really explain it all would be a bit to much for a post in a forum thread so i'm going to keep it short.

The gameboy is able to put out frequencies up to 100kHz, yet it is not able to put out any frequency just so due to how the curcuitry is built. In the gameboy, the frequency is made up of a 11 bit value. That's 2048 different values for exactly the same amount of frequencies. The formula for that is: 131072/(2048-x). With the help of excel you could find out which freuencies are possible.
From the highest note you stated on it is not possible to find correctly tuned notes anymore, that's why they are not implemented. The pitchbend calculates it's bent note in real time so it can reach those higher notes.

As to mGB. mGB has a lookup table for the note values. Exceeding the boundaries of that lookup makes the program look for note values at places where there are no notes stored. So it just reads in 'random' note values. Random in quotes because it's consistent in one and the same rom.
So the mGB part is a bug in the implementation. It should just play no note above or below it's range.

I'm working on a mGB2 for quite some time now...

By the way. If you are transcribing gameboy music and run into note range problem feeding your data back to a gameboy it's probably something wrong with what you transcribed. Gameboy note range is from C3 to B8. One octave lower for the WAV channel.
mGB is able to playback any music ever written for the gameboy just looking at the notes of course.

Hope that helps a little in understanding the issue.

FYI, using nitro2k01's modified version of pushpin should resolve this issue completely. Especially if you're using a DAW, there's not a huge reason to use mGB over it: http://blog.gg8.se/wordpress/2016/11/14 … loop-midi/

catskull wrote:

FYI, using nitro2k01's modified version of pushpin should resolve this issue completely.

No, it shouldn't. Pushpin has the same note range. The only thing pushpin does (according to documentation) is playing only notes in that note range and ignoring any other note on input.