MEGA MINI MPI

The MEGA Mini Multi-Pak Interface includes:

  • 4-slot Multi-Pak interface
  • Yamaha YMF-262 FM synthesizer
  • 2 x high-speed SC16550 Universal Asynchronous Receiver / Transmitter (UART) (USB dongle available)
  • Additional MPI controls such as software selectable cartridge sound routing and interrupt control

Created by Ed “Zippster” Snider https://thezippsterzone.com/2018/05/09/mega-mini-mpi/

EXAMPLE APPLICATIONS

LORD DRAGON'S OS9 PLAYER

Todd "Lord Dragon" Wallace's cctplayer for OS-9

Todd "Lord Dragon" Wallace's cctplayer for OS-9 Virtual Hard Drive with CCT and VGM files

Usage notes from Lord Dragon:
both have the “cctplay” program itself in the root of the disk

on the VHD i put all the .CCT files that Ed has converter for use with his “Coco Chip Tunes” player and also a number of various pure VGM files (which the CCT files are mostly converter from)

the player has a “playlist” function that will read a text file with filenames (and/or fullpathnames) to whichever songs you want to play in a row use the -p flag to tell the player the file is a playlist instead of the song file itself

just type “cctplay” by itself to see more usage info

i included a small playlist file called “vgm.pls”

feel free to experiment and make your own

you can use both .VGM and .CCT song files interchangably inside a playlist

you can use it to refer to files in the current directory or absolute paths off of other devices, or a mix of both so you could potentially play some songs off of a drivewire volume and then an SDC volume and then a floppy drive itself 😄

please if you feel motivated, find some of your own random VGM files to try it with to see if you can help me discover bugs the megamini mpi has support for either OPL2 (YM3812) or OPL3 (YM262) chips

VGM is a universal format so some are for entirely different sound chips that obviusly coco cant play

i found my VGMs here: https://vgmrips.net/packs/ and i browsed specifally for YM3812 or YM262 sound chips

PROGRAMMING

Zippster already provided a nifty assembly program to play the 12-note scale, so I didn't have to write one:
https://thezippsterzone.com/2018/12/01/programming-the-opl3-chip-with-the-color-computer/

The manual includes a number of other programming bits you will need:
MEGAmini Manual

Yamaha OPL3 YMF262

NXP SC16C550B Serial Data Sheet

MY EXAMPLE CODE

Since Zippster already covered playing scales through the OPL3 in assembly, I tried something else - decoding Ad Lib instrument banks and programming the MMMPI from BASIC to play sounds or scales with those instruments.

Wow is my BASIC rusty and even more horrible than my 6809 assembly.

Buggy, incomplete demo of scales through 145 FM instruments on MEGAmini MPI … in BASIC.

POKE 25,14:POKE3584,0:NEW for 28K free with SDC-DOS/DECB before running.

Plays in headphones direct from MMMPI - not sure what I got wrong on CART MUX (fixed in next demo)

This the start of the demo you asked for by Tom C on the CoCo Discord.

Yes, the instrument settings and processing could be much better but I did it this way for reasons which may become apparent later … stay tuned to Glenside Newsletter:
demo01.bas

Working better - Sound out of CoCo CART line and MMMPI headphones …

bad data imported in the HIHAT2 instrument will crash with FC error -

for some reason the instrument file has a 252 for the feedback which is normally only the range 0-7 …

but this is at least a preview:
demo2.bas

Further along with the AdLib standard instrument banks:
demo5.bas

A different tack using pre-figured instrument register data and Bisqwit's MIDIPLAY general MIDI sound bank example instruments:
demo7.bas

EXPLORING THE MEGA-MINI MPI IN COCO~123

My write up exploring the MMMPI's OPL3 sound for the Glenside Color Computer Club CoCo~123 Newsletter Vol 41 #2 Summer 2021 which describes more of what the BASIC code above is doing and why.

MEGAMINI MPI COMMUNITY

I can see that I would have been much better off using single long strings of hexdata and a small 2 character MID$() to poke those in, instead of the DATA &H business.

If you would like to discuss tips, tricks, coding, and more for the MEGA-mini Multi-Pak Interface, its UARTs, or OPL3 sound, join us on the CoCo Discord in the SOUND / #mmmpi-sdc-extender-opl3 channel.

We do have a PROGRAMMING / #basic channel you can make fun of me in as well…

NEED MORE?

RTS

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies