Hi, folks. Another little project I started working on is a tool that plays PCE game music, and displays each channel's notes, volume, and waveform (instrument) visually, like a player piano.
This is Version 3 of my player, which adds
TIMING for each song, and an option to have the player Autoplay all songs (and stop at the last song before sound effects.) I've removed the pitch bend because it was a little silly.
Please make comments and suggestions for improvement!
Download:
http://www.chrismcovell.com/data/HES_Visual_Player_V3.zipI've written a how-to for converting/hacking HES to my player:
http://www.chrismcovell.com/texts/Howto_HES_to_Visual.txtHere are the game contents:
Newly added:
The Kung-Fu (Chinawarrior)
R-Type
Battle Lode Runner
Magical Chase
Aldynes
Alien Crush
Ankoku Densetsu (Leg. Axe II)
Blodia / Timeball
Bonk's Adventure
Cratermaze
Devil's Crush
Devil's Crush (stereo hack)
Doraemon Meikyuu Daisakusen
Dungeon Explorer
Dungeon Explorer (NES sound)
Dungeon Explorer (NES before mix/arp)
F-1 Dream
Keith Courage / Wataru
Makyou Densetsu / Legendary Axe
Maniac Pro Wrestling
Neutopia
Neutopia II
Ninja Spirit
Out Live
Sidearms
Son Son 2
Super Star Soldier
Victory Run
Display:
Each channel's frequency/note (with higher notes towards the left and lower notes towards the right) is printed in a different colour, from red to purple. The volume of each channel likewise is in a dimmer shade of the same colour. If one of the noise channels is active, the 32-level noise frequency is printed near the right edge of the screen in grey. Each time the game music changes the sample waveform, it is printed in a box on the right side of the screen (if no other waveforms are currently being printed.) Everything scrolls upwards, like a ticker tape/seismograph/player piano, as the song is playing.
Controls:
For now, I and II change the game's subtune, RUN stops the music playing but holds all sound channels active, and SELECT swaps muting/solo settings for all sound channels.
Joypad Left and Right move the cursor to the various options. Up/Down changes each option. You can:
- set each of the 6 channels on/off
- zoom out to view more of the note range
- clip the visible note range (at 1x etc) or have all note writes overlap on-screen
- change whether the channel volume display is at the left / right side of the screen, or off. Also, the waveform write display can be set on/off.
- change the playback speed from 8x down to 1/16x
- turn on/off the "Autoplay" option, which goes to the next song when its time is up.
Basically the Zoom, View, and Speed functions allow you to get a detailed display of each note, or a zoomed out overview of the song. See below:
Zooming is necessary because there are 4096 frequencies for each sound, but the display is 512 pixels across (1/8 of the possible notes). So the options are to clip/limit the view, or zoom down the view. Zooming out means you can see the entire note range, but minute changes like vibrato may not appear in the zoomed out view.
Have fun playing!