Author Archive

More SPMP goodness: now with pseudo-3D

Saturday, June 13th, 2009

After a few days of reading very, very weird disassembled code and poking registers, the odd 2D hardware finally works (for the most part). It can draw lines, so I threw in a software 3D transform. Here’s the Stanford Bunny in a glorious 448 vertices and 1416 lines of jaggy wireframe awesomeness.


(more…)

Sunplus SPMP305x media player hacking

Tuesday, June 9th, 2009

I’ve joined a bunch of friends in a quest to reverse engineer and write custom software for Sunplus SPMP305x chips. These chips are inside all sorts of chinese media players, particularly the fairly powerful kind with a camera, video playback, etc. The chip is based around an ARM926EJ-S core, but the peripherals around it are completely custom – check out the marketing blurb. Most current work is on reverse engineering the hardware interface so we can completely replace the default firmware.

If you’re interested and you have one of these or don’t mind spending $33 to get an interesting ARM machine, check out the wiki, Google Code project for the Prex port and other stuff, and my Git repository with a port of MINI and a bunch of client utilities for reverse engineering and testing the hardware stuff. Most importantly, however, come visit us at #spmpdev on the EFNet network! Most of the work and chitchat happens in the IRC channel.

sunplus test image

Acer Aspire 8930G Linux audio support

Wednesday, June 3rd, 2009

I’ll eventually write a longer post about how different bits and pieces of this laptop’s hardware fare under Linux. For now, I’ve managed to strike one of the more annoying issues: proper audio. Scroll down if you’re impatient and want the code; read on if you want the full story.

This laptop is peculiar because it has built-in “5.1″ audio. Yes, it does really have 6 speakers, though you’d be hard pressed to get much spatial separation out of them (and they aren’t even placed around symmetrically). However, the speakers do end up making a very decent multiway audio system, by laptop standards: the “rear” pair (which is actually between the keyboard and the screen; the mind boggles) is good with the high end, the “front” and center speakers (front edge of the laptop) are your average mediocre speakers that can handle mid-end, and the “Tuba” not-so-”sub” woofer fills in enough low-end to equal a decent overall speaker, although of course with zero stereo/spatial separation since there’s only one of it (actual subwoofers can pull off mono because the human ear can’t really hear spatial position at low frequencies, but the Tuba is more like the only non-sucky speaker in the entire laptop).

What this boils down to is that you really want good audio support for all 6 speakers if you want to take advantage of the audio capabilities at all. Most importantly, stereo needs to be upmixed and a good portion of the normal audio needs to be routed to the Tuba. ALSA’s asound.conf makes this easy, assuming the actual hardware works fine. Of course, that’s not the case.
(more…)

Quickpasting

Monday, April 27th, 2009

If you’ve ever worked with other people on some piece of code or program, particularly over IRC or IM or some other form of real-time or fast text communication, chances are you’ve used one of the many “paste” sites available (my personal favorite is pastie). These sites offer a convenient way of sending small to medium chunks of text to other people quickly, by simply copyng and pasting the text into a web form. This is a lot better than the old way of having to send an e-mail attachment, spam an IRC channel, or upload the text to some web host, but as I used pastie more and more often I started to realize that it could be made even faster.
(more…)

HDCP Authentication Failure

Thursday, February 26th, 2009

pixel snow

And I wasn’t even watching protected content.

This is (one of the many reasons) why DRM needs to die.

Using Amarok and other iTunesDB compatible software with the iPhone 2.x

Friday, January 2nd, 2009

With newer iPods and the iPhone 2.x firmware, Apple decided to implement a new hash scheme for iTunesDB to prevent third-party apps from managing the iPod database. Stupid. They decided to make it part of the FairPlay codebase, including its obfuscation. Very Stupid. But just in case that weren’t enough, then they went ahead and tried to take down the iPodHash project which was attempting to reverse engineer the (annoyingly obfuscated) algorithm. Completely Stupid.

I had previously patched the check out in the MusicLibrary binary, and forgot to write it up. However, I just looked at it again, and it turns out that you can get it to work just by changing a simple XML file. I guess they didn’t really care if jailbroken iPhone users used third-party software.
(more…)

25C3 flies by

Friday, January 2nd, 2009

And most of us are back home! 25C3 has really been a blast and I’m sure most of us will repeat next year.

We had a huge table and still managed to fill it up entirely. Just look:

Console Hacking table at the Hackcenter

Console Hacking table at the Hackcenter


Since taking photos of the public without permission is forbidden at the Congress, and I didn’t obtain explicit permission from the people on the left, I’ve blacked them out. Oh yeah, that guy at the back is crediar. I hear he doesn’t mind if I post his photo :P

The iPhone Dev Team guys also sat with us. We even worked together on several occasions, and it was really cool to have these two teams meet together and learn from each other.
(more…)

25C3: Prelude

Friday, December 26th, 2008

In an ideal world, in a few hours, a plane will depart from Madrid Barajas International Airport and with destination Berlin-Tegel Airport. Hopefully, I will be inside that plane. This isn’t an ideal world, however, so chances are the flight will be delayed. But one way or another, I hope to find my way to Berlin today (or tomorrow, going by my sleep cycle).

Pack up has been interesting. Behold:

Standards vary, but I think this is somewhere between “reasonable by 25c3 standards” and “completely insane”. This should be fun though. See if you can spot the key components. FYI: My Wii lives in that 56K modem box.

In an attempt to keep this blog from developing a severe case of cobwebs, I’ll try to keep you posted on what goes on at 25c3. Here’s the vital information:

I’ll be arriving there on the 26th, a bit after Erant and bLAStY. Hope I can make it to the hotel with zero knowledge of German.

Press any key to try again

Sunday, November 30th, 2008

I finally broke down and set up a proper blog. Ooh! Aah! Boo!

I think the first time I started to do this blogs weren’t even popular. 2000 or so. I guess I succeeded 8 years later.

So why on earth would I want a blog anyway? ‘Cause it’s the trendy thing to do? Well, over the years, I’ve amassed a relatively large amount of personal projects and tidbits. However, up until now, I haven’t had a single place to collect references to them. Sometimes you’ll find a few in some dark deep corners on my webserver, and sometimes you’ll stumble upon them on forums or other sites, but there’s a lot of stuff that’s just sitting somewhere on my hard drive entirely unknown to the world. Googling for “marcan” doesn’t help either – especially when the word happens to (coincidentally) be a Spanish word too. It’s kind of sad to see all of this old and not so old stuff just sit there and do nothing, so I’m setting this blog up with the hope that someone, somewhere, will find some of it useful. And maybe it’ll inspire me into working on some old unfinished projects.

Some may say, what about HackMii? Well, HackMii’s name is pretty self-descriptive, but to clarify: HackMii is about hacking the Wii. Unlike many people seem to believe, my life isn’t solely devoted to Wii hacking (thankfully). Instead, here you’ll find everything else, including some possible Wii-related posts that aren’t strictly related to the topics at HackMii.

So in this blog I’ll try to post about what I’m currently hacking, making, or otherwise screwing around with, and about what I’ve hacked, made, and screwed around with in the past. You may also find an occasional tidbit or two about my life, but I’ll try not to bore you with it.