4 posts in this topic

The schematic for the ATARI keypads (used for synthcart) is here:


As you can see, the keys are arranged in a 3x3 matrix. I have seen lots of Midibox projects where a keyboard input matrix is hooked up to send midi events, but I can't find one that will let me drive outputs in a matrix... I was hoping there would be a way to do this with midiIO128, but I don't see this config in the asm file...


I know that MB64e drives LED rings in a Matrix, but I'm not sure if I can use it the way I intend to. I also saw an old post where wilba recommended using a CD4066 to drive the matrix from the button side, but I would like to hide all the circuitry inside the Atari 2600. I am familiar with the Highly Liquid midi retrofit kits, but I would prefer to use the MBHP platform since I already have a spare core and DOUT module laying around.


Can someone suggest the proper app for this project?



Share this post

Link to post
Share on other sites

Well that's a 3x4 matrix actually, but what is it that you are trying to do? Simulate key presses with a MIDIbox?

Share this post

Link to post
Share on other sites

Hi I've been thinking about this subject for a long time! ATM I'm researching an idea for a cartridge based midi interface, but don't know how far I'll go with it, seems kind of redundant and over complicated considering the SynthCart/Midi2600 setup.

 The problem that needs to be addressed is to read the COL pins (which the 2600 is driving one at a time) and assert the right ROW to sim a key press. So it's a scan matrix in reverse, instead of driving a COL and looking for a ROW line active. 

1 Read the COL pins. 

2 When the right one is active low, pull low the ROW pin for your key till the COL changes.

3 goto 1

 You could mod the 8x8 KB Scan Matrix to accomplish this I think. Your scan rate will have to be high compared to the 2600's, to detect the active COL, compare to the desired 'key press' and assert the right ROW. Don't think that is too much of a problem on a 10 MIPS PIC core, considering HL is using an 2 MIPS 16F914 with internal RC clock @ 8MHz, 

But, you might want to grab the Midi2600 Source from the HL forum , they have open sourced it. If nothing else, you can see how they time the I/O :)

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now