roughly you have a half 6520 on the user port check the 6520 datasheet http://archive.6502.org/datasheets/mos_6520.pdf you have the timers in the 6522 http://archive.6502.org/datasheets/mos_6522_preliminary_nov_1977.pdf you can also check this book https://archive.org/details/The_Pet_Revealed On 10/05/2017 12:25, Chris Wareham wrote: > Hi, > > I've just signed up to the list as I'm currently writing a simple MIDI sequencer for my PET 4032. I'm using the cc65 compiler suite, but having difficulties finding information on user port programming and timing. > > At the moment I have a home made circuit on a breadboard with an LED for each of the data pins on the user port. When I write a byte to the data register for port A the corresponding LEDs light up. The missing pieces of the jigsaw are how to do the timing so that bytes get written at the correct intervals and the handshaking so I know when each byte has been read. I'm guessing I do the timing by setting a timer and handling interrupts, but neither of my two PET programming books cover this. > > MIDI messages consist of three bytes, but I've got my pseudo MIDI messages down to two bytes: > > mnnnnnnn ccccvvvv > > Where: > > m is 1 for note on or 0 for note off > nnnnnnn is the note number 0-127 > cccc is channel 0-15 > vvvv is velocity 0-15 > > MIDI supports velocity values of 0-127, so I plan on shifting my 4 bit value to get a reasonable spread of velocities. I plan on using an Arduino to convert my pseudo MIDI messages into real ones. Hopefully I can then make an interface with a suitably programmed Atmega chip rather than a complete Arduino board. > > Any advice will be most gratefully appreciated! > > Regards, > > Chris > > Message was sent through the cbm-hackers mailing list Message was sent through the cbm-hackers mailing listReceived on 2017-05-10 12:00:34
Archive generated by hypermail 2.2.0.