그래픽 면에서 엄청난 도약.

현대 GPU가 존재했던 시기를 기억하실 만큼 오랜 경험이 있으신 분이라면 'Hercules Graphics Card'(HGCC)라는 명칭이 익숙하실 수도 있을 것입니다. 이 카드는 1980년대 초반 기업용 PC 그래픽 분야에 조용히 혁신을 가져오며 디스플레이 하드웨어의 새로운 시대를 열었습니다. 일종의 선구자로서, 허큘레스가 있어야 엔비디아(Nvidia)와 ATI가 활동할 수 있는 토대를 마련한 것이나 다름없습니다. 오늘날 기준으로 보면 매우 원시적인 기술처럼 보이지만, GPU라는 개념 자체가 추상적이었던 시절, 오래된 기술이 얼마나 큰 영향을 미쳤는지 되돌아보는 것은 언제나 흥미롭습니다. 본 글에서는 유튜브 채널 'The 8-Bit Guy'가 허큘레스에 얽힌 전설뿐만 아니라 실제 하드웨어의 작동 원리까지 심도 있게 분석한 회고 여정을 소개합니다.

현대 GPU가 진정한 그래픽 렌더링 기능을 수행하기 이전, IBM PC는 독보적인 신뢰성으로 기업 환경을 지배했습니다. 당시 기업들이 필요한 작업은 기본적으로 스프레드시트 및 차트 정리, 기본적인 회계 처리, 문서 내 방대한 양의 텍스트 처리에 국한되었습니다. 이러한 작업에는 '그래픽'이 필수로 요구되는 것이 아니었으며, 표시하기 훨씬 단순한 숫자와 문자가 충분했습니다. 이는 마치 프린터와 유사하여, 정밀한 세부 묘사가 필요한 실제 이미지를 위한 용도보다는 텍스트 출력 용도로 주로 사용되는 경우와 같았습니다.

당시 IBM PC는 두 가지 디스플레이 옵션을 제공했습니다. Color Graphics Adapter (CGA)와 Monochrome Display Adapter (MDA)입니다. 전자는 색상 출력이 가능했지만 최대 해상도가 640×200에 불과하여 텍스트가 다소 거칠게 보이는 한계가 있었습니다. 반면 MDA는 720×350으로 CGA보다 훨씬 선명했지만, 단색(monochrome)에만 제한되었으며 그래픽 표시 자체가 불가능했습니다. 이로 인해 MDA가 더 저렴하여 더 광범위하게 보급될 수 있었습니다. 그리고 여기에 허큘레스 그래픽 카드가 등장하여 이 두 가지의 장점을 모두 결합해냈습니다.
허큘레스는 텍스트 전용의 MDA 처리 능력과 CGA가 도입한 픽셀 주소 지정 그래픽 모드를 결합함으로써 두 가지 품질을 모두 보존했습니다. 기존 MDA 슬롯 및 모니터와의 하위 호환성을 유지하며 선명한 텍스트 출력을 제공하는 동시에, 720×348 픽셀의 고해상도 그래픽을 구현했습니다. 더 나아가, 이전의 IBM 디스플레이 어댑터에서는 볼 수 없었던 32KB의 프레임 버퍼(사실상 초기 형태의 VRAM)를 도입하여, 프로그램이 비디오 메모리에 직접 주소 지정할 수 있도록 했습니다.

허큘레스가 프레임 버퍼라는 개념 자체를 발명한 것은 아닙니다. 하지만 이는 그러한 기능을 구현한 최초의 MDA 호환 어댑터였습니다. 그 이전에는 MDA와 CGA 디스플레이 어댑터 모두 모니터에 특정 문자열을 표시하도록 지시하는 방식으로 작동했으며, 이는 복잡한 도형이나 이미지를 실제로 그리는 것이 아니라 단순히 저장된 코드일 뿐이어서 상당한 양의 메모리를 점유했습니다. 허큘레스가 자체 32KB 메모리를 제공함으로써, 프로그램들은 이 메모리에 데이터를 직접 기록할 수 있게 되어 CPU의 주 메인 버스 과부하를 방지할 수 있었고, 이를 통해 훨씬 빠르고 복잡한 그래픽을 '렌더링'할 수 있게 되었습니다.

본 영상에서는 수많은 제조업체들이 허큘레스를 모방한 카드를 출시했으나, 실제 제품보다 복제품이 많았다는 점을 다루며, 이 복제품들이 DIP 스위치를 이용하여 CGA와 허큘레스를 단일 보드에 결합한 경우가 많았다고 설명합니다. 나중에는 일부 ATI 카드조차 CGA와 허큘레스를 에뮬레이션할 수 있는 듀얼 모드 지원을 제공하기도 했습니다. 또한 발표자는 더블 메모리, 축소된 전반적인 폼 팩터, 그리고 전용 'RAM Font' 지원 기능을 갖춘 다음 세대 버전인 Hercules Graphics Card Plus도 소개했습니다.

HCG는 기업 영역을 넘어 게임 커뮤니티에서도 큰 반향을 일으켜 수많은 게임이 이 새로운 표준에 맞춰 포팅되었습니다. 일부 게임은 CGA 에뮬레이션이 필요했고, 다른 게임들은 해상도만 높인(결과적으로 계단 현상이나 톱니 모양의 라인을 유발하는) 단순한 CGA 게임에 불과했습니다. 하지만 심시티(Sim City)나 마이크로소프트 플라이트 시뮬레이터 3(Microsoft Flight Simulator 3)처럼 허큘레스에 진정으로 최적화된 게임들도 존재했습니다. MobyGames에 따르면, 536개의 게임이 허큘레스를 지원했고, 1,900개 이상이 CGA를 지원했습니다.
화자는 실제로 과거 허큘레스를 지원했으나 CGA 기법을 사용했기 때문에 시각적으로 좋지 않았던 자신의 게임들을 시연합니다. 이에 이들은 두 게임(Planet X3 및 Attack of the Pesky Robots)을 최근에 리뉴얼(rehauled)하여, '밤낮의 차이'를 보여주었습니다. (원문에서는 'night and day'로 설명됨).

시간의 흐름을 요약하며, 16비트 시대의 상징적 장면들(예: Super Mario Bros., Final Fantasy 등)을 언급하며, 이를 통해 당시의 기술적 진보와 문화적 상징성이 함께 작용했음을 보여줍니다.

이러한 역사를 통해, 컴퓨팅 기술의 발전은 단순한 기능 추가를 넘어 문화와 문명 전반에 걸쳐 거대한 영향을 미쳤음을 시사하며 마무리됩니다.