GP32 Mr.mirkos Sdk Replacement


Hy,

updated the SDK to Version 0.3.

New Features:
- a lot bugfixes in all modules ( over 50, cant count them )
- SMC Read and Write support, with example
- added double buffering of Screen example

In my opinion the basic options in the SDK are now complete.
All major functions are working now.
There are now 7 examples, showing How to use the SDK.

ToDo:
- Sound mixer, bugs, new features , ...

GET IT NOW :)

http://home.t-online.de/home/mirkoroller/gp32/SDK03.tgz
 
Hi,

I have a problem to download this SDK.

www.mirkoroller.de can't DNS resolved.

please send SDK to me via email to 'piiix@passmail.to_nospam'

and link SDK on other http server.

thankyou for your support,

- nanjungho / Korea
 
mr.mirko posted on Feb 2 2004 at 01:53 AM said:
- a lot bugfixes in all modules ( over 50, cant count them )
ouch! me hates bugfixing :p

How are you going to document it? doxygen?

@nanjungho / Korea: welcome dude! :p
 
Last edited by a moderator:
mr.mirko posted on Feb 2 2004 at 05:03 PM said:
Hy, i setup a WEB Page with all my GP32 stuff,

here you can donwload always the latest version of the SDK Replacement,
and all other projects iam working on.

mirkos WebPage
Hi ! I'd like to try your SDK, but i really don't know how to set up a compiler and the tool that i need to compile the example ...

I've only used devkitadv from now ...

Can you help me ? Thank you !
 
Last edited by a moderator:
Q: How to Cross Compile gcc 3.4, and use my SDK lib ??
A: Read on.

Download:
ftp://ftp.mpi-sb.mpg.de/pub/gnu/mirror/ft...ils-2.14.tar.gz
ftp://sources.redhat.com/pub/newlib/newlib-1.11.0.tar.gz
ftp://ftp.gwdg.de/pub/misc/gcc/snapshots/...0040202.tar.bz2
And of course my SDK :)

mkdir gp32
mv binutils-2.14.tar.gz newlib-1.11.0.tar.gz gcc-3.3-20040202.tar.bz2 gp32
cd gp32

declare -x CFLAGS="-s "
tar xvfz binutils-2.14.tar.gz
cd binutils-2.14/
./configure --target=arm-elf --prefix=/opt/gp32_gcc && make
make install
cd ..

tar xvfz newlib-1.11.0.tar.gz
tar xvfj gcc-3.3-20040202.tar.bz2
cd gcc-3.4-20040202
ln -s ../newlib-1.11.0/newlib .
mkdir build
cd build

CFLAGS="-pipe -s "
../configure --target=arm-elf --prefix=/opt/gp32_gcc --with-cpu=arm9 --disable-threads --enable-languages=c,c++ --with-newlib --disable-multilib --with-gnu-ld --with-gnu-as

#The following is ONE LINE
make all \
CFLAGS_FOR_TARGET="-DTAG_CFLAGS_FOR_TARGET -s -march=armv4t -marm -msoft-float \
-ffast-math -fshort-enums -mstructure-size-boundary=8 -O2" \
CXXFLAGS_FOR_TARGET="-DTAG_CXXFLAGS_FOR_TARGET -s -march=armv4t -marm -msoft-float \
-ffast-math -fshort-enums -mstructure-size-boundary=8 -O -fno-implicit-templates" \
LIBCFLAGS_FOR_TARGET="-DTAG_LIBCFLAGS_FOR_TARGET -s -march=armv4t -marm -msoft-float \
-ffast-math -fshort-enums -mstructure-size-boundary=8 -O2" \
LIBGCC2_CFLAGS="-DIN_GCC -DCROSS_COMPILE -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -W -Wall \
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -Dinhibit_libc \
-fno-inline -DTAG_LIBGCC_FLAGS -s -march=armv4t -marm -msoft-float -O2 -ffast-math -fshort-enums -mstructure-size-boundary=8"

make install
cd ../..

Now you arm cross compiler is installed in : /opt/gp32_gcc
You can now remove the gp32 dir.

Now set a Path to the new arm-elf-* files
export PATH=/opt/gp32_gcc

You can use the SDK03 from whereever you want.

Mirko
 
Hi, all

I need simple timer API.
How can I implement Timer or GpTickCountGet() like function?
Show me the simple way plz,

regards,

-nanjungho

PS:
Mr.Mirkos's SDK very nice. It works fine with ArmAds 1.2. :)
Thanx,
 
ok im trying to compile you sdk against ads...
but there is some problems with the smc lib

from "smf_io.c"
for (i = 0; i < read_size; ++i, ++p_buf)
{
*p_buf = SM_READ_DATA(drv_no);
}
with #define SM_READ_DATA(drv_no) ({unsigned char data; rPDDAT &=~ 0x100; data = (rPBDAT & 0xFF); rPDDAT |= 0x100; data; }) from "smf_conf.h"

how could this works??? your marco for SM_READ_DATA nevers return the unsigned char data...

for the compiler...
*p_buf = ({unsigned char data; rPDDAT &=~ 0x100; data = (rPBDAT & 0xFF); rPDDAT |= 0x100; data; }) ... this means nothing (what's assigned to *p_buf???)

is this really working for you??? because its very weird...
i think you should make function for this (no a simple define)
 
mr.mirko posted on Feb 3 2004 at 06:08 PM said:
Q: How to Cross Compile gcc 3.4, and use my SDK lib ??
A: Read on.

[snip]
I guess this applys to not to windows, right? any help for this?
 
Last edited by a moderator:
opoos,

I'm not tested smc library,

I just modified crt0.S and then link with Mr.Mirkos's ready made SDK library(*.a),

some sample works good, but fire and smc example have some problam,

I can't fix it, I just beginning for ARM .

Anyway, I hope u solve them soon..

keep going..

- nanjungho
 
to loki666
with #define SM_READ_DATA(drv_no) ({unsigned char data; rPDDAT &=~ 0x100; data = (rPBDAT & 0xFF); rPDDAT |= 0x100; data; }) from "smf_conf.h"

I've recompiled and tested smc library for ADS1.2
Maybe *p_buff = data requared.
so I made function like below

unsigned char SM_READ_DATA()
{
unsigned char data; rPDDAT &=~ 0x100; data = (rPBDAT & 0xFF); rPDDAT |= 0x100; return data;
}

and redefined #define SM_READ_DATA(drv_no) SM_READ_DATA()
now Mr.Mirkos's smc example works fine.

and smf_uni.c has Korean double byte char to unicode function support,
In my think that function is useless for not Korean.
You can remove smf_uni.c file from project.
and redefine need somewhere..

#define SM_MBS_TO_UNICODE strncpy

that's all.
and thanx for reading my lame english.
regards,

- nanjungho / Korea
 
Mirko, I was wondering if you knew whether your SMC functions are faster than the official SDK?

One of the problems I have with reading from the SMC is the speed is so slow, and the functions are blocking so I can't go do something else with the cpu whilst waiting.

Is it possible to have a non-blocking read/write with the SMC? :)
 
thanx nanjungho for your help, i removed the unicode code, and its still working fine :) And it saved a few bytes... :)

RobertJ: No, the cpu is not blocked while reading from smc card, you can still use irqs and DMAs, it it possible to read a mp3/ogg in 4/8 kb blocks, and output the sound.
 
Mirko, any chance of some C sample code for IRQ/DMA routines, for example something that would be useful for being called regularly to update the display. check the audio buffer isn't running out, read controller inputs? :)

The equivalent of the GpTimer functions into your SDK would be a great addition!
 
Hy,

just a remider, i updated the SDK to Version 0.4 :)

- removed unicode from smc ( the smc lib gets 10kb smaler )
- SDK now compiles with ADS1.2 ( thanx nanjungho )
- added a new Example, its my conversion of the nspmod lib,
You can now easy playback modfiles with the SDK :)
- of couse some bugfixes ...

ToDO:
Iam hardly working on a new soundcore, if its ready, you can mix
unlimited samples at the same time :)

cheers,
Mr.Mirko

http://mirkoroller.de/gp32
 
just great! keep on going!
you already set up a road map or something? future features?

nspmodlib could be easier to use, remember CHN's modlib is easy as hell..

Code:
MODPlay_Init ( &mp );
    MODPlay_SetMOD ( &mp, sonorous );
    MODPlay_Load ( &mp, "gp:\\your.mod" );
    MODPlay_Start ( &mp );
 
synkro posted on Feb 9 2004 at 01:23 PM said:
just great! keep on going!
you already set up a road map or something? future features?
Yes, there are a lot of things i like to add:

8Bit Grafik mode with palette loading support
unzip support, to use zipped data easy
Selectable fonts 7x7 8x8 and 9x9 size
basic drawing functions ( point,line,... )
sound mixer with unlimited voices
smaller smc lib

Its a lot work, but i like to code it :)

Lets see how mutch free time, porting mame, offers me :)
 
Last edited by a moderator:
Back
Top