Skip to content
Lorenzo Mancini edited this page Apr 8, 2020 · 4 revisions

Introduction

This work introduces a concrete way to expose Nintendo DS hardware to Python; it uses the Pyrex extension language to produce valid libdns wrappers in form of Python modules. It has been built upon the original port of Stackless Python 2.5 port to Nintendo DS, by Richard Tew. It has been updated by Liu Zhenhai to build with the latest version of the toolchain.

Some sections of libnds have been wrapped, including framebuffer access, touchscreen reading, console emulation, irq handling and 3D functions.

Also see Project History for a summary of the changes before the project went under git.

Installation

  1. Download dspyenv.zip: this archive contains the complete environment required to run Python programs on the Nintendo DS;
  2. Unpack dspyenv.zip, and copy the contents of the resulting dspyenv directory to the root of your homebrew storage; ensure that both NDSPython.nds and the python/ directory are at the root of your homebrew storage;
  3. Start your Nintendo DS and run NDSPython.nds: the file main.py located in the python/ directory will be automatically launched.

Example scripts

While you wait for a tutorial, please check out these example scripts. To execute them, just save one of them as /python/main.py on your homebrew storage device, and execute /NDSPython.nds.

Downloads

  • Slides used during the talk at !PyCon Uno 2007 (Italian only!) - PyCon-DS.pdf
  • Sources: checkout then build, following the README

Contact

Lorenzo Mancini [email protected]

Clone this wiki locally