Tag Archives: linux

FIGHTWARE–The Ultimate Gaming System–Part 3

software

Software is were my strengths lie. And since this console is based mainly on software (you can pretty much use any kind of hardware to make it go) this section will be quite a big larger. First off, what would be the base system? Well, Linux, of course.

It’s so beautiful…

Linux, for those who don’t know, is an operating system much like OSX or Windows. It’s considered a replacement to bulky and expensive OSs to preform much of the same tasks that you can do on your current machine such as web browsing, photo editing, and word processing to name a few. What you might not know is that LINUX IS EVERYWHERE!!! Not only running your phone (Android), but in the customer service industry, mainframes, and believe it or not, popular video game systems (Wii). The name “Linux” usually brings a bad taste to many a mouth. Images of the command line, incompatible Windows programs, jacked up graphics cards, and old guys with neck beards recompiling their kernels to be on the bleeding edge of technology. All of this is true. I also had a neck beard for quite some time and hung out with my local LUG discussing the finer points of reconstruction and free as in Free Beer not Free Speech. Oh the good ol’ days…

Linux proves to be the perfect base system for FIGHTWARE. It can be as big or as robust as a heavy hitting gaming machine to a simple, elegant top box for your T.V. or something has convenient as Raspberry Pi. Linux is beautiful and sexy and you should embrace the beauty and sexiness.

Many Linux systems with the minimal of the minimal already exist like Puppy Linux, Crunch Bang, and Damn Small Linux coming in at a whooping 50MB or less. Simply amazing. The reason these systems are so small is because they are not flooded with apps and processes you just don’t use or need.

Now with FIGHTWARE, even the smallest distro can be adjusted to fit just for what FIGHTWARE needs. Again this is a simple process especially with help from the Linux From Scratch or Reconstructor or by taking an existing distro and stripping it. So, what do you need? Other than what is required to run the hardware that is.

the driver

The main driver behind the entire FIGHTWARE system would be Python. This programming language uses plain text and has the ability incorporate pretty much anything: C++, C#, SQL, Java. You name it, there’s a wrapper for it. Python is also nice because it’s easy to learn and easy to change or modify. The driver will be the running everything that the player can see. From the icons on the dashboard to running the emulators or other launchers. I know that you could probably be better off using a more “down to the hardware” language such as C++ and C# but those are super hard to get into and not easy to get up and running right away. Remember, this is suppose to something that’s fairly simple that basically “anyone” can do.

dashboard

The dashboard is what will run on top of the Linux base system. It’s the graphics that launch everything you need from NES emulators, to the web, or even a social network like Twitter or Facebook. Every modern console has some type of dashboard.

Microsoft Xbox 360 dashboard

Nintendo Wii dashboard

The dashboard will connect the player to the different apps that are available to be used much like the existing consoles have. FIGHTWARE’s dashboard would be similar in that it will allow the player to select a certain type of emulator or game and play to their hearts content. While in game play, if the player would like to go back to the dashboard either to check updates or play another game, a simple button combination could be pressed to bring up a “submenu” of options such as powering off, reset, or back to the dash. This button combination would be similar to Sega Dreamcast’s soft reset (A+B+X+Y+Start).

The customization, or skinning, of the dashboard will be scripted using XML. Again, XML is super easy to read and change and will allow anyone to create skins from their favorite games as the base or copy another popular dashboard that already exists. This is super popular with a modded Xbox from the past. There where all kinds of “skins” you could download from the web and slap on your dashboard. Customization is awesome and allows the user to make their system whatever they want it to be. Which is the point of FIGHTWARE. It’s yours. Do whatever with it. I don’t care.

updates

Every system needs updates and FIGHTWARE won’t be any different. Again, we would have testers testing the shit out of a new update to make sure that it doesn’t break or crash the system. After that the update goes to the web. If the system is connected to the internet, a simple “Update Ready” message would appear to allow the player to update or not; your choice.

For those who do not have an internet connection to FIGHTWARE will be able to download the update and save it to a flash/thumb drive or even burn to a CD-R. Slap that bad boy into the system, click a button that says something like “find new updates” and bam! update done without an internet connection. You can’t do that with an Xbox 360. At least I don’t think you can.

emulation

Now, I know what you’re thinking: “Eric, there’s a ton of emulators out there. How are going to decide on just one?” And to that I will say “Why chose one? Let’s use them all!” At the moment of this writing there are roughly 17 different NES emulators. 17! And more than 90 per cent of them aren’t even updated or in active development anymore. They are left to die in the depths of the dark corners of the internet sitting alone until a hobbyist decides to pick them up one day and play.

Speaking just to NES emulators, every emulator has some feature it excels at but lacks somewhere else. It may either be great at processing pure 8-bit sound but have a small library of games it can run. Or it’s great at clarity and Netplay but there’s a ton of bugs in the software that makes the system crash periodically. All of this is OK. We take every emulator that’s available, whether it’s outdated or not, and test every game on every emulator. After that we make a list. Let’s say that Emulator A is over all better playing Legend of Zelda than Emulator B. When the player wants to play LoZ, Emulator A will be the one running. On the other hand, Emulator B is better playing Metroid than Emulator A. Well Emulator B will be the one that is launched with that particular rom. To the player, it will never be known which emulator is running because each game will be ran in full screen mode from the dashboard. Cool right? Seamless.

The game list will stay as current as possible with feedback from players throughout the world who are actively testing the roms on different emulators. With this type of fan base that will running these emulators, I would think that some of the projects would become active again to make FIGHTWARE it’s number one choice in emulation. I know I would.

As time goes on, there will be obvious emulators that just don’t keep up with the rest and if it doesn’t hurt the cause of “purest emulation” it’ll be dropped to make way for one that is succeeding. But if it does everything wrong except for running the closest equivalent of Earthbound on the Super NES, you better believe it’ll stay.

By using every angle from multiple emulators to different types of roms for one particular game, it will allow the player to experience the closest possible emulation of the game. Which is the whole idea of course.

apps

Everyone loves apps. All kinds of apps and FIGHTWARE will be no different. Apps can range from the very simple like a Twitter app to monstrosities such as a web browser or email client. Things like this are huge suckers on computing power and is sort of out of the scope of FIGHTWARE in general, but the possibility to have an “App Store” available for players to download content over the internet will give it more than just a gaming console. We are already seeing this with the XBox 360 allowing people to download movies, Netflick, Pandora, and others to make it more than just a gaming machine. It would be possible but probably would not be preinstalled on a basic system.

Every app in the “App Store” would be tied to a special FIGHTWARE ONLY! repository. For those who don’t know, a repository or repo, is a sever that has software up for download for a particular Linux distro. Ubuntu, Red Hat, and Suse all have different repos for their systems. By having a FIGHTWARE ONLY! repo will allow testers to test the app before releasing it to the general public. This helps keep down system crashing and virus or malware products. JoliCloud OS, a Linux netbook distro, uses something very similar and works like a dream.

The next part of FIGHTWARE will be based on “extras”. Stay tuned.

FIGHTWARE–The Ultimate Gaming System–Part 2

hardware

All right, let’s get down to the nuts and bolts of the machine. The idea here is to be slick and tiny. The motherboard, ideally, would be a mini-itx. They are small, cheap, and full of power. Preferably one with HDMI or RCA out. That way you could hook it up to a normal T.V. and play off your couch. USB ports on the front and back, built in Wi-Fi or Ethernet port (would be nice more on this later), fans and all that jazz. Hard drive would be a flash HDD. Less moving parts means less things to go wrong. Anything from a 4 GB to 1 TB would be more than enough to support the actual software running the system and space for games, DLC, etc. Built in Bluetooth would also be a plus for more choices of game pads to use or even your mobile phone. Cool idea right? I’m full of them.

Now that is a sexy piece of hardware.

The case itself again would be slick enough to put next to your DVR or your DVD player or even your other consoles. Then the normally stuff like a power button, reset button, USB ports on the front for controllers (4 for multi-tap play) and a DVD drive for games, updates, etc (More on this later).

Now, ideally, everyone could purchase the same unit so everyone has the same type of hardware. But, more or less, people want their machines to do different things. The average gamer probably won’t need 1 TB of space. I mean, that’s a ton of space. The software of FIGHTWARE can be placed on basically anything. The software portion will cover this more, but FIGHTWARE should be able to run on the minimal of hardware of any kind.

controllers

Ah, controllers. There are so many to choose from. And you can choose which ever one you’d want! By placing 4 USB ports on the front of the box will allow up to USB gamepads for 4 player action. Or with the built in Bluetooth adapter, it’s possible to use even wireless controllers with the same capability or even your mobile phone!

I chose you!

There have been great advances in pc gaming with Linux. There are even libraries that will allow you to use your Nintendo Wii Remote to controller your mouse. You can’t tell me that someone wouldn’t be able to mash this over to a gamepad for Duck Hunt, Time Crisis, or House of the Dead. Don’t you tell me that! Because it is possible.

Another great thing with Linux, is it’s able to name every bit of hardware that is plugged into it even if it has no idea what to do with it or what it’s suppose to do. Let’s say you plug in a Retro NES USB controller. Now FIGHTWARE has no idea what this is. Linux is able to at least name it something that’s legible such as “NES USB controller”. With that, it’s just a simple script to run and try to figure out what the hell it is. For instance, the NES controller has 4 face buttons and an 8-way directional pad. That’s 12 total buttons. Everyone of those buttons has a name as well such as Button 1, Button 2, Button 3, etc. Every emulator has a “map controller” feature to allow the program to assign what each button will represent on an actually NES controller. The script would do the same thing, save it in a text file somewhere that way when another emulator needs it to map the controller to the system it’s emulating, it’s just a small load away. On top of that, this text file can be uploaded to a main server and the next time that a player somewhere else plugs in the same controller, the user won’t have to map it again. Just select it from a drop down menu or list. Done and done.

online? not online?

You crazy kids and your online gaming. When I was a hardcore gamer, we spent weeks, saving up our allowances, finishing up homework, and begging parents to allow me and 3 of my friends to hang out on a Friday night, rent Goldeneye 007 for the Nintendo 64 to toss proximity mines all around and sit in a corner while my friends would  look for me only to kill themselves. Well, that wasn’t me actually it was another friend of mine but still!

Online gaming has defiantly taken a crazy leap forward with games such as Halo, Madden Football, and Call of Duty. I have also taken part in these crazy marathons and it’s hard not to consider a system that isn’t online.

As I have already stated (or will state. I’ve lost track already) most of these emulators have Netplay. Basically Netplay allows you to play 2 or 3 or 4 player video games online with friends or foes. With the invention of TeamSpeak, a software that allows you to chat with others, it would be a simple switch to set up an online game through the emulator, create a chat room in TeamSpeak and be able to play and chat with the players.

I’m not too big of a hardware guy so other than the above, I don’t have much to add. Hardware’s boring.

The next installment will focus on the software. Oh yeah.