Disk 1: REQUIRED disk and documentation

Cleaned up disk one documentation, both inline and in the manual
This commit is contained in:
Nathan D Riggs 2021-06-06 21:50:54 -04:00
parent 747aeeb812
commit c28c9d87da
30 changed files with 1792 additions and 4180 deletions

Binary file not shown.

Binary file not shown.

View File

@ -37,32 +37,9 @@ Be sure to consult the detailed reference for Disk 1: The Required Library for f
| `_PRN` | `__P` | **\]1** = string to print | Print a literal string to the screen. |NZCV|161+|9+|
| `_WAIT` | `__w` | none | Loop until a button is pressed.<br /><br />.**A** = keypress value |NZ|14+|10|
| `BEEP` | none | **\]1** = length of beep | Make beeping sound | NZC | 108+ | 15 |
| `BCCL` | none | **\]1** = address to jump to if true | Long Branch if Carry is Clear |none|7|8|
| `BCSL` | none | **\]1** = address to jump to if true | Long Branch if Carry is Set |none|7|8|
| `BEQL` | none | **\]1** = address to jump to if true | Long Branch if Equal |none|7|8|
| `BMIL` | none | **\]1** = address to jump to if true | Long Branch if Negative |none|7|8|
| `BNEL` | none | **\]1** = address to jump to if true | Loong Branch if Not Equal |none|7|8|
| `BPLL` | none | **\]1** = address to jump to if true | Long Branch if Positive |none|7|8|
| `BVCL` | none | **\]1** = address to jump to if true | Long Branch if Overflow Clear |none|7|8|
| `BVSL` | none | **\]1** = address to jump to if true | Long Branch if Overflow Set |none|7|8|
| `CBRA` | none | **\]1** = address to jump to if true | Long Branch Always (65C02 emulation) |none|4|4|
| `CPHX` | none | none | .**X** pushed to stack (65C02 Emulation) |NZ|11|6|
| `CPHY` | none | none | .**Y** pushed to stack (65C02 Emulation) |NZ|12|6|
| `CPLX` | none | none | top of stack in .**X** (65C02 Emulation) |NZ|11|6|
| `CPLY` | none | none | top of stack in .**Y** (65C02 Emulation) |NZ|11|7|
| `CTXY` | none | none | .**X** copied to .**Y** (65C02 Emulation) |NZ|10|6|
| `CTYX` | none | none | .**Y** copied to .**X** (65C02 Emulation) |NZ|10|6|
| `CLRHI` | none | none | high nibble of .**A** cleared | NZC | 10 | 6 |
| `DELAY` | `DELAYMS` | **\]1** = number of milliseconds (0..255) | Delay for a given number of milliseconds (byte) | NZC | 58+ |10|
| `DUMP` | `_AXLIT`;<br />`__DUMP` | **\]1** = memory address<br />**\]2** = number of bytes to dump | Dump a region of memory to the screen<br /><br />.**A** = number of bytes displayed |NZCV|811+|16|
| `ERRH` | `_AXLIT`;<br />`__ERRH` | **\]1** = memory address | sets handle for Applesoft Error Handling |NZC|73|7|
| `GBIT` | none | **\]1** = byte to check<br />**\]2** = bit mask | Get bit from .**A** at specified location in byte.<br /><br />.**A** = 0 or 1 | NZ | 14 | 15 |
| `GRET` | `_AXLIT`;<br />`__GETRET` | **\]1** = destination address | Get RETURN value and copy it to specified address.<br /><br />.**A** = return value length |NZC|43+|27|
| `PEEK` |`_AXLIT`| **\]1** = address to peek |Load an address value into .**A**.<br /><br />.**A** holds address value|NZC|28|18|
| `POKE` |`_AXLIT`|**\]1** = poke value<br />**\]2** = address to poke|load a value into given address.|NZC|32|20|
| `MFILL` | `_MLIT` <br />`MEMFILL` | **\]1** = starting address<br />**\]2** = length<br />**\]3** = fill value | Fill a block of memory with a single value. | none | NZ | 110+ |
| `MOVB` | `_MLIT`<br />`MEMMOVE` | **\]1** = source address<br />**\]2** = destination address <br />**\]3** = length in bytes | Move a block of memory at one address to another address. | NZCV | 267+ | 48 |
| `MSWAP` | `_MLIT`<br />`MEMSWAP` | **\]1** = first address<br />**\]2** = second address <br />**\]3** = length in bytes | Swap the values held in two different locks of memory. | NZC | 98+ | 36 |
@ -110,12 +87,10 @@ Be sure to consult the detailed reference for Disk 1: The Required Library for f
| MACRO | DEPENDENCIES | PARAMETERS | ACTION | CYCLES | BYTE |
| ----- | ------------ | ---------- | ------ | ------ | ---- |
| `CALL` |none|label to `JSR` to| `JSR` equivalent | 6 | 3 |
|`CPL`|none|none| Invert bits in .**A**|2|2|
|`JP`|none|label to `JMP` to| `JMP` equivalent|5|1|
|`LD`|none|????| move value from source to destination (non-operational)|?|?|
|`POP`|none|none| `PLA` equivalent|4|1|
|`RET`|none|none| `RTS` equivalent|6|1|
|`SCF`|none|none| `SEC` equivalent|2|1|