• 개발자, 고전 슈팅 게임 'Zaxxon'을 UEFI 펌웨어로 재창조하다 — No-OS 환경에서 x86 어셈블리로 코딩된 아이소메트릭 아케이드 게임이 '빅테크로부터의 완전한 자유'를 상징

    다른 UEFI 게임들은 존재했지만, 이 게임은 펌웨어 자체로 직접 부팅되도록 설계된 최초의 완전한 아케이드 게임입니다.

    article image

    Inkbox Software가 PC의 Unified Extensible Firmware Interface (UEFI)에서 직접 실행되는 인기 아이소메트릭 아케이드 게임의 재현 버전을 출시했습니다. 나아가, 개발사 측은 Zaxxon (1982)의 버전을 x86-64 어셈블리 언어로 코딩했으며, 이를 GPLv3 라이선스 하에 오픈 소스로 공개했습니다. 이전에도 UEFI용 게임과 앱이 존재했지만, 이들은 불완전하거나 제한적인 데모 수준이었으며, 게임으로 직접 부팅되기보다는 UEFI 내부의 페이로드(payload) 형태로만 실행되곤 했습니다.

    상기 비디오에서 Inkbox는 이 고전 아케이드 게임의 UEFI 코딩 여정을 시작하게 된 이유를 설명합니다. 요약하자면, 이 어셈블리 코딩 개발자는 "운영 체제가 자신을 가로막는 것에 너무 지쳤다"고 말하며, 하드웨어가 본래 의도된 방식대로 클래식 게임을 실행하기를 원했다고 밝힙니다. Inkbox는 이를 "운영 체제 없이 어셈블리로 작성된 것"이라 강조하며, "이것은 빅테크(Big Tech)로부터의 완전한 자유를 의미합니다. 운영 체제는 거부하고(Reject OS), 하드웨어 본연의 상태로 돌아가는 것(Return to metal)입니다."

    article image

    물론, PC UEFI용으로 세련되고 반응성이 뛰어난 Zaxxon 포트를 만드는 것은 상당한 난관이 따릅니다. Inkbox가 이 어려운 과정을 어떻게 극복했는지, 광범위하고 심도 있으면서도 몰입도 높은 비디오를 통해 확인할 수 있습니다.

    오픈 소스 Intel 486 메인보드를 처음부터 6개월 만에 구축

    article image

    어셈블리 코딩 자체만으로도 까다로운 도전이었지만, 개발자는 타이밍, 키보드 입력, 그래픽 출력과 관련된 UEFI의 여러 제한 사항들과 맞서 싸워야 했습니다. 예를 들어, Inkbox에 따르면 기본 UEFI 키보드는 내장된 지연 시간 때문에 "게임 입력에 있어 완전히 쓰레기 수준"이었습니다. 이에 대응하여 반응성이 뛰어난 마우스/조이스틱 제어 방식이 고안되었습니다. 그래픽 처리의 경우, 레트로 콘솔의 Picture Processing Unit (PPU)를 구현하는 전용 엔진을 코딩해야 했습니다.

    하지만 이러한 문제점들은 결국 해결되었고, 비디오는 어셈블리 코딩으로 제작된 OS가 없는 Zaxxon 리메이크가 매우 부드러운 128FPS로 작동하는 데모로 막을 내립니다. 다만, 게임에는 사운드 기능이 없습니다.

    article image

    Inkbox에 따르면, 이 게임은 UEFI만 지원한다면 "모든 x86_64 장치에서 구동될 것"입니다. 이 Zaxxon 게임의 구동에 대한 더 자세한 정보는 코드와 기타 리소스가 함께 공개된 Space Game for x64 GitHub에서 확인할 수 있습니다.

    Google News에서 Tom's Hardware를 팔로우하거나 즐겨찾는 출처로 추가하여 최신 뉴스, 분석 및 리뷰를 피드에서 받아보세요. 반드시 팔로우 버튼을 클릭해 주세요!

    [출처:] https://www.tomshardware.com/software/programming/developer-recreates-classic-shoot-em-up-zaxxon-as-a-uefi-firmware-isometric-arcade-game-coded-in-x86-assembly-for-no-os-represents-total-freedom-from-big-tech