Listing of file='DRAW.SRC;01' on disk='vmedia/chip_62-sector.ccvf'
; DRAW WITH JOYSTICK 6/25/82 ; =========================================== ; by Myron T. Steffy, Sun City, Arizona 85351 KBDFLG EQU 81DFH ORG 9000H ;ESCAPE 'I' START: LXI H,00 DAD SP SHLD FCSSP LXI SP,STACK MVI A,0CH STA KBDFLG CALL SETUP START2: MVI A,63 STA X0 ;CENTER BOTH AXES STA Y0 STA X1 STA Y1 LXI H,CLEAR CALL OSTR LXI H,PLOT CALL OSTR KEYSCN: LXI B,00 LXI D,00 TWO: MVI A,0DH ;NUMBER 2 KEY (SOUTH) CALL SCAN JNZ FOUR DCR D ;SOUTH KEY FOUR: MVI A,0BH ;NUMBER 4 KEY (WEST) CALL SCAN JNZ SIX DCR C ;WEST KEY SIX: MVI A,09H ;NUMBER 6 KEY (EAST) CALL SCAN JNZ EIGHT INR E ;EAST KEY EIGHT: MVI A,07H ;NUMBER 8 KEY (NORTH) CALL SCAN JNZ FIVE INR B ;NORTH KEY FIVE: MVI A,0AH ;NUMBER 5 KEY (FIRE BUTTON) CALL SCAN JNZ BLACK JMP BEGIN BLACK: MVI A,0FH CALL CSCAN JNZ RED MVI A,0 STA SHADE CALL CPRINT JMP XWYE RED: MVI A,0EH CALL CSCAN JNZ GREEN MVI A,1 STA SHADE CALL CPRINT JMP XWYE GREEN: MVI A,0DH CALL CSCAN JNZ YELLOW MVI A,2 STA SHADE CALL CPRINT JMP XWYE YELLOW: MVI A,0CH CALL CSCAN JNZ BLUE MVI A,3 STA SHADE CALL CPRINT JMP XWYE BLUE: MVI A,0BH CALL CSCAN JNZ MAGENT MVI A,4 STA SHADE CALL CPRINT JMP XWYE MAGENT: MVI A,0AH CALL CSCAN JNZ CYAN MVI A,5 STA SHADE CALL CPRINT JMP XWYE CYAN: MVI A,9 CALL CSCAN JNZ WHITE MVI A,6 STA SHADE CALL CPRINT JMP XWYE WHITE: MVI A,8 CALL CSCAN JNZ FINI MVI A,7 STA SHADE CALL CPRINT JMP XWYE FINI: MVI A,0BH ;LETTER 'D' TO FCS OUT 7 IN 01 ANI 2 JNZ XWYE JMP EXIT SCAN: OUT 07 IN 01 ANI 01 ;COMPLEMENT OF 0FEH RET CSCAN: OUT 07 IN 1 ANI 20H ;COMPLEMENT OF 0DFH RET XWYE: LDA X1 ADD C ADD E CPI 0FFH JNZ X127 INR A X127: CPI 128 JNZ NEWX DCR A NEWX: STA X1 LDA Y1 ADD B ADD D CPI 0FFH JNZ Y127 INR A Y127: CPI 128 JNZ NEWY DCR A NEWY: STA Y1 XRA A CALL PRINT JMP KEYSCN PRINT: LXI H,X1 CALL OSTR MVI A,01 CALL WATL XRA A RET CPRINT: LHLD X1 SHLD X0 LXI H,NEWCOL CALL OSTR RET BEGIN: LXI H,NEWSRT CALL OSTR JMP START2 EXIT: LXI H,EXODUS CALL OSTR LXI H,FCSSP SPHL MVI A,'D' JMP ESC1 SETUP: LDA 0001H CPI 00BAH ;VER. 8.79 RZ LXI H,NEWTAB LXI D,OLDTAB LXI B,LENTAB SUPLOP: LDAX D MOV M,A INX H INX D DCX B MOV A,B ORA C JNZ SUPLOP RET OLDTAB: JMP 053AH ;ESC1 JMP 3392H ;LO JMP 33F4H ;OSTR JMP 3429H ;WATL JMP 341CH ;WATS LENTAB EQU $-OLDTAB NEWTAB: ESC1: JMP 2420H LO: JMP 17C8H OSTR: JMP 182AH WATL: JMP 185FH WATS: JMP 1852H NEWSRT: DB 255 CLEAR: DB 12,27,24,239 ;CLEAR SCREEN & PAGE MODE EXODUS: DB 255,27,11,239 NEWCOL: DB 255,6 SHADE: DS 01H DB 0 PLOT: DB 2 X0: DS 01H Y0: DS 01H DB 242 X1: DS 01H Y1: DS 01H DB 239 FCSSP: DW 01H DS 40H STACK: END START