[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
hello,
We, Tomasu, relpats_eht and I, have working on the DS/GBA port (4.2.1) for
some time now and have been doing so on a separate repository hosted by
Tomasu. I was curious to know if it would be feasible to be able to merge our
work into the main repository or move into a branch there? The reason I ask
is so that we can stay concurrent with changes in SVN instead of having to
every so often merge the changes from the main repo to ours. Most of the
ground work is done and the library compiles for the NDS and GBA. Granted
some things aren't fully working yet but in time we hope to be able to get
them up to speed. I've attached a patch of what changes need to be done to
accommodate the port which covers:
makefile.lst
fix.sh
fix.bat
alconfig.h
The other items that need to be added are (which aren't in the patch):
makefile.nds
makefile.nds.arm7
makefile.nds.arm9
makefile.nds.demo
src/nds/*
obj/nds
include/allegro/platform/aintnds.h
include/allegro/platform/alndscfg.h
include/allegro/platform/alnds.h
tests/nds
makefile.gba
src/gba/*
obj/gba
include/allegro/platform/aintgba.h
include/allegro/platform/algbacfg.h
include/allegro/platform/algba.h
obj/c
obj/misc
In order to compile the port you will need to have DevkitPro, libnds/libgba
and libfat. But this should already be known if you are developing for the
NDS or GBA. :)
--
-juvinious
http://saggui.sourceforge.net - Simplified All Gaming GUI
http://openlayer.berlios.de - Openlayer
Index: makefile.lst
===================================================================
--- makefile.lst (revision 7952)
+++ makefile.lst (working copy)
@@ -393,6 +393,38 @@
src/unix/uthreads.c \
src/misc/colconv.c
+ALLEGRO_SRC_NDS_ARM_7_FILES = \
+ src/nds/ndsarm7main.c
+
+ALLEGRO_SRC_NDS_ARM_9_FILES = \
+ src/nds/ndsfile.c \
+ src/nds/ndsjoy.c \
+ src/nds/ndskeybd.c \
+ src/nds/ndsmouse.c \
+ src/nds/ndssystem.c \
+ src/nds/ndstimer.c \
+ src/nds/ndsdigi.c \
+ src/nds/ndsmidi.c \
+ src/nds/ndssoftgfx.c \
+ src/nds/ndsinfo.c \
+ src/nds/ndshwgfx.c \
+ src/nds/ndsdrv.c \
+ src/nds/ndsmem.c
+
+ALLEGRO_SRC_GBA_FILES = \
+ src/gba/gbafile.c \
+ src/gba/gbajoy.c \
+ src/gba/gbakeybd.c \
+ src/gba/gbasystem.c \
+ src/gba/gbatimer.c \
+ src/gba/gbadigi.c \
+ src/gba/gbamidi.c \
+ src/gba/gbasoftgfx.c \
+ src/gba/gbainfo.c \
+ src/gba/gbahwgfx.c \
+ src/gba/gbadrv.c \
+ src/gba/gbamem.c
+
ALLEGRO_MODULE_VGA_FILES = \
src/linux/lvga.c \
src/misc/modex.c \
Index: include/allegro/internal/alconfig.h
===================================================================
--- include/allegro/internal/alconfig.h (revision 7952)
+++ include/allegro/internal/alconfig.h (working copy)
@@ -56,6 +56,10 @@
#include "allegro/platform/alqnxcfg.h"
#elif defined ALLEGRO_UNIX
#include "allegro/platform/alucfg.h"
+ #elif defined ALLEGRO_GBA
+ #include "allegro/platform/algbacfg.h"
+ #elif defined ALLEGRO_NDS
+ #include "allegro/platform/alndscfg.h"
#else
#error platform not supported
#endif
Index: fix.bat
===================================================================
--- fix.bat (revision 7952)
+++ fix.bat (working copy)
@@ -37,6 +37,8 @@
if [%1] == [msvc8] goto head
if [%1] == [icl] goto head
if [%1] == [watcom] goto head
+if [%1] == [nds] goto head
+if [%1] == [gba] goto head
goto help
@@ -56,6 +58,8 @@
if [%1] == [msvc8] goto msvc8
if [%1] == [icl] goto icl
if [%1] == [watcom] goto watcom
+if [%1] == [nds] goto nds
+if [%1] == [gba] goto gba
echo fix.bat internal error: not reached
goto help
@@ -136,12 +140,27 @@
echo #define ALLEGRO_WATCOM >> include\allegro\platform\alplatf.h
goto tail
+:nds
+echo Configuring Allegro for NDS/DevkitPro...
+echo #define ALLEGRO_NDS >> include\allegro\platform\alplatf.h
+echo include makefile.nds >> makefile
+if [%2] == [--crlf] goto crlf
+if [%3] == [--crlf] goto crlf
+goto done
+
+:gba
+echo Configuring Allegro for Nintendo GBA/DevkitPro...
+echo #define ALLEGRO_GBA >> include\allegro\platform\alplatf.h
+echo include makefile.gba >> makefile
+if [%2] == [--crlf] goto crlf
+if [%3] == [--crlf] goto crlf
+
:help
echo.
echo Usage: fix platform [--crlf] [--nomsvcpaths]
echo.
echo Where platform is one of:
-echo bcc32, djgpp, mingw, msvc6, msvc7, msvc8, icl, or watcom.
+echo bcc32, djgpp, mingw, msvc6, msvc7, msvc8, icl, watcom, gba, or nds.
echo.
echo The --crlf parameter is used to turn on LF to CR/LF conversion.
echo The --nomsvcpaths parameter is used to turn off special MS Visual C++
Index: fix.sh
===================================================================
--- fix.sh (revision 7952)
+++ fix.sh (working copy)
@@ -10,7 +10,7 @@
echo "Usage: $0 <platform> [--quick|--dtou|--utod|--utom|--mtou]"
echo
echo "Where platform is one of: bcc32, beos, djgpp, mingw, qnx, unix"
- echo "mac, macosx, macosx-universal and watcom."
+ echo "mac, macosx, macosx-universal, watcom, gba and nds."
echo "The --quick parameter turns off text file conversion, --dtou converts from"
echo "DOS/Win32 format to Unix, --utod converts from Unix to DOS/Win32 format,"
echo "--utom converts from Unix to Macintosh format and --mtou converts from"
@@ -47,6 +47,26 @@
echo "#define ALLEGRO_MACOSX" >> include/allegro/platform/alplatf.h
}
+proc_fix_nds()
+{
+ echo "Configuring Allegro for Nintendo DS (DevkitPro) ..."
+ echo "# generated by fix.sh" > makefile
+ echo "include makefile.nds" >> makefile
+
+ echo "/* generated by fix.sh */" > include/allegro/platform/alplatf.h
+ echo "#define ALLEGRO_NDS" >> include/allegro/platform/alplatf.h
+}
+
+proc_fix_gba()
+{
+ echo "Configuring Allegro for Nintendo GameBoy Advanced (DevkitPro) ..."
+ echo "# generated by fix.sh" > makefile
+ echo "include makefile.gba" >> makefile
+
+ echo "/* generated by fix.sh */" > include/allegro/platform/alplatf.h
+ echo "#define ALLEGRO_GBA" >> include/allegro/platform/alplatf.h
+}
+
proc_filelist()
{
# common files.
@@ -148,6 +168,8 @@
"macosx" ) proc_fix "MacOS X" "makefile.osx" "ALLEGRO_MACOSX";;
"macosx-universal" ) proc_fix_osx_ub ;;
"watcom" ) proc_fix "DOS (Watcom)" "makefile.wat" "ALLEGRO_WATCOM";;
+ "nds" ) proc_fix_nds ;;
+ "gba" ) proc_fix_gba ;;
"help" ) proc_help;;
* ) proc_help;;
esac