* (PL$U) REV 1.0 LOW LEVEL INCREMENTAL PLOTTER DRIVER * * * PROGRAM TITLE: PL$U (PL$U, PL$D, PL$L, PL$R, PL$PU, PL$PD, * PL$UR,PL$UL,PL$DR,PL$DL) * * LOW LEVEL PEN PLOTTER ROUTINES * * REVISIONS: * 1.0 (2007-05-27) * * AUTHOR: * * PHILIPP HACHTMANN * * * PURPOSE: * * LOW LEVEL PEN PLOTTER DRIVER ROUTINES PROVIDING HARDWARE * ABSTRACTION BY PROVIDING SIMPLE ROUTINES FOR PEN MOVEMENT. * * * STORAGE: * * ??? (OCTAL) * ??? (DECIMAL) * * * USAGE: * * CALL PL$U - STEP UP * CALL PL$D - STEP DOWN * CALL PL$L - STEP LEFT * CALL PL$R - STEP RIGHT * CALL PL$PU - RAISE PEN * CALL PL$PD - LOWER PEN * * CALL PL$UR - STEP UP+RIGHT * CALL PL$UL - STEP UP+LEFT * CALL PL$DR - STEP DOWN+RIGHT * CALL PL$DL - STEP DOWN+LEFT * * * ******************************************************************************** * * PADR EQU '40 PORT ADDRESS OF THE PLOTTER INTERFACE * * SUBR PL$U,UP SUBR PL$D,DOWN SUBR PL$R,RGHT SUBR PL$L,LEFT SUBR PL$PU,PENU SUBR PL$PD,PEND SUBR PL$UR,UR SUBR PL$UL,UL SUBR PL$DR,DR SUBR PL$DL,DL * * REL THIS IS A RELOCATABLE OBJECT ORG '0 * * OUT DAC ** DO THE MOVEMENT OTA PADR JMP *-1 JMP* OUT * * UP DAC ** LDA CUP JST OUT JMP* UP * * DOWN DAC ** LDA CDWN JST OUT JMP* DOWN * * RGHT DAC ** LDA CRGT JST OUT JMP* RGHT * * LEFT DAC ** LDA CLFT JST OUT JMP* LEFT * * PENU DAC ** LDA CPNU JST OUT JMP* PENU * * PEND DAC ** LDA CPND JST OUT JMP* PEND * * UL DAC ** LDA CUP ADD CLFT JST OUT JMP* UL * * UR DAC ** LDA CUP ADD CRGT JST OUT JMP* UR * * DL DAC ** LDA CDWN ADD CLFT JST OUT JMP* DL * * DR DAC ** LDA CDWN ADD CRGT JST OUT JMP* DR * * * CONSTANTS CUP OCT '1 CDWN OCT '2 CLFT OCT '4 CRGT OCT '10 CPNU OCT '20 CPND OCT '40 * * END