「フカノウ」なんて言葉イラナイ! (from 水樹 奈々 アオイイロ)


최근에 노트북을 새로 인수했습니다. 차마 연타로 지르기 사진을 올리기는 뭐시기하고....(돌 날라오는 정도로 안 끝날듯하니 일단은 조용~^^)

그런데 새로 사용하기 시작한 노트북은 일본내수 제품인지라 키보드의 배열이나 자판 인식이 설령 한글 윈도우를 설치했다고 해도 정말 난감한게 많더군요. 물론 사람들이 키보드 키 배치를 적당히 바꿔놓은 레지스트리 파일이 있기는 했지만, 기왕 하는거 한번 이 기회에 어떻게 하는건지 알아보자는 공돌이의 맘으로(~.~) 찾아보았습니다.

역시 Google은 멋져요~ (이게 아니잖아~)

자 그럼 간단히 어떻게 하는건가 떠들어보면~

키보드는 각각의 키에 고유의 scancode라는 것을 가지고 있고 윈도우는 그것을 인식해서 처리하는 방식으로 동작을 한다고 합니다. 따라서 각각의 키의 인식을 다른 키인냥 바꿔주려면 이 코드 값을 파악해서 교체해주면 된다는거죠...

레지스트리
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
에 새로운 값
Scancode Map
을 추가하면 원하는 키 인식 바꾸기를 할 수 있다는 겁니다. (마소 사이트 http://www.microsoft.com/whdc/device/input/Scancode.mspx 을 참고)

예를 들어 제 노트북에 적용한 레지스트리 값은 아래와 같습니다.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:\
00,00,00,00,00,00,00,00,07,00,00,00,\
2b,00,7d,00,\
36,00,73,00,\
1c,00,2b,00,\
71,00,7b,00,\
72,00,79,00,\
38,00,70,00,\
00,00,00,00

(레지스트리값 출처 : 파나소닉 노트북 동호회 - 렛츠월드)

일단 첫줄에서 00 8개는 시작 헤더정도로 무시하시고
다음 07,00,00,00 은 앞으로 총 7개의 데이터가 존재한다는 걸 의미합니다.
(참고로 우리가 컴퓨터에서 int a = 7; 이런 식으로 입력했다면, 메모리상에서는 07 00 00 00 이런식으로 기록됩니다. 컴퓨터라는 기계가 2byte이상의 값을 처리할 때 상위바이트부터 쓸 것인가 하위바이트부터 쓸 것인가의 2가지 방식을 가질 수 있는데 Intel계열은 우리가 눈으로 볼때 앞(즉 상위 바이트)부터 1바이트식 적어 올라가는 방식을 택하고 있습니다. MAC과 같은 모토롤라 계열의 경우는 그와 반대입니다. 자세한건 Endian 개념을 찾아보시면 도움이 될껍니다.)

맨 마지막 라인인 00,00,00,00 은 끝을 나타내는 값이며, 이것도 데이터 갯수에 포함됩니다. 그럼 이제 중간값들의 의미를 보겠습니다.

2b,00,7d,00 의 경우 간단히 7d 라는 값을 가지는 키를 2b 값의 키로 인식해라 라는 의미입니다.(구지 복잡하게 알 이유는 없어 보입니다.)
그럼 각 숫자는 어떤 키를 의미하는 것인가...이건 사실 키보드마다 다르다고 합니다. 물론 어느정도 정해진것도 있지만, 특별하게 키보드마다 추가되거나 변경되는게 있다는거죠. 대개는 키보드 드라이버들이 이런걸 처리해준다고 합니다만, 우리는 목적에 맞도록 그것마저 바꿔보자는거니..

http://www.passmark.com/ftp/keytest.exe
위의 프로그램을 받아서 실행하면 직관적으로(^^) 어떤 키를 눌렀을때 무슨 값을 가지는가를 알 수 있습니다. 어플 실행시 상단의 여러 값중 bios key code에서 나오는 0x?? 의 16진수 값이 누른 키의 해당 scancode값이 되는 것이죠. 그럼 바꾸고자 하는 키의 값을 찾아내서 2개의 키를 같도록 한다거나 키를 죽인다거나 (그냥 00 으로 처리하면 죽어버리는것 같습니다.) 뭐 별짓이 다 되겠죠.

정리하면 예로 든 레지값을 해석하면
2b,00,7d,00,\ - backspace왼쪽키(7d)를 '\'(2b)키로 변경
36,00,73,00,\ - 오른쪽 shift 옆 일어'ろ'(73)를 right shift(36)로 변경
...
이런식이 되는 겁니다.

뭐 평상시에는 거의 쓸 일이 없겠지만, 가끔 괜히 자기 손에 편하도록 키보드 배열을 바꿔보고 싶은 분들은 실험해보시는 것도 좋을 듯하네요. 어짜피 막해보다가 키보드가 이상한 것 같아 싶으면 저 레지스트리 값을 지워버리면 그만입니다.^^;

윈도우라는게 쓰면 쓸 수록 참 별난 것들이 많다는 걸 이럴때 느끼네요. 기왕 쓰는것 잘 개조해서 나에게 맞도록 쓰면 편하다~ 뭐 이런 이야기였습니다.ㅎㅎ

ps) 나중에 홈피가 제대로 동작하면 이런 팁도 많이 정리해둘 생각입니다. 영 기억력이 시원치 않아서리..ㅎㅎ
2004/12/22 23:33 2004/12/22 23:33

핸드폰 겜을 만들다 보면 아무래도 스펙의 한계상 작은 작은 겜들을 하던 어릴때를 자꾸 떠올립니다. 확실히 일본의 최근 성향을 봐도 과거 명작 시리즈들이 인기를 끌고 있는 것을 보면 확실히 시대가 좋아져서 더욱 화려하고 더욱 방대한 게임이 나와도 게임 본연의 재미라는 측면에서 충실한 과거의 명작 겜들이 더 생각나게되는 것은 어쩔 수 없는 일인가 봅니다.

주말마다 집에서 3대 초딩겜중 2가지를 하다가 이것도 슬슬 흥미가 사라져서 뭘 해볼까 하다가 과거에 했던 겜들이 와르르 있는 곳을 발견 신나게 받은것까지는 좋은데...문제는...제가 쓰는 윈도우인 XP에서는 DOS 나 win95/98시절의 겜들이 다 엉망이 되더라는 것이죠..

윈도우겜까지는 어찌어찌 호환성 모드로 가동하면 그럭저럭 해볼만은 해지는데...DOS겜은 도저히 다메~ 였습니다....그러나...뜻이 있으면 길이 있다고 했던가요...DOS도 에뮬이 있다는 것을 찾아내서 결국 유명한 에뮬 2종류를 깔아보고 좀 더 제가 하는 겜들과 잘 맞는 이 놈을 선택하게 되었습니다.(왠 선택?)

간단 명료 하지 않습니까. 그저 실행만 하면 됨.

도스 시절 겜을 알던 분들이라면 잊을 수 없는 여러가지 셋팅이 기본적으로 되어 있고, 좀 더 세밀한 조정은 위에 보이는 DOSBox.conf 라는 놈을 수정해서 적용할 수 있습니다.(과거에 autoexec.bat나 config.sys를 건들던 기억이 새록새록~)

사실 꽤나 전부터 이 에뮬에 대한 프로젝트가 진행된 모양인데, 어째 관심이 그동안 없어서인지 전혀 모르고 있었네요. 이 프로그램 이외에도 VDMS라는 에뮬도 있기는 한데, 왠지 제 컴과는 약간 안 친한듯하고~ 그래서 이 DOSBox로 낙찰....그럼 어찌 실행을 시키나 간단히 그림을~

그리운 command모드...라고 하고 싶으나 거의 매일 보는 ... 쿨럭..

mount 개념으로 가상 드라이브를 만듭니다. 현재는 저 디렉토리에 겜이 수두룩...

단순히 DOS에뮬레이터만 하는게 아니라 ADLIB 카드(아 이름도 정겹습니다.)나 SoundBaster 16(Pro)등을 에뮬하며, MSCDEX 등도 지원해서 창세기전2 같이 시디로 가지고 있는 정품 겜을 할 수 있다는게 무지무지 장점...(아직 시디를 찾고 있는 중입니다. ㅠㅠ 어디에 파 묻힌거냐...발굴모드~~~)

자 그럼 겜 화면은 어찌 나오나 볼까요~

아시는 분은 다 아시는 추억의 겜...Ironman..(일명 방구차! 라고 하더군요)

이 겜은 소리는 조금 느리게 밀리지만, 겜 속도나 기타 효과음등은 절대 안 밀립니다. 옛날에는 10판도 넘게 잘가고 그랬는데, 지금하니 어려워요 ㅠㅠ 흑흑 연습해야겠습니다.

죽을래 스키탈래..라고 유명한 죽음의 스키~...초 단순 음악이 아직도 멋집니다. ㅠㅠ

설명이 필요없는..그 시절 컴퓨터를 했던 분들은 다 했을법한 그런 겜입니다...죽을래 스키탈래...라고 물어보면..스키타야겠죠--;;;;

개인적으로 삼국지 xx전 시리즈중 가장 좋아하는 시리즈입니다.

삼국지 영걸전...개인적으로 공명전이나 조조전도 좋아하지만, 젤 좋아하고 몇번을 해도 재미있는건 역시 영걸전 같습니다. 이 놈 때문에 절대로 이번주 겜 기사 정리 포기한게 아니라고 주장합니다!!! (옮길만한 기사가 별로 없었다고요~)
제가 가장 좋아했던 어드벤쳐 겜 1순위에 있는 겜...LOOM 입니다...어릴때 이거 해보고 얼마나 감동먹었는지 모릅니다. 백조의 호수도 덕분에 좋아했고(이 겜의 배경 음악이 전부 백조의 호수 어레인지입니다.) 그당시야 초딩이었으니 영어를 제대로 알지도 못하고 정말 찍기 삽질로 진행해서 엔딩 본 겜이었으며, 음악을 정말 잘 어울리게 제대로 게임과 연결해서 뭐랄까...나중에 제가 게임을 만든다면 꼭 이와 같은 겜을 만들고 싶다는 생각을 가지게한 그런 겜입니다. 256칼라 버전은 어디에 두었는가 모르겠는데, 일단은 16칼라 버전으로 진행중입니다. 거의 엔딩 다 왔는데...잠시 옛날 생각이 안 나서 막혀 있습니다.^^;

이래저래 어릴때 해본 겜을 다시 해보고 싶은 분들이 계시다면 충분히 시도해볼만한 프로그램 같습니다.

http://dosbox.sourceforge.net/

에서 받을 수 있으며, 공개 프로그램이니 전혀 문제 될 것도 없고, 계속 버전업 되는 것 같으니 아마 약간 불안정하게 보이는 요소들도 사라질꺼라고 생각합니다.

추억의 겜의 세계에 잠깐 빠져보는 것도 좋겠죠~.~

ps) 결국 위에서도 밝혔지만, 영걸전과 LOOM 하느라 주말 날렸습니다. 피곤해요~...겜 기사도 다음주로 패스~ 아 역시 별 수 없는거예요~ ㅠㅠ
2004/09/13 16:12 2004/09/13 16:12

블로그 탐사를 잠시 하다보니 재미있는게 보여서..저도 동참..
이름하여, 컴을 싹 밀고 새로 또는 다시 설치할때 가장 먼저 설치하는 어플(?) 리스트 TOP 10...

제 2004년 버전(^^)의 경우는..
OS : Windows XP Eng with MUI (sp1)

다 이제 XP 인스톨 후 , 각 드라이버, 패치 깔고...

1) V3
2) Winamp
3) Microsoft AppLocale
4) mirc + MSN
5) cuteFTP
6) Office + HWP
7) 각종 코덱들(ffdshow+ac3등..)
8) editors : ultraedit + emeditor
9) acdsee classic
10) alzip + winrar

etc) paintShop(또는 photoShop) , encoding용 툴들, winny(--;), iman(--;) 등등...

일단 XP를 선택하는 이유는...좀 더 안정적으로 동작해주는 감이 있는 OS이고 튜닝하는 재미가 있기에(^^) 더우기 apploc에 의한 일본 로케일의 프로그램 동작 가능이 매력~(물론 NTFS의 약간 맘에 안드는 점이 있습니다만...)

일단 어플 순위는 순전히 작업 편의 순위입니다만..
어느덧 등록 사용한지 5년쯤 되어가는 V3부터 깔고 업데이트 해서 만약의 사태에 대비하고..(매년 2만원쯤 나가지만, 그정도야 보험정도로 생각합니다.)

winamp는 가벼운 2.7~8대 버전중 선택합니다. 플러그인은 나중에고~ 일단 설치되면 나머지 어플 설치중에 음악 감상이 가능~ (지루한 시간을 위한 방법)

apploc은 이런 저런 편의를 위해 일단 설치~

mirc+msn은 이제는 노가다를 위한 필수 프로그램이므로...완전 몸이 자동 반응..(사실 mirc는 설치할 필요 없이 그냥 copy&paste~)

cuteFTP는 각종 ftp나 홈 계정 접근을 위해~

office+hwp는 거의 문서 작업이나 기타 여러가지를 위한 필수적인 어플이니..

코덱은 ffdshow 02년 11월 버전인가(그 이후는 왠지 믿음이 안가서.), ac3 코덱하고 깔아서 ok (대략 다른 코덱들은 거의 안씁니다. 간혹 특정 파일을 보기 위한 모험은 하지만..)

editor는 이런 저런 작업을 위해 필수...손에 익은 울트라 에디트와 일어 파일을 보기 위한 emeditor 는 거의 필수 에디터~

acdsee는 무조건 classic 가벼워야한다!

alzip은 이스트소프트를 개인적으로 좋게 보지는 않지만, 그냥 편하다는 이유로..winrar은 알집이 바보같이 못 푸는게 많은고로...

그외로 페인트샵이라던가 개인적으로 가끔 하는 동영상 인코딩 관련 툴, 요즘 dvd가 늘어나게 만드는 주범인 winny..(최근에는 음악 시디를 더 굽고 있..), 이런저런 파일 받기 좋은 idisk를 쓰기 위한 iman...

이정도군요..다른 분들은 어떠실지~ 다들 비슷비슷은 할듯한데..^^;
2004/04/29 14:12 2004/04/29 14:12


Calendar

«   2010/09   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30