*** empty log message ***
[h316.git] / lib / iolib / src / pl$u.asm
CommitLineData
fcb7b340 1* (PL$U) REV 1.0 LOW LEVEL INCREMENTAL PLOTTER DRIVER
2*
3*
4* PROGRAM TITLE: PL$U (PL$U, PL$D, PL$L, PL$R, PL$PU, PL$PD,
5* PL$UR,PL$UL,PL$DR,PL$DL)
6*
7* LOW LEVEL PEN PLOTTER ROUTINES
8*
9* REVISIONS:
10* 1.0 (2007-05-27)
11*
12* AUTHOR:
13*
14* PHILIPP HACHTMANN
15*
16*
17* PURPOSE:
18*
19* LOW LEVEL PEN PLOTTER DRIVER ROUTINES PROVIDING HARDWARE
20* ABSTRACTION BY PROVIDING SIMPLE ROUTINES FOR PEN MOVEMENT.
21*
22*
23* STORAGE:
24*
25* ??? (OCTAL)
26* ??? (DECIMAL)
27*
28*
29* USAGE:
30*
31* CALL PL$U - STEP UP
32* CALL PL$D - STEP DOWN
33* CALL PL$L - STEP LEFT
34* CALL PL$R - STEP RIGHT
35* CALL PL$PU - RAISE PEN
36* CALL PL$PD - LOWER PEN
37*
38* CALL PL$UR - STEP UP+RIGHT
39* CALL PL$UL - STEP UP+LEFT
40* CALL PL$DR - STEP DOWN+RIGHT
41* CALL PL$DL - STEP DOWN+LEFT
42*
43*
44*
45********************************************************************************
46*
47*
48PADR EQU '40 PORT ADDRESS OF THE PLOTTER INTERFACE
49*
50*
fcb7b340 51 SUBR PL$U,UP
52 SUBR PL$D,DOWN
53 SUBR PL$R,RGHT
54 SUBR PL$L,LEFT
55 SUBR PL$PU,PENU
56 SUBR PL$PD,PEND
57 SUBR PL$UR,UR
58 SUBR PL$UL,UL
59 SUBR PL$DR,DR
60 SUBR PL$DL,DL
61*
62*
63 REL THIS IS A RELOCATABLE OBJECT
64 ORG '0
65*
66*
67OUT DAC ** DO THE MOVEMENT
68 OTA PADR
69 JMP *-1
70 JMP* OUT
71*
72*
73UP DAC **
74 LDA CUP
75 JST OUT
76 JMP* UP
77*
78*
79DOWN DAC **
80 LDA CDWN
81 JST OUT
82 JMP* DOWN
83*
84*
85RGHT DAC **
86 LDA CRGT
87 JST OUT
88 JMP* RGHT
89*
90*
91LEFT DAC **
92 LDA CLFT
93 JST OUT
94 JMP* LEFT
95*
96*
97PENU DAC **
98 LDA CPNU
99 JST OUT
100 JMP* PENU
101*
102*
103PEND DAC **
104 LDA CPND
105 JST OUT
106 JMP* PEND
107*
108*
109UL DAC **
110 LDA CUP
111 ADD CLFT
112 JST OUT
113 JMP* UL
114*
115*
116UR DAC **
117 LDA CUP
118 ADD CRGT
119 JST OUT
120 JMP* UR
121*
122*
123DL DAC **
124 LDA CDWN
125 ADD CLFT
126 JST OUT
127 JMP* DL
128*
129*
130DR DAC **
131 LDA CDWN
132 ADD CRGT
133 JST OUT
134 JMP* DR
135*
136*
137* CONSTANTS
138CUP OCT '1
139CDWN OCT '2
140CLFT OCT '4
141CRGT OCT '10
142CPNU OCT '20
143CPND OCT '40
144*
145*
146 END