사용자 삽입 이미지사용자 삽입 이미지

현재 반조합형으로 패치를 진행하고 있다.

한식구에는 간혹 일정상황을 쓰거나 질문도 하는데

내 블로그에는 직접 적은 게 얼마만인지.. 쩝..

에휴.. 그런데 반조합은 폰트도 안예쁘고 글자 간격도 어중간해서 짜증이 조금..

완성형 폰트가 그립구나!!

댓글을 달아 주세요

  1. 엠피즈 2007.08.07 14:35  address  modify / delete  reply

    와 정말 대단하시네요 ㅎㄷㄷ 전 일본어 해석도 못하는데 ㅎㄷㄷ

    수고하십니다.. 힘내세요!

  2. 강냉돌이 2007.10.07 20:59  address  modify / delete  reply

    언젠가는 역전재판3도 번역해주시렵니까?? ㅠㅠ

    • Favicon of https://shouting.tistory.com 새항아리 2007.10.08 00:43 신고  address  modify / delete

      역전재판은 제가 관심있는 게임이 아니고
      도시전설팀의 중단된 이유인 캡콤사의 압박이 있을 수 있다는 점 때문에 예정에도 없습니다.

  3. 바둑 2007.12.15 13:22  address  modify / delete  reply

    히카루의바둑은 언제~~ ㅠㅠ

    • Favicon of https://shouting.tistory.com 새항아리 2007.12.15 17:59 신고  address  modify / delete

      하하하..
      선거는 끝나봐야 시간이 나겠네요..
      선거 끝나고 뒷정리까지 끝난 다음에나 여유가 생길듯 해요..

      그래도 잘 될련지는 모르겠지만요.. ^^

  4. 바둑 2007.12.19 20:12  address  modify / delete  reply

    ㄳㄳ염
    선거 끝나고 달려주세요~!!!
    화이팅입니다~!!

  5. 번역초짜 2008.02.26 22:14  address  modify / delete  reply

    저도 번역할려구 하는데 님의 썡초보 강좌보고 이어나가는 중,,,,, 나혼자 소장용으로 역전 할까하는,,,

  6. dd 2008.09.13 00:19  address  modify / delete  reply

    헐 멋져요 기대할게요ㅠㅠ

  7. Favicon of http://blog.naver.com/tubong 와우!!! 2009.02.25 17:56  address  modify / delete  reply

    오우!!!기대듬뿍드리고갑니다!!
    근데소마브링거ds(일어)좀한글화해주시면않될까요??
    http://blog.naver.com/suakani/150031343039
    여기는 딴분이 해석 중 인건데넘오래걸릴것같고 약간;;이상함;;
    한번 도전해보심이?!

    • Favicon of https://shouting.tistory.com 새항아리 2009.02.27 12:12 신고  address  modify / delete

      네이버 카페 한식구 찾아보시면 이미 이 젤다 한글화 패치가 올라와있습니다.
      그리고 DS쪽은 한글화하지 않는 주의입니다.

  8. Favicon of http://blog.naver.com/zio45 지오 2009.05.11 16:10  address  modify / delete  reply

    와..글자때문에 일본어판으로 하시나보네요....
    양이 꽤 많을텐데... 고생 많이하십니다.
    폴아웃2같은 경우에는 해당 파일을 따로 추출한 후 여러명이서 공동으로 작업해서 완성 시켰는데 다른 분들과 같이 작업은 안하시는지요 'ㅅ'?

    • Favicon of https://shouting.tistory.com 새항아리 2009.05.18 11:28 신고  address  modify / delete

      이 작품은 이미 한글화가 되었습니다.
      제가 한건 아니구요.
      네이버 한식구 자료실에 가보시면 패치가 올라와져 있습니다.

  9. 크퓨 2013.06.23 17:25  address  modify / delete  reply

    항상응원합니다!!
    저도 한글화 해볼려고 노력하지만
    역시 아는게적다보니 게임 한글화 한번하는건 많이 어렵네요 ㅠㅠ

    • Favicon of https://shouting.tistory.com 새항아리 2013.06.26 11:24 신고  address  modify / delete

      한글화에서 손땐지가 너무 오래되서 응원받는게 어색하네요.
      젤다의 전설은 능력자분께서 예전에 마무리하신 작업입니다.
      저는 시도했다가 중도포기했지요.



한식구에서 꿈을 보는 섬에 대해 제목이 틀린것 아니냐는 소리를 들어 작성한 글이다.

---------------------------------------------

夢見る는 말씀대로 꿈을 꾸다라는 숙어입니다만 일본 웹에서 얻은 정보에 의하면
夢みる라고 적을 때에는 꿈을 본다 라고 해석해야 맞다고 합니다.

よく間違えられています(僕も間違えていました)が、サブタイトルの正式名称は「夢を見る島」ではなく「夢をみる島」です。

저도 이 글을 읽고 생각해 본후 꿈을 꾸는 섬이라고 적지 않고 꿈을 보는 섬이라고 적은 것이죠.
중의적 표현을 넣으려고 했을지 모르지만 이렇게 적는것이 맞을 것 같습니다.

게다가 꿈과 섬은 夢 鳥라고 한자로 쓰고 보다라는 단어만 見이 아닌 み라고 적은 이유때문에 (꿈이나 섬의 한자보다 쉬운 見(볼견)자를 쓰지 않고 み자를 쓴 이유 때문에) 꿈을 꾸는 섬이 아닌 꿈을 보는 섬이라고 해석하는것이 옳다라는 의미입니다.

그리고 게임의 엔딩을 보신 분이라면 꿈을 꾸는 섬이라는 해석보다 꿈을 보는 섬이라는 해석이 어느정도 합당한 해석이라는 것을 알 수 있을 것입니다.

스크린샷을 보고 관심 가져주신 여러분께 감사드립니다.


---------------------------------------------------------------------------------

번역이 이렇게 오래걸리면 한글화는 언제한디야.

댓글을 달아 주세요

  1. 박관조 2007.06.08 19:00  address  modify / delete  reply

    한글화 하신다고 수고가 많습니다. 항상 무언의 응원 보냅니다.

  2. 초초초 2007.07.02 22:51  address  modify / delete  reply

    님 정말 자랑스럽게 생각 합니다 ㅠ ㅠ 저는 한글화 배워서 젤다 시리지 한글화 할려 했는데 ㅠㅠ 힘들어서 중도 포기~!
    님 정말 대단하심.. ㅎㅎ 꼭 한글화 패치 해주시길 바랍니다~~ 힘드리면 저도 님한테 배워서 도와드릴까 하는 생각도 있음 ㅎㅎ
    홧팅

  3. 바베큐 2007.09.29 16:22  address  modify / delete  reply

    대단하십니다 ㅠ_ㅠ ... 저도 님처럼 한글패치를 공부해서 다른분들에게 하고싶지만.. 실력이 안돼는..
    여하튼 열심히 해주십시오. 사실 젤다의전설을 제가 해봤는데 중독성이 꽤나 있어서요 하핫 ;;
    그럼 열심히해주십시오!!?~

  4. 링크 2014.04.09 17:40  address  modify / delete  reply

    영문명이 The Legend of Zelda: Link's Awakening DX
    일본명을 꿈을 보는 섬이 되겠지만...
    한국에선 꿈을 꾸는 섬 이라고 번역하여 수입되었죠.. 그 때 당시 4,000원정도 였던걸로 기억합니다. ㅎㅎ
    우리식대로 의역한거 같으니... 직역하면 꿈을 보는 게 맞는거 같네요 ㅎㅎ


사용자 삽입 이미지
 
지금 대사는 다 뽑아 놓고
 
번역 준비중..
 
영문 번역이라 참 난감함..
 
일어판의 대사를 뽑아야 하나..
 
어쨋건 포인터 부분도 대충 해결 되었고
 
나머지 그래픽 적인 부분(위의 것)들을 수정했음..
 
본격적인 번역과 패치가 들어가면 귀찮아지겠지..
 
히카루의 바둑도 해야하는데 뭔 짓인지..쿨럭..
 
번역 다 끝나면 글자수 세서 그걸로 폰트 뽑고 붙이고
 
패치작업해야하는데 이거 초난감.

댓글을 달아 주세요

아마 내가 게임을 처음 접한건 국민학교 때 컴퓨터 학원에 갔을때 였을 거다.

그때는 토요일날은 원장선생님이 학원을 오픈해서 맘껏 컴퓨터를 즐길 수 있게 해주었다.

그당시 유명했던 게임이 페르시아의 왕자 내지 고인돌류였는데 이게 엄청 재미있었다.

 

그러던 중.. 국민학교 3학년때 우연하게 캐나다로 어학연수(어린게 뭘 알겠는가..) 2주를 갔었다.

지금 생각해보면 그때 캐나다를 안갔다면 지금 나는 공대생일까 하는 생각도 든다.

 

어쨋건 그때 어학연수인지라 쇼핑하면서 영어를 써보라는 의미로 한시간정도 자유시간을 줬었다.

그때 마트에서 발견한 게임기가 바로 게임보이였다. 그리고 어째서 내가 그 게임팩을 샀는지 기억나지 않지만

처음 구매한 소프트가 젤다의 전설 DX 꿈꾸는 섬이었다.

 

그때 세상에는 이런 게임도 존재하는 구나 하고 컬쳐쇼크를 받았다. 날밤 새면서 플레이해서 엔딩을 봤고

아버지에게 게임기를 빼앗겨 망치로 부셔지는 그날까지 붙들고 있었으니 내가 얼마나 젤다를 좋아했었는지 알거다.

 

어쨋건 그런 감흥 때문인지 젤다의 전설을 한글화 해보고 싶다는 생각이 부쩍 들었다.

어차피 이것도 한달안에 사라질 열정이겠지만 한달동안은 이걸 잡고 있을 것이다..

 

내가 공대 다닐때 어셈을 조금 배워놨으면 짱깨얼라들처럼 폰트확장 등등을 했을텐데

그래서 중국롬을 구해다가 이걸로 한번 한글화 해볼까 생각중임.

 

중문판은 독특하게 영문판을 크래킹해서 새롭게 언어를 추가했더라고..

그래서 폼은 영문판인데 중국어 대사 부분은 조금 다름..

 

0F8440 -> 대사포인터

0F89AC -> 대사시작1

100000 -> 대사시작2

108000 -> 폰트위치

 

대략 주소는 이 정도. 문제는 대사 포인터가 웃기게 되어 있다는 점.

웃기게도 대사부분을 2부분으로 분리해서

상대포인터 49XX - 7FXX 부분까지는 0F49XX - 0F7FXX 부분이고

80XX - C7XX 부분은 1000XX - 1047XX으로 되어 있다.

 

웃기게도 1048XX부터는 다른 코드로 채워져 있어서 포인터가 있어도 있는게 아니다..

 

포인터 절대 주소를 변경해볼까도 했지만 프로그래밍으로 처리한 부분이라서 그런지 코드가 안찾아진다. 써글..

 

조금 더 공부해봐야지..

댓글을 달아 주세요

안녕하세요. 새항아리입니다.

 

제목 : GBA 한글화 쌩초보 강좌 - 9 (완)

부제목 : 패턴과 압축그래픽, 그리고 릴리즈까지

 

마지막 강좌가 시작되네요. 이번강좌에서는 패턴 만드는 방법. 그리고 압축그래픽 수정법 마지막으로 릴리즈 하기까지의 내용을 담고 있습니다.

 

그럼 시작하겠습니다.


처음은 패턴을 만드는 방법을 설명드리겠습니다.
패턴이라는 것은 쉽게 말씀드리면 퍼즐맞추기 입니다.
서몬나이트 3을 읽어보도록 하지요.
 


사용자 삽입 이미지

 

 

폰트가 보이기는 하는데 뭔가 이상하죠? 이것은 폰트 사이즈가 16x16이 아니라서 입니다.

이게 무슨 말이냐 하면 그림을 출력할때 컴퓨터는 일정 규칙을 사용합니다.

 

□□■■■■□□

□■□□□□■□

□■□□□□■□

□□□□□■□□

□□□□■□□□

□□□■□□□□

□□■□□□□□

□■■■■■■□  => 2

 

컴퓨터는 있다 없다 밖에 모르기 때문에 저렇게 2라고 적힌 그림을

00111100 <- 첫줄

01000010

01000010

00000100

00001000

00010000

00100000

01111110  <- 마지막 줄

 

로 인식을 합니다. 그런데 컴퓨터는 저렇게 2차원으로 저장하는게 아니라 그냥 순서대로 저장을 합니다 즉

2라는 그림을 나타내기 위해서는

0011110001000010010000100000010000001000000100000010000011111110 

 

이렇게 저장한다 이말입니다. 그런데 이것을 8x8로 안뿌려주고 16x16으로 뿌리면

□□■■■■□□□■□□□□■□

□■□□□□■□□□□□□■□□

□□□□■□□□□□□■□□□□

□□■□□□□□□■■■■■■□

.

.

.

 

 

이렇게 출력이 됩니다. 이런 것처럼 글자가 제 위치가 아닌 다른위치에 표시되는 것을 고쳐주는 것이 패턴이라는 겁니다.

 

중국에서 만든 크리스탈 같은 에디터는 그 성능이 좋아서

아래처럼 직접 그 출력 방식을 직접(여기서는 16x12)로 정할수 있습니다.


 

사용자 삽입 이미지

 

 

이렇게 깔끔하게 출력이 되는데요.

이 프로그램은 초보분들이 타일을 수정하기 위해서만 쓰시기는 어려울수도 있겠습니다.

(사실 제가 잘 모릅니다. ^^;)

 

어쨋건 패턴을 수정하려면 YYCHR에 있는 adf파일을 읽어봅시다.


 

사용자 삽입 이미지

 

 

어디서 많이 보던 글자들이죠. 바로 노멀, 16x24 등 이미 지정된 패턴들이 저장되어 있는 파일입니다.

여기서 안쓰는 패턴 하나를 지우고. 패턴을 집어넣으면 되는데.

이 부분에서 조금 헷갈리실지 모르지 설명드리고 넘어가겠습니다.

 

원래는 00에서 FF까지 사용하지만 간편하게 00-0F까지 만 쓰도록 하겠습니다.

패턴에서 나타내는 저런 한칸의 기준은 8x8사이즈의 한칸입니다.

8x8사이즈의 한칸이라는 의미는 그 이하로 패턴을 만들수 없다는 것이죠..

(이것때문에 리듬천국같은 롬은 YYCHR로는 못보는 거죠.. 거기는 4x12)

 

그리고 00은 첫칸 FF는 마지막 칸을 말합니다.

그림의 순서에 맞춰서 패턴을 고쳐줘야 합니다.

 

원래 패턴이

00 01 02 03

04 05 06 07

08 09 0A 0B

0C 0D 0E 0F

 

이런식이라면

 

만약 2칸씩 밀렸다면

 

□□■■■■□□

□■□□□□■□

□■□□□□■□

□□□□□■□□

□□□□■□□□

□□□■□□□□

□□■□□□□□

□■■■■■■□ 

 

즉 이런 이미지가

□□■■■■□□□■□□□□■□

□■□□□□■□□□□□□■□□

□□□□■□□□□□□■□□□□

□□■□□□□□□■■■■■■□

 

이런식으로 밀렸다면( 사실 이경우는 조금 다릅니다..

(왜냐하면 가장 작은 한칸 기준 1x1이니까 YYCHR의 8x8사이즈와는 조금 다른 내용이지만 개념만 이해해주시기 바랍니다.)

 

즉 8x8을 16x16사이즈로 불러온 위의 예처럼이라면

 

00 01 08 09

02 03 0A 0B

04 05 0C 0D

06 07 0E 0F

이런식으로 출력해주면 되겠죠?


 

사용자 삽입 이미지

 

 

이 패턴은 4칸씩 맞춰저 있는데 다음 칸이 옆이 아닌 아래에 위치하면 되므로 저렇게 전부 수정하면 되겠습니다..

 

사실 패턴이 조금 난해한 면이 없지 않고 퍼즐 노가다 하기 싫으신 분들에게는 짜증나는 일일수도 있습니다. 하지만 써야할때를 위해 배워놓는 것이고 아래 압축이미지 수정에서 패턴을 안쓰고 그냥 막 가자는 꼼수도 하나 알려드리겠습니다..


 

사용자 삽입 이미지

 

 

그럼 출력이 깔끔하게 되는군요..

 

그럼 이제 압축이미지 수정법을 알아보도록 하겠습니다.

원래 저는 수정으로 압축이미지를 찾고 변경했었는데

조금 오류가 있는 것 같아서 프로그램을 unLZ로 바꾸었습니다.

 

unLZ에서 롬을 읽어오면 압축 이미지를 찾아놓습니다.

잘 안보이니 검정색/하얀색 모드로 바꾸면 더 잘보일수 있습니다.


 

사용자 삽입 이미지

 

 

다음을 눌러 보다가 뭔가 글씨 이미지 인듯 한 것을 발견.. 한번 뽑아 봅시다. 저기 raw로 덤프를 눌러 파일로 뽑습니다.


 

사용자 삽입 이미지

 

 

그 raw파일을 불러오면저렇게 보입니다. 원래라면 색깔로 나타내야하는데 제가 두번째 강좌인가요 알려드렸던 흑백 팔렛트를 불러와서 사용했습니다. 그런데 이것도 짤라져 있네요..

이거 패턴 만들기로 귀찮고.. 어쩐다..

 

저의 경우는 새로 YYCHR을 키고 새 이미지를 누른후 거기에 저렇게 조각난 것을 복사해다가 짜맞췄습니다. 지금 위에 이미지를 보면 제가 드래그 한 부분이 오른쪽에 보일겁니다.

 

저렇게 작은 한칸씩 잘라내서 아래 YYCHR을 새로 켠 창에 잘 맞춰서 붙이면


 

사용자 삽입 이미지

 

 

이처럼 됩니다. 패턴을 맞출 필요도 없고 수정도 용이 합니다만. 문제는 이걸 다시 쪼개서 원 위치에 제대로 넣을 위치 감각이 있으셔야 합니다. 어쨋건 수정해봅시다.

 

폰트 생성기로 모드 선택을 만들어서 불러와 사용하시던지 아니면 직접 글자를 쓰시면 됩니다.

폰트생성기로 만든 폰트를 붙일때에는 뒷배경도 덮어지니까 직접 하나씩 수정해주셔야 하는 노가다가 조금 필요합니다.

(사실 한글화에 노가다 아닌게 어딨습니까? ^^)


 

사용자 삽입 이미지

 

 

이 이미지를 이제 원래 이미지에 짜 맞춰야 합니다. 원래 이미지에서 첫줄은 띄엄 띄엄 썼기 때문에 조심해야 합니다.

 

 

□□□□□□

□□□□□□

□□□□□□

 

이렇게 저장한것이 아니라

 

  □  □□□

□□□□□□

□□□□□□

 

이런식으로 윗줄중에 안쓰는 것은 저장을 안했기때문에 잘못하면

출력이 이상하게 도리수도 있으니 주의해야한다는 의미입니다.


 

사용자 삽입 이미지

 

 

그래서 저의 경우 귀찮아서 첫줄은 그냥 다 이미지를 안넣고 둘째칸부터 사용했습니다,

글자 크기는 그래서 원본보다 조금 작아졌지만 생각할 필요없으니 간편!! ^^;


 

사용자 삽입 이미지

 

 

아까 raw파일을 덤프했던 이미지에서 메뉴중 raw 불러오기를 눌러 변경한 raw파일을 불러옵시다.

그리고 롬에 쓰기를 누르면


 

사용자 삽입 이미지

 

 

이렇게 메뉴가 뜨고 확인을 누르면 됩니다.

 

그런데 여기에서 메세지가 뜰때가 있습니다.

원본보다 사이즈가 크다는 메세지인데요. 이럴때에는 어떻게 해야하냐면

원본보다 사이즈를 줄여야 합니다.. (그러니까 어떻게?..)

글자색을 한색 줄여보신다던가 그림자를 없애보신다던가 그림을 조금 단순화 시켜보신다던가 하는 일을 하셔야합니다. 이부분은 그렇게 막 어려운것은 아닙니다.

그냥 그림을 조금 안이쁘게 만들면 되는(? ^^;) 것이니까요..


 

사용자 삽입 이미지

 

 

그리고 롬을 열어보면 저렇게 이미지가 적용되는것을 보실수 있습니다.

 

이제는 릴리즈 하는 방법을 설명드리겠습니다.

한글화에서 가장 논란이 되고 있는 점이 이 한글화를 누가 만들었는지가 중요한게 아니어져 버리고 마구마구 공유되어 와레즈사이트들에 올라간다는 점입니다. 그리고 그것으로 롬을 덤프해 파는 업자까지 있습니다.

 

그런 단점을 막기 위해서 요즘은 에뮬에 한글화 데이타를 집어넣어 에뮬레이터 자체가 있어야 구동되도록 하는 방법이 사용되기도 합니다만..

 

보통의 경우 팀이 아니거나 프로그래밍 실력이 없으신 경우에는 사용하기 힘든 기술중 하나입니다.

그러면 어떻게 하느냐.. 롬을 실행시켰을때 이미지로

 

이것은 누가 만든것이고

롬 카트리지로 유통되면안되며

누구누구가 도움을 주셨다

 

이런 한글화한 본인을 나타낼수 있는 이미지를 박는 프로그램이 있습니다.

그것이 IPTGRO 인데요. 영문판 기준으로 설명드립니다.

 

 

사용자 삽입 이미지

 

 

우선 실행시키시면 옆에 공지사항이 있습니다.

그림 이미지는 BMP에 240x160 사이즈, 256색이여야 하고

사운드는 wav파일에 PCM(무압축 오디오형식)에 22050hz(음질)에 8bit(저장방식) mono(한쪽음)으로 되어 있어야 한다고 하네요..

 

우선 오디오 파일을 만들어 봅시다. 저는 바이브 3집의 술이야를 한번 넣어보도록 하겠습니다.

일반 자료실등에서 쿨에디터2(쉐어웨어 21일 사용)을 구해 설치하고

음악파일을 불러봅시다. 그리고 메뉴를 찾아보면 Convert Sample Type이라 적힌 것을 클릭합니다.


 

사용자 삽입 이미지

 

 

그럼 어떤 형식으로 되어 있는지 표시가 됩니다. 여기에서 위처럼 22050hz, 8bit, mono로 맞춰줍니다. 그리고 저장


 

사용자 삽입 이미지

 

 

저장할때에도 저렇게 파일형식에서 windows PCM으로 저장하셔야합니다.. 다른 형식은

확장자는 wav로 같을지 몰라도 압축데이타이기 때문에 IPTGRO에서 사용불가입니다.

 

그리고 이제 이미지를 만들어봅시다.


 

사용자 삽입 이미지

 

 

그림판에서 특성을 보거나 아니면 포토샾에서 생성을 저렇게 240 160 픽셀로 하십시오.

우선 이미지를 만들면.. 저는 김태희 양이 수고해주셨습니다.


 

사용자 삽입 이미지

 

 

저장을 해야하는데 여기에서 256 색이라고 무턱대고 아래처럼


 

사용자 삽입 이미지

 

 

파일 형식을 256색으로 지정하면


 

사용자 삽입 이미지

 

 

이런 말이 뜨고 예를 누르면 아주 화면이


 

사용자 삽입 이미지

 

 

이상하게 출력됩니다.. 이건 무엇때문이냐 하면..

예를 들자면 16색 크래파스를 샀다 이말입니다.

그런데 바다를 그려야 하는데 16색 크래파스에는 파란색 계통이 2색밖에 없어서 그리니까

완전 뭐가 뭔지 구별이 안갈수 있죠..

그런데 같은 16색 크래파스인데 바다용으로 파란색 계통으로 16개가 들어있는 크래파스라면

바다를 조금더 잘 표현할수 있겠죠?

 

이걸 파렛트라고 하고..그림판에서 256색으로 저장하면 기본 파렛트를 사용하므로 저렇게 이미지가

깨지게 됩니다. 그러면 어떻게 하느냐..


 

사용자 삽입 이미지

 

 

저는 XNVIEW라는 프로그램을 사용하는데요. 여기에서 색상수를 조정해주면 됩니다.

이런 기능은 아마도 포토샾에도 있을것이지만.. 제가 포토샾을 잘 못쓰다보니 (^^)

어쨋건 xnview의 변환 메뉴에서 저렇게 변경해주고 IPTGRO에서 불러옵시다.


 

사용자 삽입 이미지

 

 

그림이 잘 떴지요.. 그리고 select GBA 롬에서 적용할 롬을 불러옵니다..

(여기서 중요한 점은 이 IPTGRO 프로그램은 해당롬에 직접 적용하기 때문에 실패시 그 롬을 사용할수가 없을수 있습니다. 그러니까 꼭 적용전에 롬을 백업 해놓으시길 바랍니다.)

그리고 Use sound effect를 눌러 저장했던 파일을 불러옵니다..

 

그리고 옆에보면 디스플레이모드가 있는데. 그냥 그대로입니다

타임 딜레이는 얼만큼 기다렸다가 사라지는것이고

그 다음은 키를 누르면 사라지는것 그다음은 스크롤 되서 아래서 위로 올라가며 사라지는것

마지막겉은 서서히 나타났다가 서서히 사라지는 기능입니다.

저는 사운드 파일을 넣었으니 키를 누르면 사라지는 것을 선택했습니다.

 

 

이제 중요한 문제가 남았습니다. 바로바로바로 용량문제입니다.

무슨 말이냐 하면. 롬에서 어떤 작용을 하려면 파일중 일부분을 사용해야할겁니다.

그런데 사운드 출력도 하고 그림도 띄우고 하려면 용량이 많이 필요하겠죠?

 

그래서 보통은 그림은 띄워도 사운드 출력은 잘 안하게 되는 것입니다.

 

프로그램 오른쪽 공지사항에 각 용량들이 적혀 있습니다

저의 경우를 보지요..

BMP 이미지 76800 <- 이건 BMP원래 이미지 사이즈보다 크지만 프로그램이 이걸 요구하니..^^

사운드 파일 766648 <- 바이브의 술이야

사운드재생프로그램 92

프레스키 설정 132

이렇게 해서 843672

 

이것을 16진수로 변환하면 CDF98 이네요. 적어도 사이즈가 이만큼 필요하다는 것입니다.

다행히 모두의 쇼기는 많은 양이 비어있어서 가능하지만 보통의 롬은 저정도로 비어있는 롬은 드물기 때문에 사운드를 넣기 힘들고 넣으려면 롬을 확장해야 합니다.


 

사용자 삽입 이미지

 

 

들어갈수 있는 여유공간을 찾아 봅시다 여기에서는 300000부터 집어넣도록 하겠습니다.


 

사용자 삽입 이미지

 

 

주소를 넣고 start를 누르면 조금 있다가


 

사용자 삽입 이미지

 

 

공지사항 밑에 OK 라고 표시되면 성공입니다.

롬을 한번 불러와 잘 되는지 테스트 한번 해보시는 센스!!

 

이제 진짜 릴지즈 과정입니다. IPSWIN프로그램을 실행시킵니다.


 

사용자 삽입 이미지

 

 

원본롬과 바꿀롬에 원본파일과 한글패치를 적용한 롬(노가다의 땀이 서린롬)을 불러옵시다.

다만 여기에서 문제가 있습니다. 한글패치시에 롬을 만약 확장했다면

원본롬도 확장하시고 이 프로그램을 실행하셔야합니다.

그리고 패치 파일을 사용할때에도 원본 롬을 확장된 롬으로 써야합니다.

 

이것때문에 많은 분들이 롬을 확장하려고 하지 않으시는 것일지도 모르겠습니다.

왜냐하면 쓸 사람의 롬도 확장되어야 하기 때문이죠..

뭐 어려운것은 아니지만 무턱대고 한글화 파일만 받아서 확장하지 않은 롬에 쓸경우

안될수 있으니 처음 한글화 파일을 받은 분들이나 잘 모르시는 분들은 오히려 안된다고

성질낼지도 모르겠네요..

어려운것은 아니니까 나중에 범용 롬 확장기를 하나 만들어 봐야 할것 같습니다.


 

사용자 삽입 이미지

 

 

어쨋건 패치 완료.. IPS파일을 롬과 이름을 맞춰놓고 같은 폴더에 두면.. 에뮬레이터로 실행시 자독으로 IPS를 적용하니 이 파일만 릴리즈 하셔도.. 충분하죠..

 


사용자 삽입 이미지
 
 
그리고 그렇게 불러보니 저렇게 잘 출력이 되네요.. 음악도 잘 나오구요.. 에뮬레이터 스샷을 찍은 파일인데 원본파일과 똑같아 보이네요.. 어쨋건 김태희 누님 너무 이쁜거 아니예요? ^^;
 
 
강좌가 끝났습니다.. 요 몇일은 이걸 작성한다고 난리를 친것 같네요.
제대로 초보분들에게 도움이 될지는 모르겠지만 노력은 충분히 했다고 봅니다.
고수분들께서 이 강좌를 보실리는 없겠지만 혹시 이녀석 어떻게 썼냐 하고 보러오셨다면
잘못된 점 지적 받습니다..
 
정말 좋은 시간이였다!!
まったくいい時間だった!!!!
맛따쿠 이이 지칸닷따!!!
- 원피스 히루루크 따라해본.. 저에 있어 강좌를 썼던 시간은 정말 좋은 시간였습니다.!!
 
이별을 아쉬워 하며.. 흑흑.. ㅠㅠ
그럼 수고하시고 늘 행복하시길..

댓글을 달아 주세요

  1. 대장 2007.06.27 05:46  address  modify / delete  reply

    잘보고갑니다 이런 자료가있다니 감탄 또 감탄입니다.

  2. 아 어렵다! 2007.08.16 03:29  address  modify / delete  reply

    어려울거라는건 알고 있었지만 이정도일 줄이야
    한글화는 번역보다 이런 입히는 작업이 훨신 어려운거 같군요

  3. 안녕하세요 2007.08.16 20:43  address  modify / delete  reply

    새항아리님의 강의를 보고 GBA한글화를 막 시작했습니다
    폰트를 찾긴찾았는데(그 폰트를 바꿔보니 게임에서도 바꿔져있었어요)
    yychr로는 좀 깨져보이길래 크리스탈로 불러와서 16x16 그리고 16,32,64중에 64를 누르니 어느정도 제대로 출력이 되었습니다.
    그런데 그... 크리스탈에서 드래그할수있는 사각형? 그것이 글자마다 눌러지지않고 2글자 사이의,
    예를 들어서 "가나"란 글자가 있으면 가와 나가 각각 드래그가 되지않고 ㅏㄴ 이렇게 드래그가 됩니다.
    이것을 가,나로 드래그하는법은 없나요?

    • Favicon of https://shouting.tistory.com 새항아리 2007.08.16 22:32 신고  address  modify / delete

      크리스탈 툴에서도 + -키를 누르면 맞출 수 있을겁니다.
      만약 안된다면 오른쪽 상단에 보면 주소가 있는데 숫자를 몇개 더하시거나 빼보시면서 딱 맞춰보세요.

  4. 안녕하세요 2007.08.17 03:30  address  modify / delete  reply

    아 감사합니다 덕분에 해결되었네요

    그런데 고유번호를 찾을때요 서치알이 가나를 인식못하니 영어,숫자로 바꿀때
    크리스탈로 타일편집기를 열어서 알파벳,숫자를 일일이 그려야 하나요? 아니면 입력부분에 타이핑을 해서 넣는방식인가요?

    타이핑을 해서 고유번호를 찾았는데 아직 안나와서요 -_-;;

    다시 도전해봐야겠습니다.

    • Favicon of https://shouting.tistory.com 새항아리 2007.08.17 09:24 신고  address  modify / delete

      입력부분에 타이핑이라는 말을 이해하지 못하겠네요.
      제가 사용하는 방식은 대부분 폰트위치에 알파벳을 그려넣고 그 알파벳으로 대사위치를 유추하는 방식입니다.

  5. 우아 2007.11.18 15:00  address  modify / delete  reply

    보자마자 머리 돌아갑니다. 빙글빙글....ㅠ
    근데 한글화 한번 해보고 싶군요. ㅠ

  6. 고도 2008.01.10 04:15  address  modify / delete  reply

    아 한가지만 질문하겠습니다. 한글화강좌를 다읽고 나서 역전재판을 한글화하려 노력하고 있는대요

    역전재판이 LZ77대사 압축이라 하하;; 압축풀고 대사라 의심가는 파일몇개를 서치알과 대사장 2개를 전부

    동원하여 봤지만 어떤게 대사인지 도통모르겠습니다 대사를알아야 대사를 해집어 이것이 코드구나를 알고

    그다음에 전력으로 코드를 만들수 있것만! 그런대 그것이 불가능하네요.. 한식구에서 답을얻으려 해도

    제가 바라는답은 없고 한글화지식인에도 문의를해보았지만 아직까지 답변이 안달려있어 이렇게

    질문을 올립니다.

    • 고도 2008.01.10 04:17  address  modify / delete

      안써놓은것이 있어 이렇게 적습니다.

      히라가나 전부 알파벳과 숫자도

      도배했습니다. 알기쉽게 그런대도

      찾기힘들어 리플달았습니다 ^^;

    • Favicon of https://shouting.tistory.com 새항아리 2008.01.10 08:54 신고  address  modify / delete

      역전재판을 열어본 기억이 없어서 도움을 못드리겠네요.
      사실적으로 도시전설쪽을 옹호하는 입장이라 많은 분들이 도전하시는데 반해 도움드리고 싶은 마음은 별로 없습니다.
      죄송합니다만 저도 성격이 좀 지랄맞다 보니 어쩔수가 없네요. 그럼 수고하시고 늘 행복하시길..

    • 고도 2008.01.10 18:18  address  modify / delete

      지랄맞으시다니요 ㅎㅎ
      저도 도시전설에 가입되 있는 사람인대요... 알려주시는게 난감하시다면
      그것을 구지 알필요는 없으니까요
      친절하게 답변달아주셔서 진심으로 감사를 표합니다.

    • Favicon of https://shouting.tistory.com 새항아리 2008.01.11 10:24 신고  address  modify / delete

      제가 댓글 쓸때 기분이 좀 안좋아서 웃기게 써놨었네요.
      죄송합니다.
      그런데 알려드리기 싫어서 안알려드리는게 아니라. 사실 역전재판은 해본적이 없기 때문에 원래 모르는 부분입니다.
      이점 양해바랍니다.

  7. 타디스 2008.02.27 15:24  address  modify / delete  reply

    컥! unLZ로 롬을 열어 봤는데.. 글시는 커녕 그림 같은 것도 않보이는...
    그냥 지직 거리는 화면들만 나오네요;;;

  8. 우와용 2008.09.19 20:09  address  modify / delete  reply

    멋진 강좌 잘보았습니다^^ 지금은 비록 군에 있지만;;; 어떻게 여기서도 할 수 없을까 싶네요 ㅎㅎㅎ 감사합니다!!

  9. 최규영 2008.10.15 03:06  address  modify / delete  reply

    새항아리님 동영상으로올려주시면안됨

  10. 최규영 2008.10.15 23:30  address  modify / delete  reply

    그러면스샷으로올려주세요.지금도스샷있기더자세하게스샷을올려주시기를바랍니다.

  11. 소피 2008.11.28 17:16  address  modify / delete  reply

    뭔가;; 처음부터 읽어봤는데....
    우선 감사하구요>_<
    고3 수능 끝나서 뭘 할까 했는데;;
    이거 한 번 해 봐야겠습니다~

  12. 구름 2012.10.21 04:38  address  modify / delete  reply

    저는 북미에서 나오는 콘솔형 PC게임을 번역해보고싶은데 이 강좌는 이것과 꽤 다른영역이네요 제가하고싶은 일에 이강좌를 활용할수있나요?

    • Favicon of https://shouting.tistory.com 새항아리 2012.10.25 09:16 신고  address  modify / delete

      콘솔형 PC게임이 어떤건지 잘 모르겠습니다. 폰트를 내장한 방식의 게임이면 이 방식이 어느정도 작용할것 같긴한데 아니라면 어려울수 있겠네요..

안녕하세요 새항아리 입니다.

 

제목 : GBA 한글화 쌩초보 강좌 - 8 (2)

부제목 : 한글폰트를 넣고 대사를 수정해보자

 

이번 강좌는 그림이 많다보니 2파트로 분리했습니다. 1파트는 한글폰트를 넣는 부분이며

2파트는 그것으로 대사를 직접 수정하는 방법과 대사포인터에 대한 이야기를 하겠습니다.

 

그럼 강좌 시작하도록 하겠습니다.

 

파트1에서 한글 폰트를 집어넣는 일까지 했습니다. 이제는 그 글자들로 직접 출력하게하면 되는데. 여기에서 포인터가 사용됩니다. 근데 죄송스럽게도 하로보츠의 대사포인터를 찾지 못했습니다.

 

이 이야기는 오늘 강좌의 맨 마지막 부분에서 다루도록 하겠습니다.

 


사용자 삽입 이미지

 

 

대사위치를 찾아가봅시다. 수정할 대사는

혹성 선라이즈

이 별에는 7개의 태양이 있다.

라는 문장입니다.


 

사용자 삽입 이미지

 

 

양이 많을때에는 파일로 뽑아서 적용하는 것도 나쁘지는 않으나 저는 늘 창으로만 편집했습니다.

이유는 어느부분에서 에러가나고 어느부분에서 글자가 모자라는지 확실히 파악도 가능하고 즉시즉시 변경사항을 볼수 있기 때문이죠.

 

뭐 편하실데로 하시기 바랍니다.


 

사용자 삽입 이미지

 

 

일본어 롬에서 가장 짜증나는 부분이 나왔습니다.

바로바로 띄어쓰기가 없고 1바이트 문자를 따로 쓰는 경우인데요.

혹성은 한자로 2바이틀 먹었기 때문에 그냥 그대로 쓰더라도 무리가 없지만

선라이즈는 사누라이즈 라고 5글자로 처리했습니다.

그런데 사누라이즈가 전부 1바이트이니 총 크기는 5바이트입니다.

 

게다가 일본어에는 없는 띄어 쓰기를 하려다보니 띄어쓰기 1바이트 글자 2바이트 2개로

2글자를 못썼습니다. 어쨋건 출력이 되는지 롬을 켜봅시다.


 

사용자 삽입 이미지

 

 

출력이 되는군요.. 그런데 비좁습니다.

이것을 해결하기 위해 포인터를 찾아봅시다.


 

사용자 삽입 이미지

 

 

찾기를 눌렀지만..


 

사용자 삽입 이미지

 

 

없습니다.. ㅠㅠ 난감합니다. 이걸 어쩐다..

포인터가 없는 롬도 많습니다. 아니 포인터를 숨긴 롬도 많구요..

이건 무슨 뜻이냐 하면 대사만 통채로 모여있다면 어딘가에서는 그 대사를 부르는 녀석이 꼭 있어야합니다.

 

왜냐하면 뒷 배경 변경등의 코드가 대사스크립트내에 없다는 것은 그런 코드가 따로 있다는 것이고 그 코드에서 대사를 불러 출력시킬것이기 때문이죠..

 

그런데 왜 대사 포인터를 찾아도 안보이는 것일까요.. 이것은 제가 생각할때 상대포인터 테이블이 따로 있는 것 같습니다.  또 슬슬 어려워 지신다는 분들을 위해 예를 하나 들어보도록 하겠습니다.

 

만약 도서관에 연애에 관한 논문을 찾으러 갔습니다. 논문은 각기 번호가 있어서 찾을 논문인 [사랑과 전쟁] 이라는 논문 번호인 49EB56 주세요 하고 논문번호를 불렀더니 안내 데스크에서 찾을수 없다고 합니다.

 

이게 어떻게 된거냐고 알아봤더니 연애 논문들은 통채로 모아서 연애논문-XX번 이라는 번호를 새로 메겼다고 하네요. 그래서 사랑과 전쟁의 논문을 찾으려면 연애 논문쪽에서 23번 주세요 해야 받을수 있다네요..

 

이것이 상대포인터 입니다. 그러니까 절대 주소 포인터가 있습니다. 이것은 위의 예로 보면 논문번호(여기는 49EB56번)입니다. 그런데 이게 안찾아진다는 것은 상대주소를 쓰고 있다는 것입니다.(여기서는 연애논문-XX번) 이렇게 논문들이 연애논문의 몇번이라고 적혀 있는 목록표가 상대포인터테이블입니다.(여기서는 연애논문-1번 사랑이란? 연애논문-2번 사랑사랑내사랑 <- 이런 목록들)

 

그런데 우리는 절대주소 즉 논문번호밖에 모른다 이말입니다. 그러면 상대포인터테이블 자체를 알아내면 수정할수 있지만 지금은 모르는 상태이니 어쩔수 없다는 의미입니다..

(강좌 마지막 부분에서 설명드리겠습니다.. {계속 미루는 분위기 ^^;})

 

 

사용자 삽입 이미지

 

 

어쨋건 할때까지는 해봅시다. 여기서 FD가 줄내림 제어코드라는 것은 제어코드 강좌시간에 찾아봤었죠? 그럼 이 코드를 뒤로 미루고 이 위치에 글자를 써보면 어떻게 될까


 

사용자 삽입 이미지

 

 

우선 아까 '혹성 선라' 까지 썻으니 '이즈' 라는 글자를 써보고 FD 코드를 써보니


 

사용자 삽입 이미지

 

 

출력이 되는군요. 하지만 다음 줄에 넣을 대사 공간이 줄었습니다.


 

사용자 삽입 이미지

 

 

그 다음줄 대사를 덤프해서

'이 별에는 7개의 태양이 있다' 라는 글을 넣으려고 하는데


 

사용자 삽입 이미지

 

 

모자랍니다. 공간 부족.. 우선 출력 잘되는지 살펴봅시다.


 

사용자 삽입 이미지

 

 

출력은 잘 되는군요. 그런데 '이 있다'를 못썼으니 이거이거.. 어떻게 할지 생각해봅시다.

이번시간은 대사포인터 강좌가 아니라 말줄이기 꼼수스킬 강좌 같다는 생각이..


 

사용자 삽입 이미지

 

 

저기 보니 00 코드는 안쓰는 코드 같고 FD 는 한줄내림 FF는 문장 끝을 말하는 듯하니까..

이것을 수정하면 될것 같아서


 

사용자 삽입 이미지

 

 

이 부분을 수정해 FF만 남기고 사용했더니


 

사용자 삽입 이미지

 

 

출력이 태양이 있 까지 되는것은 둘째치고 기다림이 없이 그냥 넘어가버리네요..

(즉 문장을 읽을만한 1-2초의 여유시간이 사라졌다는 말)


 

사용자 삽입 이미지

 

 

극악의 말줄이기가 필요한 시점.


 

사용자 삽입 이미지

 

 

그냥 이별에는 을 없애고 7개의 태양이 있다로 출력하라고 표현해버렸습니다.

어투는 이상해도 의미는 전달될것이니까. 이런식의 말줄이기를 해버린것이긴 하나..

맘에 안드는 느낌..


 

사용자 삽입 이미지

 

 

출력은 제대로 되는군요.. 다음 문장도 번역해 넣어보면


 

사용자 삽입 이미지

 

 

여기도 말줄이기 센스

각각의 태양은 클라우드스트림라고 불리우는 특수한 구름에 의해 둘러싸여 있어

이 말을

각 태양은 클라우드스트림이라는 특수구름으로 싸여

이렇게 줄였습니다.


 

사용자 삽입 이미지사용자 삽입 이미지
 

 

출력은 되네요.,. 그 다음 문장도 번역해 넣었습니다. 하지만 더이상은 못하겠습니다.

역시 말줄이기는 스스로의 짜증지수를 체크해볼수 있는 좋은 물건인듯 합니다. ^^;

 

 

이제는 직접 과정을 보여드리지는 못하지만 포인터 부분을 말씀드리겠습니다.

 

절대주소 포인터가 찾아진경우는 어떻게 할까요..

이때는 아주 간단합니다. 롬의 여백(폰트확장에서 롬을 확장한 곳 같은부분이나 원래 있던 원본롬의 뒷부분에서 안쓰는 FF나 00으로 채워져 있는 부분)의 임의 주소로 바꾸고

그 위치에 대사를 쓰면 됩니다.

 

이건 무슨 의미냐 하면

101번째 논문(원래 주소)을 뽑으려고 했는데 논문이 달랑 한장(대사공간 부족..)밖에 안되서 수정을 하려고 해도 용지가 부족해서(말줄이기 스킬을 사용하지) 못할경우 비어있는 논문번호인 2123번(롬의 여백)에 논문을 작성하고

"101번째 논문을 불러와" 라고 적힌 곳(포인터)을 지우고 "2123번 논문을 불러와" 라고 바꾸는 것입니다.

 

이해가 조금 되실지 모르겠네요.

그러면 마지막으로 상대주소 포인터 예제를 하나 살펴보도록 하겠습니다.

모두의 쇼기 코드중 일부분으로 예제를 만들어봤습니다.

0F00 1000 0800 0B00 "優しい色した空を映して" FFFF ~~코드~~

0F00 0D00 4C00 0B00 "高層ビリが燒けに綺麗だ" FFFF

 

<- 더파이팅 엔딩곡인 파란하늘의 종이비행기 가사일부분입니다.

 

이 코드 내에 상대포인터가 있습니다. 0F00은 문장이 출력될것이라는 코드 1000과 0D00은 내부인자코드(별로 안중요 하니 무시) 0800이 상대포인터 입니다. 0B00은 문장길이 여기서는 11자이죠..

두글자씩 거꾸로 쓰면 000B니까 11자가 됩니다.

그리고 문장.. 그리고 FFFF는 문장끝 코드입니다.

 

그런데 이걸 한국어로 번역하니

"부드러운 빛을 띤 하늘을 비춘" , "고층 빌딩이 아름답게 붉게 빛나고 있어" 가 됩니다.

띄어쓰기까지 17, 21자입니다. 6자와 10자나 초과. 이걸 저기에 끼워 맞추려 말줄이기를 해봐도

부드럽게 하늘을 비춘 <- 11자

빌딩이 예쁘게 붉게 빛나 <- 13자입니다.

이렇게는 의미도 안살고 안예쁘죠..


이것을 어떻게 해야하느냐. 우선 상대포인터를 살펴봅시다.

0800은 2글자씩 거꾸로 쓰면 0008 이 되네요.

4C00은 2글자씩 거꾸로 쓰면 004C가 되고.. 이것은 76번째라는 소리입니다.

 

이걸 변환하려면.. 우선 롬의 여백을 찾아야 하는데 문제는 대사의 시작과 FFFF이상 벋어 나면 안된다는 점입니다. 이것이 상대포인터의 단점입니다.

 

그럼 어떻게 해야하느냐.. 상대포인터의 첫번째 위치를 찾아갑니다. 만약 4DDA8부터 대사가 시작된다면 A8DD04를 찾습니다.

이것은 무슨 뜻이냐면 대사를 통으로 옮긴다는 겁니다.

즉 논문을 담을 문서철이 300개 들이 문서철이라 문서를 추가하는 자체가 안되면 더 큰 문서철에 옮겨야 겠죠?

문서를 늘이기(대사공간 부족으로 상대포인터 사용을) 위해 전체문서(전체 대사)를 다른문서철(롬의 여백)에 옮겨 문서철의 여백(비어있는 상대포인터 주소)에 넣을 문서를 넣고(대사 입력) 문서 목록(원 코드)에는 그 문서 찾으려면 이쪽(새로 입력한 상대포인터주소)을 살펴보라고 적어놓으면 되는 겁니다..

 

대사를 통으로 옮겨서 이제는 4000번째(16진수) 주소 이후가 비어있다면..

 

0F00 100000400B00 "優しい色した空を映して" FFFF ~~코드~~

0F00 0D0020400B00 "高層ビリが燒けに綺麗だ" FFFF

 

이부분만 바꾸고

4000번째 주소부터 "부드러운 빛을 띤 하늘을 비춘" FFFF 그리고

4020번째 주소부터 "고층 빌딩이 아름답게 붉게 빛나고 있어" FFFF 를 집어넣으면 된다는 겁니다.

문장 종료코드는 넣어주는 정도의 쎈스

 

그러면 출력하려고 롬이 돌아가다가 다음 문장 어딧냐는 것에 0040위치 즉 4000번째 위치에 있어 라고 나오니 4000번째 주소에 가서 문장을 찾아다 뿌려줄것이고 다음 문장도 그런식이 될것입니다.

 

이번 강좌는 너무 길었다랄까요. 상당히 피곤한 강좌였습니다. 사실 절대주소포인터때문에

샤이닝소울과 골프천재탄도, 나루토 RPG 등 여러 롬을 열어서 스샷도 찍고 대사도 찾았는데 다들 포인터가 감춰진듯 안보이더라구요..(제가 급해서 대충봐서 일수도.,. ^^)

그래서 어쩔수 없이 말로 포인터부분을 설명한 것이고 그점 양해 바랍니다.

 

어쨋건 이제 대사는 이런식이라는 것을 아셨을겁니다.

전체 대사를 바꾸려면 이런식으로 한줄한줄 바꿔나가는 수밖에 없습니다.

그래서 한글화가 몇퍼센트냐고 묻는게 정말 매너가 없다는 소리를 들는 것입니다.

사실 이건 노가다의 극치입니다. 노가다를 하고 있는 사람한테 일 고따구로 한다고 아니면 아직도 못했냐고 아니면 얼마나 했냐고 자꾸 물어보면 더 성질나겠죠..

 

사실 이 강좌는 여기까지가 다지만 실제에서는 이제부터 시작인것입니다. 여기까지 롬을 뜯어보시고 분석해보시고 한글폰트를 넣으신 분이라면 대사의 양에 비례해서 한숨이 나올것이라고 생각합니다..^^;

 

그럼 다음 강좌가 벌써 마지막 강좌가 되었네요. 다음 강좌는 이제 별거 없습니다.

패턴을 만들고 압축된 이미지를 수정하는 방법과 로고 넣고 릴리즈 하기 위해 IPS를 뽑아내는 정도를 다룰듯 합니다. 그럼 이만 줄입니다.

댓글을 달아 주세요

  1. Favicon of http://blou.tistory.com Bleu 2009.04.21 12:22  address  modify / delete  reply

    아흑.. 힘드네... ㅠ.ㅠ

  2. 비색안 2009.05.25 00:04  address  modify / delete  reply

    ...한글화를 하는 게 얼마나 힘든지 잘 알게됬습니다. ;_;

안녕하세요 새항아리 입니다.

 

제목 : GBA 한글화 쌩초보 강좌 - 8 (1)

부제목 : 한글폰트를 넣고 대사를 수정해보자

 

이번 강좌는 그림이 많다보니 2파트로 분리했습니다. 1파트는 한글폰트를 넣는 부분이며

2파트는 그것으로 대사를 직접 수정하는 방법과 대사포인터에 대한 이야기를 하겠습니다.

 

그럼 강좌 시작하겠습니다. 그리고 조금은 다른 이야기 혹은 잡담을 해보도록 하겠습니다.

 

우선 여기까지 오시느라 수고하셨습니다. 사실 한글화라는 것이 생각만큼 만만한 것은 아니라는것을 첫강좌에서 폰트를 찾거나 두번째 강좌에서 대사위치를 찾아보시면서 느끼셨을겁니다.

만약 쉽게 찾으셨다면 능력이 대단하신 분이라는 생각이 드네요..

 

한글화 전반에 대한 이야기를 했던 첫강좌를 지금 보면 아 이게 이런말이구나 하실지도 모르겠습니다. 이제는 직접 한글폰트를 넣고 그것으로 출력되도록 하는 법을 배워볼겁니다.

하지만 이 작업을 하기 전에는 꼭 준비되어야 할것이 있습니다.

 

첫째. 대사 그리고 번역본(일부분이라도)

이것이 필요한 이유는 별 설명을 하지 않더라도 아실겁니다. 대사가 있어야 번역을 하고 번역본이 있어야 적용을 하겠죠? 그리고 번역본에 () 표시로 일부분이라도 라고 적힌부분에 대해서는 조금 후에 폰트를 만들때 설명드리겠습니다.

 

둘째. 일본어 고유번호표

이건또 왜 필요하느냐 하실분이 계실지 모르겠습니다. 하지만 저번시간에도 말씀드린것과 같이 대사는 언제나 빠트릴수 있는 위험이 있습니다. 혹시 이것을 대사를 뽑은 후 이제 필요없으니 지워버리려 하셨다면 안됩니다. 꼭 보관해놓으세요..

 

셋째. 원본롬

이것도 위의 고유번호표와 비슷하지만. 첫시간에 제가 말씀드린대로 원본은 꼭 백업해놓으셔야 합니다. 사실 고유번호표나 원본롬이나. 아니면 부가적으로 생성되었던 그 어떤것이라도 절대 지우시지 마시고 보관하세요. 나중에 필요할지 모릅니다.

 

어쨋건 이정도로 준비물을 마치고 직접적으로 한글화에 들어가봅시다.

하로보츠의 한글화를 위해 초반 프롤로그의 일정부분을 번역했습니다.


 

사용자 삽입 이미지

 

 

이렇게 어느정도라도 즉 일부분의 번역본이라도 필요한 이유는 폰트를 뽑아내야 하기 때문입니다.

갑자기 폰트는 무슨 이야기냐 하실지 모르겠지만.

지금 롬에는 일본어 폰트밖에 없습니다.(강좌에서 고유번호표라고 작성했던 것)

그런데 한글화니까 한글폰트를 필요로 합니다.

 

문제는 일본어 폰트의 갯수의 한계치입니다. 저번시간 강좌에서 폰트확장 기술을 설명드리면서 드렸던 말씀입니다. 이것을 예로 설명드리자면

 

10칸 10줄인 서랍장이 있다고 생각합시다. 그 안에는 글자모양의 악세서리가 있는 수납장이라고 칩시다. 첫줄 첫칸에는 A 모양이 모여있고 첫줄 두번째 칸에는 B, 세번째는 C... 이런식으로 넣어있다고 하면..

 

제가 I LOVE YOU라는 글자모양을 만들려면

I 가 들어있는 칸에서 하나 빼고 (9번) 한칸띄고 LOVE(12번,15번,22번,5번) 그리고 한칸띄고 다시 YOU(25번,15번,21번)를 빼내서 만들면 되겠죠?

 

그런데 이것을 사람이 안하고 기계를 시킨다면 어떻게 될까요..

빼는 칸수만 이야기 해주면 하나 뺄거고 띄라는 말을 하나를 넣어주면 되겠죠?

 

즉 9번,띔,12번,15번,22번,5번,띔,25번,15번,21번 이렇게 말이죠. 그러면 기계는 거기에 무엇이 있던간에 하라는데로만 하면 I LOVE YOU 가 될것이니까요.

 

그럼 이걸 한글로 바꾸려면 어떻게 해야할까요. 첫줄 첫번째 칸부터 가,각,간,갇 이런식으로 집어넣으려고 하니까 10칸 10줄이니 100개밖에 안되니 한글을 다 못넣죠? 그래서 쓰는 글자만 넣는겁니다.

나는 너를 사랑해! 라는 글자를 쓰고 싶다면.

우선 서랍장에 들어있는 글자들을 빼고 첫줄 첫번째 칸에 '나'라는 글자 악세서리를 넣어두고 '는'은 두번째 이런식으로 넣어야 글자 악세서리를 모아 한글로 출력하겠죠?

 

기계한테는

1번,2번,띔,3번,4번,띔,5번,6번,7번 이렇게 하라고 하구요..

 

이것이 한글화입니다.

이미 서랍장에 존재하는 글자들은 일본어 폰트라고 생각하시면 되고 한글로 바꾸려고 그 수납칸에 들어있는 글자를 빼고 한글을 넣는 것을 한글폰트 삽입.

그리고 서랍장이 너무 모자라서 서랍장을 하나 더 구하는 것을 폰트 확장

서랍장에서 몇번째 빼라는 기계의 명령을 수정하는 것이 대사 수정입니다.

 

그럼 이제 본격적으로 예를 한번 들어보지요..

 

번역본을 구했으면 글자수 세기 프로그램으로(한식구 자료실에 있습니다.)

이 글에서 쓰인 폰트를 찾아봅시다. 즉 서랍장에 들어갈 녀석들을 찾는 겁니다.

왜냐하면 필요없는 글자 즉 안쓰는 글자까지 서랍장 공간을 줄정도로 서랍장이 남지는 않으니까요.

 

사용자 삽입 이미지

 

 

글자수 세기 프로그램으로 입력 출력을 정하고 세어보기를 누르면


 

사용자 삽입 이미지

 

 

107개의 글자로 써져있는 글이네요.

그리고 말씀 안드린 부분이 있습니다. 아까 일부분이라고 말씀드린 부분인데요.

일부분과 통채의 차이를 말씀드리겠습니다.

일부분으로 적용하는 경우는 번역이 일부분씩 온다거나 아니면 폰트 갯수가 간당간당해서

어떻게 될지 모를때 부분을 처리해 폰트를 집어넣고 새로 써야하는 폰트를 추가해서 사용하는 것이고..

통채로 처리하는 경우는 통채로 번역본이 온경우 그것을 처리해야할 때 사용합니다.

폰트갯수가 400-500개 정도인경우 한글화시 완성형으로 처리하기에 갯수가 조금 모자랄수도 있습니다. 이럴때 통채로 번역해서 쓸모없는 글자를 빼는 노하우도 필요하죠..


 

사용자 삽입 이미지

 

 

출력 파일을 보면 이런식으로 몇번 쓰였는지 표시가 됩니다. 이건 어쩔때 사용하느냐 하면.

번역을 해서 사용된 글자수가 550자인데 사용가능한 폰트수(서랍장 공간)은 530개밖에 안된다고 보면 20개를 줄여야하겠죠? 왜냐하면 폰트 공간은 530개밖에 안되니까 그 이상은 기계가 알아먹지 못한다는 말이고 즉 기계가 출력해줄수 없다는 의미입니다.

 

그러니 20개를 줄여야하는데 어떻게 줄여야하느냐.. 이때 저기에서 출력된 문서를 잘 보면서 사용 빈도가 1번이나 2번인 글자를 다른글자로 대체하면 됩니다.

 

이건 어떤의미냐 하면.. "놓여져 있다" 구문이 있고 "놓"자가 딱 1번 쓰였다면 놓여져 있다라는 글을 그냥 "있다" 라던가 하는 문장으로 바꾼다면. 놓 자를 안쓰게 되겠죠? 게다가 글자 수도 줄였으니 금상첨화..(이 부분은 파트 2에서 이야기 하겠습니다.)


 

사용자 삽입 이미지

 

 

우선 한글로 옆에 사용빈도를 F4키를 누르고 방향키로 잘 맞춰 삭제합니다.

즉 쓰이는 글자만 남기고 =?? 표시를 지우는 겁니다.

윗줄 밑줄 지우고 각 줄을 하나로 뭉치면(엔터 없이 아래처럼)


 

사용자 삽입 이미지

 

 

사용되는 글자만 문서 하나에 모여져 있게 됩니다. 이것을


 

사용자 삽입 이미지

 


폰트생성기를 사용해 처리해봅시다.

 

사용자 삽입 이미지

 

 

사용되는 글자만 모아놓은 문서를 읽어오고


 

사용자 삽입 이미지

 

 

폰트 불러오기를 누르면 폰트를 불러옵니다. 추천하는 글꼴 및 크기는 16x16사이즈 일경우는

바탕체에 크기 11정도를 추천합니다. 약간 왼쪽으로 쏠린것은 다음에서 해결됩니다.

사용자 삽입 이미지

 

 

우선 폰트로 저장합니다. 이 폰트 파일을 YYCHR로 보시려면 1BPP 16x16 설정을 하셔야 제대로 보입니다. 그러나 웬만한 롬은 폰트를 나타내는 색깔이 배경과 폰트색 외에 그림자 색이 하나더 있습니다.

 

이것을 표현해주는 프로그램까지 폰트생성기에 같이 있습니다.


 

사용자 삽입 이미지

 

 

프로그램을 실행해서 원본폰트와 출력폰트 그리고 테두리를 선택합니다.


 

사용자 삽입 이미지

 

 

그리고 효과주기를 누르면 해당폰트의 한글자에 그림자를 입혀 다시 저장해줍니다.

이 그림자 때문에 아까 말씀드린 왼쪽으로 쏠린 느낌이 없어지게 됩니다.


 

사용자 삽입 이미지

 

 

폰트를 직접 보면 글자색이 5번째 색이고 그림자색이 3번째 색 첫번째 색은 배경입니다.

(여기서 몇번째라고 말씀드리는 것은 확대 그림 밑에 있는 팔렛트를 왼쪽부터 읽은 이야기입니다.

즉 여기서는 첫번째는 0F라고 써있고 두번째는 00 세번째는 01, 30, 30, 05 이렇게 써있는것 말입니다.)

 

하지만 네번째 색과 다섯번째 색이 흰색으로 같아서 잘 모르겠다 하시는 분은

글자 확대 그림에서 글자색 부분에 마우스를 가져다 대시고 마우스 오른쪽키를 누르면 해당 색이 선택됩니다. 그리고 밑 파레트를 지나 더 밑에 있는 색깔중 바로 태나는 색을 눌러보면 변경이 되니 몇번째인지 헷갈리시는 분은 이렇게 확인하세요.


 

사용자 삽입 이미지

 

 

폰트를 열어보면 이처럼 표시되어 있습니다. 배경과 그림자색은 첫번째 세번째로 동일한데 폰트색이 여기는 두번째 색으로 되어 있네요.. 이것을 수정해줘야 합니다. 왜냐하면 폰트색을 안맞추고 그대로 가져다가 붙여넣기를 하면 폰트가 색이 이상하게 표시되니까 말이죠..


 

사용자 삽입 이미지

 

 

저기 Replace color 라고 적힌 부분 위의 아이콘을 눌러봅시다.

(지금은 비활성화 되어 있네요. 제가 누른 뒤라서 그렇습니다.)

그러면 저렇게 확대칸에 표시가 바뀝니다. 이부분에서 수정해주면 되는데요.

두번째 색을 다섯번째 색으로 변경하면 되는것이니까

키보드의 2(두번째색)를 3번 눌러 5번째 색으로 바꾸던지

아니면 저기 두번째 색에 마우스를 3번 눌러 5번째 색으로 바꾸면 됩니다.


 

사용자 삽입 이미지

 

 

그리고 엔터를 누르면 적용됩니다.


 

사용자 삽입 이미지

 

 

나머지 부분도 적용해줍시다. 5번째 색이 잘 안보여서 색을 바꿨습니다.

그리고 YYCHR은 파일 첫부분과 끝부분에 자동으로 맞춰지므로 2칸보다 모자란 이런 이미지는 앞쪽에 이미 적용된 이미지도 보입니다. 즉 ABC를 출력해야하는데 AB를 출력했다가 다음장으로 넘겼더니 BC를 출력한 셈이니 그리 신경쓰지 않아도 됩니다.


 

사용자 삽입 이미지
 
 
이 폰트를 선택해서 원래 폰트에 덮어 쓰면 됩니다. 왼쪽이 원래 폰트고 오른쪽은 클립보드에 복사된 한글폰트 이미지입니다.
 


사용자 삽입 이미지

 

 

나머지 부분도 덮어 넣어 줍니다. 그리고 이제 만들어야 하는게 있습니다.

한글 고유번호 표인데요.

 

이것은 또 무슨이야기냐 하실분들이 계실지 모르겠습니다.

한글 고유번호표라는 것은 대사장에서 한글로 바꿔서 넣을때 어떻게 기계가 인식하게 만드느냐의 매개체입니다.

 

예를 하나 들어봅시다. 제가 이제 폰트까지 넣고 사랑해요 라는 글자를 출력하고 싶습니다.

사는 1F번째, 랑은 2A번째, 해는 21번째 요는 4E번째 글자로 대체시켜놨다면

 

저는 이것을 원래 일본어가 적혀 있던 곳.. 아이시테루(여기서는 1A 2E 42 10 33이라고 칩시다.)의 부분에 즉 1A로 적힌 부분을 1F로 2E를 2A로 42를 21로 10을 4E로 바꿔야 합니다.그런데 이렇게 직접 코드를 입력하려면 너무 귀찮죠?

 

그때 사용하는게 고유번호표 아니였습니까?

 

그러니까 1A 2E 42 10 33을 꼭 찾아보지 안더라도 일본어 고유번호표를 적용하면 아이시테루라고 표시된것처럼 사랑해요라는 코드를 직접 써넣지 않더라도 한국어 고유번호표를 적용하면 1F 2A 21 4E라고 넣어주는 기능을 하게 됩니다.

 

이걸 통역이라고 생각하면.

기계어를 일본어로 통역해주는 것 - 일본어 고유번호표

일본어를 한국어로 통역해주는 것 - 번역가분의 번역

한국어를 기계어로 통역해주는 것 - 한국어 고유번호표

가 되는 거죠.

 

사용자 삽입 이미지
 
 
고유 번호 만드는 것은 따로 설명드리지 않겠지만. 한국어 고유번호표는 어떻게 만들어야 하냐는 것은 폰트를 덮어 씌운 순서대로 그리고 원래 있었던 글자의 고유번호표를 대칭시키면 되겠습니다.
 
즉 예전에 言 이라는 글자가 F1 00 의 고유번호를 가지고 있었고 이번에 言자 위에 덮어 쓴 글자가 "가" 자이니까 F100=가 라고 쓰면 되는 겁니다.
 
이것을 조금더 편하게 하시려면 아까 폰트를 만들 대상이었던 사용되는 글자 모음 문서나 글자수 세기 프로그램에서 출력된 문서를 잘 수정하시면 됩니다. 문서에 쓰인 글자의 순서대로 폰트를 만들고 집어넣었으니 순서가 같을거니까 고유번호만 맞춰주시면 될겁니다
 


사용자 삽입 이미지
 
 
 
이제 본격적으로 한글을 출력할 시간이 다가왔습니다
파트 2에서 뵙겠습니다.

댓글을 달아 주세요

  1. Favicon of http://blou.tistory.com Bleu 2009.04.21 12:23  address  modify / delete  reply

    히라가라. 가타카나가 안되는 이유가 있군요 ㄱ- ...

blank-6962-jesuswn.zip

안녕하세요 새항아리입니다.

 

제목 : GBA 한글화 쌩초보 강좌 - 7

부제목 : 폰트확장과 포인터에 대하여.

 

원래 이번 시간에 포인터만 강좌할까 하다가 대사포인터를 하기 전에 한글폰트를 먼저 만들어야한다는 점을 까먹었다는 것을 인식하고 폰트확장부분을 다루면서 포인터를 이야기 해보도록 하겠습니다..

 

 

우선 강좌를 시작하기 전에 말씀드릴게 있습니다.

초보분들의 의지를 꺽는것은 잘못된 것이지만.. 죄송스럽게도.. 영문롬과 히라가나 가타카나만 쓰인 롬들(예로 제가 강좌 예제로 사용했던 스크류 브레이커같은 롬)은 한글화 하시기 어렵습니다.

전에도 이야기 했지만 한글의 완성형으로는 256자로 모든 글자를 표현하기 힘듭니다.

아무리 적어도 400-500자 정도는 되어야 가능하고 게다가 띄어쓰기나 기타 부호 혹은 영문등은 거의 손댈수 없기 때문에 사용이 가능한 글자는 220-30자 내외가 됩니다. 이걸로는 정말 부족하죠..

 

제가 이번 강좌에서 쓰는 폰트 확장의 경우는 2바이트 글자도 모자라서 늘리는 것이기 때문에..

폰트를 확장하면 되지 않느냐는 질문에는 정중히 사과의 말씀 드려야 할것 같습니다.

 

256자로 한글화는 가능하나 반조합이나 조합을 사용해야 하는 점 혹은 폰트확장을 하기 위해서는 롬의 코드 내에 인자코드의 제한 크기를 2바이트로 늘리거나 폰트가 들어가는 길목에 코드를 삽입해 포인팅 해주는 기술이 필요할듯 하며 저도 GBA 롬 구조와 코드구조를 정확히 모르기 때문에 알려드릴수 없는점. 양해바랍니다.

 

그러면 우선 하로보츠를 예로 들어 폰트를 확장시켜 보겠습니다.

 

하로보츠는 1바이트 코드와 2바이트 코드로 구성되어 있습니다.

 

 

사용자 삽입 이미지

 

 

이렇게 생긴 1바이트 코드(한글자당 8x16사이즈)와

 

사용자 삽입 이미지

 

 

이렇게 1바이트의 두배 크기인(글자당 16x16사이즈) 2바이트 코드(2바이트라고 해서 꼭 사이즈가 2배가 되는 것은 아니며 같은 사이즈이나 2바이트 코드가 될수도 있습니다.)가 있습니다.

 

롬을 확장하기 위해서는 우선 비어있는 롬이 필요합니다.

 

 

사용자 삽입 이미지

 

 

1메가짜리 비어있는 롬이구요. 이걸 만드는 방법은


 

사용자 삽입 이미지

 

 

이렇게 롬에 FFFF가 많은 부분을 띄어다가 새파일을 열어 붙여넣기의 반복을 하시면 됩니다.

제가 512K사이즈와 1MB사이즈 2개를 만들어 압축파일로 첨부하였으니 그냥 사용하시면 됩니다.

(같은 비트의 반복이라 압축 크기가 1KB밖에 안되는군요.. ^^;)


 

사용자 삽입 이미지
 
 
사용법은 도스명령으로 이처럼 주면 됩니다니다.
 
copy /b "롬 이름" + "blank-512k.gba" "출력 이름"
 
이렇게 롬 뒤에다 비어있는 롬을 붙이면 롬을 확장 시킨게 됩니다.
 
사실 SFC의 경우 뱅크의 크기와 같은 문제 그리고 헤더파일의 존재로 롬을 확장시키기 어렵다고 합니다만 GBA는 그냥 빈공간 가져다가 붙이면 확장이 되게 됩니다.

 
사용자 삽입 이미지

 

 

위에 주소를 보니 512K짜리 여백을 붙였네요. 그래서 지금 아랫부분으로 내렸는데 빈공간이 충분히 많죠?

 

롬을 확장하는 큰 이유중 하나는 폰트를 확장하기 위해서 이고. 또하나의 큰 이유는 대사 포인터 대상 공간을 확충하기 위해서입니다.

 

포인터에 대한 이야기를 본격적으로 시작해보도록 하겠습니다.

 

포인터는 한국어로 그냥 번역하면 가리키는 것 이라고 합니다.. 사실 어렵죠.. 이렇게 말하면 어렵게 들립니다. 쉽게 예를 듭시다..

 

아파트가 있습니다. 김영희 이철수 등등 집앞에 명패를 걸어놓은 아파트입니다.

그래서 명패를 보고 이철수 네 가족 나오세요!! 이렇게 관리실에서 말을 하면..

이철수씨네 가족이 나올겁니다. 하지만 관리실은 그렇게 안하죠..

왜냐하면 그렇게 되면 자기가 이철수씨라는 이름을 알야아 하니까요..

 

어떻게 합니까? 1021호 나오세요. 라고 합니다.

그러면 그 집에 있는 가족(여기서는 이철수씨네 가족)이 나올겁니다.

여기서 1021호 라는 게 포인터입니다.

포인터라는 것을 간단히 말하자면 살고있는 집위치 입니다.

 

대사로 다시금 이야기해보자면..

"이철수씨네 가족" 출력! 이라고 적혀 있다면. 이철수씨네 가족 이 출력되겠지만, 출력하는 쪽에서 대사 전체를 알고 있어야 합니다.

1021 출력 이라고 적혀 있다면 1021 위치에 살고 있는 "이철수씨네 가족" 이라는 대사가 출력되게 됩니다.

이렇게 바뀌면 대사부분과 출력부분이 나뉘어 지게 됩니다.

(관리실이 가족이름을 몰라도 된다는 소리입니다.)

 

그런데 이 아파트에 창고나 주민 문화공간으로 쓰이는 곳이 있다고 칩시다.

주민 문화공간 중 헬스장이 너무 좁아서 헬스장 옮기려면 어떻게 해야할까요..

우선 아파트내에 빈 곳이 있는지 확인하고 그 빈곳이 몇호인지 파악해.

관리실에 변경신청 해야겠죠?

 

그러면 관리실은 만약 누가 헬스장이 어디냐..고 물으면 변경된 호수를 알려주면 될겁니다.

 

이게 바로 폰트확장입니다.

폰트를 추가하려고 보니까 폰트가 아닌 다른 코드들로 막혀 비좁다는 말이죠..

그래서 롬의 빈공간(아파트의 비어있는 곳)을 찾아야합니다.

 

적어도 예전에 있었던 공간보다는 커야겠죠? 거기로 옮긴다음에는 어떻게 해야할까요.

여기가 폰트주소(헬스장)이다라고 말하는 부분(관리실)에 수정을 하면 되겠죠?

 

개념설명은 여기까지 하고 우선 실제 예를 들어봅시다.

하로보츠의 한자롬의 시작위치를 찾아가봅시다.

 

 

사용자 삽입 이미지
 

 

보면 시작위치가 8394로 되어 있고 끝위치는 찾아보면 29213로 되어 있네요..

(끝위치는 폰트가 끝나는 쪽에 써있는 주소가 아니라 그걸 이리 저리 옮겨서 창에 폰트가 딱 안보이는 주소의 하나 적은 주소까지입니다.)

 

이런 위치들이 전부 포인터가 될수 있는겁니다.

포인터가 될수 있다는 말은 이런 위치를 부르면 포인터가 되는 겁니다.

즉 부르지 않으면 포인터가 아니다라는 것 부르는 그 행위 자체가 포인터라는 겁니다.

 

어쨋건 시작 주소를 찾아봅시다.

주소를 찾을때에는 2글자씩 거꾸로 입력해야합니다.

연산크기와 코드라인 읽는 방식에 대한 이해가 필요하지만 그냥 2글자씩 거꾸로 넣는다고 생각합시다.

(혹 궁금해 하실분을 위해 간략설명하겠습니다.

복도가 하나 있는데, 사람 2명이 딱 들어갈수 있는 크기입니다.

그러면 2사람씩 들어가겠죠?(연산 크기를 말하는 겁니다. [1바이트]) 들어가서 나오니까

오른쪽부터 먼저 들어간 사람이 서라고 합니다.(코드라인 읽는 방식)

그러다보니 008394 가 통로에 들어가려니 2개씩 들어가게 되고

|94|

|83|

|00| ↓ 방향 통로..

나올때는 오른쪽 부터 서라고 하니까

94 83 00 이 되는 겁니다.. 그냥 이런식으로 이해해주세요..)

 

어쨋건 그렇게 되서 94 83 00 을 찾으면

 

 

사용자 삽입 이미지

 

 

여기서도 HEX로 바꿔주는 정도의 센스~~!!


 

사용자 삽입 이미지

 

 

하나가 나오네요..  보통 2곳에서 여기가 폰트야~~ 라고 포인팅 하는데 이건 하나군요..

그러나 한자부분을 가리키는게 확실한지 확인하려면 우선 롬의 빈공간으로 포인터를 바꿔봅시다.

 

이 말을 쉽게 하자면 8394호 녀석 나와라고 말할것을 408394호 녀석 나와 라고 말하라고 바꾸는 겁니다.


 

사용자 삽입 이미지

 

 

변경하고 저장후 롬을 실행해보면


 

사용자 삽입 이미지


 

한자 부분이 깨지네요. 이것은 무슨말이냐하면.. 8394호를 불러야 하는것을 408394를 불렀으니

엉뚱한 녀석이 나부르네 하고 나갔다는 소리고.. 빈여백이기 때문에 검정하게 혹은 하얗게 출력이 되는 겁니다.

 

 

사용자 삽입 이미지

 

 

한자 폰트부분을 대사장에서 드래그 합니다. 드래그가 어렵다면.

쉬프트 누르고 페이지 다운키를 반복하세요.. 그래서 저기 빨간색 표시된것처럼

폰트부분을 전부 선택했다면..

 

 

사용자 삽입 이미지

 

 

복사해봅시다. 그리고

 
사용자 삽입 이미지

 

 

아까 옮겨놓은 주소인 408394주소에


 

사용자 삽입 이미지

 

 

덮어 씌우면..


 

사용자 삽입 이미지

 

 

출력이 제대로 되는군요..


 

사용자 삽입 이미지

 

 

폰트가 제대로 출력되니 이제 본격적으로 확장하는 준비를 해봅시다.

확장을 하기전에 우선 폰트의 한계치를 알아야 합니다.

왜냐하면 이런 코드까지는 폰트로 인식하지만 이 다음코드부터는 폰트로 인식하지 못하고

제어코드로 인식할수 있다는 의미입니다.

 

예를 들면서 설명하도록 하지요. 원래 있던 폰트의 마지막 폰트의 고유번호는 F5 1C입니다

F5 1C 이후부터는 여백으로 되어 있겠죠? 우선 다음 폰트인 F5 1D를 출력해보면


 

사용자 삽입 이미지

 

 

잘 출력되는듯 보입니다.

 

확인하려면 해당 폰트인 F1 1D위치에다가 폰트를


 

사용자 삽입 이미지

 

 

수정하고 다시 롬을 열어 확인하면 됩니다.

 

(% 여기서 주의하실점은 대사장과 YYCHR을 동시에 켜놓으시고 수정하시면 안된다는 점입니다.

대사장과 YYCHR의 경우 각기 메모리에 롬을 통채로 저장하고 있다가 저장하라는 명령이 들어오면 롬을 통으로 저장합니다. 즉 YYCHR로 열심히 수정해서 저장한후 대사장으로 코드 2-3개 수정하고 저장하면 대사장은 YYCHR이 저장한 것을 모르기때문에 덮어 씌우게 되는겁니다.

따라서 하나를 저장하면 다른 하나는 열기를 해서 불러와야 데이타의 손실을 막을수 있습니다.)


 

사용자 삽입 이미지

 

 

골뱅이가 출력이 잘 되는군요. 이제는 폰트의 한계치를 살펴봅시다.


 

사용자 삽입 이미지

 

 

저는 FA부터 제어코드라고 판단해서 F6, F7, F8, F9의 시작주소의 폰트를 저렇게 무작위로 변경해놓았습니다.


 

사용자 삽입 이미지

 

 

그리고 대사를 변경해 그 폰트를 출력하라고 했습니다.


 

사용자 삽입 이미지

 

 

하지만 이게 뭡니까 깨집니다. 즉 한마디로.. F6 00 부터는 대사폰트로 인식되지 않는다는 점이네요..

아쉽습니다. 폰트 확장을 할때는 그래도 천개정도는 확장가능하지 않을까 기대했는데.


 

사용자 삽입 이미지

 

 

우선 F5의 마지막 FF위치를 변경해보고 F5 FF까지는 대사폰트로 인식하는지 살펴보겠습니다.


 

사용자 삽입 이미지
 
 
F5 FF까지는 인식하네요..
그나마 다행입니다. 대사 폰트의 한계치를 딱 맞춰서 정해놓은 게임도 있을수 있기 때문이죠.
그러면 폰트를 확장한 의미가 없어지기 때문입니다.
 
F5가 1C까지 썼으니까 FF - 1C 하면 225개 정도 여유가 더 생겼네요.
 
사실 하로보츠는 딱히 폰트를 확장할 필요까지는 없습니다.
왜냐하면 하로보츠의 한자 갯수가 960여개 정도 되기때문이죠.
이정도면 완성형 폰트를 쓰더라도 충분히 가능한 갯수이지만
 
이번에 폰트확장에 대한 이야기를 하고 다음에 한글폰트와 대사포인터에 대한 이야기를 해야 궁합이 맞을것 같아서 집어넣어봤습니다.
 
다음 강좌에서는 한글폰트를 넣어보고 대사포인터를 찾아보자 라는 강좌를 진행할 예정입니다.
그럼 도움이 되셨길 바라며 이만

댓글을 달아 주세요

  1. 미치겠네요 2007.07.09 02:42  address  modify / delete  reply

    공백에다 한글을 집어넣고 기존 롬에다 추가로 넣어서 고유번호표를 작성할 수 있나요?
    .... 포켓몬를 한번 바꿔 해보고싶었는데 컥 히나가라와 가카카나만 있으면 어렵다고 말하셔서 컥!!!!!

    • Favicon of https://shouting.tistory.com 새항아리 2007.07.09 10:34 신고  address  modify / delete

      한글화가 쉽지 않은건 거기에도 이유가 있죠.

      예를 들어 자판기가 있는데 거기에 버튼 20개(고유번호)가 각각 다른 음료(폰트)를 뽑아준다고 생각해보세요.

      그런데 말씀하신대로 음료수 개수(폰트 개수)가 적다고 자판기(롬)안에 음료수 종류(폰트 개수)만 늘린다고 해도

      버튼개수는 20개(고유번호)로 변함이 없으니까 음료수가 몇개가 있던 상관 없이 20개밖에 못쓰는 겁니다.

      만약 버튼의 개수(고유번호)까지 늘리고 싶다면 도구(어셈블리어)를 사용해 자판기(롬) 자체를 개조(해킹)해야 합니다.

      즉 개조(해킹)할 실력이 되지 않으신다면 무용지물인거죠. 덧 붙이자면 포켓몬스터는 어셈블리어 수정도 고난이도라고 합니다.

  2. 미치겠네요 2007.07.09 13:07  address  modify / delete  reply

    죽으라는 소리군요...

  3. 프리뷁수 2007.07.09 13:18  address  modify / delete  reply

    근데 폰트 사이즈는 어떻게 아는 건가요?

    • Favicon of https://shouting.tistory.com 새항아리 2007.07.09 14:32 신고  address  modify / delete

      폰트 사이즈가 1바이트, 2바이트로 나뉘는 것을 이야기 하신다면. 앞서 고유번호표를 작성하는 강좌를 다시금 보시면 아실겁니다.

      즉 하나의 글자를 표시하기 위해 코드가 1개 쓰였는지 2개 쓰였는지가 1바이트와 2바이트를 구별하는 지침이 되는 거죠.

      예를 들어 00 01이 愛라는 글자를 나타낸다면 2바이트 폰트고 01=A라는 식으로 하나의 코드가 한글자를 나타는 폰트를 1바이트 사이즈 코드라고 합니다.

  4. 나그네 2007.08.06 16:15  address  modify / delete  reply

    쿨럭.. 지금까지 잘 보고 배우다가.. 댓글들 보니 난감해지네요.. 안그래도 포켓몬 하고 있었는데

    • Favicon of https://shouting.tistory.com 새항아리 2007.08.06 16:37 신고  address  modify / delete

      포켓몬스터는 인기작품이지만 그에 반해 한글화된
      작품은 정식발매한 골드와 실버를 제외하고는 딱히
      없는 이유가 바로 그것입니다..

      그래도 열정이 있으시다면 도전해보세요

  5. 겔라디아 2007.12.04 17:06  address  modify / delete  reply

    도스명령 저 창 어디로 들어가야되나요? 롬확장하려고하는데 도스명령을 못찾아서 막혔어요ㅠㅠ

  6. 겔라디아 2007.12.05 13:02  address  modify / delete  reply

    감사합니다 쭉쭉 진행중이예요....

  7. 하아.. 2007.12.25 09:25  address  modify / delete  reply

    돌아버려 ㅠ_ㅠ 뭐이리어렵냐 처음부터못찾겠어요 ㅠ_ㅠ 역재 3 쉿!

  8. Favicon of http://blog.naver.com/jhw0604 에플트리 2008.02.10 05:32  address  modify / delete  reply

    엄청난글 ㅎㅎ;
    저도 이쪽에 관심이 있어서 글들을
    블러그에 링크 걸어가겠습니다.

    혹시 불쾌하시다면 메일을;;

  9. Favicon of http://blog.naver.com/jhw0604 에플트리 2008.02.10 06:22  address  modify / delete  reply

    역시 pc의 경우에는 용량상의 여유가 있어서 따로 대사파일을 만들거나 하겟지만
    게임기의경우 용량의 제한이 심하니 공간절약을 위해 별짓을 다하는군요 ㅎㅎ
    앞으로 전 프로그램을 만들때 확장을 위한 생각을 많이 해두어야 하겟네요 ㅎㅎ

    글 잘 읽었습니다. 쓰시느라 힘들었을텐데 몇시간 안에 다 읽어버려서 죄송하네요

    • Favicon of https://shouting.tistory.com 새항아리 2008.02.10 12:30 신고  address  modify / delete

      임베디드 프로그래밍쪽이나 핸드폰용 wipi등의 프로그래밍이 아니라면 용량걱정은 안하는게 대부분이죠.
      요즘 추세가 소형기기가 발전하는 모양이라 용량 줄이는 방법을 배우는 것도 나쁘지는 않습니다.

  10. TimeDalek 2008.08.11 15:39  address  modify / delete  reply

    대사장에서 폰트 찾는데 않나오네요...

  11. TimeDalek 2008.08.16 08:36  address  modify / delete  reply

    아 제가 말을 잘못썻군요.
    폰트를 찾는게 아니라 폰트의 시작주소를 찾는것을 말하는거였습니다..

    • Favicon of https://shouting.tistory.com 새항아리 2008.08.16 12:48 신고  address  modify / delete

      폰트 포인터를 못찾으셨다는 소리같은데요.
      모든 게임이 포인터를 사용하는 것은 아닙니다.
      게다가 상대포인터를 사용했다면 또 다릅니다.
      천천히 연구해보셔야 할것 같네요.

  12. TimeDalek 2008.08.18 15:54  address  modify / delete  reply

    상대포인터는 어떻게 찾죠??

    • Favicon of https://shouting.tistory.com 새항아리 2008.08.18 17:40 신고  address  modify / delete

      그건 무슨 답이 나와있는게 아니라 롬을 가지고 계속 연구를 해보셔야 합니다..
      강좌를 천천히 읽으시고 연구를 계속 해보세요.
      한글화가 쉬운일이 아니거든요..

  13. TimeDalek 2008.08.19 10:56  address  modify / delete  reply

    그렇군요.. 감사합니다.
    그러고보니 네이버카페 한식구에 오셧더군요!

  14. studentna 2008.10.11 20:23  address  modify / delete  reply

    묻고 싶은것이 있는데요~그럼 yychr은 그냥 대사 확인 할때만 쓰는건가요??

    • Favicon of https://shouting.tistory.com 새항아리 2008.10.12 03:56 신고  address  modify / delete

      yy-chr은 대사확인이 아니라 타일편집 프로그램입니다.
      즉 그림판같은 그래픽 프로그램이죠.
      폰트의 그림을 수정할때 사용하는 프로그램이지
      대사를 수정하거나 하는 프로그램이 아닙니다.,

  15. 요슈아 2008.10.18 12:15  address  modify / delete  reply

    포인터가 어떤 식으로 이루어져 있는지 구체적으로 설명해 주시면 안될까요?!

    • Favicon of https://shouting.tistory.com 새항아리 2008.10.18 17:30 신고  address  modify / delete

      아파트 이야기 나오는 부분부터 자세히 읽어보라는 말씀밖에 드릴게 없네요.
      제가 요즘 시간이 좀 부족해서 설명을 다시 드리지 못합니다.
      죄송합니다.

  16. IMSI 2008.11.03 03:55  address  modify / delete  reply

    1바이트 출력만을 지원하는 경우는 어떤 식으로 포인터를 활용할 수 있을까요?
    FF값 이상은 인식이 안될텐데 말이죠.

    다른 값을 갖는 폰트를 여러개 만들어서 대사마다 지정한다던가
    아니면 2바이트 출력을 구현한다던가하자면
    소스도 없이 리버스 엔지니어링만으로 구현하기엔
    정말 실력과 경험이 좋지 않은 이상은 힘든 것 같아서요.

    중국쪽은 인구가 많아서 그런지 참 어려워 보이는 작업도
    해내는 것을 보면 어떻게든 방법이 있을텐데 말이죠. 어렵네요^^

    • Favicon of https://shouting.tistory.com 새항아리 2008.11.03 21:24 신고  address  modify / delete

      그게 바로 어셈블리어로 폰트확장을 해야하는 이유입니다.
      어셈블리어 부분은 맨 위에 댓글인 자판기 이야기를 보시면 조금 이해하실수 있을것 같네요.

  17. Favicon of http://blou.tistory.com Bleu 2009.04.21 12:14  address  modify / delete  reply

    그럼.. 중국 해킹롬을 이용해서 (한글과GBA방식처럼...)
    공백에다 한글을 집어넣고 기존 롬에다 추가로 넣어서 고유번호표를 작성할 수 있나요?

    • Favicon of https://shouting.tistory.com 새항아리 2009.05.18 11:26 신고  address  modify / delete

      그렇게 할 수 있구요. 그렇게 하시는분도 계시긴 합니다만 중국롬들이 대부분 한줄에 다섯글자정도 출력하기 때문에 하다보면 성질이 좀 납니다.

안녕하세요. 새항아리입니다.

 

제목 : GBA 한글화 쌩초보 강좌 - 6

부제목 : 대사를 뽑아보자

 

이번 강좌에서는 대사를 뽑는 것에 대해 설명하도록 하겠습니다..

 

그 전에 저번 강좌에서 빠트린 내용을 조금 말씀 드리도록 하겠습니다.

우선 고유번호표를 작성할때 문제가 생길수 있는 부분을 설명 안드렸네요..

 

사용자 삽입 이미지


이것은 싸울 전자의 약자입니다..

저번 강좌시간에 올려드린 파일을 보시면

戰 (싸울 전) →戦 

이렇게 되어 있을 겁니다.

 

싸울 전자는 뭐 비슷하니까 별로 상관없지만..

그림 화자 같은 경우는

畵 (그림 화) → 

글자 자체가 달라서 약어를 주로 쓰시는 분들은 번체자를 잘 모르실수 있습니다.

 

특히 번역일을 많이 하시는 분들이나 일본에서 오래사신 분들은 번체자보다 간체자를 더 잘 알고

계십니다. 따라서 번역을 직접 하실때에는 상관없이 그냥 번체자로 고유번호표를 작성해도 되지만

 

다른분께 맡겨야 한다면 간체자를 써야합니다..

 

사용자 삽입 이미지

 

하지만 간체자로 저장을 하려고 하면 이런 메세지가 뜹니다.

이것은 무슨 말이냐면.. 폰트라는 것을 기계가 인식할때는 코드로만 인식한다는 이야기는 저번에도 말씀드렸던것 같네요..

 

그런데 문제는 이 코드라는게 글자가 한정되어 있다보니 이 국가에서 잘 안쓰는 글씨는 뺐습니다.

국가마다 코드가 다르죠.. 아니 코드는 같지만 그게 말하는 글자가 다르달까요?

 

즉 어느 국가에서는 2301이 亞 자 일수도 있고 '험' 자 일수도 있는 겁니다.(그냥 예입니다. 그 코드가 저런 글자를 나타내는지는 몰라요.. ^^;)

 

그래서 잘 안쓰는 글자를 빼놨습니다. 즉 ANSI라는 코드내에 한글에 대한 기준을 잡아놨다 이말입니다. 한국의 ANSI코드와 일본의 ANSI코드는 다를수밖에 없는거죠..

그래서 잘 안쓰는 약어같은 한자를 한국의 ANSI로 저장하려 하면. 위와같은 말이 뜹니다.

 

이럴때를 대비해서 나온게 유니코드라는 겁니다. 유니코드는 1~3바이트가 한문자입니다.

(ANSI는 1~2바이트)

그래서 유니코드는 모든 국가의 언어를 제대로 보여줄수 있습니다.

 

즉 여기에서는 유니코드로 저장하면 (아래그림)

 

사용자 삽입 이미지


에러 없이 저장이 됩니다.

 

하지만 저는 이 방법을 추천하지 않습니다, 왜냐.. 대사장이 유니코드를 지원하지 않기 때문입니다.

이것은 무슨 의미냐 하면.. 대사장은 한글자는 1~2바이트로 인식한다는 말씀이고 따라서 유니코드로 작성된 문서는 ? 와 같은 글자로 대사를 추출하기 때문이죠..

 

읽으시는 분은 강좌를 쓰는 넘이 초반에는 간체자를 써야 번역가가 읽기 좋다고 해놓고 지금은 딴소리 한다고 하실수 있는데요..

 

제가 말씀드리는 방법은 우선 고유번호표는 번체자로 작성하십시오.. 그리고 간체자인데 번체자로 작성한 것을 따로 빼내서 저장해놓으세요..

 

예) 區 (구역 구) →/  當 (마땅할 당) → 

 

이렇게 말이죠.. 그리고 대사를 덤프하고 번역가 분에게 넘기기 전에..

메모장같은 것에서 간체자인데 번체자로 고유번호표를 작성한 것을 찾아바꾸기 하시면 됩니다.

 

그러면 대사장에서 대사를 덤프할때 오류가 생기지도 않고 번역가 분은 간체자로 받아보실수 있는 일석 이조이죠..

 

사실 어플로케일 같은 프로그램을 써서 하는 방법도 있지만 초보분들에게는 이게 편할 겁니다.

 

그리고 고유번호표를 작성할때 도움이 될수 있는 팁하나 설명해드리겠습니다.

고유번호표를 작성할때 고유번호를 쓰는게 조금 짜증날때가 있습니다.

00부터 FF까지 많을때는 2000개가 넘게 써야하는데요..

 

이것을 만들어주는 프로그램도 있습니다.(한식구 자료실을 참고하세요)

하지만 저는 한글에서 F4를 누르는 방법을 자주 사용합니다.

 

사용자 삽입 이미지


 

한글은 독특하게도 수직으로 글자를 드래그 할수 있는 기능이 있습니다.

그 키가 F4키인데요. 이것을 누른후 방향키를 움직이면

위와같이 선택이됩니다.

 

사용자 삽입 이미지


이걸 앞에 붙여넣기 하면

줄을 내리면서 붙여넣기가 됩니다. 그리고 앞번호 (00 - 0F까지 했으니 이번에는 1이겠죠?)

는 매크로 기능을 사용해서 붙여넣기 반복을 하시면 편리합니다.

 

매크로에 대한 이야기는 조금 후에 나옵니다.

 

이제야 대사 추출에 대한 이야기를 하려고 하는데 하얗게 불태운것 같은 느낌..

사용자 삽입 이미지

 

어쨋건 대사를 뽑는 이야기를 본격적으로 해보지요..

 

사용자 삽입 이미지


대사 시작부분에 이렇게 책갈피를 끼워넣는 정도의 센스가 있어야 다음번부터 안귀찮습니다.

다만 책갈피 정보가 고유번호표에 들어가다보니 고유번호표를 읽어오지 않은 경우에는 쓸수가 없네요.. 

 

사용자 삽입 이미지

 

우선 대사의 시작부분을 알았으니 끝부분을 찾아봅시다. 내리다보면 딱 느낌이 오는 부분이 있죠?

이것을 끝부분이라고 생각합시다.

(원래는 이렇게 찾으시면 별로 안좋습니다만.. 좀있다가 설명드리겠습니다.)
 

사용자 삽입 이미지


대사를 덤프해봅시다. 드래그 해서 덤프하실수도 있고 끝나는 부분의 주소를 확인하시고 덤프할 양 밑에 오프셋까지 부분에 써 넣어주셔도 됩니다.

이번에는 양이 좀 많으니 파일로 저장해봅시다. 

 

사용자 삽입 이미지


대사를 덤프할때 가장 중요(?)하다면 중요한 팁인데요. 저장할 파일명을 주소를 써넣으시는게 좋습니다.. 왜인지는 조금 후에(이렇게 미루는게 많아도 강좌 마지막 부분에 설명드립니다..) 

 

사용자 삽입 이미지


덤프가 완료되었다네요.. 파일을 한번 열어봅시다. 

 

사용자 삽입 이미지


 파일이 있습니다. 하지만 2개 무시라고 적힌 부분이 적지 않게 섞여 있습니다.

번역가에게 이렇게 주면 별로 좋아라 하지 않을겁니다. 우선 대사가 제대로 뽑혔는지

다음 대사를 확인하시고 이야기 하겠습니다.

 

드래그 한 부분이 다음대사가

 

사용자 삽입 이미지


맞군요.. 이제는 이 파일을 한글에서 읽어봅시다.

그리고는 찾기에서 {2개무시->}를 찾아봅시다. 

 

사용자 삽입 이미지


여기에서 중요한 점은 한글의 매크로 기능이 충분히 훌륭하다는 점이고.

그래서 제어코드를 어느정도는 커버할수 있다는 점입니다.

 

하나를 찾고 닫기를 누른후 매크로를 설정해봅시다.

메뉴중 도구에서 매크로.. 키 매크로 정의를 누릅니다. 

 

사용자 삽입 이미지


비어있는 곳을 찾아서 시작을 누르고.. 이제 본격적으로 해봅시다.

 

한글에서 다음찾기는 단축기가 Ctrl + L 입니다.  이것을 한번 누르면

{2개무시->}를 찾을겁니다. 이때 찾아진 것을 del키 눌러서 지우고

다시 del키를 6번({,X,},{,X,} <- 2개 무시니까요..) 누르면 한번이 끝납니다.

다시 메뉴 도구 매크로 중지 누르고..

 

단축키를 누르면.. 여기서는 위에 보니까 Alt+4이군요.

Alt+4한번에 제어코드 하나가 없어집니다.

 

계속 누르고 있으면 전부 삭제.. 하면 아래와 같이 정리됩니다.

 

사용자 삽입 이미지


 

저는 {} 표시가 마음에 안들어서(이것은 대사장에서 추출할때 설정할 수 있습니다..)

다 찾아바꾸기에서 { -> 無(없애라는 이야기) 로 바꾸고 ENTER 2번 쓰인것도 한번으로 바꿨더니

사용자 삽입 이미지
 
이처럼 정리되는군요. 웬지 깔끔해진것 같지 않습니까?
대사만 쭉 뽑혔네요..
 
하지만 아까부터 말씀드린 부분..

 

왜 대사를 대충 뽑으면 안좋은가 하는 부분입니다.

 

대사라는 것을 롬은 한번에 통으로 저장할수도 있지만

챕터1, 챕터2 이렇게 아니면 전투대사, 게임대사, 혹은 RPG라면 마을별로 대사를 분리시켜 놓을 때도 있을수 있습니다. 이 스크류 브레이커도 보니까 위로 조금만 올려보니

사용자 삽입 이미지


이부분도 대사겠네요. 왜냐하면 대사가 아닌 코드가 저렇게 우연히 만나서 8바이트나 일치하고 게다가 "손님에"(오캭사마에) 로 표시될 확률은 극히 적으니까요..

 

즉 대사를 놓쳤다는 겁니다.. 이것때문에 대사를 함부로 그냥 여기서 여기까지겠지라고 막 쓰시면 안되는 이유입니다.

 

대사를 제대로 뽑으려면 프로그래밍을 해서 포인터부분을 찾아 하나하나 찾아가면서 대사가 맞는지 대사에서 쓰이는 제어코드가 있는지 아니면 시작코드라던지 하는 부분을 체크해야합니다.

 

하지만 초보분이나 프로그래밍을 하실줄 모르시는 분들은 오히려 어렵습니다. 이때는 우선 YYchr로 폰트를 찾을때처럼 죽 한번 훌터보시면서 아무리 대사가 나누어져 있더라도 부분부분은 모여있으니까 그것들의 주소를 적어나가시는것이 좋습니다.

 

그리고 대사가 촘촘히 분리되어 있더라 하더라도 어느정도는 분포가 한군데 쯤 모여 있을 확률이 높기 때문에 그부분을 먼저 대사 처리하시면 됩니다.

그리고 테스트 할때 빼먹은 부분의 대사주소를 다시 찾고 그것을 수정하는 식이 좋을듯 싶네요..

 

 

다음 강좌는 많은 분들이 어려워 하시는 포인터입니다.

저도 대학다닐때 (공대였으니까요) 포인터에 대해 신입생 애들한테(동아리) 강좌해주는 방식으로.. 한번 접근해보도록 하겠습니다..

 

 

덧말, 오늘 처음으로 EJ_Maker라는 프로그램의 존재를 알았습니다.

확실히 대사장보다는 편리한 프로그램 같습니다.. 만약 이 프로그램을 구하게 되면

이 프로그램으로 대사장 프로그램을 대체해야할 정도로 막강한 프로그램 같습니다.

 

어쨋건 프로그램이 구해지면 대사장에서 EJ_Maker로 갈아타는 저의 강좌모습을 보실수 있을듯 합니다.. ^^;

댓글을 달아 주세요

  1. 바베큐 2007.09.30 18:50  address  modify / delete  reply

    이건 완전히 이해가 안가는;; 아 .. 휴 ;;

  2. Favicon of http://blog.naver.com/jhw0604 에플트리 2008.02.10 06:14  address  modify / delete  reply

    슬슬 번역하시는분에게 당근과 체찍들 들고갈일이 ㅎ

  3. 우와용 2008.09.18 20:22  address  modify / delete  reply

    오늘은 여기까지 ㅋ 설명 너무 잘해주시는데다가 센스까지 ㅋㅋ 저도 오늘 하얕게 불태우고 갑니다

%B0%AD%C1%C2%C0%DA%B7%E1-7189-jesuswn.zip

안녕하세요 새항아리입니다.

 

제목 : GBA 한글화 쌩초보 강좌 - 5

부제목 : 고유번호표에 대하여.

 

이번 강좌에서 원래는 고유번호표로 대사를 뽑는 연습을 하려고 했지만 조금 분리해서 고유번호표에 대한 이야기를 하고 다음강좌에 대사를 뽑는 것을 해보도록 하겠습니다..

 

우선 고유번호표가 무엇인지에 대한 개념부터 잡고 넘어가도록 하겠습니다.

저번 강좌에서 대략 말씀드린것 같은데 고유번호란 것은

 

롬이 이해하는 폰트의 코드라고 보면 되겠습니다.

즉 개발자가 아이시테루라는 문장을 사용자에게 보여주고 싶다고 봅시다.

 

그러면 개발자는 아이시테루라고 적힌 그림을 띄울수도 있구요..(그림폰트)

아니면 폰트내에서 아,이,시,테,루를 출력하라고 명령할수도 있습니다.

 

지금 단계에서는 보는 것은 아이시테루를 출력하라고 명령하는 부분입니다.

출력하라고 명령은 내려졌는데 무엇을 출력해? 하는 곳에 들어가는 것이

아이시테루겠죠?

 

하지만 롬은 아이시테루라는 것을 모릅니다.. 그래서 아는 몇번째 글자고..

이는 몇번째.. 이렇게 정해진 번호를 불러오면 되는 겁니다.

 

이 번호가 고유번호이고 이것을 작성하는것이 대사를 뽑는 가장 중요한 방식입니다.

 

왜냐하면 우리는 코드로만은 이해하기 힘들지만..

즉 55,77,88,12,5F 출력하라는 것을 이게 뭐야 하고 받아드리겠지만..

아이시테루라고 적혀 있다면.. 아 사랑해요라는 뜻이구나 하고 받아들이기 편하기 때문입니다.

 

그러니까 고유번호는 롬과 나 사이의 통역관이라고 볼수 있습니다.

코드를 문장으로.. 문장을 코드로 변환시킬수 있는 중간 매게물인거죠..

 

조금 이해가 되셨나요?

 

그럼 이제 실제로 적용해보면서 이야기를 해보도록 하겠습니다.

 

스크류 브레이커를 봅시다..


 

사용자 삽입 이미지

 

순서대로 적어내려가야 합니다.. 이렇게 한글로 하는게 편하다면 이렇게 하셔도 됩니다.

 

사용자 삽입 이미지

 

그러나 번역을 스스로 하지 않는 다면.. 이렇게 주면 번역가분이 난감하시겠죠?

왜냐하면 이게 정확히 무슨 말인지 한글로 되어 있어서 더 이해하기 힘들게 만들수 있다는 거죠.

 

예를 들어 '이'라고 적혀 있는 단어가 있다고 칩시다. 하지만 한자로 이는 두개(二)라는 뜻도 있고 다스린다(理)라는 의미도 있습니다. 하지만 '이'라고만 적혀있다면 이게 두개라는 뜻인지 다스린다는 뜻인지 아니면 히라가나인지 가타카나 인지 모르게 된다이겁니다..

 

그건그렇고 일본어를 어떻게 입력하는지 모르시는 분들께 아주 간단하게 입력하는 방법으로는

네이버 일어사전을 사용하시면 됩니다. 클릭하고 드래그 복사 붙여넣기의 반복이면 일본어를 그냥 가져다 쓰실수 있습니다.


 

사용자 삽입 이미지


이건 너무 비효율적이다 하시는 분들은

일본어 입력기 같은 프로그램을 쓰시던지 IME를 설치하시던지 아니면 한글 (워드프로그램)에서 일본어 입력기를 쓰셔도 됩니다..

 

 

사용자 삽입 이미지


어쨋건 차근차근 입력해주십시오..

 

여기에서 중요한 말씀 드립니다. 지금은 01을 아라고 적었습니다.

그런데 아가 00일수도 있다고 저번강좌에서 말씀드렸죠?

 

그러면 이게 00이 시작인지 01이 시작인지 어떻게 알아내느냐?

그것은 저번 강좌에서 대사를 찾고 한글자로 민적이 있죠?

그 글자가 12 번째 글자였고 '츠'였습니다.

 

그걸로 거꾸로 올라가면서 세어보면 됩니다.

12, 11, 10, 0F(09아니예요.. 16진수입니다. 꼭 명심하세요.), 0E, 0D, 0C, 0B, 0A, 09,

08, 07, 06, 05, 04, 03, 02, 01 ---> 아 !! 세어보니 확실히 01이 '아' 맞죠?

 

확실히 하시려면 이렇게 해야합니다..

어쨋건 줄줄이 입력합니다..

 

사용자 삽입 이미지


아이구.. 하실분이 있으실지 몰라 스크류 브레이커의 고유번호표는 파일로 올립니다..

사실 스크류 브레이커의 고유번호는 240여개밖에 안됩니다.

이건 사실상 겨우입니다.. 마녀들의 잠이라는 비주얼 노블 게임의 경우 어려운 한자만해도

2000개가 넘어요.. 그리고 웬만한 게임들도 700개정도는 됩니다.

이건 히라가나, 가타카나 밖에 없으니 양호...

 

사용자 삽입 이미지


어쨋건 저장하실때 확장자는 TBL로 하시고 이름은 아무거나 상관없습니다..

 

저장하셨으면 대사장을 실행하시고 롬을 불러오신후..

메뉴 중에 대사 -> Thingy 표 열기 를 누릅니다..

 

사용자 삽입 이미지


고유번호표를 불러오면

 

사용자 삽입 이미지


244개 토큰이 읽어졌다고 하네요..

 

토큰의 영어 단어 뜻중에 교환이라는 뜻에 알맞겠군요..

이런이런 코드가 나오면 이런단어로 교환해줘라..

그래야 사람이 이해할수 있는 문장이 되니까 라고 볼수 있겠죠?

 

사용자 삽입 이미지


Thingy 보기 활성화를 누르면 옆에 일어가 표시됩니다.

이것이 바로 토큰(교환) 된거 겠죠?

 

사용자 삽입 이미지


해당 대사를 봅시다.

대사 위치는 전전 강좌에서 찾았던걸 기억하실겁니다..

 

사용자 삽입 이미지


이부분을 덤프해봅시다..

원래라면 대사 부분을 전체 뜨면 되지만 지금은 그 이야기가 아니라

저번시간에 했던 제어코드가 중요한 이유를 직접 보여드리기 위해서 입니다.

 

사용자 삽입 이미지


메뉴에서 대사 -> 대사덤프를 눌러보면 위와같은 창이 뜨죠? 다음으로 바이트를 덤프에서 창으로 바꿉니다.

 

사용자 삽입 이미지

 

이처럼 덤프되었습니다. 하지만 중간중간 쓰레기가 있습니다.

이것을 만약 아래와같은 고유번호표로 읽어드린다면?

사용자 삽입 이미지


우선 고유번호표를 조금 수정해봅시다..

저번 강좌에서 찾았던 FC 제어코드와 FE 제어코드를 넣습니다.

FC 제어코드는 뒤에 2개의 내부인자 제어코드를 가지니까

대사와 헷갈리지 않도록 2개 무시 -> 라고 적습니다.

 

사용자 삽입 이미지


다시 tbl파일을 읽으려고 하면 이미 읽어진게 있는데 새로 읽을거냐는 메세지..

 

사용자 삽입 이미지


이번에는 246개의 토큰을 읽어드렸군요..

그리고 다시 덤프해보면..

 

사용자 삽입 이미지


아까보다는 조금 읽기 편해지지 않았습니까?

 

사실 이건 개인적 취향이라 이렇게 보는게 더 싫으신분도 계실수 있습니다.

그리고 프로그래머라면 대사 추출 프로그램에 도움이 되도록

대사부분중 쓰레기를 빼는 프로그램을 만드는 것은 막 어렵운 것도 아니지만..

 

프로그래머가 아니고 초보인 분들은 이 방법을 쓰시는 것도 나쁘지 않다고 봅니다.

 

제어코드의 고유번호화 하는 거죠.. 고유번호는 무조건 대사로 뽑히니까 스스로 제어코드의

의미에 맞춰서(여기서는 "2개 무시->") 고유번호를 만들어 놓으면

대사를 출력할때 조금더 편하게 볼수 있지 않겠습니까?

 

이번에는 하로보츠의 고유번호를 찾아보겠습니다.

(사실 저도 만들지는 않았어요.. 시간이 없어서 ^^; 역시 스스로 학습 ㅠㅠ)

 

사용자 삽입 이미지


하로보츠의 폰트를 보면서 고유번호를 입력해야하는데.. 이번에는 거꾸로 세어보니 처음글자가

01이 아니군요.. 00입니다.

 

이렇게 롬마다 다를수 있으니 조심하라고 말씀드린겁니다..

 

사용자 삽입 이미지


뭐 고유번호 입력하는것은 다 거기서 거기니까 넘어가도록 하겠습니다..

 

다만 하로보츠의 경우 히라가나 같은 것들은 1바이트 의 고유번호를 가지고 있고

한자는 2바이트로 되어 있다는 것은 저번 강좌에 살펴봤습니다.

 

사용자 삽입 이미지


한자중 大라는 글자가 F1 06 이라는 코드였지요?

그러면 우선 한자를 보기 좋게 윗선에 맞춰봅시다.

 

기본적으로 YYCHR의 경우는 화살표와  + -키면 깔끔하게 정돈할수 있습니다..

 

사용자 삽입 이미지


F1 06이 大였으니 거꾸로 05, 04, 03, 02, 01, 00 으로 올라가보니 한자의 시작 글자인

言이라는 글자가 되는군요..

 

따라서 F1은 한자의 시작부분의 뭉텅이를 말하고 그 뭉텅이의 1번째 글자는 言

그래서 코드로는 F1 00 = 言이 되겠네요..

 

사용자 삽입 이미지

 

그리고 위에서 말씀드린 뭉텅이라는 것은 YYCHR로 치자면 256개의 글자수를 말합니다.

저번 강좌에서 1바이트 와 2바이트 구분할때 말씀드린

 

1바이트로는 256개의 글자의 구분만 가능하다라는 것.. 즉 그것을 부모로 가지고 있다면

2바이트로는 256 곱하기 256가 되서 65536개의 구분이 가능하다는 것이고

2바이트 중 앞 1바이트나 뒤 1바이트가 부모 바이트라면..

그것 하나로 256개를 나타낼수 있다는 말입니다.

 

쉽게 예로 들자면 위와같을때에는

F1 00 - F1 FF 까지 256개.. 그리고 F2 00 - F2 FF까지 256개.. 이렇게 나아간다는 것이죠.

그러니까 앞의 1바이트가 부모바이트가 되서 십진수로 따지면 10의 자리 수처럼 된다 이말입니다.

 

그리고 F1 XX에서 F5 XX까지 사용이 가능하다면.. 5개의 256개가 가능하니 1280개를 분류할수 있다는 거죠..

 

어쨋건 위와 같이 한자를 찾아가면 됩니다만..

한자를 모두 알 수도 없는 노릇이고..
어떻게 하면 좀더 쉽게 한자를 찾을수 있을까 에대한 좋은 방법을 소개해 드리겠습니다.

한식구 강좌에서도 벌써 알려주신 방법입니다..

 

사용자 삽입 이미지

 

이 단어를 잘 모르는 저로서는 난감합니다 이럴때..

제목표시줄에 있던 입력도구모음을 복원해놓습니다.

보통은 'A'나 '가' 혹은 태극문양으로 표시되어 있죠..

사용자 삽입 이미지
복원하면 저렇게 뜹니다. 저기에서 물감통같이 생긴것을 누르면

아래처럼 확장입력기가 뜹니다.


 

사용자 삽입 이미지


필기 인식인데요. 이걸로 한자를 찾으면 편합니다. 마우스로 한자를 그리면(?)

 

사용자 삽입 이미지
 
비슷한 한자가 검색되고 누르면 문서에 써집니다. 간단하죠?
 
하지만 이것이 통용되지 않는것이 있으니 바로 약어입니다.
일본은 간체자 문화권으로 번체자를 쓰는 우리나라와는 조금 다른 한자입니다.
(간체자 번체자 모르셔도 일본은 약아서 약어 쓰고 우리는 본래 본체를 쓴다고 보시면... 유머(?) ^^)
 
그분들을 위해서 파일로 약어 정리표도 올립니다. 확장입력기로 찾아보고 안찾아지면 사용하세요..
 
그럼 고유번호표에 대한 강좌는 여기까지로 마치도록 하고..
다음 강좌에서는 대사를 뽑아보자 를 써내려가도록 하겠습니다.
 
 

댓글을 달아 주세요

  1. Favicon of https://shouting.tistory.com 새항아리 2007.03.28 15:44 신고  address  modify / delete  reply

    누가 쪽지 주셔서 확인해보니 위에 강좌자료에 약자 부분 이지러질 결자는 원래 약자가 없습니다. 실수로 추가되었나보니 신경쓰지 말아주세요

  2. 말랑말랑 2007.04.19 01:40  address  modify / delete  reply

    슬쩍 지나가다가 일본어 약자의 입력을 위한 확장입력기의 사용법에 대해 한마디 드립니다.

    ime의 일본어 입력을 등록해 놓았다면, 일본어 입력 상태로 바꾼 상태에서 확장입력기를 누르고 (물감통모양)
    왼쪽의 글씨쓰는 것 같은 아이콘에서 마우스 오른쪽 버튼을 누릅니다.
    그러면 '설정'이 있는데요, 눌러보면 '사용 가능한 애플릿'이 있습니다.
    이 중에 Hand Writing (JA)를 추가하면, 일본어 약자가 써지는 확장입력기가 생깁니다..^^
    사용방법은 똑같구요. 두개를 병행하여 사용할 수도 있고, 한자를 일본어로 읽는 법 등도 나오므로 여러모로 쓸모가 있답니다.
    (일본어 공부에도 도움이 되죠..^^)
    설명이 어려웠는지 모르겠지만 한글화를 하려는 많은 분들께 조금이나마 도움이 되었음 좋겠네요.

  3. 미치겠네요 2007.07.09 01:23  address  modify / delete  reply

    웅 ~~~ 기호같은건 어떻게 적용시키나요???

  4. 바베큐 2007.09.30 18:40  address  modify / delete  reply

    이번것도 역시 어렵군요 ... 뭐가뭐지 원 .. 에휴 ..

  5. Favicon of http://blog.naver.com/jhw0604 에플트리 2008.02.10 06:11  address  modify / delete  reply

    슬슬 노가다의 시작이 보이는군요 ㅎㅎ

  6. 최규영 2008.10.16 02:00  address  modify / delete  reply

    일어판인데영어로나옴.이땐어떻게함?
    대사장으로했는데도영어로나옴

    • Favicon of https://shouting.tistory.com 새항아리 2008.10.16 11:35 신고  address  modify / delete

      저도모르겠음.
      이라고 달아야할것 같이 댓글을 써놓으셨네요.
      여기나온 강좌를 이해하고 적용하시는정도는 스스로 하셔야 한글화를 하실수 있습니다.

  7. 박한민 2009.03.29 14:23  address  modify / delete  reply

    롬에서 고유번호 00,01이 모두 공백인 경우가 있나요?? 모두의 쇼기의 경우처럼 다른롬을 써치알에서 찾아보고 해봤는뎅,,,
    둘다 공백이네요,,,
    공백은 걍 한글로 '공백'이라 써도 무관한지요...
    그리고 폰트로 표현할 수 없는 표현은 어떻게 써야하나요(폰트 둘이 합쳐져서 하나의 그림 형상을 하고있네요 ㅡ,ㅡ;;)

    • Favicon of https://shouting.tistory.com 새항아리 2009.03.31 15:54 신고  address  modify / delete

      어떤 롬이라도 전부 그런다면 문제가 있을 수 있네요.
      우선 강좌에 적혀있는 그대로를 따라하기 방식으로 한번 해보시고 그래도 안된다면 방식에 문제가 있을듯 보입니다.

      그리고 시작 주소가 꼭 00이나 01이 아닐수도 있습니다.

  8. Favicon of http://blog.naver.com/hyb277 매트 2009.08.10 01:35  address  modify / delete  reply

    고유번호를 작성하고 있는데요, Search R에 테이블이란게 있어서 클릭해보니까 영자 소문자와 대문자가 고유번호와 함께 나열되어있더라구요. 그래서 열심히 적고 있었는데 나중에 보니까 소문자와 대문자가 중복으로 나오네요. 이런 경우도 있나요?
    예를 들어서 1D와 6A가 모두 か입니다; 나머자 소문자 대문자도 고유번호가 두개씩 있구요.
    참고로 0~9는 테이블이 안나오네요;? 1~0으로 입력해서 그런가? ;; 지금 질문해서 답변 받을 수 있을 진 모르겠지만 덧글 남겨봅니다; 참고로 전 몇일전부터 프로그램들을 처음만져보기 시작한 초짜예요(.. 서치알 사용도 오늘이 처음이고(..

    • Favicon of https://shouting.tistory.com 새항아리 2010.01.06 22:13 신고  address  modify / delete

      고유번호가 두개인 경우도 간혹 있긴하지만 대부분의 경우라면 두개의 폰트가 있고 두개의 고유번호를 가지는 경우가 많습니다. 조금 더 확인해보시는게 좋겠네요.

  9. ㅇㅋ 2013.08.01 00:36  address  modify / delete  reply

    간체는 중국어를 말하는거구여..일본어의 약자는 간체랑 전혀 관계가 없어여..간체가 간단히 줄여 만든 약자라는 뜻의 일반명사가 아니라 중국어를 말하는거..