# 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   |

