Discussion
 
5691 views
 
81% goluigi
HuSIC View HTML Version
 

HuSIC is an MML sound driver for the TurboGrafx-16/PC Engine, developed by BouKiCHi. The MML dialect is similar to '[l[https://battleofthebits.com/lyceum/View/PPMCK[PPMCK].

Source code download can be found here: https://github.com/ika-musuko/HuSIC

'[#[Features]
- 6 channels (A, B, C, D, E, F)
- Stereo panning
- Software volume envelopes
- Waveform changes
- Noise mode (available on channels E and F)
- Sample mode (via XPCM, available on channels E and F)
- FM synthesis (available on channel A, use channel B to control. you lose one channel)

'[#[Installation]
1. Run this command to build the executables
'[c]$ make full'[/c]

'[#[Workflow]
'[t[b2]Writing an MML file'[/t]
Use your favorite text editor to write an .mml file. Notepad++ or Sublime Text are good options for beginners. Save the file to the '[c]songs/'[/c] directory.

'[t[b2]Converting the MML'[/t]
HuSIC outputs files in the '[l[https://battleofthebits.com/lyceum/View/hes%20(format)[.hes] music format, and the '[l[https://battleofthebits.com/lyceum/View/.pce+(file)/[.pce] PC Engine ROM image format. The .pce format can be played both on emulators and on real consoles.

'[t[b1]Making a .hes file'[/t]
1. Place your .mml file in the songs folder

2. In a terminal, run the make_hes command with your mml file as the argument
'[c]$ sh make_hes.sh yoursong'[/c]

'[t[b1]Making a .pce file'[/t]
1. Place your .mml file in the songs folder

2. In a terminal, run the make_pce command with your mml file as the argument
'[c]$ sh make_pce.sh yoursong'[/c]

'[t[0]note: for both formats, in the docs it says don't include the .mml extension in the filename but in my experience it doesn't make a difference'[/t]

'[t[b2]Playback'[/t]
See: https://battleofthebits.com/lyceum/View/hes%20(format)#File%20Formats%20&%20Playback

You can use this convenience script to compile the .mml file into .hes, and play the .hes file in Mednafen in one shot.
'[c]#!/bin/bash

compiler_output=$(sh make_hes.sh $1)
echo -e "$compiler_output"
if echo $compiler_output | grep -q "failed" ; then
	echo "HES COMPILATION ERROR"
	exit 1
fi

mednafen $(basename $1 .mml).hes
'[/c]

Copy that script to a file called "mhes" and then you can use it via '[c]$ bash mhes yoursong'[/c]

 
C A T E G O R I E S
 
 
Helper Tools
 
 
Win32