AppleIIAsm-Collection/documentation/AppleIIAsm Library Collection Technical Manual/0.6.1/13.0 Quick_Reference_D8_MAC.LORES.md

39 lines
3.1 KiB
Markdown
Raw Normal View History

2021-06-01 21:26:57 +00:00
# Disk #8: Low Resolution Graphics
The LoRes collection contains macros and subroutines for creating and displaying low resolution graphics on the Apple II. This includes macros to:
- plot low resolution pixels
- set the working low resolution page and the viewing low resolution page
- set the low resolution mode: full screen or mixed
- plot horizontal, vertical and diagonal lines
- plot a low resolution circle
- get a low resolution pixel's color value
- print a low resolution character to the screen
---
| MACRO | DEPENDENCY | PARAMETERS | ACTION | DESTROYS | CYCLES | BYTES |
| --------- | ---------- | ------------------------------------------------------------ | ------------------------------------------------- | -------- | ------ | ----- |
| `LWORKPG` | none | ]1 = page number | set the working page | NZCV | 27+ | 20 |
| `LVIEWPG` | none | ]page number | set the viewing page | NZCV | 21+ | 16 |
| `LRGF` | none | none | set full page mode | NZCV | 12+ | 9 |
| `LRGP` | none | none | set mixed page mode (partial) | NZCV | 12+ | 9 |
| `LFCLR` | `LRGFCLR` | ]1 = color code | fill screen with specified color (full screen) | NZCV | 139+ | 92 |
| `LPCLR` | `LRGPCLR` | ]1 = color code | fill screen with specified color (partial) | NZCV | 125+ | 86 |
| `LPLOT` | `LRPLOT` | ]1 = X coordinate<br />]2 = Y coordinate<br />]3 = color code | plot a low resolution pixel to the working page | NZCV | 148+ | 107 |
| `LLINE` | `LRBLINE` | ]1 = X origin<br />]2 = X destination<br />]3 = Y-origin<br />]4 = Y destination<br />]5 = color | plot an arbitrary line | NZCV | 441+ | 297 |
| `LCIRC` | `LRCIRCLE` | ]1 = Center x position<br />]2 = Center y position<br />]3 = Circle radius<br />]4 = Color | plot a circle to low resolution page | NZCV | 2437+ | 520 |
| `LVLIN` | `LRVLINE` | ]1 = Y origin<br />]2 = Y destination<br />]3 = X coordinate<br />]4 = color | plot a vertical line to the low resolution page | NZCV | 250+ | 164 |
| `LHLIN` | `LRHLINE` | ]1 = X origin<br />]2 = X destination<br />]3 = Y coordinate<br />]4 = color | plot a horizontal line to low resolution page | NZCV | 246+ | 161 |
| `LRGET` | `LRGETPIX` | ]1 = X coordinate<br />]2 = Y coordinate | get color value of low resolution pixel | NZCV | 110+ | 71 |
| `LCHAR` | `LRCHAR` | ]1 = X coordinate<br />]2 = Y coordinate<br />]3 = address of 3-byte character<br />]4 = color | plot a large character to the low resolution page | NZCV | 441+ | 439 |