- Mac mini G4 đã khởi động thành công System 7 và Mac OS 8 ở chế độ nguyên bản, vượt qua giới hạn trước đây chỉ khả thi đến Mac OS 9.2.2
- Đã hiện thực việc khởi động các OS đời cũ bằng cách kết hợp bản dựng Mac OS 7.6~8.0 bị rò rỉ dựa trên CHRP (Common Hardware Reference Platform), bản vá System Enabler và công cụ chỉnh sửa Mac OS ROM (tbxi)
- Nhà phát triển Rairii(Wack0) đã phân tích và hợp nhất nhiều phiên bản ROM khác nhau để tạo ra một “siêu ROM” chứa cả tính năng cũ lẫn mới, rồi công bố trên GitHub
- Kết quả thử nghiệm cho thấy có thể khởi động ổn định từ System 7.5~8.1, dù một số chức năng như âm thanh, video và mạng vẫn chưa hoàn thiện
- Thành quả này mở rộng khả năng chạy Mac OS cổ điển trên toàn bộ dòng PowerPC Mac dựa trên New World ROM, mang ý nghĩa lớn với cộng đồng phát triển và bảo tồn công nghệ retro
Bối cảnh kiến trúc CHRP và việc khởi động System 7
- Mac mini G4 sử dụng cấu trúc New World ROM, nên không thể khởi động trực tiếp các OS dòng System 7 truyền thống
- New World ROM cần tệp Mac OS ROM thay vì ROM vật lý thực tế
- Các phiên bản trước System 7.6 không nhận biết được cấu trúc này nên không thể khởi động
- CHRP(Common Hardware Reference Platform) là kiến trúc dùng chung dựa trên PowerPC; các bản dựng dành cho Mac OS 7.6~8.0 từng được phát triển nội bộ nhưng chưa từng phát hành chính thức
- Đến tháng 10 năm 2025, các bản dựng Mac OS cho CHRP này được bảo tồn và công khai, mở ra khả năng thử nghiệm mới
- Bằng cách chỉnh sửa tệp System Enabler cho CHRP để loại bỏ giới hạn phiên bản OS, các bản cũ như System 7.5.x cũng có thể tận dụng tệp Mac OS ROM
Quá trình vá ROM và hiện thực khởi động
- Rairii(Wack0) đã dùng công cụ vá Mac OS ROM của ELN (tbxi) để phân tích và hợp nhất nhiều phiên bản ROM
- Tạo ra một ROM hợp nhất vừa khôi phục tính năng của bản cũ vừa giữ lại tính năng của bản mới
- Nhờ đó có thể khởi động từ System 7.5~8.1
- Có thể tải ROM và System Enabler đã được vá từ kho GitHub (universal-tbxi-patchset)
- Các phiên bản ROM được hỗ trợ gồm 10.2.1, 2.5.1 và 1.7.1; trên Mac mini G4 cần ROM từ 9.1 trở lên để hỗ trợ driver ATA-6
Kết quả khởi động trên Mac mini G4
- System 6.0.8~7.1.2: khởi động thất bại
- System 7.5 / 7.5.3 / 7.6 / 8.1: khởi động và chạy ổn định
- Cần vô hiệu hóa một số bảng điều khiển, ví dụ Mouse Control Panel
- System 7.5.2: khởi động được nhưng không ổn định
- Mac OS 8.5~9.1: khởi động thất bại do bị chặn bởi quy trình kiểm tra ID thiết bị
- Mac OS 9.2~9.2.2: hoạt động hoàn toàn bình thường
- Một số chức năng như âm thanh, mạng và Apple System Profiler vẫn còn chưa ổn định
Cách áp dụng ROM dành riêng cho Mac mini G4
- Dùng các công cụ tbxi và tbxi-patches của ELN để áp dụng bản vá dành riêng cho Mac mini G4 vào ROM của Rairii (phiên bản 10.2.1) bằng script macmini.py
- Đã xác nhận hoạt động thành công trong môi trường Python 3.8.10
- ROM đã vá cuối cùng cũng hoạt động tương tự trên Mac OS 9.2.2, đồng thời hỗ trợ khởi động đến System 7.5
- ROM Mac mini G4 cũ (v9.6.1) đã giả mạo model ID thành G4 Cube, và ROM mới cũng giữ nguyên cách làm này
Giá trị của việc chạy OS đời cũ
- Một số phần mềm chỉ dành cho Mac OS 9.0.4 trở xuống hoặc riêng cho System 7, nên không thể chạy trên OS mới hơn
- System 7.5 nhẹ hơn Mac OS 9 rất nhiều nên cho hiệu năng cực nhanh
- Nhà phát triển và nhà nghiên cứu có thể trực tiếp thử nghiệm các API và hành vi hệ thống cũ
- Dự án này mở rộng phạm vi chạy OS retro trên PowerPC Mac và đóng góp cho hoạt động bảo tồn của cộng đồng
Kết thúc và lời cảm ơn
- Thành quả lần này được hoàn thiện nhờ sự hợp tác của các thành viên cộng đồng như Rairii, ELN, Mac84
- Đây là kết quả từ nhiều đóng góp kết hợp như bảo tồn đĩa CHRP, phát triển công cụ ROM và chia sẻ bản vá
- Trong tương lai, người dùng G3·G4 Mac có thể tự tạo các ảnh khởi động tùy biến System 7~8.5 phù hợp với từng mẫu máy của mình
1 bình luận
Ý kiến trên Hacker News
Tôi có một công việc kinh doanh như sở thích là bán Mac mini G4 đã được tân trang
Tôi vệ sinh hoàn toàn bên trong, nâng cấp lên SSD 128GB, mở rộng RAM lên 1GB và thay pin đồng hồ mới
Đồng thời cài sẵn bản hack Mac OS 9 do cộng đồng Mac OS 9 Lives tạo ra
Có thể mua trên trang của tôi là os9.shop
Phần lớn khách hàng là người dùng doanh nghiệp thực sự cần chạy phần mềm cũ — từ phòng khám nha khoa, bệnh viện thú y, bảo tàng đến gara sửa ô tô
Thật đáng ngạc nhiên là đến năm 2025 vẫn còn nhiều người dùng phần mềm Classic Mac
Trước đây tôi từng gắn SSD vào một chiếc iMac G3 300MHz, nhưng lúc khởi động quá trình khởi tạo rất lâu và hay bị treo
Nếu chạy System 7 “native” trên Mac mini G4 thì sẽ thiếu khá nhiều driver
Phần lớn phần mềm chạy tốt hơn trên OS 9.2.2, còn trong những trường hợp thật sự ngoại lệ thì trình giả lập như vMac là đủ
Tôi cũng nghĩ Mac OS 9.2.2 là hệ điều hành tốt nhất
Trước đây ở công ty tôi hay làm prototype rất nhanh bằng HyperCard
Nó chạy tốt cả trên Cube, và trên thiết bị hiện đại hơn thì cũng chạy tốt qua giả lập OS 9
Những người viết script HyperCard đã làm được những điều tuyệt vời mà phần lớn người dùng ngày nay không làm — mà không cần trung tâm dữ liệu khổng lồ
Cuối tuần ngay trước ngày phát hành, tôi đã dùng Runtime Revolution dựa trên HyperCard để làm một trình hướng dẫn cài đặt và mang bản hoàn chỉnh tới vào thứ Hai
Công ty nổi giận vì triết lý “chúng tôi làm công cụ Java bằng Java”, nhưng cuối cùng phiên bản đó vẫn được phát hành thành công
Đến giờ tôi vẫn thấy việc làm công cụ đơn giản bằng Electron và React giống như một Turing Tarpit
Liên kết liên quan: LiveCode (company)
Đơn giản và hầu như không có những tầng trừu tượng không cần thiết
Script không chạy với Python 3.13.9 mới nhất, nên tôi thử lại bằng Python 3.8.10 thì chạy hoàn hảo
Dạo này Python thường loại bỏ các tính năng cũ và làm hỏng mã hiện có
Vấn đề liên quan: tbxi issue #1
MacOS 9 đã ngừng được hỗ trợ chính thức từ sau năm 2002, nên việc loại bỏ chức năng liên quan khỏi thư viện chuẩn là hợp lý
Đa số người dùng chẳng bao giờ dùng những chức năng đó
Thảo luận liên quan: cpython issue #83534
Lúc đầu tôi đọc nhầm thành “Mac mini M4” và đã giật mình
Dòng StarMax (đặc biệt là 4400) là mẫu gần với CHRP nhất
Bản clone PowerCity của tôi có cổng PS/2 và ISA, đồng thời chạy BeOS rất tốt
Nó còn có đặc điểm lạ là loa phát ra âm thanh khi vòng lặp chạy
Nó hỗ trợ ổ đĩa mềm kiểu PC, còn PS/2 được vi điều khiển CudaLite chuyển đổi thành thiết bị ADB
Tôi chưa từng thấy bản nào có khe ISA, nhưng có vẻ có thể triển khai bằng chip cầu nối PCI-ISA
Tài liệu tham khảo: LPX-40 Dev Note
Bo mạch Motorola Yellowknife và hệ thống IBM Long Trail cũng tương tự
Cả hai hệ thống đều dùng southbridge W83C553 và bộ điều khiển Super I/O PC87307
Nếu xem sơ đồ mạch của NXP thì có thể hiểu cấu trúc rõ hơn
Tôi muốn hỏi những ai muốn tìm hiểu cấu trúc phức tạp của PowerPC Mac — phần hỗ trợ phần cứng cho từng mẫu cụ thể được triển khai ở đâu?
Thực ra đây không phải là “khởi động native” System 7
Tất cả PowerPC Mac đều chạy System 7 thông qua trình giả lập
Dù vậy, bản thân nỗ lực này vẫn rất ấn tượng
Tôi đang dùng một chiếc iMac G4 1.25GHz
Ban đầu nó là bản 1GHz, nhưng sau này tôi thay bo mạch
Nếu có thể khởi động trực tiếp OS 9 thay vì dùng chế độ Classic của OS X thì sẽ hiệu quả hơn nhiều,
nhưng các mẫu 1~1.25GHz không được hỗ trợ chính thức
Tôi mơ một ngày nào đó có thể dual boot
Loa tích hợp không hoạt động nhưng jack tai nghe thì có
Nội dung như thế này thật tuyệt. Đây là chủ đề rất hợp để đọc trên Hacker News
Dù ấn tượng nhưng UX của macOS đời đầu khá bất tiện
Vì UI thread phải xử lý mọi thứ
Nhấn xong rồi chờ là chuyện thường ngày
Vì hầu như không có hoạt ảnh và đầu vào không bị chặn
Những ứng dụng dùng thường xuyên phản hồi ngay theo đúng trí nhớ cơ tay
Chỉ một null pointer cũng có thể làm cả hệ thống đứng cứng