41afont.txt

来自「彩色液晶显示」· 文本 代码 · 共 111 行

TXT
111
字号
LINE_BYTES	EQU	78			;每行对应字节数

;/////////////////////////////////////////////////////////////////////////
		PROC	PutPixel
PutPixel:	PUSH	DPH
		PUSH	DPL
		PUSH	ACC
		MOV	A,R2
		PUSH	ACC
		MOV	A,R3
		PUSH	ACC
	

PPXL:
		LCALL	PonitAddr
		MOVX	A,@DPTR
		MOVX	A,@DPTR
		XCH	A,R2
		RRC	A
		XCH	A,R2
		JNC	PutPixel3

		ANL	A,#00000111B
		MOV	R2,A
		MOV	A,R1
		ANL	A,#00111000B
		SJMP	PutPixel4

PutPixel3:	ANL	A,#00111000B
		MOV	R2,A
		MOV	A,R1
		ANL	A,#00000111B

PutPixel4:	ORL	A,R2
		MOVX	@DPTR,A

		POP	ACC
		MOV	R3,A
		POP	ACC
		MOV	R2,A
		POP	ACC
		POP	DPL
		POP	DPH
		RET
		END
;\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
		PROC	ReadPixel
ReadPixel:
		push	01h
		PUSH	 DPH
		PUSH	DPL
		PUSH	ACC
		MOV	A,R2
		PUSH	ACC
		MOV	A,R3
		PUSH	ACC
	
ReadPixel2:	LCALL	PonitAddr
		MOVX	A,@DPTR
		MOVX	A,@DPTR
		XCH	A,R2
		RRC	A
		XCH	A,R2
		JC	ReadPixel3

		SJMP	ReadPixel4

ReadPixel3:	ANL	A,#00111000B
		RR	A
		RR	A
		RR	A
ReadPixel4:
		ANL	A,#00000111B

		MOV	R1,A
		POP	ACC
		MOV	R3,A
		POP	ACC
		MOV	R2,A
		POP	ACC
		POP	DPL
		POP	DPH
		mov	a,R1
		pop	01h
		RET
		END
;/////////////////////////////////////////////////////////////////////////
PonitAddr:	PUSH	02H
		PUSH	B
		PUSH	A
		MOV	A,R3
		ADD	A,#14
		MOV	B,#LINE_BYTES
		MUL	AB
		ADD	A,#3
		JNC	PonitAddr1
		INC	B
PonitAddr1:	XCH	A,R2
		CLR	C
		RRC	A
		ADD	A,R2
		JNC	PonitAddr2
		INC	B
PonitAddr2:	MOV	DPH,B
		MOV	DPL,A
		POP	A
		POP	B
		POP	02H
		RET

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?