Jump to content
IGNORED

MIDI Interface


ivop

Recommended Posts

13 hours ago, Mathy said:

I have a JOY2PIC in my little cardboard box that I take with me to each Atari meeting.  Never used it, so I have no clue what so ever what to use it with.

The JOY2PIC and the JOY2PIC-STIK plug into joystick port one, with the later sporting a quick release ZIF IC socket for the PIC MCU to plug into for programming without an adapter required. Both units have an ICSP 6-pin header, which can get used on projects that support the In-Circuit programming aspect.

 

Using it...

You need an Atari 8-bit executable file specifically for the PIC chip and the application it's intended to fulfill. I call that file a 'flashing' file, since that is in essence what it will do (i.e., flash program the PIC chip). So there are flashing files for the MIDI Controller, TransKey II, PS/2 Mouse to name a few. There is a program written by Daniel Serpell that will create a flashing file from a standard PIC hex file, but this is not required for people wishing to flash PICs for any of my DIY projects, since I already provide the flash file in Atari executable format on my website (link in my signature).

 

Flashing Procedure...

  1. Plug the JOY2PIC into Joystick port 1.
  2. Boot-up the A8 with the appropriate flashing ATR to match the application (use floppy, SIO2PC, ect.).
  3. A readme file will automatically be displayed telling you what PIC is to be flashed.
  4. Put the correct PIC into the socket on the JOY2PIC-STIK observing the pin 1 location (The JOY2PIC needs an adapter).
  5. Press START and wait for the flashing screen effects to disappear.
  6. If the screen says PIC successfully programmed, you're done. If you get an error message, check that you have the correct PIC chip and that it is properly orientated in the socket.

 

Edit: If you plan on using a floppy, then you'll need to extract the one and only .com file from the ATR and transfer it to a floppy with some kind of Atari DOS on it. MakeATR would do the trick. If using SIO2PC with APE or RespeQT then use the ATR directly within those applications. And of course you can use one of the multitude of SD or CF card drives just by copying the flashing ATR to the card.

 

 

 

  • Like 4
Link to comment
Share on other sites

I have to report that my two sio2midi interfaces are up and running! 

I was able to program the 12f1572 Pic using the 12f18xy template of xgecu program and TL866 II. 

The trick is to deselect the Data part, so not write the data section. And also deselect the check device ID. 

I was able to use midirec and midiplay programs in my 800XL. 

 

  • Like 6
Link to comment
Share on other sites

  • 3 weeks later...
On 4/27/2019 at 6:28 PM, ivop said:

Today is King's Day in The Netherlands and traditionally there's a fleamarket all over town. And look what I found:

 

post-20947-0-71165100-1556382228.png

 

It's an Alesis Micron Analog Modelling Synth. On ePay they seem to go for 200-350 USD. I paid 5 euro :)

 

There was no power supply, but the Atari 1050 PS works fine. It needs 9VAC/1.5A and the Atari PS is rated 3A, so no problems there.

As you can see, the rotary encoder and knob on the upper right is broken, the volume knob is missing, one slider cap is missing and (not very visible) the x/y/z knobs are mushy and covered with glitter. Used to be live gig equipment I guess, because at the bottom is a bunch of velcro to keep it from moving and the brand name at the back was made invisible with red tape. Maybe they were ashamed of using Alesis gear ;)

 

After opening it up, it seems the whole volume pot is borked. Need to replace it with a 10KAx2 and a proper knob. As for the rotary encoder, I found one in my parts bin :)

 

Looking forward to connecting this to my Atari XL :D

 

Seems this is my lucky year as far as synths is concerned. Look what I found at the garbage tonight:

 

YamahaDX27.thumb.png.6d320c18fdf91aff426edd1321b3a1bf.png

 

Not the legendary DX7 from '83, but this is the DX27 from '85. Later, but sadly, not as good. But a nice find anyway :)

 

Definitely needs some TLC and the power supply connector is broken. Rest of the 78xx circuits look OK, but we'll see if that needs fixing. All backside screws are missing, but the bottom itself was there. It was quite a feat to get this home in one part. And two keys are missing. But if I mannage to power it up tomorrow and get at least the synth working (i.e. MIDI IN/OUT and Audio Out), I'm a happy man :) After that, we'll see if I can get the keys working, too.

 

But it could also turn out to be just a parts thingy. Lots of socketed proprietary Yamama chips! :D

 

 

Edited by ivop
  • Like 5
Link to comment
Share on other sites

  • 1 month later...
6 hours ago, Lastic said:

A General question @mytek

 

The LED on the newer SIO2MIDI pcb , it lights up when playing a MIDI file, does it blink or just shines bright ?

Is it MIDI aware , meaning does it react to for ex. switching of MIDI channels ?

It's simply connected to the cassette motor control line, and shows a steady state when that line goes high. This is the enable signal for the MIDI circuit, and nothing more.

 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

13 hours ago, mytek said:

It's simply connected to the cassette motor control line, and shows a steady state when that line goes high. This is the enable signal for the MIDI circuit, and nothing more.

 

To get technical, that line is also used with cassette tape drives and R:Verter devices. The L.E.D. will also show access to those devices if all are connected to SIO.

 

  • Thanks 1
Link to comment
Share on other sites

17 hours ago, Kyle22 said:

To get technical, that line is also used with cassette tape drives and R:Verter devices. The L.E.D. will also show access to those devices if all are connected to SIO.

And only one of those 3 devices can be connected to the SIO bus at any given time, because it would result in a data collision if they all tried to coexist.

 

  • Like 1
Link to comment
Share on other sites

6 hours ago, _The Doctor__ said:

hmmm, depends on the tape deck and if any of it's transport keys are pressed or not... or if the device connected to the rverter is turned on.... some get on just fine with those preconditions... the mad yanking of devices isn't always needed...

In connection with Michael’s MIDI device, which is the subject at hand, perhaps he should be the judge of that. He did design it, after all, and knows very well how it works.

Link to comment
Share on other sites

8 hours ago, _The Doctor__ said:

hmmm, depends on the tape deck and if any of it's transport keys are pressed or not... or if the device connected to the rverter is turned on.... some get on just fine with those preconditions... the mad yanking of devices isn't always needed...

Well technically you are probably correct that the tape deck wouldn't interfere with the MIDI if the play button wasn't engaged, but not so true for the other way around, since the motor control will enable the MIDI to take over the data lines. Once that happens all bets are off for the tape deck to work without data collision occurring.

 

And having both an Rverter and MIDI circuit share the bus isn't going to happen when they are both enabled by the same signal (i.e., motor control).

 

  • Like 2
Link to comment
Share on other sites

I usuallu have two of this type of devices in the SIO, and as Mytek and the doctor pointed out, for cassettes players need to press play to make the them use the SIO bus. For rverter and midi I have a power switch to keep them quiet (to not to flood the SIO bus), while they are not being used. That has worked for me: rverter, sio2bt and 2 cassette players are always connected, but rverter and sio2bt are off. the sio2midi it is connected just when used, and does not have problems with the cassette players and rverter as long as I keep it off.

 

 

 

Link to comment
Share on other sites

Aha that confirms my suspicion !

 

My enhanced 130XE has SIO2MIDI onboard which is always attached and with this machine I was no longer able to load tapes from my XC12.

My internal floppy doesn't seem to disturb the tape loading but SIO2MIDI does.

 

I just unhooked the SIO wiring to the SIO2MIDI and now my tape loads , before it would go to SystemCheck routine.

 

Guess I will have to add an external switch if I don't want to wiggle around the connector every time.

  • Like 1
Link to comment
Share on other sites

1 hour ago, Lastic said:

My enhanced 130XE has SIO2MIDI onboard which is always attached and with this machine I was no longer able to load tapes from my XC12.

Yep. The same with the 1088XLD - the internal MIDI interface repurposes the MTRl line used to start and stop tape transport. 

Link to comment
Share on other sites

1 hour ago, Lastic said:

Aha that confirms my suspicion !

 

My enhanced 130XE has SIO2MIDI onboard which is always attached and with this machine I was no longer able to load tapes from my XC12.

My internal floppy doesn't seem to disturb the tape loading but SIO2MIDI does.

 

I just unhooked the SIO wiring to the SIO2MIDI and now my tape loads , before it would go to SystemCheck routine.

 

Guess I will have to add an external switch if I don't want to wiggle around the connector every time.

Just need to add a switch to disconnect the motor control signal only, the rest of the connections can be left hooked up.

 

Link to comment
Share on other sites

Version 1.2 of the MIDI XEL II Main Board has been released, fixing a problem with the Left Channel Audio. I also added additional labeling to the silkscreen to better define what goes where on the XEL's AUX-SIO header, although if you use a 7-pin dupont-to-dupont cable and line up pin-1 on both sides it'll work.

 

MIDI-XEL-II_top_view.thumb.png.72df4f1cd2b57e01332b85a4df30a81e.png

 

MIDI-XEL-II_bot_view.thumb.png.239d06ab763823fd07e33cf9629e56e7.png

 

 

 

 

Go to: https://ataribits.weebly.com/midi.html  for more info, files, and ordering info.

 

 

  • Like 5
Link to comment
Share on other sites

Together with the INTFC board, this is almost what I envisioned for the final MIDI interface I started at the beginning of this thread. You fixed the bug of having the internal synth switch off and switch on too slow when motor control is activated, plus you merged a whole lot of 74-logic into the PIC which is great! But, you removed the switch to use it as a stand-alone WaveBlaster host and you removed the stereo downmixing. I know I added that in Rev.C, after the XEL pin header was already decided on and it has no SIO Audio In, but it would be nice if the circuitry was still there and one could run a wire of its own back to SIO.

 

I could ofcourse take your schematics, redraw them in KiCad, add the "missing" circuitry and create a new board, merged with the INTFC board, but I'd rather spare myself the trouble ;)

 

  • Like 2
Link to comment
Share on other sites

8 hours ago, ivop said:

...you removed the switch to use it as a stand-alone WaveBlaster host...

Actually if I'm interpreting what you are saying correctly, that's not entirely true. First of all if the DIN Interface is not plugged in, the S2's MIDI-IN is connected to the MIDI-OUT, thus letting the Atari play MIDI tunes through the synth module. If the DIN Interface is plugged in, and the S2OFF shorting jumper is not in place (or a switch to bridge that connection) then the S2 is still connected to MIDI-OUT, same as before. Only when the S2OFF shorting jumper is in place will the S2 MIDI-IN be disconnected from MIDI-OUT when the DIN Interface is plugged in.

 

Now maybe what you are referring to is that there is no longer a way to source the S2's MIDI from the MIDI-IN DIN Jack. Thus you can't plug in a keyboard and have the keyboard's MIDI-OUT go directly to the S2 module. Yes that was given up with this last MIDI XEL II iteration, since it didn't seem like a big deal, nor worth the trouble to retain it.

 

8 hours ago, ivop said:

...and you removed the stereo downmixing. I know I added that in Rev.C, after the XEL pin header was already decided on and it has no SIO Audio In, but it would be nice if the circuitry was still there and one could run a wire of its own back to SIO.

Mixing of the S2 left and right audio output is already mixed in via the MPBI connection, along with Pokey, GTIA, and the SIO Audio IN. So I don't understand what you think is missing?

 

8 hours ago, ivop said:

I could ofcourse take your schematics, redraw them in KiCad, add the "missing" circuitry and create a new board, merged with the INTFC board, but I'd rather spare myself the trouble ;)

Yes you can, just like I took ideas from your project to create my version(s). All's fair ;) . And I would also be willing to share my ExpressPCB source files to save someone the trouble of having to start from scratch, and would even be willing to create gerbers from those as well.

 

 

  • Like 3
Link to comment
Share on other sites

11 hours ago, mytek said:

Actually if I'm interpreting what you are saying correctly, that's not entirely true. First of all if the DIN Interface is not plugged in, the S2's MIDI-IN is connected to the MIDI-OUT, thus letting the Atari play MIDI tunes through the synth module. If the DIN Interface is plugged in, and the S2OFF shorting jumper is not in place (or a switch to bridge that connection) then the S2 is still connected to MIDI-OUT, same as before. Only when the S2OFF shorting jumper is in place will the S2 MIDI-IN be disconnected from MIDI-OUT when the DIN Interface is plugged in.

 

Now maybe what you are referring to is that there is no longer a way to source the S2's MIDI from the MIDI-IN DIN Jack. Thus you can't plug in a keyboard and have the keyboard's MIDI-OUT go directly to the S2 module. Yes that was given up with this last MIDI XEL II iteration, since it didn't seem like a big deal, nor worth the trouble to retain it.

For a musician it can be very handy to flip a switch and play directly on the WaveBlaster synth, while keeping your IN and OUT cables connected as they should. Supply external power and you don't even need the Atari anymore to leverage the S2 synth. I see you can sort of use it standalone and connect your keyboard to MIDI-OUT instead of IN, but that's not very prtactical as it needs swapping cables.

 

11 hours ago, mytek said:

Mixing of the S2 left and right audio output is already mixed in via the MPBI connection, along with Pokey, GTIA, and the SIO Audio IN. So I don't understand what you think is missing?

I understand you don't need it with this board as it is plugged in the XEL MB directly, which also has all the audio mixing. In my proposed use case, you have audio out cinch or 3.5mm, but also downmixing to mono back to SIO audio-in, for when connected externally to original hardware and no external speakers are available. Maybe I'll just create a small board for that, to be attached to your MIDI XEL II and put everything in an enclosure.

 

11 hours ago, mytek said:

Yes you can, just like I took ideas from your project to create my version(s). All's fair ;) . And I would also be willing to share my ExpressPCB source files to save someone the trouble of having to start from scratch, and would even be willing to create gerbers from those as well.

I have to think about it. It's not that much work to redraw it in KiCad. I suspect less than an hour, as I already have drawn all parts previously. While I'm at it, I could also bring back analog and digital separation. Again, this wasn't needed for your use case with decent power planes, but it might help with hum when connected to a 35 year old unshielded 800XL :)

Oh, and I could add a volume knob, which would eliminate having to normalize your MIDI files. And perhaps look into the triggers, which I skipped so far. Well, let's first think about it some more :)

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

3 hours ago, ivop said:

For a musician it can be very handy to flip a switch and play directly on the WaveBlaster synth, while keeping your IN and OUT cables connected as they should. Supply external power and you don't even need the Atari anymore to leverage the S2 synth. I see you can sort of use it standalone and connect your keyboard to MIDI-OUT instead of IN, but that's not very prtactical as it needs swapping cables.

I never thought about that possibility of swapping cables to allow for the missing mode. Intriguing.

 

Quote

I understand you don't need it with this board as it is plugged in the XEL MB directly, which also has all the audio mixing. In my proposed use case, you have audio out cinch or 3.5mm, but also downmixing to mono back to SIO audio-in, for when connected externally to original hardware and no external speakers are available. Maybe I'll just create a small board for that, to be attached to your MIDI XEL II and put everything in an enclosure.

 

I have to think about it. It's not that much work to redraw it in KiCad. I suspect less than an hour, as I already have drawn all parts previously. While I'm at it, I could also bring back analog and digital separation. Again, this wasn't needed for your use case with decent power planes, but it might help with hum when connected to a 35 year old unshielded 800XL :)

Oh, and I could add a volume knob, which would eliminate having to normalize your MIDI files. And perhaps look into the triggers, which I skipped so far. Well, let's first think about it some more :)

If I had used a bigger PIC chip for the controller, much of what you have been talking about could have been done through simple switch configuration, as well as eliminate any need for additional glue logic or bufferring, thus being a one chip solution (other than still needing the opto isolator). If you are still proposing creating a new board, that may be worth looking into first. Even if I don't do it, the Basic source code has been provided for others to do so, including yourself. The new chip would need a UART and preferably an onboard clock same as the PIC12F1572. It would also be nice if it were flashable via the JOY2PIC, so best if it is already on the list of compatible PIC's, although more can be added to that without too much difficulty.

 

Edit: The PIC16F688 looks like a good possibility, and would add 6 more I/O lines with high drive capability, so the MIDI-THRU could be added without a separate buffer or logic. This is similar to how the SIO2MIDI board works, directly driving the MIDI-OUT. Then the other I/O pins could be used to select different modes of operation, and/or provide status indication. This is probably what I should have done for some of the other implementations to simplify things, but I doubt that its worth redesigning just for this. However for your stand-alone MIDI MUSE board it might be worth doing. Unfortunately I still have a lot on my plate so wouldn't have the time to re-engineer the MIDI Controller. But I can add the PIC16F688 to the READHEX program that will allow creating an Atari executable flasher.

 

Edited by mytek
Added alternative PIC info
  • Like 4
Link to comment
Share on other sites

23 hours ago, mytek said:

Edit: The PIC16F688 looks like a good possibility, and would add 6 more I/O lines with high drive capability, so the MIDI-THRU could be added without a separate buffer or logic. This is similar to how the SIO2MIDI board works, directly driving the MIDI-OUT. Then the other I/O pins could be used to select different modes of operation, and/or provide status indication. This is probably what I should have done for some of the other implementations to simplify things, but I doubt that its worth redesigning just for this. However for your stand-alone MIDI MUSE board it might be worth doing. Unfortunately I still have a lot on my plate so wouldn't have the time to re-engineer the MIDI Controller. But I can add the PIC16F688 to the READHEX program that will allow creating an Atari executable flasher.

Thanks! I have ordered a few PICs and the H11L1s. This could be a nice november or december project, depending on how fast the slowboat from China is!

 

  • Like 2
Link to comment
Share on other sites

23 hours ago, ivop said:

I know there's no standard order, but why exactly this order?

We've had this conversation before I believe somewhere in this now lengthy thread, or perhaps in the 1088XLD topic. If I recall the gist of it, it's because someone (HARdwareDoc) made a version many years ago, building a limited number for others, and then no more. Mathy had information posted on his website about this MIDI board, and I believe also had at least one in his possession. Probably because of this, he suggested that the MIDI jacks should have the same order to match HARdwareDoc's board, somewhat insisting that it was the standard that should be followed. I remember showing him examples from professional MIDI synths that revealed that there was no standard in the industry for the arrangement of these jacks, although in my searches I did find several that matched MIDI-MUSE as well many that also matched my projects in the arrangement of the MIDI jacks. When searching further I was initially hard pressed to find any that matched the order he was insisting should be the standard, although eventually I think I found at least one that did.

 

At this point, I would say arrange the jacks as you see fit :) .

 

Last known MIDI-MUSE board layout

midirevb-pcb.png

 

MIDI XEL II DIN Interface Board

MIDI-XEL-II-INTFC_top.png

 

HARdwareDoc's MIDI Board

midimate_mit_buchse_und_kabel_klein.jpg

 

However looking at HARdwareDoc's design, it did have something of merit, which is what I brought up recently, and that is to use a single PIC chip to replace all of the 7400 series logic including the THRU port connection (ABBUC LINK).

 

Link to comment
Share on other sites

Hello guys

 

I have three of those.  HARdwareDoc's MIDI-interface is fairly common in the German Atari 8 bit meetings scene (of which I consider myself part).  It's hard enough to get multiple computers connected together the right way (believe me, I've seen more than a few meetings where it toke quite some time to figure out who plugged in which cable wrong on what interface) when all interfaces use the same order.  If interfaces use a different order than what most have (in the 8 bit scene), this gets more confusing/complicated than it has to be.  So please consider using the order HARdwareDoc used.

 

Sincerely

 

Mathy

Link to comment
Share on other sites

16 hours ago, Mathy said:

Hello guys

 

I have three of those.  HARdwareDoc's MIDI-interface is fairly common in the German Atari 8 bit meetings scene (of which I consider myself part).  It's hard enough to get multiple computers connected together the right way (believe me, I've seen more than a few meetings where it toke quite some time to figure out who plugged in which cable wrong on what interface) when all interfaces use the same order.  If interfaces use a different order than what most have (in the 8 bit scene), this gets more confusing/complicated than it has to be.  So please consider using the order HARdwareDoc used.

 

Sincerely

 

Mathy

So in other words you are effectively saying that a piece of non-commercial hardware that hasn't been made in years, and that likely with very few still in circulation beyond the European meeting scene you mentioned, should be used as the standard for all things MIDI on the Atari 8-bit from that point forward. Also unlike many of the current MIDI projects under discussion, I don't believe HARdwareDoc's version ever saw a wide spread public release. Whereas two existing and current projects, one which had a public release (MIDI XEL II), and the other currently for sale (1088XLD), should not have their MIDI interface arrangement embraced??? And I mustn't forget the MIDI-MUSE project that also had a public design release pre-dating my efforts, and serving as an inspiration for the MIDI XEL, SIO2MIDI, and the 1088XLD's built-in MIDI, which also has a unique MIDI jack arrangement when compared to either my projects or HARdwareDoc's board.

 

The excuse of being too complicated to figure out which cable goes where reads more like a justification for your stance, than the actual reality of the situation. Especially considering that the jacks are labeled on the PCB, and in the case of the enclosed 1088XLD, engraved on the front panel as well. Seriously... if people can't figure out things like IN goes to OUT then they probably shouldn't be playing around with computers in the first place ;). Good luck at hooking up an 850 to a modem or connecting your home stereo system to a tape deck or CD player :rolling: .

 

So unless the HARdwareDoc boards are currently being produced, I suspect that their numbers will dwindle in comparison to what is freely available now in the Atari 8-bit MIDI scene.

 

Bottom line is, that MIDI jack arrangement (or order) was considered unimportant dating back to the very beginnings of MIDI, and continued to be so into the current age. The same is true for nearly all computer interface systems between manufacturers or even when releasing new versions (400/800, XL, XE). I/O jacks get relocated between nearly all systems (i.e., joystick left-to-right port number order changed between the 1200XL and the 800XL). What did remain consistent, is that all of those I/O connections were clearly marked as to what they were.

 

  • Like 4
  • Haha 1
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...