Add documentation

This commit is contained in:
2023-02-28 22:09:06 +01:00
parent f9fe1bc935
commit 6499e94fcc

32
doc/base64.md Normal file
View File

@@ -0,0 +1,32 @@
# Implementing BASE64 in Z80 Assembler
## About
Goal of this little project is to encode and decode a byte buffer in memory. The project defines
the following requirements.
1. The function takes the pointer to an input buffer as a parameter on the stack?
Can also be in one of the automatic variables.
2. Another variable contains the address of the 2nd buffer.
3. We need to find a way to get the addresses of a DIM variable on the stack, in order to call it
from BASIC.
4. Implement a subroutine for encoding a string.
5. Implement a subroutine for decding a string.
## Problem No. 1: Splitting 3-8bit values into 4 6-bit-values.
Example:
We want to convert the string "ABC". In binary the values are as follows.
- 01000001
- 01000010
- 01000011
The first step is to reduce the first byte to 6 bytes:
```Assembler
LD A,(HL)
SLA,2
PUSH A
```