Robots w/Lasers

August 8, 2007

Java for NDS?

I know what you’re thinking…”That’s a horrible idea and you’re a horrible person for suggesting it!”

The main problems with Java on DS:
1. Interpreted languages are slower, the overhead is bad on a slower embedded platform
2. No direct memory access. Almost all of the DS hardware is interfaced by reading and writing directly to specific memory locations
3. No primitive unsigned 8-bit types. What were they thinking?

But…I went ahead and did it anyway, just for fun. I didn’t start from scratch, I took Torlus’s KVM port to GBA and used that as a base for getting it to work on DS. Right now, when it starts, you pick a .class file, and it will run it! In addition, using KNI, I’ve written a basic wrapper around parts of libnds, enough to read input from the touchscreen/buttons, and to move sprites around.

Download here: java4nds_r2.zip — includes the compiled KVM.nds, some examples along with source code, and instructions on making your own .java files.

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.
Don’t forget to DLDI-patch the kvm.nds

Filed under: Java,Nintendo DS,Software — davr @ 8:36 am

August 1, 2007

DS85 with DLDI support

Someone has added DLDI support to my old TI-85 Emulator. I don’t have any exotic devices, so I can’t say how well it works.

You can download it here: ds85_r3.rar

There’s a forum thread about it going on here: teamcylops.com

Let me know if it works/doesn’t work on your particular device.

Filed under: DS85,Nintendo DS,Software — davr @ 12:09 pm

July 17, 2007

Heart Monitor for NDS

I have a prototype of the hardware side of my Nintendo DS-based heart rate monitor. I’m using the awesome DSerial to interface an IR LED & IR phototransistor to the DS.

It works ok, but the signal is not strong enough. Slight movements can make the data unusable. I think I need to work on either amplifying the signal, or increasing the sensitivity of the DSerial. Also I need to rig up some velcro to stick the sensor to your finger, so you don’t have to hold it in place.

Here you can see my “sensor”:

Here is the connection to the DS:

And finally, here is a screenshot of the DS’s lower screen, which is just graphing the data coming from the DSerial’s ADC:

Check out this movie of it in action: dserial_heart_monitor.avi (1.5MB)

Filed under: DSerial,Hardware,Nintendo DS — davr @ 12:29 pm

July 1, 2007

Fast Intel SSD

The Intel X25-M SSD is pretty much the fastest on the market. You can buy it by clicking here:

Intel X25-M Mainstream 80 GB SATA 2.5-Inch MLC Solid State Disk (SSD) SSDSA2MH080G1C5

Check out this benchmark at anandtech.com, especially the random write performance. It completely blows away the competition.

Filed under: Uncategorized — davr @ 8:28 am

June 29, 2007

Hardware I/O for Nintendo DS


A neat-looking device for DS homebrew development is natrium42‘s DSerial. The features include

  • 8051 microcontroller running at 24MHz
  • Reprogrammable from DS, premade firmwares available
  • Free development tools available
  • 18 GPIO lines, 2 status LEDs
  • UART with RS-232 level converter (can be disabled)
  • Full-speed USB 2.0 device (does not support USB host)
  • PWM and ADC available
  • 2D tilt sensor

I’m hoping to make some cool stuff with it…my first plan is to build a portable heart monitor, that can also tell you how stressed-out you are, based on your ‘coherence’ (essentially you take the FFT of your heart rate over time, and you want most of the energy to fall near to 0.1Hz)

Filed under: DSerial,Hardware,Nintendo DS — davr @ 12:37 pm

May 7, 2007

Updates for Flex Builder 2 on Linux

If you are looking to run Flex Builder 2 on Linux, see my original post.

I’ve made two minor updates for people using Flex Builder 2 on Linux. The first is to eliminate the annoying “Incorrect flash player installed…you have 0.0.0.0, and need 9.0.0.0″ that pops up every time you run a project. To fix it:

  1. Download debugui.jar
  2. Overwrite the file eclipse/plugins/com.adobe.flexbuilder.debug.ui_2.0.155577/debugui.jar with the downloaded one

The second minor update: I’ve noticed some very annoying bugs in the linux flash player (all reported to Adobe now of course), but in the mean time, I’ve been using the windows flash player under WINE, which does not have the same bugs. If you want to do this (which will probably greatly reduce performance), all you really need is to:

  1. Make sure you have WINE installed correctly
  2. Download the windows standalone projector debugger
  3. Write a wrapper script that calls wine on the windows .exe, this wrapper will then be called by flex builder. You can see my sampe script to start (it’s very simple, just need to adjust for your paths/filenames).

In other news, I’m working on my first AS3 application that is above the tech-demo level! Well…so far haven’t gotten much, but I’ve got code that compiles on both Linux Flex Builder 2, as well as Windows FlashDevelop, with no changes (yay!). You can see what I have so far, but not it’s not very exciting yet.

Filed under: Flash,flex — davr @ 12:08 am

April 26, 2007

Open Source Flash FUD

Every time someone mentions open sourcing the flash player, someone always jumps up to defend Adobe (formerly Macromedia…I’ll always think of Flash as a MM product). There are many good reasons why they may not want to opensource the runtime, but the fear of having multiple incompatible runtimes is not one of them.

The ‘OMG incompatible versions’ thing is just a bunch of FUD. If Adobe kept control of the player, there would not be any issue with this. Sure, you might have 1 or 2% of the users branching off to make their own versions, but they already do this anyway! (see gnash, also that other opensource flash player). If the official player were open sourced, then the branches would be much more compatible. Gnash lacks in a lot of areas, and only supports up to F7, imagine if they could reuse code from the official player. So you would actually gain more compatibility by opensourcing, not less!

Notes on Blair’s post:

  1. Microsoft’s JVM was not made by branching an open-source copy of Sun’s JVM. It was made by microsoft, and they PURPOSEFULLY made it incompatible, to try and encorage platform lock-in. After the whole suit from Sun, a few years later they made their own language / platform (C# / .NET), and achieved the same goals. (Platform lockin. No, Mono is not a good substitute for 90% of apps)
  2. Microsoft’s JVM did not kill Java in the browser, Java sucking is what killed Java in the browser.
  3. Sun’s JVM just went GPL recently, and there hasn’t been an explosion of dozens of incompatible JVMs. In fact, off the top of my head, I cannot think of a single JVM besides the official one, because that’s what I always use, on windows, mac, and linux. Sure there are different versions, but the same applies to flash, and to any non-dead technology.

(Personally I do not like the GPL, it has some real problems, but that’s a topic for another day)

For the case of the flash player, imagine that we still had ExpressInstall, and that it always pointed at the official Adobe upgrade site. The only people who might even possibly install an incompatible version, are the fringe users, and they would be fully aware of what they are doing. The average user who just sees ‘New version of flash, click OK’ would always have the official version.

I wish people would stop resorting to this argument against flash being open source. Why not just use the real ones?

  1. Adobe makes lots of money selling flash player to device manufacturers.
  2. Adobe uses expensive proprietary audio and video codes which they cannot open source.
  3. Probably a few others as well, but the above two are the main ones in my mind.
Filed under: Flash — davr @ 7:32 am

April 22, 2007

Flex Builder 2.01 under Linux

UPDATE ON THE UPDATE: Flash Builder for Linux has been CANCELLED. There just isn’t a big enough Linux market for Adobe to dedicate so much effort to supporting the third platform. Eclipse is written in Java, true, but it never really lived up to the promise of “write-once run-anywhere”.

Adobe will no longer be investing in the development of a version of Adobe® Flex® Builder™ or Adobe Flash® Builder™ that runs on Linux operating systems. This decision is specific to Flash Builder and does not affect other Linux activities for other Adobe products. Linux developers will still be able to use the SDK from the line command to build Flex applications.

Source

UPDATE! Official Flex Builder 3 for Linux!!
Check it out here!

The stuff below is left here for posterity’s sake…but you probably want the link above, and forget everything below…


With a bit of tweaking, I’ve gotten Flex Builder 2.01 working under Linux. Everything seems to work, including debugging, except for the Design view.

Here is a brief outline:

  1. Download and extract Eclipse. I used Eclipse SDK 3.2.2 NOTE: I could not get it to work when eclipse was installed in /usr. Unless you can figure it out, do not install eclipse via your OS, simply download the .tgz and extract it to your home directory.
  2. Download and extract the free Flex 2.01 SDK.
  3. Download and install the Flex Charting Components (same link as above) Run the installer by java -jar flex_charting_2_installer.jar and install it to the root of your Flex2 SDK directory.
  4. Download the Flash 9 Debugging player
    1. install the plugin into your browser by running plugin/debugger/install_flash_player_9_linux/flashplayer-installer.
    2. (as root) copy standalone/debugger/flashplayer to /usr/local/bin
    3. create a symlink for gflashplayer, (as root) ln -s /usr/local/bin/flashplayer /usr/local/bin/gflashplayer
  5. Download the FlexBuilder 2.01 Plugin for Linux (mirror)
    1. Extract this to the root eclipse install folder. It will create files in the configuration, plugins, and features directories which are already part of eclipse.
    2. Open eclipse/configuration/com.adobe.flexbuilder/flexbuilder2.xml and change the value of <sdkpath> to point to the root directory where you installed the Flex 2 SDK
  6. (OPTIONAL) Fix the annoying ‘Incorrect flash player installed’ popup every time you run your project:
    1. Download debugui.jar
    2. Overwrite the file eclipse/plugins/com.adobe.flexbuilder.debug.ui_2.0.155577/debugui.jar with the downloaded one
  7. (OPTIONAL) Use the windows flash player with WINE instead of native linux flash player.
    1. Make sure you have WINE installed correctly
    2. Download the windows standalone projector debugger (see link at top for player downloads)
    3. Download this flashplayer script and place in your path, as well as rename the linux player so it doesn’t interfere. You probably still need the symlink to gflashplayer as above.
  8. (OPTIONAL) If you already use eclipse, it’s possible it wont see the new Flex plugins. Simply run the following command to get eclipse to search for your newly installed stuff:
    1. “./eclipse -clean”

That should be it! The only problem I’ve had is switching to design view messes everything up. Just stay in source view and you’ll be fine. Also, whenever I try to debug, it says I don’t have flash 9 installed, but I just press continue, and debugging works like normal (catching traces, breakpoint on crash, etc).

Thanks to this chinese guy’s post for figuring it out. He has a few more posts on the issue ([1], [2]), but I didn’t seem to need any of the info in them.

Somewhat related, this post talks about other ways of using Flex 2 / AS3 under linux.

Filed under: Flash,flex — davr @ 11:14 pm

April 20, 2007

Apollo Intrinsic Classes

UPDATE: Complete & accurate versions can be found by brainy at flashdevelop forums, much better than my unfinished attempt.

I have written a quick & hacky script to parse the to create intrinsic classes. It is not perfect, and they still need a bit of cleanup by hand (imports, a few syntax errors here and there). But I’ve gotten a good 90% of the hard work done.

These would be useful for anyone using a IDE besides Flex Builder, in order to get autocomplete etc.

Please, if you do clean them up, post a comment, and I will link it here, so everyone can use them.

Download: ApolloIntrinsic_draft.zip

UPDATE: I tried again, this time by parsing the bytecodes from the SWC. There’s only one problem, no paramater names (but I do have paramamter types). The cool part about this way, is that it shows all the undocumented and private methods as well!

UPDATE AGAIN: was missing some classes due to not parsing dynamic or final classes.

Download: ApolloIntrinsic_draft3.zip

Filed under: Apollo,Flash — davr @ 8:01 am

April 10, 2007

Minor note about saving in Draw

If your card is not supported by Draw, but it does have SRAM (that is, a slot-2 card), then use the save to SRAM option in Draw. Transfer the save file to your PC, and try renaming it to .png and see if it opens.

If it does NOT open, try this website: Savegames convertor and convert your file to the “Supercard One / Ninjapass / DSLinker (.sav)” format, and then try renaming to PNG.

Filed under: Draw,Nintendo DS — davr @ 9:41 am
« Previous PageNext Page »

Powered by WordPress

Bad Behavior has blocked 1159 access attempts in the last 7 days.




Paid Advertisements
Whiplash Claims - Friendship Bracelets - Jewellery - Whiplash