SlideShare una empresa de Scribd logo
1 de 15
Jim Brain and Leif Bloomquist
World of Commodore 2015
December 5, 2015
Toronto, Canada
VIC MIDI
Project Goals
 Make the Commodore VIC-I (6560) chip’s
distinctive sound available to electronic
musicians.
 Easy integration with sequencers, synthesizers,
or tracking software using MIDI1.
1Musical Instrument Digital Interface
History
 Sometime in the 1980s: A schematic for a VIC-20 MIDI
interface was published in “Electronics, the Maplin
Magazine”
 No commercial MIDI interfaces were ever
released for the VIC!
History cont’d
 2006: David Viens and François Leveillé in Montreal had
built a prototype based on the Maplin article, but never
completed the software.
 Early 2009: A conversation with Rob Adlers and
Syd Bolton leads to a search for a MIDI Interface for the
VIC.
 Mid 2009: I find David and Francois’ project through the
“VIC-20 Denial” forums and offer to take over
development.
First Prototype
History cont’d
 Late 2009: I approach Jim Brain from Retro Innovations
about creating a small production run.
 Prototypes and code evolve for several years…
2013
2011
2012
2015
The VIC-20’s Voices
 Square Wave output (except Noise)
 Some overlap between voices
Implementation
 One MIDI Channel per Voice
 Channel 1 = Alto (36874)
 Channel 2 = Tenor (36875)
 Channel 3 = Soprano (36876)
 Channel 4 = Noise (36877)
 Polyphony Mode
 Channel 5 = Polyphony Mode (round-robins through voices)
 Master Volume is set through Controller #7
(Coarse Volume) on any channel
Implementation (Continued)
 Note On commands use a lookup table to match MIDI Note# to
the closest match for that voice.
 Controller #1 (Course Modulation) does a direct “POKE” to the
corresponding Voice register based on MIDI Channel.
 Note Off, All Notes Off commands on a specific channel are
used to silence that voice.
 MIDI “Running Status” supported
 PAL, NTSC, and VIC-specific lookup tables
 Bank Select (Controller #0)
Still remaining to do:
 MIDI Out only sends one note at a time. Needs
multi-press, multi-note capability
 Viznut’s waveforms don’t trigger reliably yet
 More testing of Polyphony mode
Software
 6502 Assembler
 Cross-compiled using DASM
 Code is open-source, MIT License
 Available on GitHub:
https://github.com/LeifBloomquist/VICMIDI
 Developer and User Support Forum:
http://www.jammingsignal.com (click FORUMS)
Other features
 Flashable
 MIDI IN, Out, Through support
 RS-232 Support (if installed)
 UltiMem capable (512kB ROM, 128kB RAM)
 UART can be set to any base address in IO2 or IO3
 UltiMem can be enabled/disabled
 MIDI/RS232 can be enabled/disabled
Demo Time!

Más contenido relacionado

Similar a VIC MIDI (World of Commodore 2015)

Final Doccument (Finished Copy)
Final Doccument (Finished Copy)Final Doccument (Finished Copy)
Final Doccument (Finished Copy)
Edmund Hull
 
Michaelwilliamsig2task1worksheet
Michaelwilliamsig2task1worksheetMichaelwilliamsig2task1worksheet
Michaelwilliamsig2task1worksheet
Hooaax
 
12.m3 cms content-updating-pt3
12.m3 cms content-updating-pt312.m3 cms content-updating-pt3
12.m3 cms content-updating-pt3
tarensi
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
IJERD Editor
 

Similar a VIC MIDI (World of Commodore 2015) (20)

The MIDI Protocol - Musical Instrument Digital Interface
The MIDI Protocol - Musical Instrument Digital InterfaceThe MIDI Protocol - Musical Instrument Digital Interface
The MIDI Protocol - Musical Instrument Digital Interface
 
2 Midi
2 Midi2 Midi
2 Midi
 
Sounds Like Botnet
Sounds Like BotnetSounds Like Botnet
Sounds Like Botnet
 
Music With Pharo
Music With PharoMusic With Pharo
Music With Pharo
 
Final Doccument (Finished Copy)
Final Doccument (Finished Copy)Final Doccument (Finished Copy)
Final Doccument (Finished Copy)
 
History of Digital Media from 1965 1989
History of Digital Media from 1965 1989History of Digital Media from 1965 1989
History of Digital Media from 1965 1989
 
Midi workstation basics
Midi workstation basicsMidi workstation basics
Midi workstation basics
 
Michaelwilliamsig2task1worksheet
Michaelwilliamsig2task1worksheetMichaelwilliamsig2task1worksheet
Michaelwilliamsig2task1worksheet
 
Retrocomputers as Hacking Platforms
Retrocomputers as Hacking PlatformsRetrocomputers as Hacking Platforms
Retrocomputers as Hacking Platforms
 
MIDI KEYBOARD.pdf
MIDI KEYBOARD.pdfMIDI KEYBOARD.pdf
MIDI KEYBOARD.pdf
 
AUDIO DEVICES, FORMATS AND CODECS
AUDIO DEVICES, FORMATS AND CODECSAUDIO DEVICES, FORMATS AND CODECS
AUDIO DEVICES, FORMATS AND CODECS
 
Devoxx uk 2019 digital jukebox
Devoxx uk 2019 digital jukeboxDevoxx uk 2019 digital jukebox
Devoxx uk 2019 digital jukebox
 
Ebook - LOGIC
Ebook - LOGICEbook - LOGIC
Ebook - LOGIC
 
Raspberry pi presentation.pptx
Raspberry pi presentation.pptxRaspberry pi presentation.pptx
Raspberry pi presentation.pptx
 
12.m3 cms content-updating-pt3
12.m3 cms content-updating-pt312.m3 cms content-updating-pt3
12.m3 cms content-updating-pt3
 
Build an Analog Synthesizer with littleBits
Build an Analog Synthesizer with littleBitsBuild an Analog Synthesizer with littleBits
Build an Analog Synthesizer with littleBits
 
Build an Analog Synthesizer with littleBits
Build an Analog Synthesizer with littleBitsBuild an Analog Synthesizer with littleBits
Build an Analog Synthesizer with littleBits
 
Introduction to Arduino & Raspberry Pi
Introduction to Arduino & Raspberry PiIntroduction to Arduino & Raspberry Pi
Introduction to Arduino & Raspberry Pi
 
fOSSa2012- shruti - mutable instrument - open hardware diy 80s sonic aestheti...
fOSSa2012- shruti - mutable instrument - open hardware diy 80s sonic aestheti...fOSSa2012- shruti - mutable instrument - open hardware diy 80s sonic aestheti...
fOSSa2012- shruti - mutable instrument - open hardware diy 80s sonic aestheti...
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 

Más de Leif Bloomquist

Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64
Leif Bloomquist
 

Más de Leif Bloomquist (19)

Tracking the International Space Station with Commodore Computers
Tracking the International Space Station with Commodore ComputersTracking the International Space Station with Commodore Computers
Tracking the International Space Station with Commodore Computers
 
Multiplayer Roguelike for the Commodore 64
Multiplayer Roguelike for the Commodore 64Multiplayer Roguelike for the Commodore 64
Multiplayer Roguelike for the Commodore 64
 
Multiplayer RogueLike Game for the Commodore 64
Multiplayer RogueLike Game for the Commodore 64Multiplayer RogueLike Game for the Commodore 64
Multiplayer RogueLike Game for the Commodore 64
 
Audible Objects
Audible ObjectsAudible Objects
Audible Objects
 
More Mad Science for the Commodore 64 (ECCC 2015)
More Mad Science for the Commodore 64 (ECCC 2015)More Mad Science for the Commodore 64 (ECCC 2015)
More Mad Science for the Commodore 64 (ECCC 2015)
 
Marc Garneau Collegiate Institute
Marc Garneau Collegiate InstituteMarc Garneau Collegiate Institute
Marc Garneau Collegiate Institute
 
Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64
 
New Commodore 64 Network Game Developments
New Commodore 64 Network Game DevelopmentsNew Commodore 64 Network Game Developments
New Commodore 64 Network Game Developments
 
Software Requirements and Design Process in the Aerospace Industry
Software Requirements and Design Process in the Aerospace IndustrySoftware Requirements and Design Process in the Aerospace Industry
Software Requirements and Design Process in the Aerospace Industry
 
CANADA IN SPACE
CANADA IN SPACECANADA IN SPACE
CANADA IN SPACE
 
TCP/IP For Engineers
TCP/IP For EngineersTCP/IP For Engineers
TCP/IP For Engineers
 
Real-Time Clock for Commodore PETs
Real-Time Clock for Commodore PETsReal-Time Clock for Commodore PETs
Real-Time Clock for Commodore PETs
 
Internet Technology for the Commodore 64
Internet Technology for the Commodore 64Internet Technology for the Commodore 64
Internet Technology for the Commodore 64
 
Commodore 64 Telnet BBS Server
Commodore 64 Telnet BBS ServerCommodore 64 Telnet BBS Server
Commodore 64 Telnet BBS Server
 
Artillery Duel Network
Artillery Duel NetworkArtillery Duel Network
Artillery Duel Network
 
World of Commodore 2009 Posters
World of Commodore 2009 PostersWorld of Commodore 2009 Posters
World of Commodore 2009 Posters
 
NetRacer for the Commodore 64
NetRacer for the Commodore 64NetRacer for the Commodore 64
NetRacer for the Commodore 64
 
The Dancer From The Dance: Mapping Motion With Sound Via Radio Transmission
The Dancer From The Dance:  Mapping Motion With Sound Via Radio TransmissionThe Dancer From The Dance:  Mapping Motion With Sound Via Radio Transmission
The Dancer From The Dance: Mapping Motion With Sound Via Radio Transmission
 
Ultimate Modded Commodore VIC-20
Ultimate Modded Commodore VIC-20Ultimate Modded Commodore VIC-20
Ultimate Modded Commodore VIC-20
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

VIC MIDI (World of Commodore 2015)

  • 1. Jim Brain and Leif Bloomquist World of Commodore 2015 December 5, 2015 Toronto, Canada VIC MIDI
  • 2. Project Goals  Make the Commodore VIC-I (6560) chip’s distinctive sound available to electronic musicians.  Easy integration with sequencers, synthesizers, or tracking software using MIDI1. 1Musical Instrument Digital Interface
  • 3. History  Sometime in the 1980s: A schematic for a VIC-20 MIDI interface was published in “Electronics, the Maplin Magazine”  No commercial MIDI interfaces were ever released for the VIC!
  • 4. History cont’d  2006: David Viens and François Leveillé in Montreal had built a prototype based on the Maplin article, but never completed the software.  Early 2009: A conversation with Rob Adlers and Syd Bolton leads to a search for a MIDI Interface for the VIC.  Mid 2009: I find David and Francois’ project through the “VIC-20 Denial” forums and offer to take over development.
  • 6. History cont’d  Late 2009: I approach Jim Brain from Retro Innovations about creating a small production run.  Prototypes and code evolve for several years…
  • 9. The VIC-20’s Voices  Square Wave output (except Noise)  Some overlap between voices
  • 10. Implementation  One MIDI Channel per Voice  Channel 1 = Alto (36874)  Channel 2 = Tenor (36875)  Channel 3 = Soprano (36876)  Channel 4 = Noise (36877)  Polyphony Mode  Channel 5 = Polyphony Mode (round-robins through voices)  Master Volume is set through Controller #7 (Coarse Volume) on any channel
  • 11. Implementation (Continued)  Note On commands use a lookup table to match MIDI Note# to the closest match for that voice.  Controller #1 (Course Modulation) does a direct “POKE” to the corresponding Voice register based on MIDI Channel.  Note Off, All Notes Off commands on a specific channel are used to silence that voice.  MIDI “Running Status” supported  PAL, NTSC, and VIC-specific lookup tables  Bank Select (Controller #0)
  • 12. Still remaining to do:  MIDI Out only sends one note at a time. Needs multi-press, multi-note capability  Viznut’s waveforms don’t trigger reliably yet  More testing of Polyphony mode
  • 13. Software  6502 Assembler  Cross-compiled using DASM  Code is open-source, MIT License  Available on GitHub: https://github.com/LeifBloomquist/VICMIDI  Developer and User Support Forum: http://www.jammingsignal.com (click FORUMS)
  • 14. Other features  Flashable  MIDI IN, Out, Through support  RS-232 Support (if installed)  UltiMem capable (512kB ROM, 128kB RAM)  UART can be set to any base address in IO2 or IO3  UltiMem can be enabled/disabled  MIDI/RS232 can be enabled/disabled