PSP의 sceIoDread 함수의 버그? 로 인하여 다국어 문자셋을 얻어올 수 없는 문제때문에 FAT 에 직접 접근하여 한글 파일명을 얻어와야만 했다. 개발하면서 문자셋 때문에 꽤나 애 먹었었다.
FAT 관련 자료는 인터넷에 꽤나 많이 널려 있으니 각자 찾아보길 바란다.
********************************************************************* 대부분의 메모리스틱이 1G 이상이고 FAT32를 사용하고 있으므로 FAT32 만을 지원한다. FAT12와 FAT16은 앞으로도 지원하지 않을 계획이다. *********************************************************************
내부적으로 숨겨진 자료형에 대해서는 굳이 알 필요가 없으며 필요하다면 자료를 찾아보도록 하라. 아래에 있는 file_t 구조체에 파일에 대한 정보를 담아 온다.
이런저런 우여곡절 끝에 알파버전으로 기능은?? 잘 돌아가는거 같다. 물론 아직 많은 문제점이 있지만... 내 PSP에서는 그럭저럭 돌아가는군... 일단 파일 선택화면에서 한글 파일명 출력이 안된다. 음... TTF 폰트를 사용함에도 불구하고 아직 원인을 찾지 못하였다. 자잘한 기능이 없다. 예를 들자면 10페이지 건너뛰기 이런거? 북마크 기능 등등... 그리고 가장 중요한... 아이콘이 너무 허접하다. -_-;; 개발자가 직접 만들었으니까 당연하겠지만 ㅋㅋ 절대~ 이쁘지 않다. 뭐 아직은 알파버전이니까 ㅋㅋ
- 덧 붙임 - 설마 이 소스를 누가 가져갈려나~ 해서 씁니다. 제가 지금까지 올린 모든 소스파일에는 common include 가 빠져 있습니다. psp 함수를 일반 함수로 define 한거라던가 특정 키워드(예를 들어 TRUE, FALSE 같은...) 를 define 한거라던가 이런 것들인데요. 아주 간단한거니까 직접 define 하셔서 쓰셔도 무방합니다. 공용 파일이라 다른 디렉토리에 있어서 맨날 빼먹습니다. ㅋㅋ
- 다시 덧 붙임 - 초보자라던가 공부하시고 싶으신 분은 요청하시면 드리겠습니다. 제가 이 프로그램을 만들어 가면서 단계별로 모든 소스를 공개해왔으니 PSP 프로그래밍을 시도하는 분들이면 보시고 도움이 되길 바랍니다. 제가 올리는 모든 소스코드는 GPL을 따릅니다. 그리고 컴파일과 PSP에서의 실행에 대한 책임은 실행한 사람 각자에게 있습니다.
PSP의 한글 파일명 출력에서 막혔다. 음... 뭐가 문제인지 모르겠다. 일단 루리웹에서 받은 한글 출력 소스는 EUC-KR만 프린트 되는거 같고 SDL_ttf 는 UTF8만 된다. 일단 디렉토리에서 파일 리스트를 가져와서 출력하는 부분을 둘다 해봤지만 박스로 나오고 있다. 뭐가 문제일까? 좀 더 해보고 안되면 그냥 영문 파일명만 출력되는 상태로 일단 릴리즈 해야겠다
PSP 프로그래밍에서 한글 출력의 문제에 대해서 관련 소스 코드가 공개 된 것이 있어 살펴 보았다. 각 글자에 대해서 모두 비트맵을 정의하여 해당 글자의 비트맵에 따라 비디오 메모리에 직접 접근해서 픽셀별로 글자색 배경색을 지정는 형식으로 만들어져 있었다. 글자별 비트맵을 만드는 것이 보통 노가다도 아니고 폰트 변경도 어렵고 글자 크기 조절도 안되는 불편함이 있어서 SDL_ttf라이브러리를 이용해서 트루타입 폰트를 사용하여 글자를 출력할 수 있는 간단한 프로그램을 작성하여 보았다. 그런데 속도가 많이 떨어진다. 텍스트 뷰어가 아닌 이미지뷰어 정도라면 사용해도 될 듯 하다.