22 Apr 2011 @ 1:29 AM 

With such a vague title, I could talk about anything; some may assume that I might actually, you know, talk about something programming related. Well, not really, sorry.

Game Controllers. Conventionally PC Gaming has been confined to usually use a keyboard and Mouse combination for most things; or just the keyboard. Most games do, in fact, support gamepads, but oftentimes the game has so many god damned functions that you just don’t have enough buttons to bind.

However, With emulation programs there is a different problem; the PC  gamepads often have widely differing configurations.

One of the earliest PC compatible gamepads was the Gravis gamepad, shown in figure 1-1.

Fig 1-1: Gravis Gamepad

Fig 1-1:The Gravis Gamepad

When I was first given this, three things lept out at me: one, was the fact that there was some stupid stick screwed into what can at best be called the D-Pad, and the second was that the button colours were similar to the Japanese SNES controller (but reversed horizontally for some reason, maybe the manager was all “copy the colours for the SNES” and the person who did it was dyslexic and did it backwards?):

Figure 1-2: Super Famicom Controller

The third thing that lept out was that there was no “mode” type of button; such as start or select. There were two switches, one of them literally swapped the functions of the D-pad-rocker-thing and the four buttons, so the buttons became the directional controls and the D-pad became the buttons. What the fuck use that is to anybody I don’t know. the other switch was even more exciting because it disable two of the gamepad buttons. I forget which ones, I think green and blue. The idea behind that was because the controller was a game-port controller, and therefore if you had more then one gamepad plugged in they would end up stomping on each other. By changing the mode switch things you could make it so you had two gamepads, albiet with only two functioning buttons each.

For far too long I had to suffer with this miserable thing. Now, to be fair, it did work for the most part, but it had this uncanny ability to not have enough fucking buttons. I mean, four buttons? wtf? it worked fine for NES games, since I just assigned the green and blue buttons to start and select respectively, but everything else suffered from not enough buttons.

NES

Fig 2-1: Nintendo Entertainment System- "Toaster" edition.

Ahh, the “regular Nintendo” or “Normal Nintendo” as I used to call it, in order to prevent it being confused with the Super Nintendo, I suppose. Anyway, this was the first console I ever played in my entire life, at least, to my recollection. Our good friends in the U.K were not quite so blessed; Nintendo for some reason originally decided to get mattel to distribute the NES, it was ridiculously overpriced, and sucked ass, because the chances that a given game would work were about the same chance that a grizzly bear covered in marmalade will eat jelly beans. So Nintendo released their own, so in the UK you get to deal with whether you have the mattel edition or the Nintendo Edition, the Mattel edition doesn’t work with some games and the standard Nintendo console doesn’t work with some of the mattel-only games. Thankfully the mattel only games suck ass anyway. Over here, there were two “releases” of the console- the original Console, shown in Fig 2-1. Basically, a big boxy thing, with a completely unnecessary mechanism to insert a game. I mean, what the hell nintendo, you have to insert the game into a horizontal slot and then push the smegging thing down? Warranted, it was sort of a necessary gimmick so they could call it an “entertainment system” rather then a “game system” to avoid being caught in the game console industry recession at the time. The downside to that decision is that it’s damn near impossible to find a original NES that still works, unless the Pin assembly had been replaced.- every time you insert and push down a game, you bend the contact pins ever so slightly, and eventually they just don’t contact at all; then you just push it down even more, so now they get bent even further away. The only sure-fire way to fix that is, NOT the blowing on the games bit that everybody did. That doesn’t do fuck all, people. stop it. It doesn’t help to blow on your games contacts. Idiots. Anyway, the only sure-fire way to fix it was to actually open it up and replace the 68-pin connector itself, but then you’re just back to a pristine connector and it still get’s damaged and bent over time. It’s just awful. However, there is light at the end of the tunnel- I’m not sure why, but this one is far more moddable then the NES2, which I will cover in a moment. Don’t believe me? Check this out!

Fig 2-2:The ColecoVision controller

In any case, the controller itself is what I should be focusing on. As can be seen above, it’s really quite basic; this is nice, given that some of the slightly earlier consoles had attempted to simply one-up each other by adding a shitload of useless buttons. For example- the colecovision controller (Fig 2-2).It is basically a shitload of switches and dials. What the hell is that supposed to be. Looks more like… well, I don’t know, like a joystick and a telephone got together and that was their mutant offspring. Anyway, pretty well any PC compatible gamepad will work comfortably to emulate an NES controller (on a computer). Of course one concern is that the D-pads/POV hats on many controllers suck total ass. Even the gamecube controller fucks it up by giving you this tiny thing that is too small to use comfortably and in an odd position. Oh well, I make do. Almost any controller will have enough button to go around, so you can do all sorts of goofy things like assign controller buttons to save/load save states or turbo fire and all that.

The NES had a second release sometime later in it’s life- the NES2, shown in Figure 2-3.

Fig 2-3: NES2, the "Top-loader" Edition

This re-release addressed most of the important concerns of the first one- they completely removed the Lockout chip, which means that some common problems such as the “blinking red light of death” (which is a term I just invented, so copyright and all that  I suppose) as well as allowing the playing of import games; they also removed the composite video output leaving only the RF switch/cable input thing for going to the TV. As can be seen from the image- the games are loaded differently as well; since at it’s rerelease the video game industry had been revived, there was no need for gimmicky sidestepping of game console labels, so they just had the game inserted right into the top, much like the SNES (which I might add was actually released before this redesign). Since there was no longer a bunch of pins being bent during game removal and insertion, nor nearly as many mechanical parts, this meant that the 68-pin connector no longer succumbed to the same problems whereby contact was lost from excessive insertions/removals. Most people call this the NES top-loader. As for the new controller, well, I have to be honest.

I hate it. I actually like the original better. The thing is, mostly the angle they added between the buttons. Normally I play so that the joint of my thumb rests on the A button, and the pad of my thumb controls B. but with this I have to go into some contorted painful position to do that. It’s like trying to play Jenga upside down. I do somewhat like the “dogbone” shape, if only for it’s novelty and the fact that it no longer has sharp painful edges. Also, this console is about a bajillion times harder to get a hold of, unless you want to spend 100 or so dollars on it on ebay (or get the console only for 20 or so dollars, which isn’t so bad, if you have a SNES or N64 with a RF-modulator, since you can use your existing equipment with it). It does work a lot better then the original though. Some NES games broke new ground by introducing the foreign concept of “saving” your game data. Zelda to my understanding being the most common game to have this feature; Final Fantasy is another. The idea is that it sames data to a chip in the cartridge, and a small battery will make sure that memory stays there. Problem is of course that batteries die; and with multi-hour quest games like Dragon Warrior or Zelda or Final Fantasy, the prospect of going through the entire game in one go is something to balk at. These batteries can be easily replaced, but usually need some familiarity with soldering.

So, for NES emulation- pretty much any gamepad will do. for any Nintendo or Super Nintendo Emulation, the D-pad needs to be a fairly foremost concern. for NES, you can use a keyboard without too many problems though.

SMS(Sega Master System)

Fig 3-1: The Sega Master System

I noted earlier that in the UK and Europe, the Original Nintendo console didn’t really get much attention. This was mostly due to bad marketing decisions on the part of Nintendo; or at least of the U.K/Europe division of Nintendo. When Sega released the SMS (which was more officially referred to as the Sega “Power Base” with only the bundle being called the “Master System”, but the name stuck), the receptions were reversed- in Europe and the U.K it was a big hit, but in North America it was regarded more in a “Nintendo did it” fashion; that is, it was several years after the Nintendo was released, and it was hard to justify having a Master System rather then a Nintendo. It was, technologically, somewhat better then the Nintendo; but having a couple extra years, that wouldn’t be that surprising. Additionally, the power of the processing of a console is wholly irrelevant, in my opinion; it is how that power is used that changes the market. Wether a certain console uses a 16-bit or 32-bit processor doesn’t matter if every game released for the 32-bit system uses it in some stupid 16-bit mode or if all it’s games suck to begin with. One of the nice things about Sega consoles- at least the master system and the Megadrive/Genesis, is the “compatibility” factor. The connector of the Master System and Megadrive/Genesis controllers were a “standard” (if there is any such thing in the console world) format, in that you could often plug in Master System and genesis controllers into Atari 2600 and 7800 machines and use them; they were compatible both electrically and mechanically. The SNES controllers were electrically compatible with NES controllers but not mechanically. Which is actually a tad strange (why rearrange the controller connection?). Anyway, the Master System was unique in that, from what my 10 minute research tells me, it came wit ha pair of 3-d glasses- and not those cheap shitty red/blue glasses, but real 3-d glasses, and even had a special port for them. Although I feel that seems more like a gimmick then anything, it’s still very cool. It could play “card” based games (which were like the standard SMS games… only shit) as well as the more familiar cartridge based format. The controllers were similar to the NES controllers, except that they lacked a start and select button. Personally I think the directional pad is a bit strange as well; although it looks pretty similar to the one on my Dual Action Pro, which in and of itself is concerning because relatively the D-pad on the Dual Action sucks, but  I will get to that later. Oddly enough the console placed the pause button on the console, which is sort of weird. That would be like having the remote control of a TV provide adjustments for the channel but not the volume, or requiring you to shake a dwarf underneath a palm tree to get to channel 12; and the end results are the same, you end up with a concussive dwarf. It was of course workable, since the larger portion of those playing the game were not mobility challenged seniors suffering from rheumatoid arthritis, but rather younger kid, who aside from the occasional make a wish foundation candidate are generally quite active.

SNES

fig 4-1: SNES, North American Original Release

the SNES, the first console I actually owned. In fact, I quite recall being disappointed at getting a Super Nintendo rather then a “Normal” nintendo, which was a bit quirky. I don’t recall even knowing about the SNES at the time, although I can remember that my uncle had rented it at some point and me and my cousin had tried to play Super Mario World by using only the A and Y buttons for some stupid reason. Clearly all the other buttons were ancillary. For the longest time I only owned Super Mario World, and I don’t even want to GUESS at how many god damned times I’ve gotten 96 star on that game. I played it to such an extent that the B button on my controller quite literally broke … thankfully by that time I had expanded my library to a full three games, Mario World, Mario Paint, and Super Mario All-Stars, and SMAS worked with the A button so I had to make do for a bit like that. I eventually expanded to SMW,Mario Paint, All-stars, Mario Kart, and the now rare Tetris and Doctor mario, which goes for a good 80$ or so on ebay sometimes, which is a good profit since it was like 19 dollars when I bought it. but Alas I no longer have my original SNES or games, I have empty shell replacements, none of whom were with me for my early victories over that asshole Iggy Koopa. Oh well, doesn’t really matter.

Anyway, the SNES had about a bajillion different designs- I’ll focus on the North American releases, since those are the ones I’m most familiar with. First, we had the SNS-001 model, shown in Fig 4-1

Opinions are rather varied on this one. some wonder “why purple?” why not use the standard nintendo red? Of course, the reason is that in North America there was no “Nintendo red” in a sense that the original Nintendo was Black and light and dark grey; sure, the box art features the red Nintendo Logo and the controller A and B buttons were red, but that hardly makes it “standard” color. Also, it’s important to note that in a way the Super Nintendo/Famicom logo was different in various locales; in North America it looked something Fig 4-2; compare that to Fig 4-3, the Super Famicom logo used in Japan and Europe.

Fig 4-3: Super Famicom Logo

fig 4-2: SNES North American Logo

They both follow with the “four mysterious weird ovals” theme, but the Super Famicom version is more colourful, and looks like a blue and a red pac-man looking in awe at the bowl of two toilets in need of being flushed. Whereas the North American logo (Fig 4-2) can be represented with as few as two colours, and I find it difficult to make toilet based jokes against it, except perhaps that it looks somewhat like an arrangement of toilet seats you might find in a hardware store. What makes this even more interesting is that the Super Famicom logo was in fact used in the pack-in game, Super Mario world, in the secret Special world. When I first discovered that world I thought it was like a rainbow castle or some shit, turns out it’s some purely decorative and pointless logo they put at the top that might have made sense if I had ever seen it on any SNES merchandise or packaging. Also the North American version has that weird swish thing at the upper right, like the person mastering the original lithographic slab got frustrated and just smacked his chisel across it. I like to imagine it ends in the nike logo on the left.

Anyways, on to the controllers, which was sort of the point of this post; anyway, the controllers are a rather nice improvement IMO over either NES controller;  in fact the second NES controller is “inspired” by this one, at least somewhat. it has L and R buttons on the top left and top Right respectively, a well-designed and very usable directional-pad, Select and Start buttons have a rather “mushy” feel, but any game that has you jamming those constantly is clearly rather badly designed, and I think the NES had the same setup (sort of mushy start/select buttons seem to be something that are not uncommon). The four “action” buttons, or whatever the hell you want to call them, are now the standard layout for most controllers, at least in part; B at the bottom, Y to the left, X at the Top, and A to the right. Generally, games that have you jump use B for jump, and Y for acceleration/running; most racing games use B for gas, and Y for brake. In fact, any game that defied this strangely intuitive feel was not very well regarded. I’d compare this to the Genesis controller, but I can’t really say I’ve had much experience with the Genesis at all; aside from emulation, but I certainly don’t have a genesis controller. However, when you speak of the genesis controller it’s important to note that the Genesis controller seems to use some sort of oddly universal protocol (as I noted previously); to the point where you can quite literally plug a Genesis controller into any number of Atari Consoles and the knock-offs and it works perfectly; the SNES controller can be plugged into a NES, but you need to adapt the pins to fit the differently shaped plug; I believe the A Button on the NES controller is the equivalent of the B button on the SNES and the B button is the equivalent of the Y button on the SNES, but if you want to use an NES controller on an SNES (or are forced to by some sick sadistic super-villian) you’re shit out of luck if you need L, R, X, or Y. on account of the NES not having those buttons.

This brings me to another point- well, not really, but I have a habit of placing non-sequitur points completely unrelated to the current train of thought and I thought I’d make it seem somewhat related, what with the use of a transitory introduction-  I’ve all to often heard people call game controllers “paddles”. Whaaa? who the hell started this? it doesn’t even make sense. Even the original PONG, which had paddles, didn’t call the controllers “Paddles” they had the names “Paddle 1″ and “paddle 2″ to tell you what the controlled, not the name of the damn device. That would be like calling your steering wheel a car. Such synecdoche is pointless, especially when you realize that we aren’t even controlling paddles anymore, so it’s a fucking stupid name. they are called CONTROLLERS. get that through your head people, please? you don’t call the keyboard “letters” or the numberpad “arithmetic” on a keyboard, so stop calling controllers paddles! It’s like people who call Television remote controls “converters” what the fuck? that doesn’t even make any sense. What does it convert? other then the somewhat technical fact that it converts the press of a button into a radio signal, it hardly tells you it’s purpose, may as well call it a damned paddle.

Sega Genesis

Fig 5-1:A Family of Genesis's and Megadrives in their natural environment

Fig 5-2:The Sega 3-Button Controller

Because I’ve never owned a Genesis, I can’t really provide much in the way of subjective opinions on the system. That didn’t stop me from doing the same with the Sega Master System, though. So here I go. In Figure 5-1 we see a family of Genesis and Megadrive systems and their children sitting down for tea. the two systems at the upper right are connected to Sega CD attachments, whose primary purpose was to make the system heavier for no good reason… and make noise while failing to read the disc. More relevant would be the controllers; the original Controller released by Sega was a three-button controller as shown in Fig 5-2. This was before Sony broke new ground and made it so even illiterate idiots could play video games by using geometric shapes instead of letters or numbers. These are purported to be extremely ergonomic controllers in that they are very “easy to hold”. For a demonstration of what I mean, hold a pineapple as tightly as you can. Then do the same with a watermelon. Aside from being a little more slippery from the blood that your hands were covered in by squeezing the pineapple, the watermelon is “easier to hold”. for a direct comparison in the proper context, take the NES controller; it’s square shape wasn’t exactly ergonomic. In fact come to think of it not very much was really designed for comfort or ease of use, at least as far as computers and digital equipent went; controllers hard-wired into the systems with 2-feet of cable cramped, unintuitive controls, square boxy designed for everything, etc. In any case it’s something you will understand if you get your hands on one. Which brings me to another point (which is actually related, unlike my previous digression that was entirely tangential)- these controllers weren’t necessarily designed only for kids hands. Take an SNES controller. If you have big hands, it seems cramped. Heck I wouldn’t call my hands oversized, but I can certainly tell that I have to hold it far differently then I did when I was a kid. It’s not so much uncomfortable as it is awkward. The genesis controller, on the other hand, is huge by comparison. This was entirely on purpose, from what I can tell. It’s difficult to explain, if you ever have the chance to hold one- or even play a game using it (remember, Genesis controllers are backward compatible with master System as well as Atari Consoles) You will certainly know what I mean.

On the other hand, although the Genesis controller is well designed, comfortable, and easy to hold, the original controller only had three buttons.

“So what” you say incredulously, “The NES only has two!”. And indeed it does. But, the problem here is that the Genesis was designed to compete with the SNES, and they only added one extra button; the SNES has 4 more buttons then the NES (L,R,Y and X); if it was merely a dick-waving contest (“my game console controllers have more buttons then yours” type of deal) this wouldn’t be much of an issue, but the thing is many arcade games being ported used a lot of buttons; particularly Street Fighter and Mortal Kombat, for example (Why does Mortal Kombat always remind me of the fake credits from the original Donkey Kong? and the silly names like “Klump” and “Klap-trap”?). So the SNES usually ended up with the “better” version in terms of controls. On the other hand, Sega’s Censoring was hardly as draconian as Nintendo’s, so while the SNES had a Mortal Kombat where your moves would cause your opponent to sweat, the Genesis version had them losing vast quantities of blood (neither was realistic, of course, but the latter had Blood, that automatically translated to badass in those days, apparently). It was a mixed bag. Usually the three buttons did in fact suffice with a few changes. Sega released a 6-button controller that attempted to solve the “not enuff buttons to weak punch” problem, but also discarded some of the stellar usability principles of the original, making it much more cramped. They finally remedied it later, making a nice, usable, and comfortable controller later on, but by then we were practically into the next generation of consoles. Another nice thing is that it is one of the few North American consoles that get’s good use out of it’s expansion slots; I cannot think of a single commercially available accessory for the NES that used that mysterious “EXT” port; and the only one that comes to mind for the SNES is the multi-tap, and I’m not sure if I am merely misremembering it’s connection method. the gamecube has three external connections; one can be used for the broadband modem (or something) and the others I don’t know. Either way, most of the expansion slots are only well used in Japan. the Sega Genesis however, makes good use of them with two attachments (the Sega 32x connects to the cartridge slot, but I am not 100% if it also uses an external connector elsewhere on the console). the Sega CD attached to the bottom or the side, and they both needed their own power supply, so you’ve got three plugs needed for a single console. But at least you got a sense of using it to it’s full potential. Or you would if they had done that with more of the 32x and CD games.

Nintendo 64

Fig 6-1: Nintendo 64 controller

So anyway, where was I? ahh yes; the Nintendo lineage; next in line was the Nintendo 64, whose controller is shown in Fig 1-10. The n64 controller is one of those controllers that seemed to have been designed to look “futuristic” for their time; specifically, the three grips that make it look like a spaceship with a docking bay. It’s also a strange system in that some games that didn’t have battery backed RAM (yes, because the games were still on cartridges)  would have to store their data on a Memory Card (no surprise there, really) but the kicker is that the memory card actually was placed into the controller itself. What a strange mishmash. The idea was that you could have the memory card, Rumble Pak, or… well a few other pak things like the transfer pack, in the controller. The only one that was any good was the memory card, the Rumble pak was just a battery draining device. The main problem is that the design of the controller to hold an extra item made it a tad more bulky then would be ideal. It does have the distinct advantage of a trigger button that actually seems like a trigger button (Z button on the back). The D-pad is just as high-quality as that provided on the SNES controller, with the exception that the SNES controller’s D-pad was actually used- very few games used the D-Pad on the N64 controller, preferring instead to use the Analog stick for movement. Aside that, we have the L and R buttons, B,A, the 4 C-buttons, and Start. The C-buttons generally were “reserved” for camera control; but  they of course found various other uses in other games. For example, in The Legend of Zelda:Ocarina of Time, only C-Up would act as a “camera control” everything else the game controlled for you (placing the camera) and you could use Z-targeting to change your view angle so it made explicit controls for the camera unnecessary. It’s a great controller, overall.

With one debilitating weakness: the Analog stick.

The problem is pretty much that the Analog stick “loosens”; that is, unlike the one shown in Fig 1-10, the Stick will “Wobble” about freely; this doesn’t affect gameplay per se – the stick’s wobbling does not do anything to the game – but it does lessen the possible range of motion for the controller.Meaning you can’t run as fast, can’t do the quick spin attack in Ocarina of Time or Majora’s Mask, and so on. There is one way that you can find a person who has a badly loosened Controller Stick. Ask them if they own Mario Party. If they do, consider their Controller sticks loose. That game had a number of mini-games where the objective required you to spin the control stick wildly. What I’ve always found interesting is that- as I noted previously – very few games took advantage of the very well done Directional-Pad; instead preferring to go for the analog stick. This isn’t bad per se, but it seems a shame to let such a good Directional Pad go to waste. There weren’t even any good “collection” games (Like Super Nintendo’s Super Mario All Stars, which has been released (to my amusement) for the Wii Virtual Console. And they didn’t even add any games. They pretty much just resold the exact same game that I already have on the SNES. Aside from a few weirdness’s (like memory cards going into the controller and not the console) it was a fine system. One other thing that might bear mention is that it uses cartridges, which was pretty surprising at the time. The PSX (the “original” playstation, also re-released under the name PS One) used CD-ROM based media. Naturally, each type had their own advantages and disadvantages; Also, it’s important to note that the Playstation wasn’t the first console to use CD-ROM based media, it was merely the first commercially successful one, which certainly let’s it stand out; other consoles that used Optical Media include the Phillips CD-I, Sega CD, and the Sega Saturn. Cartridges means zero (or near zero) load times, but generally means that the reduced space for information (because it all had to be stored on chips costing maybe 10 cents each) and usually lower quality textures. On the other hand, the N64 “compensated” for this by using texture filters; additionally many games forwent textures altogether, instead choosing to use plain, untextured polygons with gouraud shading. Cartridges also means fewer moving parts; there is no disc drive to fail, for example. A Disc based system can usually have higher quality textures and often they also contain full-motion video, something which is practically unthinkable (or financially intractable, to be more precise) for cartridge based games. The main advantage, and perhaps the most important, is price. A Disc only costs a few cents to duplicate (I’m speaking in bulk, of course) whereas often it would cost manufacturers upwards of 3 dollars per cartridge to create an N64 title. In many ways this was the straw that broke the camel’s back, as developers flocked to the cheaper-to-develop for Playstation, creating droves of games for the system at relatively cheap prices. many great Playstation games retailed for less then 30 dollars, while N64 bestsellers like Super Smash Brothers could cost upwards of 60$. (I know because that’s how much my copy cost me).

Sony Playstation

Fig 7-1:The Sony PSX

Generally known at the time for their Walkman and Discman products, as well as a failed partnership with Nintendo to create a Disk addon for the SNES, their entrance into the Home Console market was fast and stunned both Nintendo and Sega. First, it was the first viable Console to use Optical Discs for the game media, the advantages and disadvantages of which I have already discussed. It’s direct competitors were the N64 and the Sega Dreamcast; of the three only the N64 used cart-based media.

Fig 7-2:the PS-1

Again, I do not actually own this system. The original release was something like shown in Figure 7-1. Sony re-released the Console (at some point after the PS2 was released) as the “PS-1″ shown in Fig 7-2. Of course these terms shouldn’t be confused with the IBM PS/1 or IBM PS/2 or the keyboard interface still common from the latter. One important difference: the PSOne includes the Dualshock controller. Moving along to the controller then… It’s flipping awesome. Probably one of the best controllers ever designed. I personally think the Directional “pad” is a little weak, but that is probably just me being used to the Nintendo design. The Analog sticks are better then the N64′s version (to be fair, the Dual Shock came out some time after the initial “war” between the consoles), since they are all-around better designed (they do have less overall resistance (I believe they don’t use springs to reset the position, which also serves to mean they don’t “loosen”) Particularly interesting here is the fact that the controller is a nice cream white; most people will be more familiar with the PS2 or PS3 controllers of this breed, which are black and black respectively. One nice feature is the Memory cards plug into the console- which is a nice and sane design apparently neither Nintendo, nor Sega, discovered originally. This controller is probably the best all-around controller ever made; good ergonomics combined with plenty of buttons for all sorts of games (did I mention the analog sticks are buttons? They are) I can’t say I’m a fan of the whole “triangle square circle” thing, but that’s just me.

Sega Saturn

Fig 8-1: The Sega Saturn

Another System for which I have no experience and yet insist on commenting on. The Sega Saturn was released after before (edit: thanks to commenter Bruce for correcting me- the Saturn was released before the Playstation, and thus (iirc) the N64 as well) both the Playstation and the N64; it used CD-ROM for the game media. There really isn’t a whole lot for me to say, being that I’ve never even really seen one. For all I know they don’t exist and are a whimsical fiction conjured up by a fictitious, and most certainly giant, purple hippo for the sole purpose of making me think of things to say. Well, just look at it (Fig 8-1). It’s big. Oversized, even. It didn’t gain very much market share simply because gamers no longer trusted Sega, what with that 32x Genesis attachment that was supposed to play games but usually just ended up making your unit heavier. There were only a handful of 32x games released, then Sega discontinued it and released this. Gamers were skeptical, and perhaps a little worried about wether the same thing would happen. The fact that Sega tried to “cash in early” and release the console a few months before the Playstation didn’t help, because there were, almost literally, no games available for the Saturn. An additional problem was the issue of- oddly enough- game saving. Note the lack of any distinct “memory slot” on the front of the system. And no, it’s not on the controller either, thankfully. The memory for your game saves was actually stored in the console itself; that storage was terribly limited, meaning you had to purchase a memory cartridge that would go into the otherwise mysterious slot near the back, which up to that point nobody knew what it was for. Warranted, it’s nice to be able to save games with a base system (unlike, many systems of the time which required separate peripherals). Also, a common issue seems to be that the internal memory peters out; I suspect that the internal memory is simply a CMOS RAM chip powered by a CR2032 battery, or at the very least a battery of some sort, and naturally over time the battery dies, meaning you can no longer save games. Note the lack of a Directional pad, which isn’t so much a problem, since most of the best games for the Saturn were 2-D. Also, you could get controllers with a Analog stick. They look like crap though; seriously. So weird and deformed that I won’t even provide an image.

Atari Jaguar

Fig 9-1:Atari Jaguar With Jaguar CD

I know I’ve oddly skipped the other Atari Systems; I’m covering a lot of ground here and I really don’t want to spread myself thin. In any case, the Atari Jaguar is a rarely seen and even rarer heard from console outside the realm of hardcore enthusiasts. In Fig 9-1, we have a Jaguar with the CD-attachment on top. CD accessories were all the rage, and it

didn’t really matter how unnecessary or extraneous they were (there were SNES CD

accessories in Japan, for example) What isn’t shown in the image is the rear view connectors. The connectors for AV and DSP both just look like the exposed bit of the internal motherboard. Doesn’t exactly inspire confidence in their reliability, which isn’t helped by their frequent “red screen of death” on startup.

Fig 9-2: Jaguar Controller

That doesn’t even touch on the exponential weirdness that is it’s controller, shown in Fig 9-2. What the HELL is that supposed to be? Seriously? What is with the flipping numeric buttons there, did they think people would use their Jaguar for accounting or basic calculator stuff? holy crap. I’m not even sure how to properly criticize this controller, it’s just that bad. The D-pad looks awful, it only has three buttons, and no shoulder buttons, etc. It basically criticized itself. Instead of the stupid number pad they could have added a few more sane buttons.

I may cover more/newer systems/controllers in a future post.

9,386 total views, no views today

Posted By: BC_Programming
Last Edit: 18 Nov 2011 @ 11:44 AM

EmailPermalinkComments (3)
Tags
Categories: Programming
 04 Apr 2011 @ 6:45 PM 

I’ve touched on this subject before. Basically, it is the polarization of programmers, and people in general to believe certain things about programming languages or platforms.

For example, Java is often said to be “slow and hard to use”; The former is a complete lie- with a JIT compiler it’s fast enough, if you really want raw speed you should develop it for a few more years in ASM. The latter was true back with 1996 but later enhancements have made it far easier to work with, as well as the addition of GUI designers for JPanel’s in most IDE environments for Java.

This same hubris is often extended to .NET; the basic thought seems to be that any language/platform that either provides a pre-defined class library or a method of automatic memory management is a “toy language”. This is patently a stupid opinion.

When I want to write an application, I want to worry about the logic of that application. I don’t want to have to worry about contention issues across thread boundaries in some offshoot List or stack implementation that I’ve already written countless times in various languages. Additionally, I fail to see what the Java Class Library or .NET BCL have that is so much different in concept then the C standard library; do these so-called experts also write their own standard library with every program? Of course not. You don’t see them re-implementing printf(). As for memory management: once you learn how to do it, and how to work with it, it just get’s in the way. No matter how much practice you get with malloc() and free() you’re still going to have bugs where you miss a malloc or you miss a free or you perform a double-free or something; the only recourse is always to create some sort of automatic tool or use a design pattern to make finding these problems easier. What something like garbage collection does is make such design patterns unnecessary since there is essentially a design pattern for memory management built in. What makes the arguments interesting is that they immediately turn around and say that the C implementation of a basic console Hello World application is shorter (on account of having to acquire various objects in the java implementation for stream writing). Well what do we want here? This just tells us that the java class library was designed differently from the C standard library. Obviously the “pure code” for a C program to write text to the screen will be at least equally as long- it’s interesting to argue that more verbosity is superior in one sentence and immediate follow it with something that amounts to “unless of course it works in my favour for this argument”.

I think the basic idea such programmers are against is that some people that use the .NET BCL and the java class library have never had to implement such classes before, and don’t know how they work. On the one hand, I agree; mostly because it feels “unfair” that they get for free what I had to work on the first time I needed them; on the other hand, they solved problems and outside of academia the only reason to re-implement a LinkedList, Stack, Queue, or other familiar data structure is for structuring data in an application; there is no reason somebody should have to take a sabbatical from working on a business application in order to learn about Red-Black binary trees; arguably they should have learned about that before ever being considered being put into a position where they are working on such an application.

I think the real reason for such arguments is basically that they don’t like programming being made easy. To hardcore ASM and C programmers, it should be hard, not something people do everyday. However, I say that’s ridiculous. Building artificial barriers is a good way to keep new ideas from flowing, and forcing people to stop and learn the details of memory management and building data structures- while a very important step- get’s in the way of whatever other important task it was they wanted to do.

Take a look at C++; that seemed to be the mindset. “well, we give you an OOP language, you are on your own for the rest, I guess”. And then you had a bunch of different implementations of Object Oriented frameworks; Borland released OWL (Object Windowing Library) Microsoft themselves released MFC, And High school teachers everywhere taught there students about strings using their custom string libraries. Eventually, there was a standard C++ library that was actually useful; but why the long wait?

Learning how to program consists equally of how to create as well as how to USE various data structures, and saying one is more important then the other is pretty conceited.

4,246 total views, no views today

Posted By: BC_Programming
Last Edit: 04 Apr 2011 @ 06:45 PM

EmailPermalinkComments (0)
Tags
Categories: Programming
 03 Apr 2011 @ 9:00 PM 

I don’t have one. It’s impossible to form a opinion on a set of hardware and software that I’ve never used and have no intention on using.

EDIT:
(Thread in question is here : )

(I’m presuming the commenter here is the Mr.Bisquit from there, based on the second comment)

Yeah, You’re scared, especially when it comes that someone needs to search out an answer from you.

Scared of what? I didn’t post in that topic because it quickly devolved into you being a douche to anybody who posted:

7. A line is a set of points. (from the thread)

What is that? You know exactly what he meant, you were just being a giant douche, and the fact is by that point I realized that your question was probably just some sort of loaded trollbait in an attempt to allow yourself to express just how much of an elitist douche you were. Your additional responses that were designed to illicit a response from me “he’s afraid” afraid of what? what the hell is there to be afraid of!? That doesn’t even make any sense.

Actually- I think I know what that is reference to- the fact that I didn’t approve the first comment in the few days since the second was made. Actually, I only noticed the new pending comments today, when I went to write a new blog post. In that context, I do apologize for the delay, and can certainly understand the conclusion you came to (that I was maliciously censoring your comments) I wasn’t though, they are automatically moderated that way. I do have a question- if you ever return-

Why are you so fixated on me, anyways? I mean you posed a question specifically for me on CH and now you’re basically stalking me on my blog…. Why?

 

 

This is going to be much more difficult than it was to convince you to use a Linux distribution.

I was using GNU/Linux long before you were a known entity to me. You haven’t really convinced me of a whole lot, except that there is a hell of a lot of polarization and fanaticism on the xxxBSD side of the fence then I had original suspected. I mean, a good portion of Operating System/platform evangelists are self-righteous blowhards, but you have really raised the bar.

>>Makes me wonder about a programmer who mentions assembly
>>and C then clams up when it comes to “new” territory.

clams up? what the hell are you talking about? I didn’t respond to that particular thread because your question was clearly loaded, and second, because, as I noted here, I don’t have a “take” on it because I haven’t used it. I try to make a habit of not forming too strong of an opinion about something if I haven’t used it, but you aren’t making it very easy. I doubly wouldn’t know about running it on the specified hardware because I haven’t USED a PowerPC, nor a SPARC, and have barely even used FreeBSD on x86. I don’t have a powerPC. I don’t have a SPARC, and buying one or both kinds just because you’ve asked my opinion on running a specific OS on them would be pretty silly.

you use freeBSD. Good for you, really, I’m sure it’s a fine OS, clearly it suits your needs. I don’t use FreeBSD. Get over it. I already have it in a VM; I just haven’t done much after the initial install (like doing the appropriate googles to find out how to turn the basic # prompt with a relatively minimal set of commands into a usable desktop environment. But I will do it when I please. Some douchebag being- well, a insistent douchebag throwing not-so-subtle insults and insinuations my way is not going to help, because if that is what I’d be destined to become as a freeBSD user, I want no fucking part of it.

I suppose, as has been said frequently about many things, it’s not Free/OpenBSD I have a problem with, but some of it’s users. Same with Linux; hell, same with windows, or mac. It’s the evangelist assholes who seem to feel they have some sort of inner track to knowledge, that the OS they use is better, despite the fact that their measurement of what was better is using their own predefined yardstick that just happens to only cover the strong points of what they are evangelizing. They also all have a glaring weakness. You tell them a problem with their OS of choice, and they say it’s your fault. This isn’t specific to any OS at all of course. The fact is though, they all have problems. Evangelists of all kinds seem to think that pretending there aren’t any problems- or that those problems are minor- is a good thing. It’s not.

For example, as it stands now- you simply NEED to learn how to use BASH or whatever the included shell is with almost any Linux distro and with all the BSD’s I’ve tried; for the “simpler” Linux’s, like Ubuntu or Mint, people will often still need to use to the console to fix otherwise simple issues- like the package manager somehow getting into some weird inconsistent state and refusing to open; sure, it suggests what command needs to be issued, but in that case there are two problems:

  1. why can’t the GUI program invoke the suggested command itself?
  2. The command doesn’t always work

For ages, running that command on my laptop would effectively hang that terminal until I forced it closed. Now this brings me to another point; I ended up just using the –help of the various package management tools (dpkg, apt-get) and found that apt-get had a “check” option, and was able to invoke that and discover that one of my python libraries was corrupt (or, “inconsistent” I guess), I then (using more inference) decided to simply remove, and then reinstall that package, which fixed my package manager issues. hurrah!

I’m not saying that was bad by any stretch, but implying that everybody is willing to go through that to get their computer working properly is utter nonsense. Some people think their computer is broken when the desktop background is wrong and they don’t know how to change it. Yes, they can learn how to change it, but the thing is, a lot of people don’t give a flying fuck about computers. This is something we more nerdy types, regardless of occupation, seem to forget. If Secretaries had the capability to learn about stuff like the command line, they wouldn’t be secretaries.

Basically, the adeptitude that many Linux and FreeBSD versions demand of their users is akin to demanding that everybody learn the specifics of architecture, wiring, roofing, insulation, beam installation, and so forth when they buy a house. Now, it’s true, that a fair number of people that purchase a home do in fact fix it themselves, and no doubt learn in the process; but there are others, who, again- are either too busy or simply don’t give a fuck and hire people to do it. They don’t want to learn about plumbing or wiring or roofing. They just want a house, just as some people don’t want to learn about files, streams, ports, hardware ports and Addresses, IRQs, DMAs, NMI’s, Compilers, command lines, or the details of memory. They just want a computer. Now, some on “the other side of the fence” from them, (including myself) may balk at such a concept “An easy to use computer, how absurd!” After all, in many ways the very “general purpose”-ness of a computer simply doesn’t lend itself to being “easy to use”; but it seems that should be what we are striving for. No Operating System ever created meets this lofty goal of being completely intuitive. My opinion in that context is that Mac Classic (Pre OSX, that is) was the closest to that. And, really, creating a completely intuitive interface is thought impossible; that doesn’t mean we should just give up on it. There are people in this world who aren’t interested in computers ; They don’t want to have to learn arcane commands to get their shit done. They just want to get their shit done. They don’t want to have to learn how to write a script to automate that task. This is not something that should be shrugged off as “well obviously they are an idiot” because get this, Computer’s aren’t the fucking world, even though the world seems to run on computers,and almost any occupation will involving interfacing with computers in some way or another. what we need is some fucking work on making those interfaces easy to use . not just flexible. In that sense, my “Take” on FreeBSD, which you’ve forced out of me through sheer willpower apparently, despite my misgivings that I haven’t even really tried it much, is that it makes absolutely no attempt to be easy to use and trades off at every point better flexibility and security for ease of use. The security concern is understandable, but if you are going to make something flexible, either make it flexible and easy to use, don’t attempt to call it a mainstream OS for everyday people, or don’t bother.

 

EDIT 2:

Welcome back :D

 

Why can’t the GUI application post the command?

1) All options are not available on the GUI but are available on the command line. The GUI is merely a front end to a command.
2) Every person that develops such an application is not aware of all of the options.
3.) Every command is not possible in every situation.
4) It may be assumed by the developer that the individual wants some control.

 

Specifically, I was speaking for the case of the Synaptic Package manager, which complains when started occasionally and suggests that the user run “dpkg –configure -a” Basically, why does it have to do this- could it not run that command itself? It basically acts as a front end for dpkg, from what I can tell. But, when it is suggesting to run that command- why can’t it do it? The only reason I’ve found for it is that it only fixes the problem 90% of the time, the other 10% of the time you have to figure it out yourself, all the while having the package manager suggest you run that same command each time it doesn’t work. The people developing it are clearly aware of the options they suggest, because they are- well, suggesting it. Response 3 makes sense in the more  general case, but I was speaking (specifically) about the dpkg error from the package manager that basically told the user to run a given command to try to fix it- the thing is, the problem can be resolved entirely programmatically without user intervention- just by shelling out and performing two dpkg commands. #4 is a moot point, really- performing the tasks you are using the GUI to do manually defeats the purpose of said GUI. If a user wanted “more control”, they probably wouldn’t be using the GUI tool to begin with.

The choice of shell is up to the individual. In any Unix-like environment, one needs to know the command and its options.

But Why? Why do you need to know commands and their options to use the relevant GUI tool? Isn’t the point of the GUI tool to make it so you don’t have to use the command itself?

Shell programming is useless if you do not understand what you are doing.

Of course it is. I never say anything about shell programming though…

Nobody is fixated on you.

And yet, here you are, again .

A question was asked on one site and the answer was given on another.

The answer was given on another because by the time I saw the thread it had already turned into you saying it was “an open public challenge” or some other nonsense like that. A open challenge to… do what? At that point I felt it was some sort of flamebait or something so I didn’t bother to post there, also, because I didn’t really have an answer since I don’t have any non x86/x64 systems. The idea that asking somebodies opinion on something was a “challenge” still irked me though, so I posted this entry. (because by that time, the thread in question had been locked), if the thread was still open at the time I probably would have put this there instead. (in retrospect I probably could have created yet another thread).

It would have been easier and more direct to give the answer of “It doesn’t interest me at this time,” and have it end at that.

And what obligation am I under to answer any questions at all? None. And the I got from the thread that you seemed to feel I owed you something was another reason I abstained from posting at the time. I may very well have misread you in that instance.

 

736 total views, no views today

Posted By: BC_Programming
Last Edit: 07 Jun 2011 @ 04:19 PM

EmailPermalinkComments (5)
Tags

 Last 50 Posts
 Back
Change Theme...
  • Users » 871
  • Posts/Pages » 193
  • Comments » 74
Change Theme...
  • VoidVoid « Default
  • LifeLife
  • EarthEarth
  • WindWind
  • WaterWater
  • FireFire
  • LightLight

PP



    No Child Pages.

Windows optimization tips



    No Child Pages.