From 2050d4605a55d72bf4ccd6b61e70bce7830a2752 Mon Sep 17 00:00:00 2001 From: Miquel Sabaté Solà Date: Mon, 10 Feb 2025 00:01:10 +0100 Subject: Minor corrections here and there MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Miquel Sabaté Solà --- README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 20d9319..e17ac1f 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,7 @@ Let's get simple statements out of the way: I will not bother to further explain on the above, as others have wasted more time on this than me on these arguments. It can be easily configured through your editor (and this repository also holds an [.editorconfig](./.editorconfig) -to help you on this). If your editor doesn't support some of this options, just +to help you on this). If your editor doesn't support some of these options, just replace it. # Allocation conventions @@ -272,8 +272,8 @@ memory-mapped I/O. These "variables" are to be defined also in upper case as they are quite special. ``` assembly -lda PPU::m_control ; BAD -lda PPU::CONTROL ; GOOD +lda PPU::m_control ; bad! +lda PPU::CONTROL ; good! ``` # Calling conventions @@ -298,8 +298,8 @@ suffice, while other times using the memory might be needed. In any case: 2. **Documentation is important**. Don't be afraid to clearly denote which registers or memory addresses might be touched after calling this function -3. Do not be afraid to lay out on the name of the function how you can call it. - This is better explained in the following sections. +3. Do not be afraid to hint on the function's name how you can call it. This is + better explained in the following sections. ## Registers are to be saved by the caller @@ -319,8 +319,8 @@ example, one might reserve `$00-$04` to variables named like `zp_arg0` to 1. It's up to the caller to save values from these addresses if they are to be preserved across calls. The called function might change these values during its execution. -2. The called function will save to `zp_arg0` the returned value, or to - `zp_arg1` if the returned value is 16-bit (little endian). +2. The called function will save to `zp_arg0` the returned value, and also to + `zp_arg1` if the returned value is 16 bit (little endian). 3. From 1. and 2.; you can infer that if you are passing things through `zp_argX`, everything is done in memory: you cannot mix registers and memory arguments. @@ -354,7 +354,7 @@ when using this function. So all in all, you could end up with something like: Sometimes just passing a value on the register is enough. Consider the following patterns. -### Using the `a` register as input and output +### Using the `a` register as both input and output ``` assembly lda #m_value -- cgit v1.2.3