Skip to content
Marek Poláček edited this page Feb 16, 2022 · 2 revisions

This is 6502 CPU Emulator Library. Welcome to the wiki. This library is intended to be used within a specific emulator that emulates a computer utilizing 6502 CPU. Programming language of choice here is C, for the sake of practicing in low level programming. Library is going to be designed as dynamically linked library (.so file on Linux, .dll file on Windows), all you'll have to do is dynamically link your library in your program that emulates a specific computer utilizing 6502 CPU. Library will only contain representation of the CPU alone (its opcode instruction set, the ALU, registers, flags, initial setup routines and that's it). Adding a memory or any kind of device memory mapping emulation will be solely on your own as this library won't create a memory space for you. What this library is going to provide is declarations and definitions for structures and functions that represent the 6502 CPU internal hardware. You will download a compiled dynamically linked library that has been compiled for your operating system (or source code you can compile yourself to be absolutely sure it will be 100% compatible with your system), the purpose of this wiki is give you documentation of the structure and functions that this library is going to contain. Since the library is going to be exported as a dynamically linked library, it will contain named entry points that will link to your declarations. What you can do is also download set of declaration header files so you don't have to write them yourself, but you should also refer to this wiki for how to work with it.

Right to the wiki, you can use the sidebar to navigate through the wiki, all the pages and their sections have been listed there. If you find some informations missing, feel free to open an issue and describe what it is what you'd like to know. Remember there is an FAQ that will house frequently asked questions. I play a little bit of an oracle role in this case, because I try my best to predict the most obvious kinds of questions people might ask, but if some other question that isn't there ends up being asked a lot, it will be added to the FAQ later.


This wiki is under construction and the development only just begins, so please be patient as more content is going to appear.
Clone this wiki locally