Update README.md
This commit is contained in:
41
README.md
41
README.md
@@ -1,31 +1,20 @@
|
||||
<div align="center">
|
||||
<br/>
|
||||
<p>
|
||||
<img src="resources/img/rxcc.png"
|
||||
title="rxcc" alt="rxcc logo" width="120" />
|
||||
<h1>rxcc - Rochester X C Compiler</h1>
|
||||
</p>
|
||||
<p width="120">
|
||||
An x86 C compiler written in Swift.
|
||||
</p>
|
||||
<br/>
|
||||
</div>
|
||||
<!--Readme header inspired by https://helium.computer-->
|
||||
# NES Development Test
|
||||
|
||||
# Overview
|
||||
Have you ever woken up one day and said to yourself, "Y'know what? I'd really like to build a compiler today."?
|
||||
## Overview
|
||||
This is a place where I mess around with developing for the NES. It is written completely in 6502 assembly, compiled to the iNES ROM format with [CA65](https://cc65.github.io/).
|
||||
|
||||
Could be just me.
|
||||
My main source of documentation is the [NESDev wiki](https://www.nesdev.org/wiki/Nesdev_Wiki), and the project structure is a heavily modified of [this NES project template](https://github.com/bbbradsmith/NES-ca65-example/tree/master).
|
||||
|
||||
Well, ever since that fateful day, I've been chiseling away at this mammoth task, adding functionality in stages by following [this series](https://norasandler.com/2017/11/29/Write-a-Compiler.html).
|
||||
|
||||
# Features
|
||||
## Features
|
||||
> [!NOTE]
|
||||
> This project is under active development, and the implemented features are rapidly changing.
|
||||
|
||||
Here is a list of the currently implemented C language features:
|
||||
* __Unary Operators__: The ~ (bitwise compliment), - (negation), and ! (logical negation) operators are implemented for integers, and can be applied to any term.
|
||||
* __Arithmetic Operators__: The + (addition), - (subtraction), * (multiplication), and / (division) operators are implemented for integers, parsed according to their precedence levels in C.
|
||||
* __Functions__: Each file currently supports exactly one function (so you'd be wise to make it "main"), with exactly one statement: an integer return statement. So yeah, not so useful yet.
|
||||
* __Variables__: To be implemented soon.
|
||||
> This project is under active development, and the implemented features are rapidly changing. It has no real goal yet, but may end up being a port of my game [Reboot](https://rochesterx.itch.io/reboot).
|
||||
|
||||
Here is a list of the features I've implemented so far:
|
||||
* 8x16 sprite character
|
||||
* Character animation
|
||||
* NES controller input
|
||||
* Two nametable level structure
|
||||
* Two nametable player positioning
|
||||
* Background tile/attribute placement based on level structure
|
||||
* Collision detection based on level structure
|
||||
* PPU scrolling
|
||||
|
||||
Reference in New Issue
Block a user