GenesisTracker Public Beta

Discussion in 'Technical Discussion' started by Andlabs, Aug 16, 2010.

  1. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
    If you just stumbled upon here, click here.







    <span style="font-size:18pt;line-height:100%"><a href="http://forums.sonicretro.org/index.php?s=&showtopic=22271&view=findpost&p=496010" target="_blank">UPDATE; CLICK HERE FOR LATEST VERSION</a><!--sizec--></span><!--/sizec-->

    Ok so I have a birthday gift from me to all of you:

    [​IMG]

    I've been working for the past few months on a music tracker for the Sega Genesis sound chips for use in a sound driver I will eventually write. I'm here now with a feature-packed public beta. A lot of the functionality is present, though some things (such as New and Nearest Possible Timing) have yet to be implemented, while others have bugs. However, you can save modules and export to VGM and SMPS (though the SMPS export is the most unoptimized SMPS export ever). FM voices can be loaded in TFM and X3V format. The PSG voice format is just like that in FamiTracker. The only supported effects right now are 1xx, 2xx, and Mxx. 1xx/2xx are the same as in every other tracker (pitch slide up/down) and Mxx is a general miscellaneous (M00 is nop, M01 takes the PSG noise out of Channel 2 mode and silences both PSG3 and PSG noise), M02/M03 turns FM retrigger on/off. Timing is in XM format and DAC is always on (FM6 is always shown and will be saved but ignored during playback/export). There's more but right now I don't remember everything =P

    EDIT
    Hit the spacebar to start editing. (This works like MilkyTracker/FamiTracker; sorry IT/Mod2PSG/TFM/Modplug users.) Also this uses the keyboard layout used by everything except ModPlug.

    Note the TL Sensitivity field in the FM voice editor. Some people on irc.esper.net #mod_shrine suggested this feature, which emulates a similar feature in Yamaha DX keyboards. Instead of simply modifying the volume level of the slots like every other sound driver, GenesisTracker will modify all the TLs by the amount specified. I provided a button if you want the regular behavior, but feel free to toy around with this feature and tell me what you think.

    Everything should be ready to go for Windows.
    The Mac build will run on 10.5 or newer Intel only and might require Qt 4.7 beta 1 if that's not somehow linked in. I will make a PPC build when Qt 4.7 final is released.
    The Linux build requires portaudio to be installed (obviously portaudio-devel if you want to build from source).

    <a href="http://idisk.mac.com/pietro10-Public/gtpubbeta1.7z" target="_blank">http://idisk.mac.com/pietro10-Public/gtpubbeta1.7z</a> 29MB

    Right now the source code is "don't use" because a) I need to replace the MAME FM core which is from Rob Jinnai's SMPS C demo b) IDK what license I want to use but I want a free software and/or OSS license.

    All the binaries are built for debug so if something fails please give me a crash log ;)

    Also the About box needs to be updated with more thanks, so as well as the thanks here, there, and in the source code, thanks to AamirM for providing the PSG core.

    Finally if you have a private beta the modules you saved with it will not work in this new version. Send them to me if you want them fixed.

    Enjoy!

    EDIT
    Oops, looks like —static-libstdc++ didn't work or wasn't passed... anyway add this to the win/ folder:
    <a href="http://idisk.mac.com/pietro10-Public/libstdc++-6.dll" target="_blank">http://idisk.mac.com/pietro10-Public/libstdc++-6.dll</a>
     
  2. theocas

    theocas

    Tech Member
    346
    0
    16
    Oh, I really like this! Is there any reason you're using Qt 4.7? I can design an application icon if you wish. Now, on to what I'm thinking of this:

    I like the general UI - It is very clean and not very cluttered. I like the general design of it. I have absolutely no idea about music, so an example project would have been very helpful, but it's ok. The only thing that annoyed me on Mac is that there is no menu bar at the top of the screen - You should probably fix that.

    Anyways, I'm gonna try to find a way to actually test it, but I wish you good luck with it.
     
  3. RamiroR

    RamiroR

    Member
    355
    0
    16
    Code (Text):
    1. [email protected] ~/Desktop $ ./GenesisTracker
    2. ./GenesisTracker: error while loading shared libraries: libportaudio.so.2: cannot open shared object file: No such file or directory
    That doesn't seem to be Qt btw. (For theocas)
     
  4. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
    <!--quoteo(post=491816:date=Aug 16 2010, 12:18 AM:name=theocas)--><div class='quotetop'>QUOTE (theocas @ Aug 16 2010, 12:18 AM) <a href="index.php?act=findpost&pid=491816">[​IMG]</a></div><div class='quotemain'><!--quotec-->Oh, I really like this! Is there any reason you're using Qt 4.7?<!--QuoteEnd--></div><!--QuoteEEnd-->Before using PortAudio I was using the QtMultimedia API running on another QThread, and that was causing problems with 4.6's Carbon backend. Switching to the 4.7 beta, which used Cocoa by default, fixed them, though I had to stop using QtMultimedia because it wouldn't work on any Linux I've tried (and OpenAL blew up in my face).

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->I can design an application icon if you wish. Now, on to what I'm thinking of this:<!--QuoteEnd--></div><!--QuoteEEnd-->Feel free to, though that's not a very high priority for me right now so take your time.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->The only thing that annoyed me on Mac is that there is no menu bar at the top of the screen - You should probably fix that.<!--QuoteEnd--></div><!--QuoteEEnd-->That was a deliberate design decision; had there been a menubar it would've only had two menus (File and Play) each with no more than 5 options, which is a waste.

    <!--quoteo(post=491957:date=Aug 16 2010, 09:49 AM:name=RamiroR)--><div class='quotetop'>QUOTE (RamiroR @ Aug 16 2010, 09:49 AM) <a href="index.php?act=findpost&pid=491957">[​IMG]</a></div><div class='quotemain'><!--quotec-->
    Code (Text):
    1. [email protected] ~/Desktop $ ./GenesisTracker
    2. ./GenesisTracker: error while loading shared libraries: libportaudio.so.2: cannot open shared object file: No such file or directory
    <!--QuoteEnd--></div><!--QuoteEEnd--><!--quoteo(post=491807:date=Aug 15 2010, 11:59 PM:name=Andlabs)--><div class='quotetop'>QUOTE (Andlabs @ Aug 15 2010, 11:59 PM) <a href="index.php?act=findpost&pid=491807">[​IMG]</a></div><div class='quotemain'><!--quotec-->The Linux build requires portaudio to be installed<!--QuoteEnd--></div><!--QuoteEEnd-->

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->That doesn't seem to be Qt btw. (For theocas)<!--QuoteEnd--></div><!--QuoteEEnd-->It is; take a look at the source.
     
  5. Spanner

    Spanner

    The Tool Member
    3,299
    93
    28
    United Kingdom
    Sonic Hacking Contest
    Good to see that this actually fits on my screen in Linux now:
    [​IMG]
    I played around with it and right now it seems that only one voice would play and the rest wouldn't, then after the program would crash and exit.
     
  6. Tiberious

    Tiberious

    Yeah, I'm furry. Got a problem? Oldbie
    711
    4
    18
    Why the apparent hate for ModPlug? Maybe you might be able to make a 'MPT feel' mode that can be enabled through an option?

    Also, thinking it might be helpful to get 3XX to function properly (pitch slide to note). I use that alot more than I do 1XX/2XX.
     
  7. TmEE

    TmEE

    Master of OPL3-SA2/3 Tech Member
    1,726
    0
    16
    Estonia, Rapla City
    T-04YBSC-A !
    98SE + KernelEx =

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->GENESISTRACKER caused an invalid page fault in
    module PORTAUDIO_X86.DLL at 01af:10005555.
    Registers:
    EAX=00000000 CS=01af EIP=10005555 EFLGS=00010297
    EBX=0924fb08 SS=01b7 ESP=0924fa14 EBP=01456c00
    ECX=007d5514 DS=01b7 ESI=00000002 FS=5bb7
    EDX=00000002 ES=01b7 EDI=00000000 GS=0000
    Bytes at CS:EIP:
    66 8b 08 83 c0 02 66 85 c9 75 f5 8b 4c 24 04 2b
    Stack dump:
    10005621 007d5630 856fcb80 00000000 0924fa60 856fcbbc beb2a26c 856fcbbc 0924fb08 beb2a1d5 856fc204 00000000 beaf37fc beaf37c4 856fcb58<!--QuoteEnd--></div><!--QuoteEEnd-->
     
  8. Conan Kudo

    Conan Kudo

    「真実はいつも一つ!」工藤新一 Member
    478
    1
    18
    <!--quoteo(post=492754:date=Aug 18 2010, 03:02 AM:name=TmEE)--><div class='quotetop'>QUOTE (TmEE @ Aug 18 2010, 03:02 AM) <a href="index.php?act=findpost&pid=492754">[​IMG]</a></div><div class='quotemain'><!--quotec-->98SE + KernelEx =

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->GENESISTRACKER caused an invalid page fault in
    module PORTAUDIO_X86.DLL at 01af:10005555.
    Registers:
    EAX=00000000 CS=01af EIP=10005555 EFLGS=00010297
    EBX=0924fb08 SS=01b7 ESP=0924fa14 EBP=01456c00
    ECX=007d5514 DS=01b7 ESI=00000002 FS=5bb7
    EDX=00000002 ES=01b7 EDI=00000000 GS=0000
    Bytes at CS:EIP:
    66 8b 08 83 c0 02 66 85 c9 75 f5 8b 4c 24 04 2b
    Stack dump:
    10005621 007d5630 856fcb80 00000000 0924fa60 856fcbbc beb2a26c 856fcbbc 0924fb08 beb2a1d5 856fc204 00000000 beaf37fc beaf37c4 856fcb58<!--QuoteEnd--></div><!--QuoteEEnd-->
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    If you are moronic enough to run Windows 98, compile GenesisTracker, Qt 4.7+, and PortAudio for Windows 98 yourself. Otherwise you're going to have problems.
     
  9. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
    <!--quoteo(post=491962:date=Aug 16 2010, 09:59 AM:name=SOTI)--><div class='quotetop'>QUOTE (SOTI @ Aug 16 2010, 09:59 AM) <a href="index.php?act=findpost&pid=491962">[​IMG]</a></div><div class='quotemain'><!--quotec-->I played around with it and right now it seems that only one voice would play and the rest wouldn't, then after the program would crash and exit.<!--QuoteEnd--></div><!--QuoteEEnd-->Apparently PortAudio on Linux is multithreaded and it was doing GUI functions on the audio thread, which Qt doesn't like. It's fixed in my code now. There is still a weird crash on program close that has me confused (the PortAudio thread stays alive after Pa_Terminate()? wtf?).

    <!--quoteo(post=492244:date=Aug 16 2010, 09:15 PM:name=Tiberious)--><div class='quotetop'>QUOTE (Tiberious @ Aug 16 2010, 09:15 PM) <a href="index.php?act=findpost&pid=492244">[​IMG]</a></div><div class='quotemain'><!--quotec-->Why the apparent hate for ModPlug? Maybe you might be able to make a 'MPT feel' mode that can be enabled through an option?<!--QuoteEnd--></div><!--QuoteEEnd-->I could probably add that as an option at a later date (first I need to think of a clean way to support the punctuation characters as well as just alphanumeric ones). I won't take out needing to go into edit mode as I often find myself wanting to play around with the notes using the keyboard even during playback; I hope you understand what I mean.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Also, thinking it might be helpful to get 3XX to function properly (pitch slide to note). I use that alot more than I do 1XX/2XX.<!--QuoteEnd--></div><!--QuoteEEnd-->I really have never understood how 3XX works (it seems to have different effects in different trackers?) but I'll see what I can do.

    <!--quoteo(post=492754:date=Aug 18 2010, 04:02 AM:name=TmEE)--><div class='quotetop'>QUOTE (TmEE @ Aug 18 2010, 04:02 AM) <a href="index.php?act=findpost&pid=492754">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->GENESISTRACKER caused an invalid page fault in
    module PORTAUDIO_X86.DLL at 01af:10005555.
    Registers:<!--QuoteEnd--></div><!--QuoteEEnd--><!--QuoteEnd--></div><!--QuoteEEnd-->That's a problem with PortAudio; I think it's trying to access something that doesn't exist on your system. I compiled the latest PortAudio with support for everything it supports except ASIO; you may have to do the same.
     
  10. nineko

    nineko

    I am the Holy Cat Tech Member
    5,928
    116
    43
    italy
    <!--quoteo(post=493057:date=Aug 19 2010, 12:26 AM:name=Andlabs)--><div class='quotetop'>QUOTE (Andlabs @ Aug 19 2010, 12:26 AM) <a href="index.php?act=findpost&pid=493057">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Also, thinking it might be helpful to get 3XX to function properly (pitch slide to note). I use that alot more than I do 1XX/2XX.<!--QuoteEnd--></div><!--QuoteEEnd-->I really have never understood how 3XX works (it seems to have different effects in different trackers?) but I'll see what I can do.<!--QuoteEnd--></div><!--QuoteEEnd-->3xx is easy to use. For example, look at channel 9:
    [​IMG]

    Let's look at line 32 for an example. What does it do? It sets the target of the note slide, B-5, while the start of the note slide was already set on line 22 (A-5), and it starts the note slide, which will go on as long as there is a 3xx in that channel and no new note are played, or until the target note is reached. Therefore B-5 isn't played on line 32, but it will be reached somewhere between line 33 and line 34.
    Same on line 46: it says "hey tracker, I want to slide from E-6 to C-6, let's start here, with a speed of 10, we'll keep sliding for 3 rows until we reach the target note".
    Note that you're not guaranteed to reach your target note if you slide for too few or with a too low speed; on the other hand, you can start a slide from any frequency (e.g. a previous unfinished/untargeted slide).
    Finally, you can use 3xx in a different way, with a ridiculously high value such as 3FF, to get an "instant slide", effectively obtaining the same effect as E7 in smps, not attacking the next note. A "legato" of some sort, to say so.

    Re: different effects in different trackers, well no, 3xx always acts like this. You might have different behaviours in modules depending if they use the Linear Frequency Table or the Amiga Frequency Table, but this affects all the other pitch slides as well, and it's documented in the XM specs I sent you the other day.
     
  11. Ritz

    Ritz

    Subhedgehog Member
    Oh, this is awesome. Or at least, it would be, only the program gives me a runtime error every time I hit the Play Song button. Kind of a big deal.

    Once that's sorted out, I can't wait for you to tell me how the PSG works!

    EDIT:
    <!--quoteo(post=491807:date=Aug 15 2010, 08:59 PM:name=Andlabs)--><div class='quotetop'>QUOTE (Andlabs @ Aug 15 2010, 08:59 PM) <a href="index.php?act=findpost&pid=491807">[​IMG]</a></div><div class='quotemain'><!--quotec-->The PSG voice format is just like that in FamiTracker.<!--QuoteEnd--></div><!--QuoteEEnd-->Oh. I, uh, I guess I'll look into that then
     
  12. MaliceX

    MaliceX

    hi i code and quack. Oldbie
    Talk about timing of taking these things up. First impressions, it's definitely working, but as yet still riddled with bugs. So far (testing the Windows port):

    -Deleting voices/samples from list does nothing.
    -Adding voices/samples works on file import, I'm guessing the blank adding functionality is still unfinished.
    -Song playback crashes with a MSVC++ runtime error.
    -Internal file browser opens very slowly, but browses fine afterwards.
    -Save As does not work, Save dialog does, however file save requires manually writing file extension. (Otherwise user might think file didn't save)
    -Export to VGM works, but requires manually adding .vgm extension
    -No idea how to play a banked DAC sample
    -Export crashes if there is a nonexistent instrument written in pattern. (At least, presumably)
    -Cut/Copy/Paste dialog makes appear what looks like a HIDE/SHOW menu option.
    -Effect 100/200 is literally 0 speed, rather than continue. This may confuse people familliar with XM/MOD effects.
    -PSG volume works. :O WOW. :D

    Other than that, this is certainly looking very promising. Will be keeping an eye on this, thanks for sharing! :D
    EDIT:: Quick test with what can be managed. Damn, having easy DAC import makes things epic. <a href="http://djtbmx.stdrand.com/junkpile/djtBMX_dactest.vgz" target="_blank">http://djtbmx.stdrand.com/junkpile/djtBMX_dactest.vgz</a>
     
  13. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
    <!--quoteo(post=494060:date=Aug 21 2010, 03:00 AM:name=MaliceX)--><div class='quotetop'>QUOTE (MaliceX @ Aug 21 2010, 03:00 AM) <a href="index.php?act=findpost&pid=494060">[​IMG]</a></div><div class='quotemain'><!--quotec-->-Deleting voices/samples from list does nothing.<!--QuoteEnd--></div><!--QuoteEEnd-->Yeah, I'm still thinking of how to design that feature (clear current or just outright delete?)

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-Adding voices/samples works on file import, I'm guessing the blank adding functionality is still unfinished.<!--QuoteEnd--></div><!--QuoteEEnd-->Could you please elaborate?

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-Song playback crashes with a MSVC++ runtime error.<!--QuoteEnd--></div><!--QuoteEEnd-->I belive that's related to the Linux error above. Once I get XM import finished I will build a new binary and see if the above fix fixed it there too.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-Internal file browser opens very slowly, but browses fine afterwards.<!--QuoteEnd--></div><!--QuoteEEnd-->That's a Qt issue; there's little I can do about that. Sorry.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-Save As does not work, Save dialog does, however file save requires manually writing file extension. (Otherwise user might think file didn't save)
    -Export to VGM works, but requires manually adding .vgm extension<!--QuoteEnd--></div><!--QuoteEEnd-->Save As isn't in yet; it will be soon. As for manually writing the extension I have to figure out why Qt doesn't do that for me when using its own file dialog...

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-No idea how to play a banked DAC sample<!--QuoteEnd--></div><!--QuoteEEnd-->Constant is DAC1, banked is DAC2. I should probably change the labels to CDAC and BDAC.

    Also I forgot to explain it before: my sound driver will allow mixing of two DAC samples: one in Z80 RAM ("constant") and one in a ROM bank ("banked"). So, for example, common drums like kicks and snares would go in the constant, while things like crashes, voice samples, etc. would go in banked because not every song needs them and/or not frequently. This has the advantage of not requiring two bank switches every time a new byte has to be read from the samples ;)

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-Export crashes if there is a nonexistent instrument written in pattern. (At least, presumably)<!--QuoteEnd--></div><!--QuoteEEnd-->Yeah I have to implement bounds checking...

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-Cut/Copy/Paste dialog makes appear what looks like a HIDE/SHOW menu option.<!--QuoteEnd--></div><!--QuoteEEnd-->Selections will be the implemented later.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->-Effect 100/200 is literally 0 speed, rather than continue. This may confuse people familliar with XM/MOD effects.<!--QuoteEnd--></div><!--QuoteEEnd-->Believe it or not I didn't know about this until some number of days ago when I was reading another tracker's documentation (or was it yesterday when I was reading the XM docs? I forget) and I first used it in a module today (with IT's Hxy, equivalent to XM's 4xy). I'll add that functionality in the next public build.

    Thanks for the input!
     
  14. MaliceX

    MaliceX

    hi i code and quack. Oldbie
    <!--quoteo(post=494067:date=Aug 20 2010, 11:21 PM:name=Andlabs)--><div class='quotetop'>QUOTE (Andlabs @ Aug 20 2010, 11:21 PM) <a href="index.php?act=findpost&pid=494067">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo(post=494060:date=Aug 21 2010, 03:00 AM:name=MaliceX)--><div class='quotetop'>QUOTE (MaliceX @ Aug 21 2010, 03:00 AM) <a href="index.php?act=findpost&pid=494060">[​IMG]</a></div><div class='quotemain'><!--quotec-->Adding voices/samples works on file import, I'm guessing the blank adding functionality is still unfinished.<!--QuoteEnd--></div><!--QuoteEEnd-->Could you please elaborate?<!--QuoteEnd--></div><!--QuoteEEnd-->
    Like, at the moment, importing a sample or patch with the other button works just as well without neding to add a new sample entry (then importing, with the replace box ticked). But it seems to be working. I'm not sure if it's related, but sometimes double-clicking to rename a patch/sample works for some, but not on others.

    Quick question, will it be possible to adjust DAC sample volume in a future revision? Couldn't help but notice how quiet it is compared to the FM channels, but it's definitely working. (Tends to work better with smaller samples, larger samples become garbled mess which could be a useful efffect :D)
     
  15. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
    <!--quoteo(post=494551:date=Aug 22 2010, 02:19 PM:name=MaliceX)--><div class='quotetop'>QUOTE (MaliceX @ Aug 22 2010, 02:19 PM) <a href="index.php?act=findpost&pid=494551">[​IMG]</a></div><div class='quotemain'><!--quotec-->Like, at the moment, importing a sample or patch with the other button works just as well without neding to add a new sample entry (then importing, with the replace box ticked). But it seems to be working. I'm not sure if it's related, but sometimes double-clicking to rename a patch/sample works for some, but not on others.<!--QuoteEnd--></div><!--QuoteEEnd-->Oh, that other button is for saving instruments and instrument banks, not loading. I have yet to implement that.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Quick question, will it be possible to adjust DAC sample volume in a future revision? Couldn't help but notice how quiet it is compared to the FM channels, but it's definitely working. (Tends to work better with smaller samples, larger samples become garbled mess which could be a useful efffect :D)<!--QuoteEnd--></div><!--QuoteEEnd-->Unfortunately no, however if you're importing a 16-bit sample, my current code is dumb and won't do it to a high quality (so expect less volume and more noise). That will be fixed (it or something similar should be marked as a TODO in the code).

    Also right now I just mix the DAC directly in. Maybe I should send it to the FM chip core instead... I'll look into it in the future.
     
  16. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
    Ok new build!

    <a href="http://idisk.mac.com/pietro10-Public/gtpubbeta2.7z" target="_blank">http://idisk.mac.com/pietro10-Public/gtpubbeta2.7z</a> 30MB

    New features:<ul><li>Fixed the Play Song crash on Linux and Windows. There might be more crashes; if so please let me know.</li><li>100/200 support.</li><li>3XX support (with 300).</li><li>XM import. The import is rudimentary (don't try PSG noise or leave instrument names blank; they'll kill you) but effective enough to start. There is a drop-down for choosing which sample to grab from the XM; this will be implemented in the future and only available for DAC.</li></ul>

    Enjoy!
     
  17. MaliceX

    MaliceX

    hi i code and quack. Oldbie
    Okay, tested so far:
    ---XM made with OpenMPT (via compatibility export) doesn't seem to import due to module header not 0x114. Have't tried with a MilkyTracker XM yet, but ugh.
    ---Play song works, very laggy however. (EDIT: Confirmed laggy realtime playback on both Win7 x64, and XP SP3 x86)
    ---Pressing Play Song repeatedly would double/increase the playback speed until the song ends/stops.
    ---Saving a song with a different pattern length will change back to 64, omitting anything past the 64th row.
    ---300 doesn't work properly (ie: notes remain 'stuck' to previous note instead of bending with previous 3xx value or legato?). 3xx works however. :D
     
  18. Mr Lange

    Mr Lange

    A wise guy eh. I know how to DEAL with wise guys. Member
    1,286
    10
    18
    The Land of Waldos
    Sonic Utopia, Sonic Overture
    I love you forever andlabs.
    I've been working with TFM Music Maker for some time, combining it with seperate trackers working very hard to get tempos to sync up. For the most part, it worked, but was frustrating and time consuming.
    I've been waiting a long time for a tracker designed specifically for Genesis music. And now I can die in peace. I can't wait to try this out.
     
  19. SegaLoco

    SegaLoco

    W)(at did you say? Misfit
    Well, trying to run the first version, I got a SIGSEGV on line 31 of mainwindow.cpp

    Code (Text):
    1. 31&nbsp;&nbsp;&nbsp;&nbsp;module = Module();
    Trying version 2 right now, if the same bug persists I will say.

    Edit: Yup, same behaviour in v2.
     
  20. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
    <strike>What happens if you build from source?</strike> We fixed it. Make sure you are running PortAudio v19. I need to find a way to make sure you're not linking it to v18...