Jump to content
IGNORED

MidiTari - Midi to TIA converter tool


MemberAtarian

Recommended Posts

I proudly present you my new application that allows you to convert midi into asm code that can be used for your Atari 2600 games. :)

 

To use the application, you have to select 2 channels for the two audio channels of the TIA. These channels can be simple midi channels converted or merged ones from several of the midi file.

Basically, the program allows you to convert into mono bAtari Basic audio code which contains volume, channel, frequency and duration, but it is more convinient to convert the channels into a compressed ASM code.
Why do I recommend that? In my code, volume and channel are both stored on the same byte and if the volume or channel is a zero, the code only contains a zero and a duration, so it takes less space of your ROM.

The application automatically decides which TIA channels contain less off-tones, so i won't sound as bad as you expect, it is an Atari 2600 anyway. You can change two chords up or down by 2 if it sounds better.

 

Merged channels are special. You select several channels up to 4 from your MIDI and the an algorith will merge them. The one in the primary channel is always on the top, the second can be only heard if there is no tone on the first, the third only fills the remaining gaps and the 4th only appears if there is nothing on #1, #2 and #3. You can have a merged channel for both TIA channels.

Example:


Touhou Project: Bad Apple

 

Download (pcloud)

1.png

2.png

 

EXE: https://my.pcloud.com/publink/show?code=XZirkQkZUgeQNjJGK8b4NcneR9atPhFlY36V

7ZIP: https://my.pcloud.com/publink/show?code=XZ3rkQkZrQQqrISFPUznWgooTmoey8F2bCtk

Added 64bit versions.

 

2019.11.10.:
https://my.pcloud.com/publink/show?code=XZirnQkZJi76DaM9n67x3HaApUu1zjFUMwMk

I released 0.10, several bugs got erased.
-No fadeout effect for silect parts (dunno how I magaged to leave this in)
-At merging, it did not merge channel 4, typo were in code.
-At merging, I did corrected method so it won't add silent parts above music.


2019.11.11.:
https://my.pcloud.com/publink/show?code=XZStTQkZxmcEBMmTbNY6FwI5meCWIpegq5uX

0.11:
-Removed the bug that left the older code in channel window if the new one had no notes at all.
-You can set "automatic update" at merging, so it will change all the avaiable codes, if you want it to do so.

Edited by MemberAtarian
  • Like 8
  • Thanks 1
Link to comment
Share on other sites

On 11/2/2019 at 6:42 AM, TwentySixHundred said:

Hi mate, after downloading your tool my anti virus protector (MSE) detected a threat and deleted the .exe. I hadn't even the chance to check with Malwarebytes.

 

Quarantined threat was - Adware:Win32/Unwaders.A!ml

Dunno why some stupid antivirus protector cries, it is negative and have no harm.

Link to comment
Share on other sites

https://my.pcloud.com/publink/show?code=XZirnQkZJi76DaM9n67x3HaApUu1zjFUMwMk

I released 0.10, several bugs got erased.
-No fadeout effect for silect parts (dunno how I magaged to leave this in)
-At merging, it did not merge channel 4, typo were in code.
-At merging, I did corrected method so it won't add silent parts above music.

Link to comment
Share on other sites

  • 1 month later...

I finally got a chance to try and play around with this but I am a little lost in how exactly to get this to run in a batari basic program.  If output to assembly, would that file be used with an include?  I had tried using the the bB data using the music editor but couldnt figure it out.  Is there a preferred method of using this data?

 

(I am still a bit unpracticed with audio so there is a very good chance I am screwing up something simple. I only played around with it for about a half our last night so I'll try and sit down today on lunch with it. )

 

Edited by KevKelley
  • Like 1
Link to comment
Share on other sites

  • 8 months later...

Great job MemberAtarian with this tool!  I've tried some samples using bB and it's impressive.  

 

I'd appreciate if someone could help me figure out how to integrate the assembly code produced by Miditari into a working VCS kernel.  Does anyone have some sample source code that shows how to incorporate the code?  I've tried doing it myself with no success.

Edited by DigitalAnthony
Link to comment
Share on other sites

So after you input the midi file, you then need to select the TIA Channels.  In the window, you'll see "TIA Channel 0" and "TIA Channel 1."  By default, they're both set to "None."  Once you change that, the "Create ASM code" button will become clickable, and once you click it, assembly code will populate the window.  I'm just now sure how to take that code and merge it with a 2600 kernel to make a playable ROM. hmmm

Link to comment
Share on other sites

  • 1 year later...

Hope the developer or someone who knows how this works can help.

I tried compiling the ASM output and I get unresolved symbol errors in both Visual Code with the extension and also from dasm via command line.

 

I also tried the bB code and it seems that the timing is all off or is just using a static temp instead of honoring the timing in the midi. If I play the midi with VLC, it sounds correct.

 

Any ideas?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...