35년 전 ‘워드 1.1a’, 윈도우11서 네이티브 x64로 부활하다

작성일

1990년 마이크로소프트 워드 1.1a, 개발자가 윈도우11용 x64로 포팅
에뮬레이션 아닌 원본 소스코드 이식…비상업용 라이선스로만 공개

35년 전 ‘워드 1.1a’, 윈도우11서 네이티브 x64로 부활하다 / AI 생성 일러스트(삽화)
35년 전 ‘워드 1.1a’, 윈도우11서 네이티브 x64로 부활하다 / AI 생성 일러스트(삽화)

1990년 출시된 마이크로소프트 워드 포 윈도우(Word for Windows) 1.1a가 35년 가까운 시간을 건너 윈도우11에서 네이티브로 실행되는 x64 버전으로 되살아났다. 깃허브(GitHub) 사용자 jmarshall23, 실명은 저스틴 마샬(Justin Marshall)로 알려진 개발자가 이 프로젝트를 공개했다. 코드네임 오푸스(Opus)로 불렸던 이 버전은 워드 포 윈도우가 윈도우3.0을 정식 지원하며 내놓은 릴리스로, 당시 마이크로소프트가 공개한 원본 소스코드를 그대로 빌드해 만든 결과물이다. 에뮬레이션이나 최신 도구로 다시 짠 재구현이 아니라, 원본 코드와 리소스를 그대로 살린 진짜 포팅이라는 점이 특징이다. 다만 아직 완성된 실행 파일은 배포되지 않아, 직접 빌드할 수 있는 개발 환경을 갖춘 사람만 써볼 수 있다.

2014년 공개된 소스코드가 없었다면 불가능했던 작업

이번 포팅이 가능했던 배경에는 마이크로소프트가 2014년 워드 포 윈도우 1.1a의 소스코드를 공개한 사건이 있다. 이 코드는 컴퓨터 역사 박물관(Computer History Museum)을 통해 여전히 내려받을 수 있으며, C 소스코드와 x86 어셈블리, 빌드 도구, 문서 등을 담은 7MB 분량의 묶음으로 구성돼 있다. 총 1,021개 파일이 33개 폴더에 나뉘어 있는데, 마샬은 바로 이 원본 파일들에서 작업을 시작했다.

다만 이 소스코드에는 제약이 있다. 컴퓨터 역사 박물관에 따르면 해당 라이선스는 “비상업적 용도로만 사용을 허용하며, 웹상 다른 곳에 사본을 올려 제3자에게 재배포할 권리는 주지 않는다”고 명시돼 있다. 즉 누구나 소스를 받아 실험해볼 수는 있지만, 이를 활용해 상업적 제품을 만들거나 완성 파일을 널리 퍼뜨리는 것은 허용되지 않는 구조다.

16비트 코드를 64비트로…“에뮬레이션도 재구현도 아니다” / AI 생성 이미지
16비트 코드를 64비트로…“에뮬레이션도 재구현도 아니다” / AI 생성 이미지

16비트 코드를 64비트로…“에뮬레이션도 재구현도 아니다”

마샬은 깃허브 프로젝트 설명에서 “이 프로젝트는 코드네임 오푸스로 불렸던 마이크로소프트 워드 포 윈도우 1.1a의 완전히 작동하는 네이티브 윈도우 x64 포트”라며 “원본 워드 소스와 리소스를, 16비트 어셈블리와 세그먼트 메모리, 윈16(Win16) 플랫폼 경계에 대한 현대적 대체물과 함께 빌드한다”고 설명했다. 테크스팟(TechSpot)에 따르면 마샬은 원본 C 코드와 리소스 파일은 그대로 두되, 16비트 코드가 최신 64비트 윈도우 환경에서 제대로 동작하도록 손을 봐야 했다고 말했다. 윈16 API에 묶여 있던 특정 동작들은 윈32 API에 맞게 고쳐야 했고, 대화상자와 커서, 비트맵 요소는 CMake 빌드 과정에서 네이티브 호스트 도구로 다시 만들었다.

마샬은 “CMake는 레거시 어셈블리 트리를 목록화하지만 이 모듈들을 네이티브 타깃으로 컴파일하지는 않는다”며 “이는 역사적 구현을 참고용으로 남겨두면서도, 실제 배포되는 모든 코드가 AMD64에서 유효하도록 보장한다”고 설명했다. 워드 포 윈도우는 1989년 처음 등장해 DOS 기반 프로그램을 그래픽 사용자 인터페이스(GUI) 환경으로 옮긴 제품이었고, 1.1a는 그 1년 뒤 윈도우3.0 전용 지원을 더한 버전이다. 톰스하드웨어(Tom's Hardware)는 이 버전이 화면에 보이는 그대로 인쇄되는 위지위그(WYSIWYG) 편집, 그래픽·표 삽입 기능을 윈도우에 처음으로 실용적인 수준까지 끌어올린 릴리스라고 평가했다. 당시 이 프로그램은 한 자릿수 MHz 속도의 CPU와 1MB 남짓의 램(RAM)만으로도 돌아갈 만큼 가벼웠다.

빌드 도구 없인 실행 불가…일반 사용자에겐 아직 먼 이야기

지금 당장 이 워드를 내려받아 클릭 몇 번으로 설치할 수는 없다. 깃허브 저장소에는 미리 빌드된 바이너리가 올라와 있지 않기 때문이다. 실행하려면 비주얼 스튜디오 2022(데스크톱 C++ 개발 구성 요소 포함), 비주얼 스튜디오를 통해 설치하는 윈도우10 또는 윈도우11 SDK, CMake 3.25 이상 버전, 그리고 파워셸(PowerShell)이 필요하다. 개발자나 프로그래머에게는 익숙한 도구 조합이지만, 평범한 사용자가 가볍게 시도해보기엔 진입장벽이 있는 셈이다.

AI로 채워지는 오피스와 대비되는 레트로 실험

테크스팟은 이번 프로젝트의 맥락을 마이크로소프트가 오피스 전반에 AI 챗봇 기능을 적극적으로 밀어붙이는 흐름과 대비해 짚었다. 최신 마이크로소프트365 버전의 워드는 대규모 언어모델(LLM)을 활용해 문서를 알아서 작성하거나 초안을 확장해주는 수준까지 진화했지만, 정작 한 개발자는 그런 흐름과 반대로 오피스의 가장 초기 모습으로 되돌아간 셈이다. 마샬은 이전에도 옛 소프트웨어를 최신 기술과 결합하는 프로젝트를 여러 차례 진행했는데, 대표적으로 퀘이크1(Quake 1)에 레이 트레이싱을 적용한 포트, 퀘이크4(Quake 4) SDK와 둠3(Doom 3) 그래픽 엔진을 결합한 프로젝트 등이 있다.

이런 흐름은 마샬만의 시도로 끝나지 않는다. XDA 디벨로퍼스(xda-developers.com)는 앞서 지난 6월 툭스 펭귄(Tux the Penguin) 캐릭터를 디자인할 때 쓰였던 30년 전 버전의 GIMP가 최신 리눅스 배포판용으로 다시 공개된 사례를 소개하며, 옛 소프트웨어를 보존하려는 움직임이 이어지고 있다고 짚었다. 워드 1.1a 포팅 역시 이런 레트로 소프트웨어 보존 흐름의 연장선에 있는 사례로 볼 수 있다. 다만 라이선스가 비상업용으로만 한정된 만큼, 이 프로젝트가 앞으로 어떤 형태로 확장될지는 지켜볼 부분이다.