{"id":39844,"date":"2020-05-12T19:10:00","date_gmt":"2020-05-12T23:10:00","guid":{"rendered":"http:\/\/technology-hates-you.com\/lm3m\/?p=39844"},"modified":"2020-05-18T14:26:06","modified_gmt":"2020-05-18T18:26:06","slug":"cthugha-lives","status":"publish","type":"post","link":"https:\/\/technology-hates-you.com\/lm3m\/39844","title":{"rendered":"Cthugha lives!"},"content":{"rendered":"\n<p>I have been a touch distracted and not able to write much since the beginning of 2020 and it has only continued into the Coronavirus-lockdown-hell.<\/p>\n\n\n\n<p>In an attempt to recover some sort of focus, I have decided to revive an old software project:<\/p>\n\n\n\n<p class=\"has-text-align-center has-huge-font-size\"><strong><span class=\"has-inline-color has-vivid-green-cyan-color\">CTHUGHA<\/span><\/strong><\/p>\n\n\n\n<p>For those of you who don&#8217;t have a good memory or a love of early 90s visualizers (aka trip toys), CTHUGHA was one of the first and the best. Starting from a win32 console app the code base was massaged into a Mac version, at least two Linux versions, a Java version, and WinAmp plugin, along with another couple of Windows based versions.<\/p>\n\n\n\n<p>So, what the heck is it? <code>An oscilloscope on acid<\/code> is the description in the code and the websites. It works as good as most any other. It supported taking audio (from an microphone, cd, files) and visualizing it. The verity of visualization, both in color and style, was pretty impressive even by today&#8217;s standards, you could watch it for hours and not see the exact same pattern twice. It was used in dorm rooms and in clubs, as something to show on screens during parties.<\/p>\n\n\n\n<p>It was never easy to setup, there were multiple packages that had to be downloaded and put in the right place, and the documentation was about as good as you could expect, but if you got it running, it was worth it.<\/p>\n\n\n\n<p>Somewhere, between 1994 and today, I started squirreling away any version of the code base I could find. I would poke at it and try to get it to compile, not really worrying about it running.<\/p>\n\n\n\n<p>The code base was from the early days of c++ and mostly relies on pointer and array math that makes an unbounded <code>strcpy<\/code> on user input seem like a good idea. What I am saying is that the code base was a mess. There were some systemic issues, such as assuming that <code>sizeof(int)<\/code> was always going to equal <code>sizeof(long)<\/code>, basically stuffing twice as much data into a space too small and then jumping off into the wrong memory location and writing more there.<\/p>\n\n\n\n<p>But, there was an X11 version, and one thing that is pretty nice about a GUI environment that has not changed since the mid-70s (I kid, but not by much) is that it still works today. So, that was the first version I focused on getting running.  <\/p>\n\n\n\n<p>And here are the results:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1219\" height=\"965\" data-attachment-id=\"39846\" data-permalink=\"https:\/\/technology-hates-you.com\/lm3m\/39844\/screen-shot-2020-05-12-at-2-03-00-pm\" data-orig-file=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.03.00-PM.png?fit=1219%2C965&amp;ssl=1\" data-orig-size=\"1219,965\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screen-Shot-2020-05-12-at-2.03.00-PM\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.03.00-PM.png?fit=1024%2C811&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.03.00-PM.png?fit=480%2C380\" alt=\"\" class=\"wp-image-39846\" srcset=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.03.00-PM.png?w=1219&amp;ssl=1 1219w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.03.00-PM.png?resize=300%2C237&amp;ssl=1 300w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.03.00-PM.png?resize=1024%2C811&amp;ssl=1 1024w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.03.00-PM.png?resize=768%2C608&amp;ssl=1 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><figcaption>random screen cap from the X11 CTHUGHA<\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1239\" height=\"992\" data-attachment-id=\"39847\" data-permalink=\"https:\/\/technology-hates-you.com\/lm3m\/39844\/screen-shot-2020-05-12-at-2-04-50-pm\" data-orig-file=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?fit=1239%2C992&amp;ssl=1\" data-orig-size=\"1239,992\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screen-Shot-2020-05-12-at-2.04.50-PM\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?fit=1024%2C820&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?fit=480%2C384\" alt=\"\" class=\"wp-image-39847\" srcset=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?w=1239&amp;ssl=1 1239w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?resize=300%2C240&amp;ssl=1 300w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?resize=1024%2C820&amp;ssl=1 1024w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?resize=768%2C615&amp;ssl=1 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><figcaption>Another screen cap<\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1203\" height=\"969\" data-attachment-id=\"39848\" data-permalink=\"https:\/\/technology-hates-you.com\/lm3m\/39844\/screen-shot-2020-05-12-at-2-05-22-pm\" data-orig-file=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.05.22-PM.png?fit=1203%2C969&amp;ssl=1\" data-orig-size=\"1203,969\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screen-Shot-2020-05-12-at-2.05.22-PM\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.05.22-PM.png?fit=1024%2C825&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.05.22-PM.png?fit=480%2C387\" alt=\"\" class=\"wp-image-39848\" srcset=\"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.05.22-PM.png?w=1203&amp;ssl=1 1203w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.05.22-PM.png?resize=300%2C242&amp;ssl=1 300w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.05.22-PM.png?resize=1024%2C825&amp;ssl=1 1024w, https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.05.22-PM.png?resize=768%2C619&amp;ssl=1 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><figcaption>yes, yet another screen cap<\/figcaption><\/figure><\/div>\n\n\n\n<p>Next up: CTHUGHA in 3-D<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I have been a touch distracted and not able to write much since the beginning of 2020 and it has only continued into the Coronavirus-lockdown-hell. In an attempt to recover some sort of focus, I have decided to revive an old software project: CTHUGHA For those of you who don&#8217;t have a good memory or [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":39847,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[571],"tags":[],"class_list":["post-39844","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cthugha-journal"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-12-at-2.04.50-PM.png?fit=1239%2C992&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p1AdCf-amE","jetpack-related-posts":[{"id":44063,"url":"https:\/\/technology-hates-you.com\/lm3m\/44063","url_meta":{"origin":39844,"position":0},"title":"a public commonplace book","author":"lm3m","date":"2024.02.26 at 07:35 AM","format":false,"excerpt":"I have always loved the idea of commonplace books, a writers sketch book, more or less. Digital versions in things like tickler files have tempted me down the path into many failed or abandoned organizational systems. I have tried to keep physical ones, digital ones, even have a magical one\u2026","rel":"","context":"In &quot;blog&quot;","block_context":{"text":"blog","link":"https:\/\/technology-hates-you.com\/lm3m\/category\/blog"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1188,"url":"https:\/\/technology-hates-you.com\/lm3m\/1188","url_meta":{"origin":39844,"position":1},"title":"Thinking about process, again","author":"lm3m","date":"2013.02.1 at 07:00 PM","format":false,"excerpt":"Thinking a bit about my writing process today. I think a bit about process everyday, I try not to, since it is a black hole of\u00a0continuous self-reflection. I know there are lives to be made out of helping people with process and I don't begrudge them that. But, that is\u2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"IMG_2462","src":"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2013\/02\/IMG_2462-300x300.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":39851,"url":"https:\/\/technology-hates-you.com\/lm3m\/39851","url_meta":{"origin":39844,"position":2},"title":"CTHUGHA and OpenGL","author":"lm3m","date":"2023.09.22 at 08:46 AM","format":false,"excerpt":"So, to recap, I decided to revive an old piece of software, because corona-virus induced sheltering in place had left me a little bonkers. Last update I talked about how I got it at least limping along. Before I went too far, I set out some goals: Cross-platform - has\u2026","rel":"","context":"In &quot;blog&quot;","block_context":{"text":"blog","link":"https:\/\/technology-hates-you.com\/lm3m\/category\/blog"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2020\/05\/Screen-Shot-2020-05-21-at-3.43.28-PM-e1696192242105.png?fit=503%2C375&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1253,"url":"https:\/\/technology-hates-you.com\/lm3m\/1253","url_meta":{"origin":39844,"position":3},"title":"Fixed My Comic Collection Webpage","author":"lm3m","date":"2013.02.23 at 01:47 PM","format":false,"excerpt":"A month back I noticed that upgrades on the server that hosted my comic book collection webpage\u00a0had made some upgrades that broke \u00a0my webpage. (What you don't have a webpage for your comic book collection? Why not?) My comic book webpage was an experiment in learning ruby, rails, modern web\u2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"IMG_2518","src":"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2013\/02\/IMG_2518-300x224.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":336,"url":"https:\/\/technology-hates-you.com\/lm3m\/336","url_meta":{"origin":39844,"position":4},"title":"finding infinity","author":"lm3m","date":"2011.11.14 at 06:08 PM","format":false,"excerpt":"Your science makes my story uninteresting. Me in conversation with myself while reading some articles --- Working at home may drive me batty, but on days where I can go out and get a fresh mango and chop it up in my own kitchen it is pretty cool. And, since\u2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"IMG_0971","src":"https:\/\/i0.wp.com\/technology-hates-you.com\/lm3m\/wp-content\/uploads\/2011\/11\/IMG_0971_thumb.jpg?resize=350%2C200","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/posts\/39844","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/comments?post=39844"}],"version-history":[{"count":2,"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/posts\/39844\/revisions"}],"predecessor-version":[{"id":39849,"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/posts\/39844\/revisions\/39849"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/media\/39847"}],"wp:attachment":[{"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/media?parent=39844"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/categories?post=39844"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/technology-hates-you.com\/lm3m\/wp-json\/wp\/v2\/tags?post=39844"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}