Dingoo Platform Independent Native Sdk


flatmush

Member
Joined
Feb 29, 2008
Messages
132
I've combined approaches from multiple sources to create a platform independent Native Dingoo SDK.
It contains the source for all the tools used to create it and contains sample applications, libc source code and makefiles to show users how to simply and cleanly make applications for the Dingoo A320.

It also contains clear instructions on how to install and setup Cygwin and scripts/programs to perform most of the installation hassle free.

It contains a program to fix the no CD inserted into drive error with Cygwin to allow the toolchain to work on laptops/computers that don't have a Drive labeled D in windows.

Included samples which can be compiled with a single make command on either windows or Linux include:
* AstroLander
* 3D Cube Demo
* Zaxxons Hello World


Any thoughts or improvements are appreciated as I want to make this everyone's SDK.

The SDK can be downloaded from here.

The Google Code Project page can be found here, looking for contributors.

The SDK download is mirrored here but please only use it if google-code is down.

Edit: Damn I spelled independent wrong :(
 
fishybawb: not yet but I might upload some soon just for you, I also contacted other dingoo native devs to get them to contribute so they may add something too.
I have got a sample of audio but it's pretty poo at the minute so I'll need to find some time to polish it up a bit.

Reesy: Thanks.
 
flatmush said:
fishybawb: not yet but I might upload some soon just for you, I also contacted other dingoo native devs to get them to contribute so they may add something too.
I have got a sample of audio but it's pretty poo at the minute so I'll need to find some time to polish it up a bit.

That would be great, thanks :)
 
Last edited by a moderator:
I fixed the linker script problem and I've released revision 6 which contains some minor changes and the MineSweeper sample.
You can download it from the updated link at the top.
 
Thanks for your hard work Flatmush! I have used your MineSweeper example to get started with my own programs and I've had no problems whatsoever :)

@Fishybawb There is an audio example on, iirc, the dingoonity forums. I have the example source saved but I can't find a link to the forum page right now..

Anyhow, thanks again Flatmush! :)
 
Version 114 is released, everybody using the SDK should update to this version since it uses patched code to allow it to run on HK dingoos too, it also decreases the loading time of APPs on normal dingoos.

The download link at the top now points to the updated download.
 
fishybawb said:
Wow, this sounds good, thanks for working on it flatmush :)

Are there any examples for audio?

I've just uploaded revision 18 which now contains multi-threaded audio and an example of it's use, the audio isn't complete yet but it's functional and efficient.
 
Last edited by a moderator:
Just to let people know this project is quite active at the minute, we have 2 new contributors and updates are happening fairly regularly so anybody using this should regularly update their installation from google-code.
 
Hi!,

flatmush said:
Just to let people know this project is quite active at the minute, we have 2 new contributors and updates are happening fairly regularly so anybody using this should regularly update their installation from google-code.

I don't still have my dingoo, but mate, this seems a pretty good work. Thanks.

HexDump.
 
Last edited by a moderator:
OK, everyone who hasn't updated yet should update to r94, it's a big change as you can see on the google-code (I'm not repeating stuff here). The links at the top are updated.
 
looking at your source, you were wondering how to register an handler for an interrupt :

int request_irq(unsigned int irq, void (*handler)(unsigned int), unsigned arg);
void free_irq(unsigned int irq);

not sure if they're available publicly. You cannot request an already requested irq (you need to free it first), so hooking one is not possible unless you disassemble them to find how to access the irq handler array.
 
hlide said:
looking at your source, you were wondering how to register an handler for an interrupt :

int request_irq(unsigned int irq, void (*handler)(unsigned int), unsigned arg);
void free_irq(unsigned int irq);

not sure if they're available publicly. You cannot request an already requested irq (you need to free it first), so hooking one is not possible unless you disassemble them to find how to access the irq handler array.

Yeah thanks, recently we figured out that the all code executed from the native OS is already in kernel mode, so I've disassembled the jump table and had a look, should be able to hook interrupts properly with a bit of twiddling when I get some time.
 
Last edited by a moderator:
Back
Top