본문 바로가기

정보보안/한글화 프로젝트

part 7.일본판GB롬 대사 찾아보기 (완)

이번에도 Search R을 사용할건데 


Search R은 특성이 있는듯하니 배열순서란것을 볼 수 있었다.





일어판 GB롬을 열고 왼쪽패널을 밑의 그림과 맞춘후 



가타가나는 내버려두고 히라가나를 지운후에 칸에 맞추어 

그 빈곳에 차례대로 ABCDEFG~Zabcdefg~z12345~를 순서대로 입력해준다.


그냥 히라가나로 찾으면 안되냐 라고 묻는다면 Search R은 일본어폰트 한글폰트가 적용이 잘 안되는거같다.

히라가나로 찾아봤지만 나오지 않아 영어로 입력을 하였다.

 

가타가나 다음을 영어와 숫자로 나타내었으며, 현재 해야할 것은 일본어 GB롬 대사폰트위치를 찾는것이기 때문에

해당 대사 위치표시를 찾기위해 히라가나 아이우에오 대신에 ABCDE로 표시해두었다고 생각하면 편하겠다.

(그럼 왜 가타가나는 안하고 히라가나부터하느냐는 포켓몬스터 엘로우버전에서는 특정한 단어빼고는 거의 히라가나로 되어있기에

대부분의 대사들이 히라가나로 되어있어서 빠르게 찾기위해 빈도수가 높은 히라가나폰트부터 고쳐서 적용하였다.)


즉, 구멍이 10개인 곳에 1부터 10번까지의 쥐들이 각각의 구멍에 들어간다고 가정 했을때 나는 2번 쥐가 어느 구멍에 들어갔는지 궁금하다.

그래서 각 쥐들마다 꼬리표를 달아두었는데 숫자대신 알파벳ABCDEFGHIJ로 해놓고 구멍에 다들어간 쥐들을 보면서 

꼬리표가 B인쥐가 어느 구멍에 들어간지 보면 되는거다.

그 B인 쥐가 들어간 구멍이 일본폰트로 찾았더니 안찾아진 원래 대사의 위치이다.

 그 위치를 해당 한글폰트hex값으로 바꿔준후 저장하면 그것이 한글화가 되는 셈이다.


그런데 현재로서는 한글폰트를 롬에 추가입력하지 않아 ABC~로 치환한 게임대사를 보면서 임의의 한 대사의 hex값을 찾아보는걸 해보겠다.  


폰트를 고쳐보니 이런식으로 나온다.


JY NFBVZ 가 가장 무난한 단어로 판단하여 Search R를 가동



JY NFBVZ 발견



JY NFBVZ hex값을 아무값인 JJJJJJJJ로 고쳐본후 저장후 실행




JY NFBVZ이 JJJJJJJJJ로 바뀌었는것을 볼 수 있다.


방금 찾은 것이 현재 해당하는 부분의 대사였다는 결론이 나온다.


다른방법도 있을것 같아 여러가지 알아보고 했지만,

 끝내는 위와 같은 방법으로 해당대사의 hex위치를 파악하는것이 아쉬웠다.

해당대사가 없는 경우도 있는데 그건 포인터를 써서 필요할때 마다 어딘가 저장되어있는 단어를 불러들여

조합하여 출력하기도 하기때문이다.



한글화를 하기위해서는 해당 한글폰트를 롬에 입력하고 한땀한땀그리던지 복사해서 붙여 넣던지 한후

GB롬에서의 각 대사들의 위치파악(어드레스) 및 대사출력후 

대사를 한국식으로 재해석한후, 

그 해석에 맞게 일본폰트hex값 대사위치에 한글폰트 hex값을 입력해주면 한글화가 된다는 결론이 나온다.

(새롭게 입력한 한글 폰트hex값을 해당 일본폰트hex값에다가 덮어 씌울 경우 

롬을 읽어 들여 그부분 대사출력할때 포인터 작용을해서

미리 저장한 한글폰트hex값 어드레스로 이동하여 그 결과값(한글폰트)을 읽어들여 한글로 보여지는 전체적인 그림인것 같다.) 



전제조건으로는 해당 일본폰트길이만큼할당되기에 길이를 맞춰줘야하고 

제어코드(띄우기,줄바꾸기)도 찾아 맞춰서 사용해야 결과물이 나온다. 


이상 롬파일이 어떤식으로 게임을 화면에 보여주는지 알아보았다.