Political Word Trends

Posted on

The current presidential election cycle has made Facebook insufferable these days. As the various screeds flow across my feed from people who would normally be reasonable friends, I am noticing what I am calling, “political word trends.” Out-of-the-blue people start using the exact same words to describe something with which they have a political beef. I know this is essentially the same thing as talking points (like when every Democratic operative on the planet described Hillary “powering through” her illness), but what I am seeing is just a little more subtle.

I first noticed this when, over the course of a few unrelated discussion threads, libertarianism came up and, in addition to the usual “they hate firemen” arguments, someone would refer to libertarians as “children.” Maybe there was a huge write up in The Nation that used this term? I don’t know. It just seemed odd that it suddenly appeared 3 or 4 times without any prompting. Next, I began to hear the term “ghouls” used over and over to describe pro-gun advocates. Again, maybe John Oliver had a witty diatribe about these “ghouls” but this seemed weirdly coincidental to me. Or maybe I’m just jealous that I am not being invited to all the hip parties. Instead I sulk at home with like a ghoulish child. I will keep my eyes open for more. Stay tuned.

My Fleetwood Mac Cover

Posted on

For the past half-year or so I have been participating in the PRF Monthly Tribute series where various artists and friends cover a different band each month. This month I did a cover of Fleetwood Mac’s “Big Love.” I thought there were not enough references to Zardoz in the Fleetwood Mac oeuvre, so I fixed that.

Apple ][ Assembly Language Programming

Posted on

The past few weeks I have been diving into the world of assembly language programming on the Apple ][ computer. My interest in the topic stems from the recent book release of a compilation of articles on assembly language programming called Assembly Lines: The Complete Book. The articles were written by Roger Wagner and originally published in Softalk magazine back in the early eighties. This edition was edited by Chris Torrence and is available for download and purchase from a number of locations.

Now, I am pretty familiar with Applesoft Basic programming, but I was always in awe of commercially released software on the Apple ][ that ran so fast, had fancy hi-res graphics and used sounds other than the system beep. What was the secret of these mythical programs that required you to type “BRUN” in order to get them to load? The secret was machine language.

This image shows you just how intuitive and user-friendly machine code is. It’s almost like it was written by the Terminator himself (just after he finished cutting out his eyeball with an Xacto knife). Despite the seeming impenetrability of machine code, in the past I made a few attempts to learn it. I would get a few chapters into Apple Machine Language and then the endless diversions into binary math would addle my art-school trained brain. It never really clicked for me.

What I didn’t know is that there was this thing called “assembly language” which is a human-readable method of creating machine code. It still is pretty brutal compared with Basic or JavaScript, but for the first time I think I am starting to understand machine language and, more generally, just how the Apple ][ works. Cryptic hex numbers and even the aforementioned binary math are still a part of assembly, but it uses three letter abbreviations for various functions and allows for comments and labels. The assembler will translate the letters into their numeric machine language equivalents and assemble the source code into a BRUN-able program. Woo-hoo!

The first hundred pages or so of Assembly Lines has been very informative and I have dutifully typed in many of the example programs. At one point I had a pretty nice “ah ha!” moment when I was messing around with creating tones. I created a small program that generated an annoying high pitch noise and decided I would further enhance the interactivity by outputting a stream of numbers to the screen showing the paddle positions. Before I got very far beyond just reading the paddles I noticed that I could use the joystick to change the pitch of the sound. I had no idea why this would change the pitch so I decided to look at the machine code in the built-in paddle routine. To my surprise, I was able to see that it got the paddle value by using a count down loop. The longer the count down, the lower the tone. I couldn’t really say why this was the case, but at least I was starting to be able to decipher that wall of hex values.

Now, back in the late eighties I got my hands on an issue of Compute! magazine. Kids nowadays with their fancy iWatches and download services may not believe this, but in the olden days there would be program listings in computer magazines. Readers could carefully type in the program and, “Voila!”, you had new software to use. This issue contained a listing for a game called Space Dodger, with a separate listing for just about every machine available at the time. Most were written in basic, but the one for Apple ][ was pure machine code. I had no idea what any of it meant, but I dutifully typed every line into my Apple’s monitor. The result was a pretty slick little arcade game:

You moved your ship to avoid the space junk which flew by from right to left at varying speeds. However, playing the game in emulation, I noticed a slight problem: the ship movement was mapped to the wrong joystick axis.

And now we get to my second assembly language “Ah ha!” moment. I now know the memory address where the paddles are read. I just needed to search the code listing for 00 1E FB and it would just be a matter of changing the 00 to 01. I found the values at $706B, made my edit and, magically, the joystick now worked correctly!

I still have no clue as to what the other 99% of the code does, but this was a breakthrough. Assembly language… I think I can do this. In the meantime, download Space Dodger and play it in your favorite emulator.

Replaying Nox, Again

Posted on

I have never bothered to create a top-ten list of my all-time favorite video games. Maybe I should since it seems the only way to get people to read your Web site is to organize everything into numbered lists. In any event, were I ever to compile such a list Nox would be somewhere in the top five for me.

After a recent upgrade to Windows 10 (excellent by the way), I was going through and making sure all my treasured old programs still worked. In the process I booted up my GOG.com version of Nox and noticed it had some issues. After much searching and fruitless forum posting I finally found a workaround. In case you are wondering, you need to install a game mod called “Nox SDL.” You can download the patch here. Once I got the game running, it wasn’t long before I was sucked back in to my fourth play through of the game.

This game is so great. I don’t know about you, but I immediately realized that when I could play with my character stripped down to his briefs:

Nox Underwear

Beating the game would be difficult, but you could play the entire game running around like a crazed streaker if you so chose.

The game was marketed as a role playing game in the style of Diablo but that’s not what it really is. Although there are a lot of standard RPG tropes—leveling up, collecting loot, upgrading spells and abilities—Nox has much more in common arcade-style top-down action games like Guantlet and Smash TV. The game play is fast, exciting and there isn’t much thinking and strategy. If it moves, kill it! As simple as this sounds it is sounds, the game is incredibly fun. There’s just enough exploration and level variety to keep you going. The story is paper thin but it’s filled with humor and the main villain Hecubah is terrifically voice acted.

I even bothered to record a bunch of game play footage to post on YouTube and make tons of money off of the idiot millennials who watch other people play video games:

See, what I mean? It’s just awesome! I really wish someone would take up the mantle and reboot Nox. A few modern games like Torchlight look like it but are still firmly RPG games with horrible inventory management and no twitch game play. Magicka comes close, but I felt the mechanics were too complicated and the game seemed overly concerned with co-op play. For now, the GOG.com version will suffice. As soon as I finished this playthrough as a conjurer I immediately felt the itch to start over again as a fighter or wizard.

Major Overhaul of Planet Pimp Web Site

Posted on

Did you know I maintain an informational resource page dedicated to Planet Pimp Records (the greatest record label ever to exist)? Well, now you do, and today I uploaded a massive update to the site. This is mostly behind the scenes stuff that makes the site easier for me to update, but I have also added some new features including links to external video and audio. There have also been some fancy style tweaks so the site now scales to fit mobile devices.

There are still some quirky buts, but I am working on cleaning everything up and reviewing the site and links. A big thing on my to-do list is getting rid of Flash elements and replacing them with more mobile-friendly HTML5 widgets. As always, if you have anything to add to this vital historical record, please send your contributions to me.

My First Foray into SASS

Posted on

As I mentioned a few posts ago, this site has received a major theme overhaul. Aside from a couple form element styles, this change was mostly structural and behind-the-scenes. The new theme is my first foray into using the SASS CSS preprocessing language. Let me tell you, it was a revelation. SASS allows you to write CSS using a super-clean tabbed coding style and (finally) allows the use variables and expressions in styles. I mean, look at this OCD coder’s dreamscape:

Behold the beauty of SASS!

Gone are curly brackets and semi-colons. Now elements can be nicely nested within each other and there’s lots of neat shorthand to make code more portable.

Now, I am very late to this party and it turns out much of the SASS code you find on the net is written in a more standard CSS syntax (those sass files are saved as .SCSS rather than .SASS). I hope this cleaner, more modern syntax remains supported because I am completely sold on it.

For quite some time I have heard of SASS but have always been hesitant to dig into it because I always assumed that it was some server-side application that would require SSH and Linux and a bunch of crap I don’t care about. I have since realized that this is not the case. SASS files are compiled locally into a single, standard CSS file. Still, the first thing tutorials seem to tell you to do is to go install Ruby and dive into the command prompt. Yeech! Thankfully, smart people out there (“there” equals Nepal in this case) have developed a windows app that will compile and upload everything you need.

Prepros Screengrab

Prepros is a tiny little app that does it all and I highly recommend it if you are developing on Windows. It processes many other languages as well (including Jade and JavaScript) and, regarding SASS, also includes Compass.

Compass is a set of functions and extensions to SASS that makes cross-browser development super easy. A word of warning about Compass: unlike pure SASS it doesn’t work out-of-the-box and requires some research into creating a “config.rb” file. The Zen Drupal theme includes this file and I used that as a base, and I think I understand it now.

In any event, I’m syched about Web development for the first time in a long while and I am glad I made the leap. Also, support Prepros and buy a copy (or two).

Another Site Update

Posted on

Well, recently I’ve been trying to learn how to use SASS for styling Web pages and have kind of fallen in love with it. So here is my first go at it in the form of a new site template. Not much has changed visually, but, trust me, there have been a ton of changes behind the scenes. I will post more about this and the trials of retrofitting a Drupal theme for SASS sometime in the near future. In the meantime, look at the neat comments buttons I made!

Drupal, Pathologic and Corrupted URLs

Posted on

I’ve been having some technincal issues with this site lately. Strange links to content within the site have been appearing at random. I would insert a hyperlink to an archived post and then, days later, I would come back to see that the URL has been rewritten with a random sub-domain prefix. My domain would appear as www.wqw.robertgomez.org or similar.

I am not entirely sure what was going on but I think bots and the Drupal Pathologic module are to blame. Pathologic is a great module that will convert any internal site link into a standardized absolute URL. In my code I would create a link with an href of “node/1098” and Pathologic would convert that href to “http://www.robertgomez.org/blog/2014/03/17/drupal-my-list-essential-modules”. However, I suspect that when various bots crawled my site they used weird sub-domain prefixes in hopes of doing… I don’t know what?! Occasionally, one of these bots must have triggered a cron job, and my links were rewritten with the phony sub-domain. Seems feasible, right? If there is a real reason why this was happening, let me know in the comments.

The bad links could be fixed by opening a node and re-saving them. I used the Resave Nodes module to bulk save everything again. However, by the next morning the bad links had returned. The phony sub-domains were still being crawled. The next step was to use a rewrite rule in my .htaccess file that would force all subdomain traffic to a non “www” prefixed URL of the site. I then re-resaved everything, an so far thing are back to normal. Again, if you know what’s going on, shoot me a comment.

And Why Are You Telling Us This?

Posted on

So, here we are post mid-term Republican take-over of the legislature. As one might expect, my Facebook feed been awash with bitter and angry lefty losers (Although it hasn’t been quite as bad as I expected. I guess the election outcome was not much of a shock). Posts range from the typical “I don’t know anyone who would have voted for these monsters” to expected sour-grapes cries of cheating, etc. Fortunately, there were none of the usual calls to violence and injury as I have seen in the past:

Something came across my feed this morning that had me thinking, and when I start thinking it’s usually a good idea fore me to log off of Facebook and take to my blog where my rants won’t lose me friends (and won’t be read by anybody). A friend of mine linked to an article about the CEO of ULINE and how he was the a big-time contributor to conservative candidates and causes across the state. He is, as the headline put it, “The Koch of conservative politics in Illinois.”

As an aside, What’s with the left and their continual need for boogeymen when advocating for their causes? These days Koch brothers are the anti-christ du jour. Had this article come out ten years ago it would reference Haliburton. Ten years before that, maybe Mark Furhman? I guess there exists a sort of transitive property in politics that makes any problem more dire simply by association. And before you cry partisan foul, I realize that Republicans can do this to… I remember ACORN… but I feel it is much more rampant on the left.

Anyhow, back to the matter at hand. This friend linked the article then proclaimed that, of course, he will no longer will buy anything from ULINE again. Now, I am all for using the pocketbook to express a political position. You think GMOs are bad, by all means buy your organic small-batch artisinal what-nots to your heart’s content. But I don’t quite understand what the end-game is here, especially since he felt fit to announce this to world via social media.

Let’s just say everyone sees his post and decides never to satisfy their cardboard shipping needs at ULINE ever again. ULINE closes shop and all the workers, drivers and office drones there, regardless of their political convictions, are out of a job (something like 2000+ employees). I don’t think that’s the result anyone wants. Ok, if that’s not what we’re after, let’s say the CEO is starting to feel the economic pressure of the boycott. Then what’s he supposed to do, abandon his political convictions in favor of yours? That seems rather narcissistic. Why should everyone agree with you? As the old cliche goes, do you think you have a monopoly on the truth? Here in Chicago, if I only patronized the businesses of people I agreed with I would go hungry real fast (grocers are a secret Marxist cabal from what I hear).

I think what really burns me here is that the boycott is being called not because of the way the company runs its business, rather it’s to punish one man over his political beliefs, and, in the process, punish tons of people who are just living their lives. Can’t we just accept that people have different views? Don’t be a fool, buy from the company that offers you the best product at the best price and use whatever money you saved to fund your pet political cause and don’t let petty politics run your life.