HiTEL 게제동(GMA) 공개자료실

[소스] DOOM SOURCE
작성자:이호범(sopepos)
95-01-11
첨 부:[654]doomsrc.zip
안녕하세요. 우연히 보이길래 호기심에 받아봤는데 제대로된 것 같지는 않구요 조금 이상한데 .. 헤더화일과 C모듈 한조각씩 보면.. /*Module:d_main.c*/ #define TRUE (1) #define FALSE (0) #define DA_GAMELOOP (9) #define DA_STARTGAME (8) ~ 중략. struct def { 19:UNSIGNED BYTE _tmpfchar 18:UNSIGNED BYTE _ungotten 14:UNSIGNED LONG _bufsize 10:SIGNED LONG _handle C:UNSIGNED LONG _flag 8:SIGNED BYTE char * _base 4:SIGNED LONG _cnt 0:SIGNED BYTE char * _ptr }struct typestruct __iobuf end of st ruct def struct def { 4:SIGNED LONG rem 0:SIGNED LONG quot }struct typestruct div_t end of struct def ~ 후략. D_MAIN.H의 일부분입니다. /*Module:d_main.c*/ SIGNED BYTE char *wads[3]; ~ 중략. VOID main( SIGNED LONG ,SIGNED BYTE char **) /*-08*/ SIGNED LONG argc; /*-04*/ SIGNED BYTE char **argv; { LINE:130 push 0024 LINE:130 call __CHK LINE:130 push ebx LINE:130 push ecx LINE:13 0 push esi LINE:130 push edi LINE:130 push ebp LINE:130 mov ebp,esp LINE:130 sub esp,0008 LINE:130 mov [argc],eax LINE:130 mov [argv],edx ~ 중략. LINE:145 call M_Startup_ LINE:146 call P_Startup_ LINE:148 call D_DemoLoop_ LINE:150 mov eax,3A5C "Fell ou t of main?" LINE:150 push eax LINE:150 call IO_Error_ LINE:150 add esp,00004h LINE:151 mov esp,ebp LINE:151 pop ebp LINE:151 pop edi LINE:151 pop esi LINE:151 pop ecx LINE:151 pop ebx LINE:151 ret } D_MAIN.C 의 일부분입니다 . 보 시면 아시겠지만 표준 C의 문법같지는 않고 DOOM이 Watcom C를 썼다는데 그 문법이 이러한가요 . C모듈이 모두 26개가 있는다 다 이런형태입니다. 디스어셈블한거라고 보기엔 너무 자세하구요 . 아마 프리프로세싱 그런 비슷한걸 한것 같기도 하고 .. 잘 모르겠네요 .. 궁금하신분은 받아보시길 .. 그럼 .. 소페파스