RepositoryC
RE

redcode/6502

Highly portable MOS 6502 CPU emulator written in ANSI C

195stars
26forks
5issues
0views

🖥️ MOS 6502 CPU Emulator – Bộ giả lập CPU cổ điển bằng ANSI C

Một bộ giả lập 6502 siêu nhẹ, chính xác và dễ tích hợp, được viết bằng ANSI C và không phụ thuộc thư viện chuẩn.

Đây là bộ giả lập CPU MOS 6502 do Manuel Sainz de Baranda y Goñi phát triển từ năm 1999. Dự án đã được kiểm thử rộng rãi và sử dụng trong nhiều trình giả lập máy tính khác. Nó nhỏ gọn (chỉ 17 KB dưới dạng thư viện động trên x86-64), dễ đọc và được chú thích chi tiết. Tác giả cũng dùng bộ lõi này trong trình giả lập Nintendo Entertainment System mang tên NEStalin.

✨ Điểm nổi bật

  • Giả lập chính xác: Tái hiện hành vi của CPU 6502 một cách trung thự và chính xác.
  • Nhỏ gọn: Chỉ 17 KB khi biên dịch thành thư viện động trên nền tảng x86-64.
  • Không phụ thuộc chuẩn C: Không sử dụng thư viện chuẩn hoặc tiêu đề của nó.
  • Dễ tích hợp: Chỉ cần thêm 6502.h và 6502.c vào dự án.
  • Hỗ trợ nhiều định dạng: Có thể biên dịch thành thư viện tĩnh, động hoặc mô-đun.
  • Cấu hình linh hoạt: Hỗ trợ nhiều macro điều khiển biên dịch như CPU_6502_STATIC, CPU_6502_WITH_ABI, v.v.
  • API rõ ràng: Cung cấp cấu trúc M6502 với các hàm như m6502_power, m6502_reset, m6502_run.
  • Giao diện gọi lui: Hỗ trợ callback read và write để kết nối với bộ nhớ hoặc logic máy ảo.

💡 Vì sao đáng chú ý

Không chỉ là một bộ giả lập CPU đơn lẻ, dự án này còung cung cấp một giao diện lập trình ứng dụng (ABI) chuẩn, cho phép dễ dàng tích hợp vào các trình giả lập máy đa nền tảng. Điều này giúp các nhà phát triển có thể tái sử dụng bộ lõi này trong nhiều dự án khác nhau mà không cần sửa đổi mã nguồn. Ngoài ra, sự kết hợp giữa tính nhỏ gọn và tính chính xác cũng khiến dự án trở thành lựa chọn lý tường cho cả học tập và ứng dụng thực tế.


#6502 #CPUEmulator #ANSIC #OpenSource #RetroComputing #TiniX

Similar Projects

Discover other similar projects and AI models.

RepositoryC
unicorn-engine/unicorn

Unicorn CPU emulator framework (ARM, AArch64, M68K, Mips, Sparc, PowerPC, RiscV, S390x, TriCore, X86)

9.5k
Oct 18, 2026
RepositoryC
redcode/Z80

Highly portable Zilog Z80 CPU emulator written in ANSI C

565
Oct 25, 2026
RepositoryC++
RPCS3/rpcs3

PlayStation 3 emulator and debugger

20.2k
Oct 24, 2026
RepositoryJavaScript
bfirsh/jsnes

A JavaScript NES emulator.

6.4k
Oct 20, 2026
Modelfill-mask
jhu-clsp/mmBERT-base

mmBERT: A Modern Multilingual Encoder !License: MIT(https://img.shields.io/badge/License-MIT-yellow.svg)(https://opensource.org/licenses/MIT) !Paper(https://img.shields.io/badge/Paper-Arxiv-red)(https://arxiv.org/abs/2509.06888) !Model(https://img.s...

♥0
439.1k
Oct 7, 2025
RepositoryC
obsproject/obs-studio

OBS Studio - Free and open source software for live streaming and screen recording

78.6k
Oct 28, 2026
RepositoryC
raysan5/raylib

A simple and easy-to-use library to enjoy videogames programming

35.4k
Oct 25, 2026
RepositoryVim Script
neovim/neovim

Vim-fork focused on extensibility and usability

103.2k
Oct 27, 2026
RepositoryPython
kovidgoyal/kitty

If you live in the terminal, kitty is made for you! Cross-platform, fast, feature-rich, GPU based.

35.4k
Oct 25, 2026