6502-emu
json65
Our great sponsors
6502-emu | json65 | |
---|---|---|
1 | 6 | |
29 | 238 | |
- | - | |
0.0 | 1.8 | |
almost 2 years ago | about 3 years ago | |
C | C | |
MIT License | zlib License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
6502-emu
-
I made Ben Eater's 8-bit breadboard computer Emulator in C++
I wrote an emulator for my own 6502-based computer, in C:
https://github.com/DavidBuchanan314/6502-emu/
The hardware design was largely based on http://searle.x10host.com/6502/Simple6502.html - the 6850 UART is the only peripheral that is emulated.
The CPU implementation is "complete", and passes various 6502 test suites.
Looking back, there's one big thing I'd like to improve - all memory bus accesses should be done through a getter/setter function, which implements the address decoding logic to decide whether the access should be directed to RAM, or a peripheral. The current implementation of peripheral access, iirc, is a bit of a hack.
json65
- A JSON parser in 6502 assembly language
-
Hacker News top posts: Mar 1, 2021
JSON parser written in 6502 assembly language\ (69 comments)
-
JSON parser written in 6502 assembly language
The "Library organization" section [1] explains that the json65.s file is the core of the library and the only code necessary to build the library. The additional C code provides a handy tree structure and a callback to pass to the parsing engine.
However, because SAX is a callback-oriented parsing method, you can design your own data structure and write your own callback functions and do without this tree structure.
The additional C code provides similar nice-to-haves, such as string pool interning, a function to print out the aforementioned tree structure, and a wrapper function to parse json from a file.
[1] https://github.com/ppelleti/json65#library-organization
What are some alternatives?
SAP-1 - Simple as Possible CPU Architecture
revs-beebasm - Fully documented and annotated source code for Revs on the BBC Micro
champ - A 65C02 profiler
rapidyaml - Rapid YAML - a library to parse and emit YAML, and do it fast.
TinyE8 - Ben Eater's 8 bit breadboard computer emulator in C++
lzsa - Byte-aligned, efficient lossless packer that is optimized for fast decompression on 8-bit micros