fincs / FeOS

Operating system for Nintendo DS

Home Page:http://feos.mtheall.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

add 3D support

mtheall opened this issue · comments

3D is a major missing component.

Should this be implemented in the same manner as POSIX-emu?

I have already planned what the 3D support will be like, it's just that lately I haven't had the time to actually do it. Basically, 3D support will be a separate lib à la feoswifi (which is a port of dswifi) called feos3d (which will be a port of libnds' 3d functions). For that, I first need to create some DS HW math functions (-> FEOSMATH), which said libnds 3d code needs. I'll look into working on 3D support this weekend.

I already started porting à la feoswifi. So if you want me to defer to your work, just let me know.

/FeOS/sdk/userlib/feos3d/include/dshwxtra.h: In function 'void swiCopy(const void*, void*, word_t)':
/FeOS/sdk/userlib/feos3d/include/dshwxtra.h:158:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
/FeOS/sdk/userlib/feos3d/include/dshwxtra.h:165:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
/FeOS/sdk/userlib/feos3d/include/dshwxtra.h:175:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
/FeOS/sdk/userlib/feos3d/include/dshwxtra.h:182:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

This fixes it:

diff --git a/sdk/userlib/feos3d/include/dshwxtra.h b/sdk/userlib/feos3d/include/dshwxtra.h
index 3969224..0c42323 100644
--- a/sdk/userlib/feos3d/include/dshwxtra.h
+++ b/sdk/userlib/feos3d/include/dshwxtra.h
@@ -145,7 +145,7 @@ typedef long long int64;

 static inline void swiCopy(const void* source, void* dest, word_t flags)
 {
-   int i;
+   word_t i;
    word_t size = flags & ~0xFFE00000;

    if (flags & COPY_MODE_FILL)

I just applied your fix for swiCopy().

3D support was added in commit 7ad8578.