Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - [VGM Pack] Fantastic Dizzy (SMS)

Reply to topic
Author Message
  • Joined: 28 Nov 2014
  • Posts: 365
Reply with quote
[VGM Pack] Fantastic Dizzy (SMS)
Post Posted: Wed Jan 21, 2015 7:19 am
Last edited by sherpa on Mon Feb 23, 2015 4:14 pm; edited 2 times in total
I ended up just playing through the game despite being initially resistant to it. It has no memory trigger, so I weighed the option of figuring out where the music engine was, and probably failing, and running through all the essential areas to get the music. I did not expect there to be so much music and so little reuse. I also played a couple of themes in the background, for enjoyment, rather than QA assurance. Atypical.

I started by using a youtube video to get an overal sense where the music changed while i ran through it. I had no idea how to disable effects, but this is easily bypassed by standing still. In some cases I had to stop game timers in order to log everything, either to avoid sfx or due to the game abridging the tune.

Pretty sure this is everything. They seemed to have run out of tunes, because outside the two fanfares (each use in two instances) the penultimate levels borrowed tunes from elsewhere in the game. No repetition anywhere else. Each area has its own tune, so triggering it requires wandering past a certain area of the map...it doesn't seem to be immediate.

Some minor looping challenges, nothing major. Had to double check a few tunes to make sure. Two of the tunes had loops initially calculated at more than twice the actual loop size. Many songs had less common patterns, i.e. AA'AA'BB'CBB'D (repeat).

This took longer than most of my other recent projects, but finding every tune was part of the fun. Not a 100% guarantee, but unless someone wants to decode this peculiar engine, I'd say it's safe to say it's all there. The ending is silent, but the graphics are pretty good for its time.

Fully tagged.

http://www.smspower.org/Music/FantasticDizzy-SMS
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14690
  • Location: London
Reply with quote
Post Posted: Wed Jan 21, 2015 8:19 am
It's probably similar to Micro Machines, which is incredibly difficult to hack the music for. I even suspect it has more than one music engine :)
  View user's profile Send private message Visit poster's website
  • Joined: 28 Nov 2014
  • Posts: 365
Reply with quote
Post Posted: Wed Jan 21, 2015 5:02 pm
How DID you log micro machines> It doesn't have as many tracks as Cosmic heady, but still. Did you just log in game? Your post on the forums didn't provide any juicy details about your process to learn from.

Care to share?
  View user's profile Send private message
  • Joined: 06 Jan 2005
  • Posts: 177
Reply with quote
Post Posted: Wed Jan 21, 2015 5:03 pm
Wow, sherpa you've now single handly cleared all but one of my SMS VGM packs wishlist that I made 10 years ago!

I guessed Fantastic Dizzy might be a tough one to tag, but didn't realize it wouldn't even have a trigger for the music. While I enjoy the music, I always found the game itself to be both difficult and rather dull so I really appreciate your dedication to play through it.

Like you say it's weird that they reused tracks in the later levels, I never knew that. I do recall noticing some of those unusual looping patterns though when I recorded a few tracks in wav a couple of year ago.

Bravo again!
  View user's profile Send private message
  • Joined: 28 Nov 2014
  • Posts: 365
Reply with quote
Post Posted: Wed Jan 21, 2015 5:07 pm
Well it was a compliment to the game actually. MOST games reuse music A LOT. This game didn't until you practically at the end. I actually logged it just in case. I didn't realize graveyard and Diamond mines were so similar until I got to Zaks' castle. I thought it was a variation of the Graveyard tune, but it was actually Diamond Mines..


I honestly didn't give codemasters enough credit. I still don't know enough about them to form an opinion, but it seems they put a good effort into their projects.
  View user's profile Send private message
  • Joined: 06 Jan 2005
  • Posts: 177
Reply with quote
Post Posted: Wed Jan 21, 2015 5:42 pm
sherpa wrote
Well it was a compliment to the game actually. MOST games reuse music A LOT. This game didn't until you practically at the end. I actually logged it just in case. I didn't realize graveyard and Diamond mines were so similar until I got to Zaks' castle. I thought it was a variation of the Graveyard tune, but it was actually Diamond Mines..


I honestly didn't give codemasters enough credit. I still don't know enough about them to form an opinion, but it seems they put a good effort into their projects.


Yeh I mean space permitting, it's always better to have distinction between stages. They probably just ran out of time and/or space I guess.

You should check out Cosmic Spacehead (another Codemasters one) if you haven't already. The VGM pack is already ripped, but I mean the game itself is pretty enjoyable, and quite in-depth for an SMS game.
  View user's profile Send private message
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8644
  • Location: Paris, France
Reply with quote
Post Posted: Wed Jan 21, 2015 5:49 pm
Games by definition have a trigger for the music. It has to be found using debugging to conclude that a pack is complete. Some may look into it shortly.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14690
  • Location: London
Reply with quote
Post Posted: Wed Jan 21, 2015 8:24 pm
Not necessarily a memory trigger though, it could be as simple as a pointer parameter to a function - and finding the valid values is hard.

For Micro Machines I think I played through, it was probably one of the earliest packs I made. I later realised I'd missed some tracks and commented on the hacking here: http://www.smspower.org/forums/6644-VGMReleases#30846
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8644
  • Location: Paris, France
Reply with quote
Post Posted: Wed Jan 21, 2015 10:57 pm
True but that was in 2005 ! We now have much better tools/debuggers available and you are much better than the Maxim of 2005. Thanks for offering your help with Fantastic Dizzy Maxim ;)
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14690
  • Location: London
Reply with quote
Post Posted: Wed Jan 21, 2015 11:15 pm
He he he :) I'll put it on my list...
  View user's profile Send private message Visit poster's website
  • Joined: 28 Nov 2014
  • Posts: 365
Reply with quote
Post Posted: Thu Jan 22, 2015 5:00 am
Wow got a lot of responses fast!

Well, silly bumbling me overlooked two obvious tracks. Losing a life and Game over. Lol. I heard them so often I forgot to record them. I was cheating regularly by the end anyway, since this game is pretty hard and a usual playthrough has a lot of backtracking.

How did I find out I was missing pieces? Since I had luck yesterday with MK II, I looked, and being familiar with the musical patterns was able to find the pattern index quickly in ram. No debuuging, but I went through and mapped everything, just to wrap up my curiousity and last deserts.

Well I found an interesting track I didn't recognize. The tempo was wrong, but I figured I'd dig a bit. The next track was the lost life track...then I noticed my goof. Well I ran through easily and lost all my lives and got the mystery tune. (I'd heard it once or twice before but forgot). Though it would have been a better game complete fanfare, but I guess with its association, maybe not.

Will update soon.

For now, for the curious:
$DBB0-1 Have the pattern value. Values outside this range produce some strange patterns then loop into sections of the title screen. I think DBB2 contains the tempo. I didn't play much with it. Not clear why most songs were in the wrong pitch/possibly tempo when i was first testing. Select a value one below the one you want.

If it's a one pattern song that loops, you won't be able to escape. I assume because the "get next pattern" flag is set to false. Diamond Mines and Graveyard are peculiar in that they have one loop, but it sounds like an AA' pattern. My guess is they picked Village of Keldor for the clouds level because its two places before Zaks' tower, and Diamond mines as an alternative to graveyard, which is right before..
Might be a better reason, but that's what I'm going with for now. Looking at the game code might prove me wrong.

Also 81E2-E5 loop back to silence, so you can only trigger them by freezing the value.

Title:: base:strt: end

Title Screen 81 CA D1
Pirate's Ship 81 D2 DB
Thedore's Magic Puzzle 81 DC
Troll Castle Battlements 81 DD E2
NA (Silence) 81 E2
Game Over 81 E3
Life Lost 81 E4
Game Complete 81 E5

Yolkfolk Tree Village 81 e7 EB
Minecart 81 EC EF
Village of Keldor 81 F0 f5
Graveyard 81 f6
Zaks' Tower 81 F7 FE
Troll Castle 81 FF 8202
Diamond Mines 82 3
Swift River 82 4 0c
Grasslands 82 11 18
Victory Fanfare 82 19
Carber Bay 82 0d 10
Bubble Trouble 82 1A 24

So..no..unfortunately nothing as exotic as dual custom engines running from ram has happened to me. This set was within my limits (stretching it slightly). Actually I assumed I would not be able to log most of these recent games as I had previously only worked with the 81+ memory trigger types before. But I figured I would look and see before giving up to see if I could do anything. One step leads to another...

Of course, if you'd like to help, I'd love that. Any developer wisdom I might glean is an asset. You never know, something you mention in passing might make the difference between success and failure on the next pack. Plus it's nice to have some interaction, rather than just posting here on my lonesome :)

Updated pack soon to follow...
  View user's profile Send private message
  • Joined: 28 Nov 2014
  • Posts: 365
Reply with quote
Post Posted: Thu Jan 22, 2015 6:36 am
Last edited by sherpa on Mon Feb 23, 2015 4:12 pm; edited 1 time in total
Here is the new pack. Tried logging a file and compared it to the original. Pitch was different. So this is not the best method to log music by anyway.

Since many values were tested outside the ranges listed above...with similar results as MK II. The codemaster logo is not accessible via this method, so it may be an effect, or it could be because it is played before this aspect of the engine is even initialized.

Maybe someone can clue me in.

I've given this version 1.10 since it has major changes (2 tracks). Technically it hasn't been released yet so I could probably just add it and leave it 1.00, but I'm practicing keeping the standards as I understand them. It sounds by some comments, you would like it set to 0.99? (not "Full").



Let me know.

[Attachments removed]
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14690
  • Location: London
Reply with quote
Post Posted: Thu Jan 22, 2015 8:32 am
I think what you've found is some internal music engine stuff rather than the external controls for it, hence why some things don't work quite right. We need to trace it a bit further back.

While the pack is unpublished, you can replace the attachments in the first post if you like.
  View user's profile Send private message Visit poster's website
  • Joined: 28 Nov 2014
  • Posts: 365
Reply with quote
Post Posted: Thu Jan 22, 2015 8:38 am
Ok Good to know. Wasn't sure if I should leave old versions up or not. Plus the danger they might be overlooked if it isn't a new post.

I'll do that in the future.
  View user's profile Send private message
  • Joined: 28 Nov 2014
  • Posts: 365
Reply with quote
Post Posted: Wed Feb 25, 2015 2:13 am
Updated zip version (last two tracks for incorrectly added uncompressed).

Playlist now generates properly.
  View user's profile Send private message
Reply to topic



Back to the top of this page

Back to SMS Power!