GN⁺ 4시간전 | parent | ★ favorite | on: SDL이 이제 DOS를 지원함(github.com/libsdl-org)
Hacker News 의견들
  • 이제 UEFI용 SDL만 있으면 게임을 OS 부팅 전 환경에서도 돌릴 수 있게 됨

    • 모든 Intel 칩셋에서 도는 Intel Management Engine / Minix는 요즘도 여전한지 궁금함
      보안이 더 단단해졌는지, 아니면 여전히 접근 가능한지도 궁금하고 https://www.zdnet.com/article/minix-intels-hidden-in-chip-operating-system/
    • 그건 사실 그렇게까지 어렵진 않을 듯함
      다만 UEFI엔 사운드 드라이버가 없는 걸로 알고 있고, 요즘은 오디오 코덱 칩조차 NDA 전용 데이터시트뿐이라 직접 작성하기도 까다로움
      더 황당한 건 graphics output protocol에 vsync 정보가 없어서 찢김 없는 blitting이 안 된다는 점이고, 이건 문자 그대로 VGA보다 못함
    • UEFI는 약간 현대식 DOS처럼 느껴짐
    • 솔직히 엄청 멋진 그림임
      grub 같은 메뉴로 부팅했더니 고전 게임 목록이 쭉 뜬다고 생각하면 꽤 설렘
    • 한마디로 bare metal용 SDL
  • 이 스크린샷이 특히 웃긴 이유는 DosBOX 자체가 SDL 위에서 만들어졌기 때문임

    • 그럼 이제 DOS 안에서 도는 dosbox가 필요해짐
    • SDLception 그 자체임
  • 이건 DJGPP를 쓰고 있어서 DPMI로 CPU를 32비트 모드로 전환함
    그래서 segmented memory, near pointer, 온갖 64KB 제한이 난무하던 진짜 올드스쿨 감성은 못 느끼게 됨

  • 멋짐
    SDL 바인딩을 지원하는 FreeBASIC의 386+ 대상 MS-DOS 실행 파일과 함께 쓰면 어떻게 될지 궁금해짐
    [1] - https://github.com/freebasic/fbc

    • 직접 확인해볼 생각임
      원래 DOS 출신인 OHRRPGCE를 다시 DOS로 포팅해야지 하고 몇 년째 마음먹고 있었음
      그리고 SDL 1.2 시절에 있던 거의 모든 포트와 OS 지원을 SDL이 공격적으로 쳐냈던 걸 생각하면, SDL3가 DOS 지원을 되찾은 것은 꽤 놀라움
  • 완벽함
    오늘 아침에 macOS 안의 VMware Fusion 안의 Debian GNU/Linux 안의 DOSBox-X 안의 Turbo C로 개발하고 있었는데 딱 맞는 소식임

    • 농담이었는지 진심이었는지 꼭 알고 싶음
    • Linux용 turboc 변종이 있었나 싶음
      수십 년 전에 turboc로 작업했던 기억이 어렴풋이 남아 있음
    • 그렇다면 영화 Inception도 재밌게 볼 듯함 :)
  • 엄밀히 말하면 이건 이미 HXDOS로 가능했음
    DirectDraw를 SDL이 쓸 수 있을 만큼 충분히 잘 에뮬레이션했기 때문임

    • 잠깐, 뭐라고?
      그럼 어떤 SDL 타깃으로 컴파일하는 건지 궁금함
      Win32 독점 전체화면인지, 아니면 640x480 같은 VESA 해상도인지 궁금함
  • SDL 같은 오픈소스 프로젝트에서 이런 지원이 들어가는 건 보통 변경이 얼마나 침습적인지, 그리고 기여자가 실제로 유지보수까지 계속할지에 달려 있음
    프로젝트마다 정책은 다르고 SDL 정책은 모르지만, 이미 포트가 많으니 스스로 무엇을 감당하는지 알고 들어가는 거라 봄

    • 이런 희귀 아키텍처 지원은 거의 항상 꿈을 가진 한 사람, 그리고 그걸 실제로 만들고 유지하는 한 명의 영웅이 떠받침함
      내가 가장 좋아하는 예는 openbsd luna88k https://www.openbsd.org/luna88k.html
      실제 사용자가 얼마나 있는지는 전혀 모르겠음. 아마 일본에서만 나온 꽤 희귀한 기계였던 것 같고, 사용자가 있다면 대부분 일본 쪽일 텐데 내 시야 밖이라 체감상 사용자는 포터 한 명뿐임
      그런데도 매 릴리스마다 정식 공개일보다 몇 주 뒤 숲에서 툭 튀어나오듯 luna88k 파일과 패키지를 올려줌
      실제 luna88k에서 컴파일하느라 오래 걸리는 게 아닐까 싶고, 어쨌든 그 정도면 OpenBSD의 공식 하드웨어 플랫폼으로 유지되기에 충분함
      나 자신은 luna88k를 갖고 싶지도 않지만, 그렇게 계속 굴러가게 만드는 그 사람은 정말 존경스러움
  • SDL이 다시 Loki 시절의 뿌리로 돌아가는 느낌임

  • 멋짐
    왜냐고? 이유는 몰라도 멋지면 된다고 봄

    • 이제 DOS에서 Dota 2를 돌릴 수 있으니까
    • 브라우저 기반 DOSBox가 워낙 쉽고 빠르게 돌아가서, DOS는 작은 게임은 물론 꽤 본격적인 게임까지도 올릴 수 있는 휴대성 좋은 타깃이 됨
      인터넷 아카이브를 보면 알 수 있듯, 키보드와 마우스만 있으면 중반 90년대 AAA급 복잡도까지는 사실상 어디서나 실행 가능함
      Tomb Raider, Command & Conquer, Quake 같은 게임들이 그렇고, 그냥 잘 돌아가는 플랫폼을 원한다면 꽤 매력적임
      여기에 SDL까지 생기면 훨씬 쉬워짐
    • FreeDOS는 기술적으로 보면 지금도 활발히 지원되는 현대적인 DOS임
    • SDL은 크로스플랫폼 멀티미디어 라이브러리고, DOS도 플랫폼
  • 정말 기쁨
    이건 나를 아주 행복하게 만듦