Nintendo DS News
Woopsi v0.29 (NDS misc)

Woopsi is a Nintendo DS GUI library for rapidly creating user interfaces for homebrew software. Modelled after the AmigaOS windowing system.

Release notes:

The major changes this time around are predominantly improvements to the API and new features for developers (new drawing tools such as filled circles, scrolling panels, and so on). The most obvious changes in the demo are the addition of a simple Pac Man demo (ported from a JavaScript game I wrote a while ago) and bugfixes to the scrolling text gadget (it now clips properly). There’s also a debug console that will pop up when you press one of the d-pad buttons with the Pac Mac demo active.

The most interesting change is the addition of an SDL layer that can substitute for libnds. This means that you can create a new SDL project in your IDE, add the “woopsi” source folder to your project, drop the contents of the “sdl” folder into the “woopsi” folder, and immediately start developing Woopsi-based applications for your native platform with all the debugging features of your IDE. There’s now an XCode 3 project available from the SourceForge site that shows this in action – the standard Woopsi demo compiles and runs in OSX.

The SDL version will only work for applications that confine themselves to the Woopsi API. Any apps that use low-level features, such as the RTC or WiFi hardware, won’t work with the SDL version. For those projects you’ll need to continue developing with the usual libnds (PALib optional), devKitPro and emulator setup (unless you’re cunning and develop your GUI separately from your functionality).

Latest changelog:

– Fixes:
– Windows prevented from being dragged out of top of screen.
– ScreenTitle and WindowBorderTop make a copy of the text passed into them.
– BitmapButton’s drawing routine offsets its blit origin by 1 to account for the gadget’s border width if applicable.
– Replaced most of SuperBitmap’s draw(Rect) routine with a call to GraphicsPort::drawBitmap().
– Increased size of window gadgets in demo skin.
– Updated SuperBitmap to use s16 instead of u16 for co-ordinates.
– Text::wrap() correctly wraps the last line of text.
– Fixed more bugs in TextViewer.
– Removed old Debug methods.
– Fixed clipping in SuperBitmap draw routines.
– Fixed all warnings.
– Fixed GraphicsPort clipping – windows were wrapping around vertically when drawn in screens that were dragged down.
– Fixed bugs in setting gadget attributes from skins.
– Window was handling click() even if a child was clicked.
– SuperBitmap::drawFilledRect() was drawing the top line of the rect over itself.
– Removed all left bitshifts from GraphicsPort::clipFilledRect() and replaced with SCREEN_WIDTH multipliers (aid portability).

– New Features:
– Added SuperBitmap::drawFilledCircle().
– ScreenFlipButton uses GraphicsPort for all of its drawing operations.
– Added woopsiRGB() define as shortcut to RGB with alpha bit set.
– Replaced pixel plotting with DMA_Force() in SuperBitmap::drawHorizLine().
– Added SuperBitmap::clipBitmapCoordinates().
– SuperBitmap draw routines clip to bitmap dimensions.
– Added GraphicsPort::drawFilledCircle().
– Ball in Pong demo is now circular.
– Added PacMan demo.
– MultiLineTextBox outputs using the GraphicsPort.
– MultiLineTextBox automatically chooses smallest number of rows if no value (or 0) is given as the parameter in its constructor.
– MultiLineTextBox trims its text to match the number of rows specified in its constructor.
– Added MultiLineTextBox::setAutomaticDrawing() – if set to “false”, draw() must be called when changes are made to the textbox’s text for them to be shown.
– GraphicsPort has a new drawText() function with a length parameter.
– Added Debug console that automatically creates itself when called for the first time.
– Added Debug::printf().
– Changed skinning structs to be more descriptive.
– Added tiny font to debug console.
– Added ScrollingPanel gadget.
– Added SDL layer.
– Added vertical scrolling to MultiLineTextBox.
– Added macros for using the 2nd DMA channel.
– Added check for DMA active flag in SuperBitmap drawing code.
– Gadget class inherits from EventHandler, so any gadget can be subclassed and made to handle events.
– Screen decoration button gadgets have their parent screen set as their event handler.
– Screen decoration button gadgets raise release events to notify their screens of user input instead of calling functions (subclassing aid).

– Broken:
– Vertical alignment in MultiLineTextBox other than top.

http://www.sourceforge.net/projects/woopsi

By with 0 comments
Closed v1.0 (NDS Game)

Ali Banana has dropped his project “Closed”, while Cobain was taking it over.

Changes (according to Mollusk):

updated the sources
added 1 enigma
added click between each one
changed the keyboard delete routine
and only 1 version for fat/no fat instead of 2

There are basically no “visible” changes in this release. More things to come.

http://www.playeradvance.org/forum/showthread.php?t=18350

By with 0 comments
SoKo DS v0.4 (NDS Game)

Cobain has updated his Sokoban remake for Nintendo DS. The main post has not been updated yet, but the link to v0.3 already points at the correct file.

There are bugfixes along with a retouched menu.

http://www.playeradvance.org/forum/showthread.php?t=12060

By with 0 comments
Staris v0.4 (NDS Game)

Sephiroth_FF7 has improved his game Staris once again. Grab v0.4 from it’s official release thread.

http://www.dev-fr.org/projets/(ndsjeu)-staris/

By with 0 comments
Win2DS DS2Win v0.80f (NDS Application)

This is an unofficial build of the Win2DS client and server, both the client and server have been updated with new code to enhance the speed and quality of the service.

Changes:

0.80f “ultra-licious”
server – very yummy new icon (thanks TPDK!)
client – ULTRA speed option added for the (current) maximum possible frames per second
client – applied dswifi hack for faster TCP communications (thanks masscat!)

http://www.1emulation.com/forums/index.php?showtopic=24834

By with 0 comments
SvSIP v7 (NDS Application)

SvSIP is a software that you allow to use your Nintendo DS like phone. For this, it uses SIP protocol. This protocol is an open standard for creating, modifying, and terminating sessions with one or more participants. It is widely used as a signaling protocol for Voice over IP.

This software is under development, it currently allows:
– to call to number with figures,
– to receive calls,
– to question IVR by using DTMF tones.

Changes:

Update libnds, dswifi et pjsip libraries. Starting implementation of graphic mode for top screen. Add options ICE (Interactive Connectivity Establishment) and nameserver (DNS SRV resolution for SIP servers)

Thanks to http://www.dev-fr.org for the news. Seems those have slipped under our news radar in November.

http://svsip.free.fr/spip.php?rubrique12

By with 0 comments
Oric emulator on the way (NDS misc)

While having a chat with Alekmaul, a well known Nintendo DS homebrew coder in the french community, it turned out that he is working on an Oric emulator for the Nintendo DS.

The emulator itself is ready, but needs some speed optimizing. Expect a release sometime in the future.

Thanks to Alekmaul himself for some background information 🙂

http://www.portabledev.com/

By with 0 comments
Plasticshell WIP (NDS Game)

SaruCoder has posted a video of his homebrew game Plasticshell. The gist of the project was to see how platformers (such as MetalSlug) would do if they were played sideways on the DS.

Feedback can be left here: http://forum.gbadev.org/viewtopic.php?t=14818

http://www.youtube.com/watch?v=gXAtOYcAcbs

By with 0 comments
Yoshis Labyrinth (11-01-2008) (NDS Game Techdemo)

An early preview of Circus’ new game “Yoshis Labyrinth” seems to be out. Grab it at it’s release thread.

http://www.playeradvance.org/forum/showthread.php?t=17705

By with 0 comments
Staris v0.3 (NDS Game)

Staris is a costumize Tetris game (shapes) for the Nintendo DS coded by Sephrioth_FF7.

http://www.dev-fr.org/projets/(ndsjeu)-staris/

By with 0 comments