Forum Rule: Always post complete source code & details to reproduce any issue!
Page 3 of 3 FirstFirst 1 2 3
Results 51 to 60 of 60

Thread: My Teensy 3.1 Commodore SID Emulation / Player

  1. #51
    Hi all,

    I was googling for a way to build a synthesizer by means of the SID chip. I then stumbled on this thread. Can someone confirm I can use this library to create a synth (choose sounds, generate sounds, change filters, ...)?

    Cheers all!

    BC

  2. #52
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    20,552
    Quote Originally Posted by bcnx View Post
    Can someone confirm I can use this library to create a synth (choose sounds, generate sounds, change filters, ...)?
    How's this?

    https://hackaday.com/2018/07/24/sad-...-pretty-close/

  3. #53
    Quote Originally Posted by PaulStoffregen View Post
    Awesome, Paul thanks for sharing!

    BC

  4. #54
    I was actually more interested in the capabilities of Frank's library. Tried contacting him, to no avail. Will need to experiment on my own!

    BC

  5. #55
    It seems like his library's primary aim is to play SID dmp files, so no real usability as a software synth. Will have a look at the SID hardware emulation now, maybe that is useable,

    BC

  6. #56
    Junior Member
    Join Date
    Jun 2015
    Posts
    4
    Hi BC

    The example Paul linked above makes use of Frank's library.
    It simply includes Frank's reSID at the top, and then forwards address/data appearing on the teensy 3.6 pins whenever the R/W line goes low by calling setreg()


    #include "reSID.h"
    ...
    playSID.setreg(address_lines & B00011111 ,data_lines);
    ...
    etc.

    I have previously written code for teensy 3.1/3.2 which was able to successfully make a real SID work.
    It was successfully receiving MIDI notes through USB and full control of SID configuration registers through OSC on one of the serial ports (sent from TouchOSC via an ESP8266).
    I don't see why this library wouldn't respond well to what I've written, I'll perform some experiments and see if it works.

    mogs

  7. #57
    Hi,

    Thanks.
    What's not clear to me at this point is how to actually use the library and for instance activate oscillators or any other function the original SID chip can do.

    Cheers,

    BC

  8. #58
    Junior Member
    Join Date
    Jun 2015
    Posts
    4
    Hi BC

    The library is emulating a SID chip which is a synthesizer digitally controlled at a register level.
    So to be able to change the pitch and waveforms etc you'd need to send sequences to modify these register values.

    I've encountered several libraries which have been written to provide more friendly function calls to interface with the synthesizer. (e.g. CharlotteGore), and also implemented my own library to do this.
    Almost all of these including mine have been created to make use of some sort of SPI IO expander, so these would need some modification to talk to a software SID. Although I imagine most of the code would be re-usable.

    mogs.

  9. #59
    Quote Originally Posted by mogs View Post
    Hi BC

    The library is emulating a SID chip which is a synthesizer digitally controlled at a register level.
    So to be able to change the pitch and waveforms etc you'd need to send sequences to modify these register values.

    I've encountered several libraries which have been written to provide more friendly function calls to interface with the synthesizer. (e.g. CharlotteGore), and also implemented my own library to do this.
    Almost all of these including mine have been created to make use of some sort of SPI IO expander, so these would need some modification to talk to a software SID. Although I imagine most of the code would be re-usable.

    mogs.
    Hi Mogs,

    all clear, basically hardware emulation.
    I will do further research to see if I can develop a SID based synth,

    cheers,

    BC

  10. #60
    Senior Member+ Frank B's Avatar
    Join Date
    Apr 2014
    Location
    Germany NRW
    Posts
    5,679
    That's easy. Just use playSID.setreg(reg, value)

    Here is an sound-example: https://forum.pjrc.com/threads/32167...ll=1#post91471 ("Ghostbusters")
    or here: https://raw.githubusercontent.com/FrankBoesing/Teensy64/master/examples/SDCARD/C64/Monty%20On%20The%20Run.mp3 ("Monty On The Run")

    Edit: Somehow the 2. link does not work with Chrome for me..don't know why. Try FireFox

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •