Java4NDS alpha R2 by davr
http://blog.davr.org/

I took Torlus's Java port for GBA and modded it to work on NDS with DLDI.

To use this demo, place kvm.nds, all the *.class files, and all the *.bin files on the root of your flashcart.
Run kvm.nds, then select a .class file to run. There are a few examples testing various stuff.

Compiling your own apps:
* Use the standard javac from Sun, just like with any java app
* Target as early a version of Java as possible. I'm not sure what the KVM 
  supports, but I've been targeting 1.3/1.1 and it seems to work fine.
* Add 'classes.zip' to your classpath - You can open this, it contains the source to the nds/* classes,
  I've added a basic wrapper around some of libnds.
* see 'rebuild.sh' for how I built the examples


History:
R1: Initial release. Barely did anything.
R2: A basic wrapper around parts of libnds
R3: New features added by Ole:
- fixed the CLDC implementation (timer,  memory size, system properties) 
- added support for reading of the PNG images (code taken from the PhoneMe project)
- implemented native functions for rendering the basic graphics primitives on the screen
  (lines, rectangles, triangles, images) 
- added support for accepting the JAD files in the application browser 
- added the core part of the Pstros MIDP library 
- added VideoTest example to show how to draw on the screen
- added '_rebuild.bat' to show how to build and preverify the class files. 
  Note WTK installation is required.
R4: Nokia UI api partially implemented 
- drawPixels and getPixels implemented for the 4444,444,8888 and 888 pixel 
  formats with full manipulation support (mirroring and rotation)
- note: system.dsf font is required for midp text rendering. Keep it in the same
  directory as the kvm.nds

R5: fixes
- added HttpConnection class to satisfy dependencies of some applications
- implemented drawing of the ellipses (note: draw/fillArc is not fully  functional yet) 

R6: new configuration options can be stored in the jad file (case senitive !)
Note: none of the parameters is manadatory. If you don't specify any of the
parameter then the default values are used.

NDS-resolution: WWWxHHH
 - sets the dimensions of the screen to width WWW and height HHH.
   Maximal resolution is 256x256. Example: 
   NDS-resolution: 176x208 

NDS-screen-X: XXX
 - sets the screen X position (negative values are valid). By default the X position 
  of the screen is set to center the image. Example:
  NDS-screen-X: 0

NDS-screen-Y: YYY
 - sets the screen Y position (negative values are valid). By default the Y position 
  of the screen is set to center the image. Example:
  NDS-screen-Y: -12

NDS-key-<button>: <key>
 - remaps the NDS button <button> to the phone key <key>
   valid <button> values: A,B,X,Y,L,R,Start,Select,Left,Right,Up,Down
   valid <key> values: keyNum0, keyNum1,..., keyNum9, keySoftLeft, keySoftRight,
      keyFire, keyLeft, keyRight, keyUp, keyDown, keyStar, keyCross
   Examples:
   NDS-key-A: keyNum5
   this line will remap NDS button A to press of the nuber [5] on the phone

   NDS-key-Start: keySoftLeft
   this line will remap NDS button Start to press of the Left soft key of the phone



default MIDP key mapping:
Left Soft key  - left pad 
Right Soft key - right pad
Cursor keys    -  d-pad
Fire     - (B) button <br/>
key [1]  -  (Y) button
key [3]  -  (A) button
key [0]  -  (X) button
key [#]  -  (Start) button
key [*]  -  (Select) button

