Rock Band 3

March 9th, 2010

According to an email from Joystiq, Rock Band 3 has been announced.  Hooray!  I can’t wait to see how the Rock Band fans will spin it to make Harmonix out to be innocent angels (in between sessions of franctically trying to ram the Rock Band devs’ dongs into their mouths) while still decrying Activision as the ones trying to milk the music/rhythm genre.

ImpossiBot

February 2nd, 2010

As with most of my posts, click on an image for a larger version where applicable.

Recently, an acquaintance bought me a SunPlus SPG200 devkit:

The Initial Unboxing

SunPlus is a Taiwanese semiconductor company that, surprisingly, actually makes their own tech rather than ripping other companies off.  Their hardware is usually ridiculously cheap, and as a result has found a niche in cheap game consoles: The KenSingTon Vii, Mattel Hyperscan, V-Tech V-Smile, JAKKS Pacific TV Plug’n'Play games, lots of cheap “MP4″ players, and so on.  The SPG series in particular was used in the Vii, V-Smile, and TV Plug’n'Play games.

The first thing I did, naturally, was blink an LED:

I was playing The Impossible Game - an Xbox 360 “indie” game - on the subsequent night when an idea hit me: Bot the game.  Sure, people have managed to beat the game normally, but there’s no EE-style challenge in that!

Another night’s of work and a couple trips to Radio Shack allowed me to eliminate the crappy, many-year-old 75-in-1 electronics kit that I was borrowing from a friend.  Some quick kludging of an Xbox 360 controller later, and I was off and running:

A more close-up view of the breadboard itself:

Overall, it’s a pretty simple circuit.  I have I/O port A line 0 hooked up via a 10kR to an NPN BJT, and the Xbox 360 controller’s A button wires sitting across the collector and emitter with a 10kR inline.  Simple.

The rest of the circuitry is to make my life easier.  There’s a pair of wires that I can touch together to bridge the A button manually in order to navigate menus, there’s another jumper wire that’s hooked up to I/O port A line 8 in order to start the automated sequence of keypresses, and six LEDs to show where in the sequence I am currently.

There are only two real issues that I’ve run into so far: First, I have to manually exit out of the current game and go back into it whenever the player dies in order to resync the hard-coded button timing with the game.  Second, every so often the timing will be a few frames off from the beginning - I blame slight variances in load time.

What I really need to do is figure out why the op-amp comparator circuit I tried to build failed to work.  Once it’s working, I should be able to trigger the restart based on the dead silence that occurs whenever the player loses a life.  After that it would be simple enough to make it automatically start playing once I start the program, or alternatively, I could even make it use a simple genetic-like algorithm to try to find the appropriate sequence rather than me having to hard-code the timing.

Once The Impossible Game falls, I’ll be taking a crack at automating Guitar Hero; after having disassembled the controller, it’s obvious that it’s actually really simple inside.  Then, the world will be mine!

Microsoft Points

January 28th, 2010

I heard that people are joining a class-action lawsuit to sue Microsoft over the fact that you get 80 Xbox points per dollar rather than 100 points per dollar, and that this is misleading because most people would assume that you get 100 points per dollar.

Me, I think that this lawsuit is a fantastic idea.  Hopefully they’ll release the list of people who have signed onto the class action suit - we should all be able to know who’s too fucking stupid to read the text on-screen that clearly displays the point-to-price ration every single time you have to buy points.

This Is Rumor Control, Here Are the Facts

December 14th, 2009

The accusations are flying hot and heavy amongst certain people about the Neo-Geo game, Ironclad, and the refusal of the MAME team to support it.  Some people feel that the decision was a personal vendetta, or the team being elitist.  In fact, it is neither of these.

The fact of the matter is that there is a reasonable level of suspicion that this “dump” may, in fact, be ripped from the Virtual Console release for the Nintendo Wii, and not from a legitimate prototype cartridge.  These suspicions were effectively confirmed by someone with ties to the Wii warez scene posting on the MAMEWorld forums and flatly stating as much.  In the event that these posts are deleted, here they are in their entirety.  All typographical, syntactical, and grammatical errors are there in the original posts.

News from mameplus frontpage
neogeo: added Ironclad / Choutetsu Brikin’ger (Wii) [dumped by katana]

proov Katana is the author of this dump please”

After being told that his post was basically a word salad and made no sense, the following reply was made:

1st/ He just downloaded the dump from the wad at a chineese forum
but is not the author of this dump

2nd/ the dump used in mameplus is not really
proper, ask iq_132 who have finished the
work to make the latest “proper” dump of this game

(sorry for my bad english)”

To be perfectly honest, this is as good a reason as any to never support this particular dump.  What may not be known by the ex-MAMEdev who is complaining the loudest about this is that because of the (in)famous epilepsy-inducing episode of Pokémon, the publisher is required to check for flashing screens, and as a result there’s a very good chance that there have been modifications to either the art or the program code of the game.

In the event that that technical reason isn’t a good enough one to suspend its inclusion in MAME, I ask you, the reader, to ask yourself: Who has been one of the most litigous companies in emulation history, well ahead of even Sony or Sega?  Indeed, it’s Nintendo.  They tried their best to stomp on earlier emulators in the mid-90’s, they tried to stomp out UltraHLE in the late 90’s, and I, for one, would rather they not choose MAMEdev as the group in the late 00’s to rectally violate with Thor’s hammer turned sideways.

This is Rumor Control, those were the facts.

Que Bella Taco

December 10th, 2009

Today I hit up Taco Bell with a coworker for lunch.  On my way out I made an observation shared by stand-up comedians and the Internet alike:

“You know what I like about Taco Bell?  If you go in there with a $20 bill in-hand, you’ll eat like a king for the next week!”

Without missing a step, my coworker simply replied:

“Yeah, and you’ll spend most of that week on the throne, too.

To the Person Who Stole My 80GB 5th-gen iPod From My Car Last Night

August 27th, 2009

When you stole my iPod last night, thank you for using the unlocked car doors, and not needlessly smashing out any windows.  It was a rental, and that would have been really unfortunate to have to both spend money replacing my iPod and replacing the window.

I also appreciate the fact that you left the 7 Nintendo 64 games that I had yet to take in from my most recent Play-N-Trade trip, as they are considerably much harder to come by than an iPod.  Likewise, thank you for leaving the male-to-male stereo audio cable with which I had connected the iPod, as I wouldn’t want to have to shell out another $20 for a small length of wire.

On the subject of finance, however, you missed an opportunity to make a quick dollar or so by not taking the multitude of soda cans with you as well.

Overall, I hope you enjoy your newfound portable music player, and hopefully you’ll enjoy the rather eclectic collection of music on it.  You may be disappointed, though, as there wasn’t quite as much gangsta rap on there this time of year as you might like.  Enjoy!

Pirating the Pirates

August 2nd, 2009

I’m not sure how many people are aware of this, but there’s an interesting little non-working game in MAME that goes by the unassuming nickname, “39in1″.  It’s one in a line of numerous “Xin1″ games, including 4in1, 9in1 and 48in1 as well, though only 4in1 and 48in1 have been dumped in addition to 39in1..

The reason why these games are interesting is because they’re bootlegs of MAME, hacked to run on a 200MHz Intel XScale system-on-a-chip, so there’s a very good chance that these games will be the first instance of MAME self-virtualizing, albeit with an earlier version than itself.

Between Andreas Naive breaking the encryption on the main program ROM, me wiring up a good number of the PXA255 peripherals, and R. Belmont figuring out a lot of the CPLD communication, it finally runs far enough to display something, albeit an error message:

Stay tuned; there’s probably more to come.

Midas

July 15th, 2009

This is a really lofty goal, but I think in my spare time I’m going to have a try at 100% accurately re-creating the Goldeneye engine in C, based on disassemblies and traces of the actual game.

Well, that’s the end goal, anyway.  For now I’d be satisfied with tracing out the game’s boot process to figure out why, exactly, it fails to boot in MESS currently.

Either way, my current work is here.  That’s after around 4-5 hours’ worth of work.

Oh Baby

June 1st, 2009

If anyone wants to try it out, I just committed my CPU core and driver for the Manchester Small-Scale Experimental Machine (SSEM), or “Baby”, to the MESS SVN depot.  It currently runs all known SSEM programs bundled with David Sharp’s SSEM simulator, available here.

I am not entirely happy with the fact that it is compatible with all of the programs, though.  Certain programs in particular, i.e. “nightmare.snp”, would not run on the SSEM had it ever been extended to the full 8192 words of storage space of which it was theoretically capable (per some SSEM history sites), as they pad out the unused 8 address bits with pretty patterns.

And now, a pretty picture:

The controls are as follows:
Up / Down: Move the selected store line up/down
Button 1: Halt / un-halt the SSEM
1-8, Q-I, A-K, Z-,: Toggle bits 0-31 of the currently-selected store line

Yeah, Baby, Yeah

April 15th, 2009

I was rather intrigued by David Link’s project to resurrect the Manchester Mark I, and commenced digging up more info about the Manchester Mark I and its predecessor, the Manchester Small Scale Experimental Machine, or “Baby”.

As it turns out, there’s already a Java-based emulator out there.  Inspiration struck, and I decided to see how easy it would be to emulate the SSEM in MESS.  It was, historically, the first electronic stored-program computer (if I read my sources right), so it seems like a prime candidate for support in MESS.

Without further ado, here is the Manchester Small Scale Experimental Machine displaying the results of Tom Kilburn’s “Highest Common Factor for 989″ program, including the correct answer (43).

Chances are good I’ll be able to get clearance to add this to MESS.  Fingers crossed!