A technical support community for Apple Logic Pro users.

 
Neil Parfitt
Topic Author
Posts: 133
Joined: Fri Sep 15, 2006 1:07 am
Location: Toronto
Contact:

Boring Logic Environment Stuff :)

Thu Dec 03, 2015 6:07 pm

Sometimes I’m bored while watching bad Netflix B movies... and this stuff happens...

In the Logic environment you can use transformer maps to store and manipulate incoming MIDI data in real-time.. but you’re limited to 128 locations per map. So it got me thinking of ways to work around it. I was reading about general computer architecture and people making simple computers out of relays when it struck me that I could almost model core memory out of MIDI objects! So after reading a little more research how RAM operates in general - it seamed feasible that something similar could be built.

Here’s my 16 x 16 “RAM” matrix. X and Y coords can be dialed in from a slider and you can then push a data value to the exact position with a value of 0 to 127. So now, you have 256 addressable storage areas! Because MIDI only moves in one direction, there’s a secondary MIDI event trigger that pushes that selected position data to the output bus.

Image

Then I thought - why not take this into 3 dimensions with a X, Y and Z addressing like the old memory cubes! So, by rigging up a 16ch switch acting as Z axis, you can now read and write on up to 16 layers of X and Y memory positions. It looks like a mess - but it’s the same thing sandwiched on top of itself x 16. Blue cables are the Z addressing.

So there you have it, From an initial map limit of saving 128 values.. to now being able to store and recall up to 4096 values in any order!! Nuts!!

Currently each one of these ‘Ram’ addresses is a MIDI fader storing a value.

Image

Then - I took it a step beyond. Instead of using a MIDI fader to store a value, what if transformer map was used instead? Then things get really interesting as each ‘Ram’ address can have a further 128 internal positions that you can store and recall a 0-127 value!

Now data storage jumps from 4096 to 32768 locations PER Z slice. So if each 16 x 16 x 256 slice was arrayed in a stack of 16 (Z) you have 524288 memory locations! That’s a ton of addressable information! Maybe I can feed it punch card style programming and make space invaders - in Logic Audio. Here's a single Z slice - each one of these can be fully packed into a macro.

Image

Below are some examples of fully working modules:

CLOCK: This is just a general sequential clock that Advances each additional variable on rollover - so perfect for skimming through all those memory addresses quickly. It flip-flops between a Switch set and data push clock. This way, there's no chance of timing errors as Logic has a chance to set all the switches correctly before read/writing information.

Image

MEMORY ACCESS: This controls which MAP/X/Y/Z position in the memory is being read or written to.
Image

TEXT PROGRAMMER: By defining some memory values that equal i.e.: Display Text, the data in memory can be used to save text information. Suitable for a display. Using this simple programmer is the equivalent of programming using a keypad vs. manual drawing map values within a transformer (like punch cards! Ewe!)
Image

DISPLAY DRIVER: This is an example of a subroutine. If a certain memory value is read (in my case, I defined value 80 as TEXT) the memory data further read will be redirected to this display driver. It basically decodes the map data and enters it as text on that little 3 row display! I've defined numbers 0-9, a -z, A - Z and 'blank' as options and these can be freely written to any row/position. As soon as the display driver reads 127, that's my universal value for "EXIT' subroutine and read memory data is directed back on to the main midi pathway.
Image

BCD COUNTER: This will read a clock pulse and count.
Image

As the stored data can represent anything that can further control anything, I did some further experiments and created code-equivelent subroutine control, if/then loops, switch control, text decoders, counters and so on. Take super small chunks of these memory systems can be easily turned into small memory registers, ROM for creating programs and so on.

Honestly, I don't know the point of any of this stuff - but it was a good brain buster trying to figure out. So that's why I tried. The fact that it's running within Logic Pro is kinda neat.
Neil Parfitt
Cranky Logic user.
http://www.neilparfitt.com
- - -
Twin MacPro 12core 3.4Ghz / 96GRam/ RME MADI / Protools HDX and additional money draining suckage.
 
User avatar
stardustmedia
Posts: 1579
Joined: Tue Sep 09, 2014 3:48 am
Location: Switzerland
Contact:

Re: Boring Logic Environment Stuff :)

Fri Dec 04, 2015 2:26 am

Neil, you're crazy :mrgreen:

I haven't understood anything, but it sounds awesome what you did.
Logic 10.3.3 & MacOS 10.11.6
Home: MacPro Intel Quad-Core 2.26 GHz - 16GB - Grace Design m920 USB
Studio: iMac Intel i7 2.6GHz - 16GB - Apogee Symphony, AD16X & DA16X thru Thunderbolt - Unitor8 & AMT8

stardustmedia - high end analog music services
cheerio, murat
 
User avatar
lostmemories
Posts: 101
Joined: Fri Jul 10, 2009 3:07 pm
Contact:

Re: Boring Logic Environment Stuff :)

Fri Dec 04, 2015 5:17 am

Wow, I love it! You are genius Neil! Could you imagine if the environment was still developed and connected to audio manipulation inside Logic ;o)
MacBook Pro 16, macOS 10.15.x Catalina, Logic 10.5.x, Firewire Apogee Ensemble
-----
Music: http://music.laurentcolson.com
Development: http://dev.laurentcolson.com
 
Neil Parfitt
Topic Author
Posts: 133
Joined: Fri Sep 15, 2006 1:07 am
Location: Toronto
Contact:

Re: Boring Logic Environment Stuff :)

Fri Dec 04, 2015 10:48 pm

Totally - i.e.: if it had MIDI controllable modules like Plogue Bidule or Reaktor... ah well...
Neil Parfitt
Cranky Logic user.
http://www.neilparfitt.com
- - -
Twin MacPro 12core 3.4Ghz / 96GRam/ RME MADI / Protools HDX and additional money draining suckage.
 
User avatar
Eric Cardenas
Moderator
Posts: 22735
Joined: Sat May 07, 2005 1:47 pm
Location: Uppsala, Sweden

Re: Boring Logic Environment Stuff :)

Sat Dec 05, 2015 12:46 am

Very cool stuff Neil!
Thank you so much for sharing.

PS. How many Netflix movies did it take? ;)
Eric Bradley Cardenas
EC Making Sound
Mac mini 2.6 GHz 16GB RAM Areca⚡RAID | MacBook Pro 2.3 GHz 16GB RAM | Os 10.14.5
Logic Pro 10.4.5 | RME Fireface UFX | Adam A7 + Sub8 | Spectrasonics | Softube
 
Neil Parfitt
Topic Author
Posts: 133
Joined: Fri Sep 15, 2006 1:07 am
Location: Toronto
Contact:

Re: Boring Logic Environment Stuff :)

Sat Dec 05, 2015 12:55 am

Thanks!

Two! But I'll never fess up to what they were. One was a 90's romcom and the other was a lame thriller. Muahah!
Neil Parfitt
Cranky Logic user.
http://www.neilparfitt.com
- - -
Twin MacPro 12core 3.4Ghz / 96GRam/ RME MADI / Protools HDX and additional money draining suckage.
 
Neil Parfitt
Topic Author
Posts: 133
Joined: Fri Sep 15, 2006 1:07 am
Location: Toronto
Contact:

Re: Boring Logic Environment Stuff :)

Sat Dec 05, 2015 12:57 am

Actually - more like 6 in the end. Once I figure out the first Working memory - it was easy to convert it to the other variations.
Neil Parfitt
Cranky Logic user.
http://www.neilparfitt.com
- - -
Twin MacPro 12core 3.4Ghz / 96GRam/ RME MADI / Protools HDX and additional money draining suckage.
 
User avatar
SRF_Audio
Posts: 222
Joined: Sat Jan 09, 2016 6:05 am
Location: Obernheim-Kirchenarnbach, Germany
Contact:

Re: Boring Logic Environment Stuff :)

Sun Jan 10, 2016 3:06 am

I am so impressed, and so lost.

I'm doing well when I get my If/then statements correct in Scripts. ;-)
http://www.srfaudio.com
• Logic Pro X 10.4.2 / Mainstage 3.4.0
• OS X 10.13.6
• iMac 27" 3.1Ghz, i5, 32GB RAM + Macbook Pro 13" 2.4 Ghz Core 2 Duo, 16GB RAM
• RME 802
• NI Komplete Ultimate, EW CCC2, XLN Audio Addictive Drums/Keys, Spectrasonics, IZotope Music Production Bundle/RX4/Stutter Edit
• Axiom Pro 61, Roland TD-9, Korg nano series
 
User avatar
David Nahmani
Site Admin
Posts: 78946
Joined: Sat Mar 05, 2005 12:16 am
Contact:

Re: Boring Logic Environment Stuff :)

Mon Jan 11, 2016 10:39 am

WoW Neil. that BCD counter is so cool. :D
David Nahmani
• My Logic Pro X 10.4 book (Apple Pro Training Series)
Contact me for Private Lessons
Logic Pro X 10.5.1
MacBook Air 1.3 GHz i5 — MacOS X 10.15.1 — 4 GB RAM
iMac 3.2 GHz Quad Core i5 — MacOS X 10.15.4 — 8 GB RAM
 
parkcomm
Posts: 17
Joined: Sun Oct 19, 2008 6:18 pm

Re: Boring Logic Environment Stuff :)

Sat Apr 02, 2016 5:20 pm

Honestly, I don't know the point of any of this stuff - but it was a good brain buster trying to figure out. So that's why I tried. The fact that it's running within Logic Pro is kinda neat.


You got there before me!

So you've built a RAM space, addressing scheme and I/O controls. I guess whip up an ALU some backing store and a programming language and bingo a CPU built inside Logic!
 
Mikeitup
Posts: 7
Joined: Sat Oct 11, 2014 8:16 pm

Re: Boring Logic Environment Stuff :)

Sun Apr 03, 2016 8:41 am

That hurt my brain....
Logic Pro X 10.2.2
2008 Mac Pro 2.8 x 2. 8g ram 2 x 500G 7200 Drives
WD my book FW 2tb
OS X 10.9.5
2010 MacBook Pro 2.4 4g ram 480G SSD
2012 iPad mini
Avid Digi 003 rack plus
M-Audio Keystation pro 88
 
User avatar
darudevil
Posts: 444
Joined: Thu Jan 05, 2006 10:49 am
Location: Finland
Contact:

Re: Boring Logic Environment Stuff :)

Mon Apr 04, 2016 2:29 am

I took my hat of for you Neil and all this flew over the hat as well... !
Ville Virtanen / Darude
Producer / Artist / DJ
Spotify - YouTube

LP 10.4.5, OSX 10.14.5, 2018 MBP 15" 2.9GHz i9, 32Gb, MOTU 1248
 
User avatar
SRF_Audio
Posts: 222
Joined: Sat Jan 09, 2016 6:05 am
Location: Obernheim-Kirchenarnbach, Germany
Contact:

Re: Boring Logic Environment Stuff :)

Mon Oct 23, 2017 12:09 am

Sorry, I'm bumping this thread, just because I'm still so damn impressed at this. 
http://www.srfaudio.com
• Logic Pro X 10.4.2 / Mainstage 3.4.0
• OS X 10.13.6
• iMac 27" 3.1Ghz, i5, 32GB RAM + Macbook Pro 13" 2.4 Ghz Core 2 Duo, 16GB RAM
• RME 802
• NI Komplete Ultimate, EW CCC2, XLN Audio Addictive Drums/Keys, Spectrasonics, IZotope Music Production Bundle/RX4/Stutter Edit
• Axiom Pro 61, Roland TD-9, Korg nano series
 
User avatar
Dewdman42
Posts: 2695
Joined: Tue Sep 09, 2014 3:01 pm
Location: Park City, UT

Re: Boring Logic Environment Stuff :)

Mon Oct 23, 2017 7:06 am

Wow impressive!!
5,1 MacPro 3.46ghz x 12 128gb ram, OSX 10.14, Logic Pro 10.5, Mainstage3, Cubase10.5, StudioOne4, Reaper, DP10, VEP7, VSL, too many plugins to list
 
User avatar
carlcaulkett
Posts: 128
Joined: Sat May 13, 2017 2:50 am

Re: Boring Logic Environment Stuff :)

Tue Aug 07, 2018 1:35 am

Screen Shot 2018-08-07 at 09.34.08.png
Screen Shot 2018-08-07 at 09.34.08.png (275.93 KiB) Viewed 5586 times
Logic 10.5
macOS 10.14.6 Mojave (thanks to dosdude1.com/mojave)
Apple Mac Pro (early 2009) - 4,1 -> 5,1 - 32GB RAM - 2.66 GHz Quad-Core Intel Xeon
Novation Impulse 49
Novation Launchpad X
Scarlett 2i2 Audio Interface