More Homebrew on Nintendo DS?

I think there's been a huge missed opportunity for Nintendo over the years. Instead of making it easy for home brewers to write stuff for their hardware they do everything in their power to lock it down. I never could understand why Nintendo didn't embrace the home brew community. I understand the issues with piracy but if they made the hardware available for custom apps then perhaps there wouldn't be a need for hardware like the R4.

I actually really liked the GBA, since it's what got me started in the home brew scene, and then of course, the Nintendo DS. Writing Warhawk DS in 100% ARM ASM with Flash (with graphics by Lobo and music by SpaceFractal) was some of the most fun I've ever had and my first major collaboration. I think schools should be teaching kids ASM using the Nintendo DS. It is such a great way to learn low level programming and assembly. NDS is the last hardware, I believe, to support the 2D sprite system (based in part on the NES hardware), and in addition introduced basic 3D hardware. With Warhawk DS we used the 2D hardware while smealum's impressive Arsenal DS used the 3D hardware. I think later Nintendo hardware removed the 2D system which is a great shame as it's such a great way to learn game programming.

Incidentally we did get a chance to play with the NDS's 3D hardware when we started playing with Jungool (originally called Triball). Unfortunately though with the limitations of the hardware it didn't fit well with that sort of game (Box2D physics / large painted backgrounds rather than tiles). But not only did we use the NDS for an early prototype of Jungool we also started an early version of Windoze Solitaire on it. Both of these games ended up being ported and released to Apple's iOS.

Over the years it has got to the point where I've given up on Nintendo and do not want to support them anymore. I don't like closed systems. I've also moved away from iOS to Android for the same reason. But as far as writing games both Flash and I have moved on from ASM / C++ to C# and Unity. That being said with hardware like the NEXT there are still opportunities to work on limited hardware. For me personally though I want to concentrate on cross-platform engines and not dedicate myself to any particular company or hardware.

I do understand the lure of the NDS and so I can't really knock it. It's just a shame that unlike most other platforms Nintendo doesn't seem to think budding developers are a valuable asset to have.

Manic Miner LL

The tale of Miner Willy and his incredible adventures in the mines, and then the mansions, of Surbiton is legend. But like all legends, it doesn't tell the whole story.

Most people know Willy simply as a digger who got lucky and lived happily ever after in decadent luxury. Far fewer know the secret - suppressed for quarter of a century by the government - of how he also saved Planet Earth from alien invasion.

It wasn't until an eccentric but dedicated historian writing a paper for a renowned academic journal (Retro Gamer issue 63) pieced together the complete saga of Willy's heroic exploits from fragments of scattered evidence - in the form of obscure retellings of the 'Manic Miner' folk fable in ancient languages readable only via long-obsolete machines - that the whole truth was finally revealed.

Welcome to Manic Miner - The Lost Levels!

Detective DS

London, 1974. You are a famous Scotland Yard Detective who must solve the murder of the rich aristocrat Angus McFungus, who’s body has been discovered at his home at 427 Park Lane. Arriving at the residence you soon discover that this will not be a simple ‘open and shut’ case, and will take all your finely honed detective skills to solve. Can you put your finger on the killer?

This is a remake of the 1986 C64 game by Sam Monthorpe for the Nintendo DS. Charcters were created by Paul Jay and the plot was cunningly devised by the Magnificent Seven.

Detective DS Update

We've added a new character to the game who's a ghost that haunts the mansion. Just a new touch to the original game. There's also two extra locations not found in the original. Lobo did a great job on this and they are seamless. I don't want to give much more info about it because for those people who have completed the original game have an extra challenge.

The good thing about setting the global sprites to bitmap mode is you can use both tiled and bitmap sprites.

Anyway I've improved the collision map detection and general way the character moves. Mainly by using floating numbers and rounding (using round, floor or ceil as needed). It feels perfect (to me anyway) now, so I'm happy with the way that works. Now I have just added all the doors as attachments to the levels.

I'll attach a picture showing what I mean. Flash and I used the same technique for Warhawk and again in MMLL. This allows us to dmacopy the section of the map over the visible map to animate it. I've done a slightly different method to describe the location because unlike Warhawk each room can have different animated objects. I have described these objects in the colmap's. So each tile is given an id and during initialization the x,y and width height (aka RECT struct) of tiles with the same id can be calculated and thus animated as needed.

Oh and Flash came up with the idea of animating the clock in the clock room. I thought it was a great idea and gives me a chance to use the pixel drawing code from earlier. So yeah the clock will show the correct game time 🙂