6 điểm bởi GN⁺ 2025-10-09 | 3 bình luận | Chia sẻ qua WhatsApp
  • Hyper Neo Geo 64 là một hệ thống arcade 3D được SNK vận hành trong 2 năm từ 1997 đến 1999; chỉ có tổng cộng 7 trò chơi được phát hành trước khi nhanh chóng biến mất, và đây là một nền tảng thử nghiệm trong giai đoạn chuyển tiếp từ 2D sang 3D
  • Công việc giả lập do nhà phát triển MAME David Haywood thực hiện trong 21 năm kể từ 2004 gần đây đã đi đến giai đoạn hoàn thiện, với không chỉ đồ họa và đầu vào mà cả giả lập âm thanh cũng hoạt động bình thường
  • Trong một tháng gần đây, các cộng tác viên MAME gồm cả R. Belmont đã giải quyết cách tổng hợp âm thanh và xử lý bộ lọc, tạo ra bước cải thiện lớn, và bản MAME 0.282 dự kiến phát hành vào tháng 10 sẽ cung cấp hỗ trợ âm thanh hoàn chỉnh
  • Trong quá trình phát triển giả lập, những tiến bộ ở các công nghệ liên quan như dump vi điều khiển I/O, cải tiến lõi CPU V53 đã trở thành đột phá then chốt, và sự cộng hưởng bất ngờ với công việc giả lập synthesizer cũng góp phần quan trọng
  • Trường hợp này cho thấy rõ đặc thù của việc phát triển giả lập: tầm quan trọng của một quy trình hợp tác được hoàn thiện dần qua nhiều năm làm việc âm thầm, kiên nhẫn, và từng mảnh công nghệ khác nhau lần lượt khớp vào nhau

Hành trình dài của việc giả lập Hyper Neo Geo 64

  • Khi David "MameHaze" Haywood bắt đầu công việc giả lập Hyper Neo Geo 64 vào năm 2004, MAME gần như chưa hỗ trợ game 3D, lõi CPU MIPS còn ở giai đoạn đầu, thậm chí còn chưa có cả dump của vi điều khiển I/O
    • Khi đó bộ nhớ PC còn thiếu ngay cả để nạp và giải mã đồ họa 2D
    • Đây là thời kỳ trước YouTube nên môi trường để tìm tài liệu tham khảo cũng cực kỳ khó khăn
    • Nhiều người trưởng thành trẻ hiện nay quan tâm đến việc giả lập nền tảng này thậm chí còn chưa ra đời vào thời điểm công việc bắt đầu
  • Vài tuần trước, Haywood đã nâng hệ thống này trong MAME lên trạng thái "working", nhưng đó phần nào chỉ là một bước mang tính hình thức
    • Khi ấy giả lập âm thanh phù hợp vẫn còn thiếu, và Haywood cũng không còn làm việc trên phần lõi kể từ sau năm 2023
    • Vì mọi người đã chơi các game này trong thời gian dài mà không có tiếng nên ông cho rằng có thể gắn nhãn "working"
    • Điều này trở thành động lực để các cộng tác viên MAME khác bắt tay cải thiện âm thanh

Tổng quan hệ thống Hyper Neo Geo 64

  • Hệ thống này chỉ hoạt động trong arcade vỏn vẹn 2 năm từ 1997 đến 1999, với tổng cộng 7 trò chơi được phát hành
    • Road's Edge
    • Samurai Shodown 64
    • Xtreme Rally
    • Beat Busters: Second Nightmare
    • Samurai Shodown 64: Warriors Rage
    • Fatal Fury: Wild Ambition
    • Buriki One
  • Từng trò chơi riêng lẻ không tạo ra động lực quá mạnh cho việc giả lập, nhưng niềm đam mê của nhóm MAME trong việc đảo ngược kỹ thuật và bảo tồn mọi hệ thống arcade đã giúp dự án tiếp tục
  • Khác với bo mạch CPS3 của Capcom được bổ sung hỗ trợ khá nhanh sau khi được giải mã, Hyper Neo Geo 64 đòi hỏi 21 năm lao động gián đoạn nhưng đầy vất vả

Nỗ lực âm thầm trong phát triển giả lập

  • Haywood chỉ ra rằng: "Điều mọi người thực sự không hiểu về giả lập là lượng thời gian phải đổ vào những công việc không mang lại bất kỳ kết quả tích cực nào"
    • Ông đã nhiều lần làm việc trên driver Hyper Neo Geo 64, dành ra hàng tuần nhưng không đạt được tiến triển nào
    • Cảm giác thất vọng khi cố gắng hiểu mọi thứ nhưng cuối cùng chỉ đi đến kết luận rằng "nó không hoạt động như vậy"
  • Vài năm trước, vi điều khiển I/O đã được dump, và Haywood viết lõi CPU để giả lập nó, qua đó đạt được tiến triển thực chất
    • Đầu vào bắt đầu hoạt động ở nhiều game, nhờ vậy có thể tiếp tục đẩy mạnh việc cải thiện hình ảnh
    • Hỗ trợ CPU V53 được phát triển cho các hệ thống khác về sau lại đóng vai trò quyết định trong việc vận hành DSP âm thanh

Bước tiến nhanh của giả lập âm thanh

  • Khi Haywood đánh dấu nền tảng này là "working", nó đã thu hút sự chú ý của các cộng tác viên MAME như R. Belmont
    • Belmont, Happy, O. Galibert và những người khác đã làm việc trong suốt một tháng qua để khiến game phát ra âm thanh đúng cách
    • Bản disassembly chi tiết của chương trình CPU âm thanh do Happy viết ra đặc biệt hữu ích
  • Belmont và Galibert vốn đang làm việc về hỗ trợ synthesizer trong MAME, mà chip âm thanh của Hyper Neo Geo 64 cũng được dùng trong synthesizer, tạo nên sự chồng lấn chuyên môn rất thuận lợi
  • Bản phát hành MAME 0.281 hiện tại đã bao gồm một loạt cải tiến nhanh được Belmont ghi lại qua video YouTube
    • Sửa để việc bắt đầu và dừng sample cơ bản hoạt động đúng cách
    • Bổ sung hỗ trợ sơ bộ cho volume envelope, giúp cải thiện cân bằng âm thanh
    • Thêm bộ lọc thông thấp cho từng voice, giúp dọn sạch nhiễu tần số cao và làm âm thanh rõ hơn

Các cải tiến lớn trong MAME 0.282

  • Ở MAME 0.282 dự kiến phát hành vào tháng 10, các vấn đề âm thanh của Xtreme Rally sẽ được giải quyết cùng với việc nâng cao chất lượng tổng thể
  • Olivier Galibert đã tìm ra cách nén dải động 12-bit xuống 8-bit, đồng thời thay bằng bộ lọc Chamberlin phù hợp hơn để tạo ra âm thanh rõ ràng hơn nhiều với độ trung thực cao hơn
  • Việc hiểu được cơ chế thực sự của sample lặp, sửa lỗi méo ở bước mixdown cuối cùng, và chỉnh lại filter envelope đã mang tới cải thiện đầy ấn tượng cho phần mở đầu của Beast Busters Second Nightmare
  • Giải quyết vấn đề mã lệnh riêng của Xtreme Rally
    • Trò chơi này có đoạn mã đặc biệt nhằm gửi lệnh âm thanh sang sound CPU nhanh nhất có thể, khiến 2/3 số lệnh bị mất
    • Lỗi đã được sửa để mọi lệnh đều được truyền đi, và Xtreme Rally giờ đây nghe rất tốt
  • Khi MAME 0.282 được phát hành, Hyper Neo Geo 64 sẽ thực sự xứng đáng với nhãn "working"

Ví dụ hoàn hảo của một dự án hợp tác

  • Galibert cho biết trên Reddit rằng đây là đóng góp bắt nguồn từ mối quan tâm tới giả lập synthesizer, nhưng cũng nói thêm rằng "trớ trêu là chính bản thân synthesizer (MPC3000) vẫn hoàn toàn chưa hoạt động"
  • Một phần của synthesizer vẫn chưa được dump và chưa có tài liệu, nhưng đôi khi một mảnh ghép đang có lại khớp hoàn hảo với một câu đố hoàn toàn khác
  • Haywood hồi tưởng: "Đó đơn giản là một quá trình dài và chậm", và rằng "qua nhiều năm nó tiến triển từng chút một, còn mã liên quan xung quanh của MAME ngày càng tốt hơn và mạnh hơn, nên có thể đạt thêm tiến bộ theo từng bước"

3 bình luận

 
colus001 2025-10-10

Thật tuyệt khi họ đã bỏ ra từng ấy công sức cho một hệ máy chỉ hỗ trợ vỏn vẹn 7 trò chơi.

 
t7vonn 2025-10-10

Bậc lão làng mài giũa trình giả lập.. ghê thật.

 
GN⁺ 2025-10-09
Ý kiến Hacker News
  • Nỗ lực thật sự đáng kinh ngạc, nhưng cũng khiến tôi nhớ những bài viết của Byuu hay các devlog gần đây của Dolphin. Tôi cũng rất muốn nhiệt liệt giới thiệu blog phát triển của Shonumi. Blog này nói về các phụ kiện hiếm hoặc khó giả lập của Gameboy và GBA, từ modem hồng ngoại đến máy dò cá dùng sóng sonar Shonumi devlog

    • Byuu thực sự là một con người phi thường. Tôi vẫn nhớ thời điểm anh ấy xuất hiện và góp sức rất lớn vào việc cải thiện khả năng tương thích của trình giả lập. Những thay đổi tích cực mà Byuu mang lại cho thế giới đến giờ vẫn khiến tôi suy ngẫm mãi

    • Dolphin cũng có những bài viết cực kỳ thú vị về việc họ đã bỏ ra bao nhiêu công sức để chạy được các trò chơi của Factor 5. Trong một môi trường phần cứng cố định, người ta dùng những thủ thuật thật đáng kinh ngạc để vắt kiệt hiệu năng. Phải nhiều năm sau, khi ai đó cố chạy phần mềm đó trên trình giả lập, giá trị thật sự của chúng mới được thấy rõ

    • Tôi tò mò không biết có ai biết trình giả lập PC nào hỗ trợ đầu vào micro đúng nghĩa thông qua giả lập Soundblaster hay không. Tôi tìm thấy ứng dụng đầu tiên của mình được phát hành khoảng năm 1994 trên archive.org; đó là một trình trực quan hóa âm nhạc và cần đầu vào âm thanh

    • Bài viết về Battle Chip Gate trên Shonumi devlog khiến ký ức tuổi thơ của tôi sống lại. Hồi nhỏ tôi là fan của Battle Network trên GBA, và đã bắt đầu hoạt động trong cộng đồng trực tuyến trên GameWinners.com để tham gia diễn đàn Mega Man. Cái nickname đầu tiên của tôi cũng lấy từ một tính năng mới trong MMBN2. Chính Battle Network đã khiến tôi quan tâm đến việc bảo tồn game cũ, và các thiết lập AI cùng cyberworld trong game cho cảm giác như dự báo tương lai một cách đáng kinh ngạc. PC kết nối trực tiếp với Internet, AI được tùy biến cho từng người, các tác tử AI giúp điều hướng sự phức tạp của thế giới số, tội phạm mạng và hacker, thậm chí cả các lỗ hổng số tồn tại dai dẳng theo thời gian hay việc hack hệ thống điều khiển môi trường — tất cả tạo nên một viễn cảnh tương lai thật đáng kinh ngạc. Nhờ MMBN2 mà tôi học tiếng Anh và trở thành lập trình viên. Đến giờ tôi vẫn vui vẻ hoài niệm về thời đó

  • Thật đáng ngạc nhiên khi dự án MAME đã được phát triển tích cực hơn 28 năm mà bản chất cốt lõi gần như không thay đổi. Có lẽ là nhờ một cộng đồng lập trình viên cực kỳ tận tâm

    • Khi cộng thêm một codebase C++, mã sinh ra mã C++, một quy trình build sinh ra thêm quy trình build khác, và cả sự cố chấp của người cứ mỗi năm lại đổi hết tên file, thì đúng là có cảm giác như những nhà sư trong hang động

    • Không hẳn là một fork theo đúng nghĩa, nhưng đã từng có một dự án riêng tên là MESS, mở rộng phạm vi sang các hệ thống không phải arcade rồi sau đó lại được hợp nhất trở lại

    • Cũng có các fork phổ biến như Final Burn Alpha/Neo

    • Một điều tôi tình cờ biết được và thấy cực kỳ thú vị là họ còn giả lập cả SGI/IRIX

    • Thực ra có khá nhiều fork, nhưng tôi không chắc chúng có thuộc dạng fork thật sự “quan trọng” hay không. Và tôi cũng từng trải nghiệm việc các nhà phát triển MAME rất khắt khe khi đánh giá mã từ bên ngoài

  • Tôi rất thích những bài như thế này. Chúng khiến tôi cảm nhận rõ việc giả lập game đã bồi đắp năng lực kỹ thuật sâu sắc cho rất nhiều tác giả. Tôi lo rằng những DRM cực kỳ khó nhằn, cắm sâu vào phần cứng như trên Xbox One X và các hệ thống tương tự rồi sẽ để lại những khoảng trống lớn trong các cuộc trưng bày di sản văn hóa tương lai. DRM rõ ràng có một cái giá xã hội rất lớn mà chúng ta vẫn chưa nhận thức đầy đủ

  • Đam mê của các nhà phát triển giả lập, sẵn sàng nỗ lực đến vậy chỉ vì chưa tới 10 trò chơi, thật sự rất đáng nể

    • Với những nền tảng có rất ít game, vẫn luôn có ai đó đặc biệt say mê một trò và lao vào phân tích kỹ lưỡng. Bản thân tôi là fan của T-Mek và còn để một cỗ máy bị lỗi trong nhà kho. Đây là một hệ thống chỉ có đúng hai trò, nhưng để nó chạy chuẩn trên MAME thì phải có ai đó đủ quan tâm, đủ kỹ năng và cả thiết bị để phá lớp bảo vệ

    • Đã từng có những người tìm ra cách chạy các DCR Habbo đã biên dịch sẵn thành ứng dụng desktop độc lập, và chính vì vậy Habbo Origins vẫn còn tồn tại. Một nhân viên của Sulake từng tự mình trải nghiệm chuyện này, và người đó thực ra xuất thân từ scene Habbo Retro/Emulator. Cộng đồng reverse engineering thực sự là một nơi rất thú vị

    • Có những phần cứng arcade gồm các bo mạch hoàn toàn tùy biến chỉ để phục vụ duy nhất một trò chơi, hay những con chip chưa từng được tái sử dụng lần nào. Sứ mệnh của MAME rất rõ ràng, nhưng với SNK, Samurai Shodown và Fatal Fury thì HNG64 luôn thu hút sự quan tâm

    • Ghi chép và lưu giữ quá khứ là một việc làm rất có ý nghĩa

    • Trong những trường hợp như thế này, từ phù hợp nhất có lẽ là “đầy đam mê”

  • Sau 28 năm, MAME vẫn tiếp tục có những thay đổi thú vị ở khắp nơi. Nó không chỉ vượt ra ngoài các máy arcade mà còn mở rộng sang những máy chơi game gia đình ít được biết đến, máy tính cổ và nhiều loại phần cứng khác. Gần đây, tiến độ giả lập các bộ tổng hợp âm nhạc chuyên nghiệp như dòng Yamaha MU huyền thoại cũng rất đáng chú ý Wiki Yamaha MU-series. Từ cuối thập niên 80, game PC đã bắt đầu hỗ trợ soundtrack MIDI, nhưng phần lớn game thủ khi đó chỉ nghe được phiên bản âm nhạc bị biến dạng qua các sound card PC hạn chế. Nếu có đủ tiền, bạn có thể nghe sống động hơn với các mô-đun MIDI ngoài như Roland Sound Canvas, nhưng đỉnh cao thực sự là Yamaha MU80 64 voice. Khi lần đầu nghe âm thanh của MU80, tôi mới nhận ra mình đã bỏ lỡ điều gì MU80 Demo Song. Giờ đây nhờ MAME, ta có thể thoải mái trải nghiệm phần cứng chuyên nghiệp đắt đỏ này chỉ bằng giả lập phần mềm

    • Tôi vẫn nhớ mớ nhạc MIDI đi kèm chiếc Packard Bell Pentium 166 nghe rất kỳ quặc và chẳng hay ho gì. Hồi đó tôi không hề biết đã tồn tại những thiết bị cao cấp như thế này. Tìm thử các video so sánh Sound Blaster và MU80 trên YouTube mới thấy thật ấn tượng video so sánh

    • Tôi tự hỏi bao giờ sẽ tới ngày ta có thể nhờ AI tái tạo một game fantasy đậm chất hoài niệm thập niên 90

  • Tôi tự hỏi liệu cách này có giống với kiểu DRM pin kỳ quặc mà CAPCOM từng dùng trên các hệ thống arcade cũ hay không. Có một kiểu mà nếu mất điện thì phải gửi lại cho CAPCOM để nạp lại chương trình

    • Có vẻ không phải kiểu đó. Có lẽ bạn đang nói đến CPS, đặc biệt là bo mạch CPS2 nổi tiếng. Trên đó, pin dùng để duy trì thiết bị chống sao chép, và nếu điện áp pin tụt xuống dưới ngưỡng nhất định thì khóa bảo mật sẽ bị xóa khỏi bộ nhớ. Vì vậy ROM vẫn còn đó nhưng ở trạng thái mã hóa. Việc bật tắt nguồn máy thì không thành vấn đề. Thực tế, pin CPS2 còn có xu hướng làm hỏng các linh kiện quan trọng nên đôi khi được gọi là “pin tự sát”. Giờ đây có nhiều cách để gỡ bỏ lớp bảo vệ: dùng Phoenix ROM đã được giải mã, hoặc hàn PCB Infinikey để xử lý khóa trong ROM bằng nguồn cấp của bo mạch, v.v. Trong khi đó, HNG64 có vẻ đơn giản là phần cứng rắc rối hơn nên ít được phân tích hơn

    • Cơ chế này diễn ra theo hai bước. Giữa ROM chương trình và CPU có một chip giải mã độc quyền, và chip này dùng một bảng lưu trong SRAM nhỏ, SRAM đó được nuôi bằng pin. Nếu mất nguồn (pin cạn hoặc có ai đó cố hack), khóa giải mã cũng biến mất. Tình cờ người ta phát hiện chân FC1 được nối vào chip giải mã, và thực ra chỉ ROM chương trình là bị mã hóa. Khi CPU 68000 yêu cầu lệnh, nó phát ra một tín hiệu cụ thể để báo cho chip giải mã có nên giải mã hay không. Nhưng chế độ định địa chỉ tương đối theo PC cũng phát ra cùng tín hiệu đó, và nhờ vậy người ta có thể trích xuất các lệnh đã mã hóa. Có lẽ còn vì một lớp bảo vệ khác mà sau một lúc chip sẽ ngừng hoạt động. Về sau, trên các máy chơi game gia đình dựa trên bo CPS và các bản port console của game như SF Zero, người ta phát hiện có những lệnh đọc các địa chỉ kỳ lạ mà chip đang chờ. Nếu không có truy cập tới các địa chỉ nhất định đó, chip sẽ ngừng giải mã. Bí mật này bị lộ ra nhờ các bản port console, và từ đó người ta có thể khéo léo xen kẽ PC-relative với các truy cập đó để dump ROM một cách bình thường Tài liệu tham khảo bộ xử lý 68000

    • Kiểu cơ chế này đến nay vẫn còn thấy trong thiết bị cờ bạc. Máy slot hiện đại có rất nhiều lớp bảo vệ, pin, tính năng chống khoan, v.v., nhưng giờ đây mục tiêu thường là ngăn trốn thuế nhiều hơn là bảo vệ bản quyền

  • Bài viết có nhắc đến LaserActive. Hồi nhỏ tôi lần đầu thấy nó ở nhà chú, và trước đó hoàn toàn không biết nó tồn tại Wiki LaserActive. Tôi gần như chỉ nhớ là mình chơi các game Genesis

    • Những thiết bị như thế này có rất ít người thậm chí biết đến sự tồn tại của chúng. Chúng được giới sưu tầm mua bán với giá cao, và kể cả 15 năm trước khi tôi bắt đầu quan tâm đến thiết bị PC Engine/TurboGrafx thì giá cũng đã đắt rồi. Giờ chắc còn đắt hơn nữa
  • Tôi khá ngạc nhiên khi biết Vajra và Vajra 2 là game bắn súng độc quyền cho LaserActive do một công ty tên Data West làm ra. Tên này khá giống Data East, cả hai đều là công ty Nhật, nhưng có vẻ Data West không phải là spin-off của Data East. Tôi tự hỏi liệu họ có cố tình đặt tên giống nhau để khiến người ta nhầm lẫn hay không Thông tin công ty Data West

  • Tôi đã phải phóng to kỹ tấm nhãn giá trong bức ảnh đầu tiên của bài viết. Battle Toad in Battlemaniac là 53900 yên, Akumajou Dracula XX là 27500 yên, còn The King of Dragons là 39800 yên

  • Galaga và Galaga Fast Shoot vẫn liên tục có độ trễ hơn 100ms giữa lúc bấm phím và phản hồi trong game; hy vọng một ngày nào đó vấn đề này sẽ được giải quyết hoàn toàn