The n00b's way of making PC-x801 music >:D
BotB Academy Bulletins
 
 
76058
Level 23 Chipist
post #76058 :: 2017.01.03 7:49am :: edit 2017.01.04 1:50pm
  
  Dimeback, plrusek, puke7, raphaelgoulart, MovieMovies1, charlotte, themnotyou, MiDoRi, Jimmyoshi, garvalf, th4 D34D, BubblegumOctopus, Dezolis, JINTAKE and Slimeball liēkd this
Well, I've already talked about this with a few botbrs, but I'm posting this so it gets more visibility.

Since discussion on making PC-x801 music always ends up in things like "TRACKERS R TEH BEST, MML SUCKZ" (which I kinda understand, since when I see even my own MML codes
I get confused as fuck, and I really wish there was a tracker for its soundchips), I've been searching for a few days and found 2 tools that might help people who are interested making songs for this format and are too lazy to learn properly MML.

convfmml

It's a tool that converts MIDI files to FMP and PMD-compatible MML. Compared to all the other midi to mml tools I've seen until now, this one is the best. It only output the notes and some commands like panning, volume and instrument changes, so you need some knowledge in PMD for things like creating the header and the instruments (but you can find this info easily on the lyceum or somewhere else in the internet). But well, its already useful since the notes are most likely to be outputted correctly. Here's a demo
made with my alt's Commodore Trilogy VIC20 entry (different pitch because MOD2VIC), which uses only the SSG.

S98 Player

It's a program designed originally to play OPN and OPNA S98 and VGM files on a PC-88. But it also supports chips like the YM2612 and AY-3-8910/YM2419. While it's (almost) perfect for the OPN/OPNA files [it can't play ADPCM properly] it has more limitations for those other soundchips:
•The VGM file can't be over 128kb. If it is, only the part before it hits 128kb will play. VGZ files will glitch the player.
•It's most likely that the songs will be in a different pitch (because of clock speed and synth frequencies, probably). Some demos: AY
(original
)
YM2612
(original
)

•Due to the limitations above, don't even think about YM2612+SN76489
(sorry @charlotte) (this also shows what happens if you use PCM)
It outputs a .d88 file, which is the floppy disk format for the PC88. Open it in an emulator (M88 recommended) to listen to it.

Basically it's shitty, why would you try it anyway? While those tools imo aren't really the best thing ever (coding PMD MML yourself is>:D), I don't want to feel like I'm hiding those from you and really wish there were more PC-x801 entries (come on, it has an amazing soundchip
). So if you're really lazy or have any reason to not learn MML, I'm just letting you know that they are an option. (btw since I didn't make them, I can only answer what I've experimented, so don't kill me if I can't answer some doubts)

For those brave enough to learn it, I'm writing a beginner's tutorial myself, and I hope I finish it before the submission time ends (there are some tutorials out there, like NoyemiK's
and Mana Kazami's
but I feel those are not very much noob friendly [edit: seems like it was just an impression of mine, noyemi's tutorial is actually noob friendly]). And you can always PM me for help :)
 
 
76059
Level 22 Chipist
post #76059 :: 2017.01.03 8:00am
  
  pedipanol, MovieMovies1, raphaelgoulart, Dimeback, Dezolis, Jimmyoshi and goluigi liēkd this
  
  garvalf hæitd this
mml is the Only True Way
 
 
76062
Level 24 Mixist
post #76062 :: 2017.01.03 9:55am
  
  pedipanol, MiDoRi, ap0c, RazerBlue6, Jimmyoshi and raphaelgoulart liēkd this
If I were to get into non-video game programming...visual MML would probably be one of my first major projects to embark on :o
 
 
76063
Level 8 Chipist
post #76063 :: 2017.01.03 10:23am :: edit 2017.01.03 10:25am
  
  pedipanol, A-zu-ra, MovieMovies1, Jimmyoshi and Xyz hæitd this
  
  HertzDevil and Slimeball liēkd this
You're not supposed to give this to noobs wtf, now the format isn't special anymore

edit:
Admit it, You're just scared of MovieMovies1 and NoyemiK scoring higher than You, so to possibly lay a stone in their way You opened this thread >=)
 
 
76064
Level 23 Chipist
post #76064 :: 2017.01.03 10:25am
  
  Dezolis, raphaelgoulart and goluigi liēkd this
shhhh don't tell them
 
 
76065
Level 8 Chipist
post #76065 :: 2017.01.03 10:28am :: edit 2017.01.03 10:51am
  
  pedipanol, Jangler and Slimeball hæitd this
  
  RazerBlue6, Jimmyoshi, raphaelgoulart and Modus Ponens liēkd this
>haeits post
>answers calmly
lmao

edit: stop the haeit You sneaky fuck >:C i was only making jokes!!!
 
 
76067
Level 16 Pixelist
post #76067 :: 2017.01.03 11:08am :: edit 2017.01.03 11:36am
  
  pedipanol and Jimmyoshi liēkd this
U qt when u argue guys

EDIT: Holy fucc, this thing
Pedipanol linked is awesome <3
 
 
76068
Level 26 Chipist
post #76068 :: 2017.01.03 11:53am
  
  pedipanol, shinichi, raphaelgoulart, MiDoRi, Savestate and goluigi liēkd this
fwiw i have a half-baked adlib s3m -> pmd mml converter going, but i don't actually know anyone else who writes adlib s3ms :)
 
 
76070
Level 25 Chipist
post #76070 :: 2017.01.03 12:23pm
  
  pedipanol, Post-retro and MiDoRi liēkd this
^ i've used openmpt to write a .s3m that adlib tracker could open, on which i just edited in the fm patches...does that count?????????????????
 
 
76073
Level 20 Chipist
post #76073 :: 2017.01.03 12:52pm :: edit 2017.01.03 12:57pm
  
  shinichi, MovieMovies1 and HertzDevil hæitd this
I found NoyemiK's tutorial very informative and quite noob friendly, it helped me much to start with PC-x801.

Otherwise I find MML indigest, there is no way I'd learn how to type into this , when we can have superior notation format such as the ABC notation.
The only good thing in MML is the way instruments are designed (I like to use code in this kind on thing). In fact the only bad thing in MML is the horrible, illogicial musical notation.

Anyway, I found 3ML (http://3ml.jp/download.html ) pretty good for converting from midi to MML. Just export tracks individually using the "Mabinogi MML format", and uncheck the "optimize MML" option. (remove the MML@ before the notes).

You can also use deflemask for designing the instruments (in DefleMask: A=ar ; D = dr ; S = sl ; MULT = ml ; R= RR ...).
 
 
76074
Level 23 Chipist
post #76074 :: 2017.01.03 1:14pm :: edit 2017.01.03 1:32pm
  
  shinichi, garvalf, ap0c and MiDoRi liēkd this
Hmmm about Noyemi's guide, well, that might be just me, then, ok.

3ML editor is a good MML visualizer but to me that's all. It's kinda limited when it comes to writing the MML itself. But well, the basic commands works so it could be useful for the n00bs.
Its MIDI to MML importer is kinda dumb, when I tried some midis it missed some rest informations which ended up in a fucked up loop, and got some note lengths wrong.

Also, I'd recommend using VOPM rather than Deflemask for instrument editing, since it's really easy
to convert OPM instruments to the PMD format
 
 
76076
Level 20 Chipist
post #76076 :: 2017.01.03 2:04pm
  
  pedipanol liēkd this
yeah, good idea for VOPM, I'll try that.
About 3ML so far the conversion from midi was very faithful for me, but maybe it's because my tunes are kinda simple? I've tried convfmml but it doesn't seem to work with Wine on Linux for me... I'll try it maybe in a virtual machine.
 
 
76120
Level 17 Criticist
Xyz
post #76120 :: 2017.01.04 9:12am
  
  shinichi and pedipanol liēkd this
What about mml notation is illogical or hard to follow?
For me it feels very similar to sightreading sheetmusic.
 
 
76121
Level 16 Pixelist
post #76121 :: 2017.01.04 10:01am
  
  Jimmyoshi liēkd this
What if told you... I can't read sheet music?
:<
 
 
76129
Level 19 Chipist
post #76129 :: 2017.01.04 10:52am
  
  pedipanol, Dezolis and shinichi liēkd this
Super relevant to my interests, thank you pedipanol!

That said, I'm kinda sold on learning MML after seeing that impressive chip list and seeing who is using it on here.
 
 
76142
Level 20 Chipist
post #76142 :: 2017.01.04 2:10pm :: edit 2017.01.04 2:11pm
  
  MiDoRi liēkd this
@Xyz:
For me the most illogical part is you double the value in MML to halve the note length. In ABC notation it's the opposite (like in sheet music notation). The main advantage (beside the fact it follows the natural notation) is you can count the note to check if your mesure is complete or note, for example:
g2 + a + b + c4 = 8
d2 + e2 + f4 = 8

What I find hard to follow is the octave shift with the > and <. After a few shift you don't really know the height of a given note. You can only read from beginning to the end, you can't just read the note in your head from the middle of a partition for example. But it's ok for a computer parser.

But I understand the MML notation is old, and it can't be perfect. There have been some awesome tunes made thanks to it!

What I find cool in a MML source code:
- It's easy to switch or mute channels (just change a letter in the definitions or comment some lines)
- it's easy to cut and paste an instrument (from an other tune) and modify it
- for the same reason, you can change the base octave of a part without problem.
- you can compare/diff files and use a versionning system
 
 
76163
Level 8 Chipist
post #76163 :: 2017.01.04 5:03pm :: edit 2017.01.04 5:36pm
  
  Jangler and pedipanol hæitd this
  
  Slimeball liēkd this
Please excuse the inconveniences =O
 
 
76197
Level 17 Criticist
Xyz
post #76197 :: 2017.01.05 12:57am
  
  pedipanol, shinichi, Jangler and garvalf liēkd this
oh, that can be addressed if you use frame length which many mml dialects have. Like MGSDRV/ppMCK would have:
g#32 a#16 b#16 c#64 = 96 frames which is what in a tracker would be for one 16 row measure at speed 6.
Don't know if PMD has an equivalent command.

But the normal mml notation should be thought of like sheet music where c4 doesn't mean 4 counts, but rather, a quarter note. 1/4 of a measure. Where d4 + e4 + f2 = 1/4 + 1/4 + 1/2 = 1 measure.

Regarding < and >, if you get lost in counting all your octave shifts then you can also directly reset it using o3 or o4 etc. This concept of "base octave" isn't really a thing. You can set it whenever!

Bonus lesson: sheet music dot notation also works https://s3.amazonaws.com/LivingPianos/emails/2015/11-19-15/double_01.png
So c1^c2^c4 could be written as c1..
 
 
76209
Level 22 Chipist
post #76209 :: 2017.01.05 7:36am
  
  pedipanol and garvalf liēkd this
frame notation in mxdrv is % rather than #, since pmd is v similar i would imagine it's probably the same
 
 
76216
Level 23 Chipist
post #76216 :: 2017.01.05 7:48am
  
  shinichi and garvalf liēkd this
Yeah PMD uses %
 
 
76283
Level 20 Chipist
post #76283 :: 2017.01.06 12:06pm
  
  shinichi liēkd this
thank you, good point, I'll try this!
 
 
76326
Level 26 Chipist
post #76326 :: 2017.01.07 12:07pm
  
  charlotte, pedipanol, b00daw and HertzDevil liēkd this
i should probably link this here since i used it for my entry: https://github.com/jangler/s3mml
 
 
76330
Level 25 Chipist
post #76330 :: 2017.01.07 1:08pm
  
  Jangler liēkd this
n00b
 
 

LOGIN or REGISTER to add your own comments!