JuMP-Table - Direct Library Access (Kopie 1)
With version 11.1 it is possible to access the library directly by storing the necessary variable data into certain memory locations and calling the single routine via a jump table with fixed adresses that will be maintained also in future versions of the library.
The following table gives the calling adresses in hex and dec which can be used for calling the routines directly from assembly or via a CALL-statement from AppleSoft-Basic:
Function | HEX | DEC | Parameters |
---|---|---|---|
Init double LORES | $8013 | 32787 | none |
Exit double LORES | $8016 | 32790 | none |
Set drawing page | $8109 | 32793 | page number (1/2): $E9 (233) |
Move screen data from page to page | $801C | 32796 | from screen (1-3): $8083 (32899) to screen (1-3): $8084 (32900) |
Clear 4 bottom text lines | $801F | 32799 | none |
Set display page | $8022 | 32802 | page number (1/2): $E9 (233) |
Fast total screen fill | $8025 | 32805 | fill color (0-15): $E3 (227) |
Horizontal line (HLIN) | $8028 | 32808 | Xfrom (0-79): $E0 (224) |
Vertical line (VLIN) | $802B | 32811 | Yfrom (0-47): $E1 (225) |
SCRN-function | $802E | 32814 | X (0-79): $E0 (224) |
Plot pixel | $8031 | 32817 | X (0-79): $E0 (224) |
Fast line drawing | $8034 | 32820 | Xfrom (0-79): $E0 (224) |
Fast circle drawing | $8037 | 32823 | Midpoint X (0-79): $EC (236) |
Fast disk drawing | $803A | 32826 | Midpoint X (0-79): $EC (236) |
Rectangle drawing | $8046 | 32838 | X1 (0-79): $E0 (224) |
Box drawing | $803D | 32829 | X1 (0-79): $E0 (224) X2 (0-79): $E7 (231) Y1 (0-47): $E1 (225) Y2 (0-47): $E8 (232) Color (0-15): $E3 (227) |
Flood fill algorithm | $8040 | 32832 | Seedpoint X (0-79): $807E (32894) |
Toggle mixed mode | $8043 | 32835 | none |
Be careful: when using the direct jump adresses with parameter injection via the memory locations you have to make sure that the parameters are in the valid range!