NDSL의 재발견!

요 며칠 신나게 웹서핑질을 하다가 새롭게 도전해볼만한 과제를 찾았습니다. NDSL은 ARM7과 ARM9의 듀얼 프로세서로 구성되며 libnds라는 오픈소스 라이브러리가 존재하더라구요. 단순한 API만으로 부족함을 느끼는 사람을 위해 palib 같은 라이브러리들도 나와있구요.

어떻게 보면 ARM 입문용으로 이만큼 좋은 키트가 없다고 생각합니다. 조이패드, 터치패드, 두 개의 LCD 뿐만 아니라 Wi-fi까지 포함되어 있으면서 10만원 중반대로 낮은 가격대를 형성하고 있으니까요. 그 뿐만이 아닙니다. OpenGL까지 사용이 가능하기 때문에 그래픽 API를 새로 공부할 필요도 없어요.

부가적으로(?) 게임 기능까지 있으니 더 말할 필요가 없겠죠.

사용가능한 메모리가 4메가로 제약되어 있다는 점은 조금 아쉽지만 union질 좀 해주면 어떻게 되겠죠. 후훗!

목표는 SNES9x 포팅인데, 유닉스용은 메모리가 16메가 이상이 필요하다고 나와있는 걸 보고 조금 좌절 중입니다. 화면 크기가 256*192 라서 SNES9x의 저해상도 모드보다 세로로 30픽셀정도 작은 문제도 있는데, openGL을 지원한다고 하니 텍스쳐를 사용해서 리사이즈 되도록 하면 될 것 같아요.

GUI와 코드가 완전히 분리되어 있기 때문에 포팅에 크게 손이 가진 않을 것 같더군요.

만약 다음 학기에 강의를 맡게 되면 이런 걸로 수업을 개설해보면 어떨까 싶어요. 뭐 NDSL이 없더라도 에뮬레이터들이 잘 나와있고, devkitpro를 비쥬얼 스튜디오와 연동시킬 수도 있으니 학생들이 접근하는 데도 어렵지 않을 것 같고…

저도 학부 때 들었던 수업 중에 openGL로 게임을 만들게 시켰던 과목이 제일 기억에 많이 남더라구요. -_-a

사실 Embedded 개발이라고 해봐야 tftp 나 nfs 를 사용해서 파일을 옮기고 결과를 serial terminal로 확인해야 한다는 점을 제외하면 윈도우에서 개발을 할 때와 크게 차이가 없자나요. 어떻게 보면 이것도 임베디드 실습이라고도 생각해볼 수 있겠네요. tftp, nfs 대신 micro sd를 사용하고, 시리얼 터미널 대신 문쉘을!!

덧: NDSi 나오면 그것도 하나 질러줄까봐요. -_-! 카메라까지 달려있으면 가지고 놀기 정말 좋아질 거 같은데…

Published by

5 thoughts on “NDSL의 재발견!”

  1. 흐흐 멤버십에서 저걸로 프로젝트를 진행한 적이 있습니다. 실제로 프로젝트 막바지에는 디버거 같은것이 없어서 일일이 R4를 이용해서 테스트하고 다시 기록하고 테스트하고 다시 기록하고 그랬던 삽질 경험이 있네요. 나름 재미있습니다 ㅎㅎ

    1. 디버거 그게 뭔가요? 먹는건가요? printf만 있음 되는거 아닌가요? ㅋㅋㅋㅋ 막상 gdb를 실행시켜도 bt(백트레이스) 말고는 쓸 줄을 몰라서 ㅠ.ㅠ 이래서 ㅂㅌ 인건가…

  2. 작년 겨울에 학부 팀 프로젝트로 nds를 가지고 삽질을 했었습니다;
    에뮬 중에 desmemu에 리모트 디버깅을 위한 스텁코드가 에뮬단에 아예 들어가 있습니다(tcp소켓을 열던가 그럴겁니다)
    정작 우분투에서는 GDB에서 접속하면 세그폴트가 나서;;;;

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">