How-To: Setting up your PC to compile PMD98 MML

Posted in Development with tags , , , , on 5 July, 2015 by Noyemi

This guide is a getting-started guide with PMD98 MML. I remember it being very difficult to find out just how to get started writing MML that will play back on real hardware, and there’s no concise guide for it—anywhere! So I will do my best to provide links and information and a clear step-by-step guide for setting up an environment for composing for PC-98, PC-88, X68000, and FM Towns.

(disclaimer: Some technical proficiency is required—make sure you understand basic DOS commands and understand that this is NOT the guide for PMD98 MML, it’s just for getting the compiler kit set up!)

What you will need:

  1. MC.EXE, MCH.EXE and all that the kit comes with
  2. FMPMD2000 (for playing back your .M and .M2 files that MC.EXE spits out)
  3. DOSBOX, for running MC.EXE

First, get all the dependencies. Setup DOSBOX, extract the MC and MCH compiler kits to some directory. You can’t run these in windows, so you’ll need to mount whatever folder you extracted MC.EXE and MCH.EXE to, to DOSBOX (preferably, you’ll have an autoexec setup to do this every time you open it.)

Setup an MML folder in the directory with MC. To compile your MML file, all you’ll need to do is type in MC /v MML\[yourfilehere].

This will give you a .M or a .M2, depending on what you wrote for the preprocessor in the actual MML file. You can play these back with FMPMD2000 for windows (or the english translation!)

Notes:

-When a folder is mounted to a drive in DOSBOX, you can provide live edits and simply recompile without having to restart your virtual machine.

-You can write a batch file to automatically seek out the correct directory of your mml, and compile whatever you need to compile!

-My directory looks like: B:\DOSUTILS\PMD48O_F\(all the stuff is contained here) so that when the folder is mounted, there is access to all my MML.

-FMPMD2000 requires no special setup—simply extract all the components to the same folder and you can play the .M files that MC.EXE compiles

-The /v option is what writes the voices to the output. If you don’t specify this, your file will not make sound!

OPL2 Instruments Resource Sheet 2

Posted in Uncategorized with tags , , on 25 June, 2015 by Noyemi

Hey everyone! I’m back again with more OPL2 instruments patches.


/*
--------------------------------------------
|AL, FB |
|WS, AR, DR, RR,EGT, SL, TL,KSR,KSL,MUL,AMS|
--------------------------------------------
*/

#OPL@0{//BOUNCY ADLIB BASS
0, 2,
0,14, 4, 9, 0, 1, 4, 0, 1, 0, 0
0,13, 9, 6, 0, 0, 0, 0, 0, 0, 0};

#OPL@1{//MALLET LEAD
1, 4,
2,15, 7, 7, 0, 4, 2, 0, 0, 2, 1
0,11, 7, 5, 0, 0, 0, 0, 0, 0, 3};

#OPL@2{//ELECTRIC GUITAR
0, 1,
2, 9, 3, 9, 1, 4, 8, 0, 0, 0, 1
0,15, 4, 8, 1, 6, 0, 0, 2, 1, 0};

#OPL@3{//XYLOPHONE
1, 4,
0,15, 7, 7, 0, 4,11, 0, 0, 1, 1
0, 9, 7, 9, 0, 0, 0, 0, 0, 3, 0};

#OPL@4{//ORGAN
1, 4,
1, 5, 4, 7, 0, 4, 7, 0, 0, 2, 1
0, 9, 5, 6, 0, 0, 0, 0, 0, 0, 1};

#OPL@5{//HARD SYNTH BASS
0, 2,
0,13, 9, 5, 1, 0, 1, 7, 0, 0, 1
0,15, 7, 7, 0, 0, 0, 0, 0, 0, 0};

#OPL@6{//FLUTE PAD
0, 1,
0,10, 6, 7, 1, 5,15, 0, 1, 2, 1
0,15, 4, 7, 1, 2, 5, 0, 0, 3, 1};

#OPL@7{//CHIME LEAD
0, 1,
2,10, 6, 7, 1, 5,15, 0, 1, 5, 1
0,15, 4, 7, 1, 2, 5, 0, 0, 1, 1};

OPL2 Instruments Resource Sheet 1

Posted in Uncategorized on 23 June, 2015 by Noyemi

In my time working with SiON I’ve started using some of the other chip emulators it powers besides just OPN. You can visit VAL-SOUND for OPN sound dumps, but where do you visit for AdLib and SB16 sound patches? There is no resource that can be pasted directly into SiOPM, so I have done the work for you! Here are a few percussion and bass patches:

REFERENCE SECTION:
--------------------------------------------
|AL, FB                                    |
|WS, AR, DR, RR,EGT, SL, TL,KSR,KSL,MUL,AMS| (x operator count, bottom is slot)
--------------------------------------------


OPL@1{//FINGERED BASS
0, 1,
0,15, 7, 5, 1, 4,15, 0, 1, 0, 1
0,15, 7, 5, 0, 0, 0, 0, 0, 1, 0};

OPL@2{//ALTERNATE BASS
0, 2,
0,15, 7, 5, 1, 4, 6, 0, 1, 0, 1
0,15, 7, 5, 0, 0, 0, 0, 0, 0, 0};

OPL@3{//BASS DRUM
0, 1,
0,15, 8, 9, 1, 4, 0, 0, 1, 0, 1
0,15, 8, 8, 1, 0, 0, 0, 0, 0, 0};

OPL@4{//SNARE DRUM
0, 6,
0, 9, 5, 9, 1, 9, 0, 0, 0, 1, 3
0,13, 7, 6, 1, 7, 0, 0, 0, 0, 3};

OPL@5{//CLOSED HAT
0, 7,
0,15, 8, 4, 0, 9, 0, 0, 0, 0, 3
2,15, 9, 7, 1, 7, 0, 0, 0, 1, 3};

OPL@6{//OPEN HAT
0, 7,
2, 9, 5, 7, 1,12, 0, 1, 0, 2, 3
0,13, 7, 4, 1, 7, 0, 0, 0, 0, 3};

Hope this is useful, and keep an eye out for AdLib submissions to my MMLTalks page and more OPL2 instruments for your own songs!
 

I’m on Patreon now!

Posted in Development with tags , on 3 May, 2015 by Noyemi

Now, you can kick in a few bucks to show your support for my free resources and games! Or, you can read about current projects and patiently await releases.

Did I mention I’m bringing back Hell Diary? With a vengeance?

YM2203 Chiptunes!

Posted in Uncategorized with tags , , on 1 May, 2015 by Noyemi

I’ve spent the past week transcribing some of my work for emulated YM2203 playback!

You can find the MML scores and play them back on my MMLTalks profile.

Nightmare Castle Graphics Set

Posted in Uncategorized on 15 April, 2015 by Noyemi

Meow!

Masha has treasure for you!

The graphics for Nightmare Castle and Ruho Plus are now free for anyone to use in any non-commercial project, in any engine they wish (though the materials are set up for RPG Maker VX/Ace).

You can snag ’em here!

The set includes the terms and all of the tiles and some of the sprite sets. It does not include the “faceset” icons, but feel free to get those out of Nightmare Castle. The music is also free for non-commercial use, but I did not provide it since I’d like to make a new music set specifically for free use.

[VX Ace Script] Simple Dynamic Music Script

Posted in Development with tags , , on 17 February, 2015 by Noyemi

You can get it from here.

Description and features:


My dynamic music script allows the developer to switch between different variations of a track using variable changes and a simple, customizable naming system. When the player triggers a change to the specified variable (e.g., losing enough health on obstacles, encountering a puzzle, or entering a dangerous area) a new variant of the track is queued without restarting, subtly using music to indicate where and what situation is happening in an area. It can be useful for many types of games, such as Zelda-style games with action battle systems or adventure games with puzzles and enemies you must avoid.

Features:

  • Use variations of a track (e.g. “Forest”, “Forest1″, “Forest2″; or “Forest”, “ForestPuzzle”, “ForestCombat”) and have them cue automatically with just a variable change.
  • Almost seamless; there is a small crossfade between tracks done by the engine (if I could find a way to disable it I’ll add the feature in the future but it’s plenty useful as-is)
  • Customize the naming scheme (default is numeric), the number of variations the scripts supports (default is 4), and the variable used to switch between track variations (default is Variable 1).
  • Works with F12 restart!
  • Only works with OGG and PCM (WAV) files, as Mp3s and midis do not give the data required for the transition to work properly.

Notes and Credit:


The script is free for non-commercial use and commercial use, just provide me with credit and a link to the script so others can share. If you have any comments or suggestions, let me know! I’ll gladly fool around with the script in my spare time.

Note that this script is best with custom music, as dynamic music is actually quite rare in games and almost unheard of in RPG Maker games. It’s meant to improve ambience by having certain elements of the arrangement play only under certain circumstances, within the arrangement (like Soul Reaver‘s music engine, which inspired the script).

Follow

Get every new post delivered to your Inbox.

Join 157 other followers