Hình ảnh hỗ trợ
Mẫu máy
- Game Boy nguyên bản được phát hành tại Nhật Bản vào ngày 21 tháng 4 năm 1989, tại Mỹ vào ngày 31 tháng 7 năm 1989, và tại châu Âu vào ngày 28 tháng 9 năm 1990.
- Thiết bị kế nhiệm thế hệ tiếp theo là Game Boy Color được phát hành tại Nhật Bản vào ngày 21 tháng 10 năm 1998, tại Bắc Mỹ vào ngày 18 tháng 11 năm 1998, và tại châu Âu vào ngày 23 tháng 11 năm 1998.
Bo mạch chủ
Sơ đồ
- Sơ đồ kiến trúc chính của Game Boy nguyên bản
Giới thiệu ngắn gọn
- Có thể hình dung Game Boy như một chiếc NES cầm tay với hiệu năng hạn chế, nhưng nó có thêm những tính năng mới rất thú vị.
Phân tích cầu vồng
- Do mức độ phổ biến khổng lồ của hệ máy này, nhiều bản revision đã xuất hiện (ví dụ: Game Boy Pocket, Light, dạng băng cartridge Super Nintendo, v.v.).
- Thương hiệu Game Boy trải dài qua hai thế hệ.
- Thế hệ thứ 4 gồm Game Boy đen trắng và các bản revision của nó, còn thế hệ tiếp theo là Game Boy Color (ra mắt sau sự kết thúc của Virtual Boy).
- Bài viết này đề cập đến cả hai thế hệ, vì vậy cuối cùng bạn sẽ có được sự hiểu biết tốt về cách Game Boy hoạt động và công nghệ của nó đã tiến hóa như thế nào để trở thành Game Boy Color.
CPU
- Thay vì đặt nhiều chip có sẵn trên thị trường lên bo mạch chủ, Nintendo đã chọn thiết kế một chip duy nhất, chứa đựng (và che giấu) phần lớn các thành phần.
- Chip này được gọi là System On Chip (SoC), và trong trường hợp này nó được chế tạo riêng cho hệ máy này để đáp ứng các yêu cầu của Nintendo (hiệu quả năng lượng, chống sao chép lậu, I/O bổ sung, v.v.).
- Không thể tìm thấy con chip này trong danh mục bán lẻ, vì vậy các đối thủ cạnh tranh vào thời điểm đó gặp nhiều khó khăn hơn khi làm bản sao.
- SoC được dùng trong Game Boy được gọi là DMG-CPU hoặc Sharp LR35902, do Sharp Corporation sản xuất.
- Công ty này duy trì mối quan hệ chặt chẽ với Nintendo.
Lõi CPU
- Bộ xử lý chính bên trong DMG-CPU là Sharp SM83, là sự pha trộn giữa Z80 (CPU được dùng trong Sega Master System) và Intel 8080.
- Nó chạy ở tốc độ khoảng 4.19 MHz, nhanh hơn CPU 1 MHz trung bình.
- SM83 không có các thanh ghi
IX hoặc IY của Z80, cũng không có các lệnh IN hoặc OUT của 8080. Điều đó có nghĩa là không thể dùng cổng I/O.
- Vì chỉ triển khai tập thanh ghi của Intel 8080, nó chỉ có 8 thanh ghi mục đích chung thay vì 16 thanh ghi của Z80.
- Nó bao gồm một phần của tập lệnh mở rộng của Z80 (chỉ các lệnh thao tác bit).
- Sharp đã bổ sung một số lệnh mới không có trên Z80 hay 8080. Chúng tối ưu một số tác vụ cụ thể liên quan đến cách Nintendo/Sharp cấu hình phần cứng.
Hiệu ứng màu sắc
- Gần 10 năm sau, sau khi từ bỏ Virtual Boy và phần cứng đầy tham vọng của nó, thiết bị kế nhiệm khiêm tốn hơn là Game Boy Color đã xuất hiện.
- Bên trong là SoC mới có tên CPU CGB với một số bổ sung; lõi CPU SM83 vẫn giữ nguyên nhưng tốc độ xung nhịp đã tăng gấp đôi (nay chạy ở ~8.38 MHz).
- Các nhà phát triển có thể tái sử dụng kỹ thuật hiện có để lập trình cho hệ máy mới, tiết kiệm chi phí vì không cần thiết kế lại hệ thống cho một kiến trúc mới, đồng thời vẫn cho phép tương thích ngược mà không cần quá nhiều công sức.
- CPU CGB triển khai hai chế độ hoạt động:
- Chế độ thường: SM83 chạy ở ~4.19 MHz.
- Chế độ tốc độ kép: SM83 chạy ở ~8.38 MHz.
Truy cập phần cứng
- SM83 giữ nguyên bus dữ liệu 8-bit và bus địa chỉ 16-bit, vì vậy nó có thể định địa chỉ tối đa 64 KB bộ nhớ.
- Bản đồ bộ nhớ chủ yếu gồm các điểm cuối sau:
- Không gian game pack (cartridge game).
- Work RAM (WRAM), High RAM (HRAM) và Display RAM (VRAM).
- I/O (tay cầm, âm thanh, đồ họa, LCD).
- Điều khiển ngắt.
Bộ nhớ khả dụng
- Nintendo trang bị 8 KB RAM trên bo mạch chủ. Đây là vùng dùng cho mục đích chung (gọi là Work RAM hoặc 'WRAM').
- Bên trong SoC còn có thêm 127 B RAM, cung cấp một vùng nhỏ cho dữ liệu cần truy cập tức thì (ví dụ: stack).
Đồ họa
- Mọi phép tính đồ họa đều được CPU thực hiện, sau đó Picture Processing Unit hay 'PPU' sẽ render chúng.
- Hình ảnh được hiển thị trên màn hình LCD tích hợp, có độ phân giải 160×144 pixel, và trên Game Boy đen trắng sẽ hiển thị 4 mức xám (trắng, xám nhạt, xám đậm, đen).
Cấu trúc nội dung
- PPU được kết nối với 8 KB VRAM hay 'Display RAM', đồng thời CPU cũng có quyền truy cập được điều phối vào đó.
- Trò chơi có trách nhiệm điền đúng loại dữ liệu vào các vùng khác nhau.
Dựng khung hình
- Để xem PPU vẽ mọi thứ lên màn hình như thế nào, có thể lấy Super Mario Land 2 làm ví dụ.
Tile
- PPU sử dụng tile làm nguyên liệu cơ bản để render đồ họa.
- Tile là các bitmap 8x8 được lưu trong một vùng của VRAM gọi là tile set hoặc 'tile pattern table'.
Lớp nền
- Lớp nền là một bản đồ 256x256 pixel (32x32 tile) chứa các tile tĩnh.
- Phần được hiển thị trên màn hình do trò chơi chọn, và vùng nhìn thấy có thể được di chuyển trong quá trình chơi.
Cửa sổ
- Cửa sổ là một lớp 160x144 pixel hiển thị phía trên nền và sprite, và lớp này không cuộn.
Sprite
- Sprite là các tile có thể di chuyển độc lập quanh màn hình.
- Lớp này sử dụng/yêu cầu thêm một màu là trong suốt.
Kết quả
- Khi một khung hình hoàn tất, hệ thống chuyển sang khung hình tiếp theo.
Bí mật và giới hạn
- Việc bổ sung lớp cửa sổ và các ngắt bổ sung cho phép tạo ra những loại nội dung và hiệu ứng mới.
Bổ sung về màu sắc
- PPU của Game Boy Color hoạt động như một tập siêu của bản gốc.
Âm thanh
- Hệ thống âm thanh được xử lý bởi Audio Processing Unit (APU), một chip PSG 4 kênh.
Tính năng
- Mỗi trong bốn kênh được dành cho một loại dạng sóng duy nhất:
Bí mật và giới hạn
- Bộ trộn xuất âm thanh stereo, vì vậy có thể gán các kênh sang trái hoặc phải.
Hệ điều hành
- Không giống NES, Game Boy được thiết kế để luôn khởi động từ ROM nội bộ 256 byte, sau đó mới nhảy sang mã của trò chơi.
Trò chơi
- Trò chơi được viết bằng assembly và có kích thước tối đa 32 KB.
Giao tiếp bên ngoài
- Có thể dùng cáp liên kết Game Boy để giao tiếp với một Game Boy khác.
Chống sao chép lậu
- Thay vì chạy trò chơi ngay lập tức, máy sẽ thực hiện một loạt kiểm tra để ngăn cartridge không được cấp phép chạy và xác minh cartridge đã được cắm đúng cách.
Ý kiến của GN⁺
- Quá trình tiến hóa kỹ thuật của Game Boy là một bước phát triển quan trọng trong lịch sử máy chơi game cầm tay.
- Cách tiếp cận SoC của Nintendo mang tính đổi mới trong thiết kế phần cứng và khiến các đối thủ khó tạo bản sao hơn.
- Khả năng tương thích ngược của Game Boy Color mang lại lợi ích lớn cho cả nhà phát triển lẫn người dùng.
1 bình luận
Ý kiến trên Hacker News