Re: PET user port programming

From: Mike Stein <mhs.stein_at_gmail.com>
Date: Wed, 10 May 2017 10:56:24 -0400
Message-ID: <D3377E5363634532805267023B516F7A@310e2>
Thanks! 

Chiron used to come to TPUG meetings once in a while; will have to talk to him next time.

m
  ----- Original Message ----- 
  From: Nick Vivid 
  To: cbm-hackers@musoftware.de 
  Sent: Wednesday, May 10, 2017 10:29 AM
  Subject: Re: PET user port programming


  The wayback machine archived it over the years.


  https://web.archive.org/web/*/http://petsynth.org/



  On May 10, 2017 10:02 AM, "Mike Stein" <mhs.stein@gmail.com> wrote:

    Looks like he's let the site expire; any other links to PetSynth anywhere?

    m

    ----- Original Message -----
    From: "Leif Bloomquist" <leif@schemafactor.com>
    To: <cbm-hackers@musoftware.de>
    Sent: Wednesday, May 10, 2017 9:01 AM
    Subject: Re: PET user port programming


    MIDI on the PET, cool!

    You should check out PetSynth, I believe the source code is available:

    https://en.wikipedia.org/wiki/PetSynth
    http://www.petsynth.org/

    While it's a player not a sequencer, it also uses an Arduino on the
    user port and creative use of timers from what I recall.  Anyway,
    worth looking at.


    (I'd love to see a PET duet, your sequencer code on PET #1 and
    PetSynth on PET #2)  ;-)

    Cheers,
    -Leif





    --
    Leif Bloomquist | leif@schemafactor.com | +1 416-737-2328 | Check out
    my blog! http://www.jammingsignal.com

    "Every choice, no matter how small, begins a new story." - xkcd


    On Wed, May 10, 2017 at 6:25 AM, Chris Wareham <chris@chriswareham.net> 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 list


           Message was sent through the cbm-hackers mailing list



       Message was sent through the cbm-hackers mailing list
Received on 2017-05-10 15:02:28

Archive generated by hypermail 2.2.0.