WE LOVE CHRISTIAN WHITEHEAD
Christian has created a ‘proof of concept’ video about making Sonic CD run on Apple’s iPhone via his fancy emulator. It’s a bit of a shame you have to cover the screen with your thumbs – ISN’T IT, APPLE? – but apart from that, SHIT YES PLEASE.
There’s a video of it here. It’s not embeddable, hence the tardy use of a screen capture.
That’s it. Being made by Christian.
Don’t remember this level.
WHERE WAS THAT THING WE DID?
Oh yes. There it is.
filed in "NEWS", ACTUAL GAMES, ENEMIES on Jul.28, 2009
July 28th, 2009 on 3:02 pm
So why was the Sega port of Sonic 1 such an unplayable mess of a parody of a sham?
July 28th, 2009 on 5:43 pm
Poor use of a switch statement there. It lacks a default clause to trap values not in the expected range. Does not bode well for Christian’s port. 3/10.
July 28th, 2009 on 7:09 pm
Only 3 years after it was on PSP with proper controls. Yay.
July 28th, 2009 on 7:48 pm
Surely something like SetMusicTrack(“R1″+value+”.mp3″,0,true) would be even simpler? With a try-catch of course.
July 28th, 2009 on 7:55 pm
@StuntCunt
Could it be that it doesn’t have a default clause because one only cares if the variable is within one of the 4 given values? That if it doesn’t fall into one of the 4 options it shouldn’t (as it looks to be the case) begin to play one of the 4 music tracks.
Besides, it saves a whopping 2-3 lines of code; proof that Sega were indeed a programming powerhouse!
.
.
@Police Constable London
Heresy. It would be just plain WRONG to enjoy something so good on something soo bad….
July 28th, 2009 on 8:05 pm
Sonic on a Mac (fuck the fucking iPhone). Heresy, surely? ;-)
July 28th, 2009 on 8:28 pm
@BlackANUS
Clearly one only cares if the variable is within one of the 4 given values. But by adding a default clause that asserts when this is not the case you guarantee the variable has the expected range of values. Saving “lines of code” instead of trapping bugs early is a poor trade-off, especially as the extra lines of code can be compiled out of release builds. One wonders whether such sloppy coding practices were the ultimate cause of the drop in quality of Sonic games and SEGA’s fall from grace? Only time will tell.
July 28th, 2009 on 9:31 pm
What are these 4 given values you lot are wittering on about?
I’d guess up/down, sideways, insert coin and poke 53281,0
And if we’re picking holes in his programming, he’s not put a semi-colon at the end of each line so that’s never going to work.
Providing that’s PASCAL, of course, the only language I’ve ever had any experience with.
And BASIC, if that counts as a language.
And French and Welsh; again, the same proviso applies.
July 28th, 2009 on 9:58 pm
I see playing Sonic CD on PSP as an act of rebellion aimed right in Sony’s fat, bloated arse face.
I have never bought a single PSP game. And haven’t bothered to ‘obtain’ any either. If I accidentally enjoyed a PSP game it might be a gateway console to the PS3.
Just say no.
July 29th, 2009 on 12:29 am
Object-oriented Christ on a semi-transparent bike, if you’re going to criticise code, do it right:
1) Clearly in some kind of substandard pretend language
2) Use of magic numbers such as 30 and 80 and 384 throughout – I say this despite 384 being my favourite number (after 768 – of course!)
3) Case does not contain default or error trapping, if pretend language does not support, check with an if or clamp if in doubt
4) No asserts or equivalent debug only checking
5) No comments throughout
6) NOT “R1” + value + “.mp3”, for egg monroe’s sake, it would be “R1” + (value + 48) + “.mp3” (assuming ASCII encoding)
7) Poor variable naming eg TempValue0
Now. Let that be a lesson to you. I’m going back to going red when a girl comes in the room / re-checking my Magic The Gathering set nervously while muttering under my breath and checking my pack lunch is still in my rucksack.
July 29th, 2009 on 4:28 am
I played a emulator like that on my pocket pc a long time ago, there were regions to press for the buttons.. but I didn’t put my whole thumb on it, I just put my fingernail on the edge of the screen and pressed down there.
July 29th, 2009 on 6:44 am
“So why was the Sega port of Sonic 1 such an unplayable mess of a parody of a sham?”
Because what Whitehead has done here is literally remade Sonic CD from the ground up, using an 2D platforming engine he wrote specifically for the iPhone… It’s not the original code running on an emulated virtual machine, like all of Segas official “ports”.
In theory, the iPhone SHOULD be able to emulate Megadrive code full speed and without glitches, but Digital Eclipse, who provide the emulator for most of Segas recent retro re-releases, are a fucking joke when it comes to Megadrive emulation.
They are responsible for the “Sega Vintage Collection” on Xbox Live Arcade, too. On those releases, the lag between pressing the button and an action occurring on screen is so mind-numbingly noticeable that I cant play any of them without wanting to tear what hair I have left out of my head.
Sega really should just employ Steve Snake whenever they need their systems emulated, not these cowboys.
July 29th, 2009 on 10:28 am
I’d rather carry a TV, Mega Drive and Mega-CD around at all times so I can play it on the go and in the way it’s meant to be played.
July 31st, 2009 on 1:54 pm
that’s great, now do it again for Android so real people can have it.